atributo ncacn_http
O ncacn_http palavra-chave identifica o Servidor de Informações da Internet da Microsoft (IIS) como a família de protocolos para o ponto de extremidade.
ncacn_http:rpc_server[endpoint]
-
rpc_server
-
O endereço ou o nome da Internet do computador no qual o processo do servidor RPC está sendo executado.
-
endpoint
-
A porta TCP/IP conhecida (estática) na qual o processo do servidor RPC está escutando.
Identificar o Servidor de Informações da Internet da Microsoft (IIS) como a família de protocolos permite que aplicativos cliente e servidor se comuniquem pela Internet usando o Servidor de Informações da Internet da Microsoft (IIS) como proxy. Como as chamadas são encapsuladas por meio de uma porta HTTP estabelecida, elas podem atravessar firewalls.
Qualquer cliente RPC e aplicativos de servidor podem dar suporte ao protocolo ncacn_http desde que sejam conectados a um Servidor de Informações da Internet. O IIS entra em contato com o servidor RPC e estabelece um soquete TCP/IP, que ele mantém para o cliente. O IIS negocia uma conexão TCP/IP com o servidor RPC e, depois que a negociação é concluída, atua como um proxy RPC, encaminhando dados entre o soquete TCP/IP do lado do cliente e o soquete TCP/IP do lado do servidor. Quando o proxy RPC do IIS detecta um fechamento de sessão no lado do cliente ou do servidor, ele fecha o soquete restante.
O aplicativo cliente usa implicitamente a associação estática para o IIS, mas o servidor pode usar pontos de extremidade dinâmicos, com o RPCSS (mapeador de ponto de extremidade) do servidor resolvendo a porta do servidor RPC. Se o IIS estiver em um computador diferente do servidor RPC, o IIS receberá a chamada remota, contatará o RPCSS no computador do servidor RPC para obter o ponto de extremidade do processo do servidor e encaminhará a chamada para o servidor RPC apropriado.
Se o Explorer da Internet estiver instalado, o transporte marcar registro para ver se há uma configuração para um proxy HTTP. Se existir um proxy, o transporte o usará.
//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[,]"