_ncacn-HTTP-Attribut
Das schlüsselwort ncacn _ http identifiziert den Microsoft Internet Information Server (IIS) als Protokollfamilie für den Endpunkt.
ncacn_http:rpc_server[endpoint]
Parameter
-
_RPC-Server
-
Die Internetadresse oder der Name des Computers, auf dem der RPC-Serverprozess ausgeführt wird.
-
endpoint
-
Der bekannte (statische) TCP/IP-Port, an dem der RPC-Serverprozess lauscht.
Hinweise
Durch die Identifizierung von Microsoft Internet Information Server (IIS) als Protokollfamilie können Client- und Serveranwendungen über das Internet kommunizieren, indem Microsoft Internet Information Server (IIS) als Proxy verwendet wird. Da Aufrufe über einen eingerichteten HTTP-Port getunnelt werden, können sie firewallübergreifend erfolgen.
Alle RPC-Client- und -Serveranwendungen können das ncacn-HTTP-Protokoll _ unterstützen, solange sie mit einem Internetinformationsserver verbunden sind. Der IIS kontaktiert den RPC-Server und richtet einen TCP/IP-Socket ein, den er für den Client verwaltet. Der IIS handelt eine TCP/IP-Verbindung mit dem RPC-Server aus und fungiert nach Abschluss der Aushandlung als RPC-Proxy, der Daten zwischen dem clientseitigen TCP/IP-Socket und dem serverseitigen TCP/IP-Socket weiterleitet. Wenn der IIS-RPC-Proxy erkennt, dass eine Sitzung auf client- oder serverseitiger Seite geschlossen wird, wird der verbleibende Socket geschlossen.
Die Clientanwendung verwendet implizit eine statische Bindung an den IIS, aber der Server kann dynamische Endpunkte verwenden, wobei der RPCSS (Endpoint Mapper) des Servers den RPC-Serverport auflöst. Wenn sich der IIS auf einem anderen Computer als der RPC-Server befindet, empfängt der IIS den Remoteaufruf, kontaktiert RPCSS auf dem RPC-Servercomputer, um den Serverprozessendpunkt abzurufen, und leitet den Aufruf dann an den entsprechenden RPC-Server weiter.
Wenn Internet Explorer installiert ist, überprüft der Transport die Registrierung, um festzustellen, ob eine Konfiguration für einen HTTP-Proxy vorhanden ist. Wenn ein Proxy vorhanden ist, wird er vom Transport verwendet.
Beispiele
//RPC client accesses an RPC server application, which is listening on //endpoint 2225 of an IIS Web Server named major7.microsoft.com
[
uuid(12345678-1234-1234-1234-123456789ABC),
version(1.0),
endpoint("ncacn_http:major7.microsoft.com[2225]")
]
interface iface
{
// Interface definition statements.
}
//string binding format.
//IIS Web server (websvr1)is on a different machine than the RPC
//server, and endpoints are dynamic
"obj_uuid@ncacn_http:major7.microsoft.com
[,]"
//tells the transport to use proxysvr, port 80, as the outgoing http
//server:
"obj_uuid@ncacn_http:major7.microsoft.com[,]"