atributo ncacn_http
La palabra clave ncacn_http identifica Microsoft Internet Information Server (IIS) como familia de protocolos para el punto de conexión.
ncacn_http:rpc_server[endpoint]
Parámetros
-
rpc_server
-
La dirección de Internet o el nombre de la máquina en la que se ejecuta el proceso del servidor RPC.
-
endpoint
-
Puerto TCP/IP conocido (estático) en el que escucha el proceso del servidor RPC.
Comentarios
Identificar Microsoft Internet Information Server (IIS) como familia de protocolos permite que las aplicaciones cliente y servidor se comuniquen a través de Internet mediante Microsoft Internet Information Server (IIS) como proxy. Dado que las llamadas se tunelizan a través de un puerto HTTP establecido, pueden cruzar firewalls.
Cualquier aplicación cliente y servidor RPC puede admitir el protocolo ncacn_http siempre que estén en red a un servidor de Internet Information Server. IIS se pone en contacto con el servidor RPC y establece un socket TCP/IP, que mantiene para el cliente. IIS negocia una conexión TCP/IP con el servidor RPC y, una vez completada la negociación, actúa como proxy RPC, reenvía datos entre el socket TCP/IP del lado cliente y el socket TCP/IP del lado servidor. Cuando el proxy RPC de IIS detecta un cierre de sesión en el cliente o en el lado servidor, cierra el socket restante.
La aplicación cliente usa implícitamente el enlace estático a IIS, pero el servidor puede usar puntos de conexión dinámicos, con rpcSS (asignador de puntos de conexión) del servidor del servidor RPC que resuelve el puerto del servidor RPC. Si IIS está en un equipo diferente al servidor RPC, IIS recibe la llamada remota, se pone en contacto con RPCSS en el equipo del servidor RPC para obtener el punto de conexión de proceso del servidor y, a continuación, reenvía la llamada al servidor RPC adecuado.
Si Internet Explorer está instalado, el transporte comprobará el registro para ver si hay una configuración para un proxy HTTP. Si existe un proxy, el transporte lo usará.
Ejemplos
//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[,]"
Vea también