Partilhar via


Arquitetura direta do Windows Sockets

O Windows Sockets Direct fornece uma conexão de alta velocidade e alto desempenho entre dois nós de rede na mesma rede de área do sistema (SAN), mapeando uma interface de transporte de SAN diretamente em um processo de aplicativo. Esta conexão SAN permite que processos em modo de utilizador realizem entrada e saída diretas (E/S) sem copiar através do limite entre o modo de utilizador e o modo kernel.

A figura da arquitetura SAN em Introdução às redes de área do sistema mostra como o Windows Sockets Direct fornece uma conexão SAN. As áreas sombreadas na figura representam os componentes que um fornecedor de SAN NIC deve fornecer para permitir o uso de uma SAN.

Os parágrafos a seguir descrevem os componentes que aparecem na figura.

Componentes fornecidos para controladores de interface de rede SAN

Cada controlador de interface de rede (NIC) SAN usa os seguintes componentes de software para fornecer suporte ao NDIS e ao Windows Sockets Direct.

  • Um driver de miniporta NDIS para uma NIC SAN fornece suporte para NDIS para que ele possa se comunicar com aplicativos Windows Sockets usando um driver de protocolo TCP/IP padrão. Este driver de miniporta NDIS suporta tipos de mídia padrão, como Ethernet ou ATM.

  • A DLL do provedor de serviços SAN e seu driver de proxy associado fornecem suporte para Windows Sockets Direct. Esses componentes do Windows Sockets Direct exportam a semântica de transporte nativa de uma interconexão da SAN para aplicativos Windows Sockets. Essas semânticas podem incluir, por exemplo, a orientação da família de endereços e da mensagem.

O fornecedor da SAN NIC fornece o driver de miniporta NDIS e os componentes do Windows Sockets Direct. O fornecedor de NIC de SAN pode também fornecer uma controladora de transporte de SAN, caso o serviço de transporte não esteja completamente implementado na NIC. O driver de proxy para uma DLL do provedor de serviços SAN e, possivelmente, um driver de transporte SAN estão contidos no driver de miniporta NDIS ou em drivers separados, a critério do fornecedor da SAN NIC.

Componentes do Windows Sockets Switch

O comutador Windows Sockets é um componente fornecido pelo sistema operacional do Windows Sockets Direct. O switch é um provedor de serviços Windows Sockets que está em camadas sobre os provedores de serviços TCP/IP e SAN. O sistema operativo Windows insere a comutação entre a interface do Windows Sockets e os outros provedores de serviços. Para maior clareza, o interruptor aparece na figura como uma entidade separada. No entanto, o switch e o provedor de serviços TCP/IP base são realmente implementados na mesma DLL. O switch executa as seguintes ações:

  • Faz com que a coleção instalada de provedores de serviços SAN e o provedor TCP/IP padrão pareçam um único provedor para aplicativos Windows Sockets.

  • Escolhe, por conexão, se deseja usar um provedor de serviços SAN nativo ou o provedor TCP/IP padrão para atender a um soquete de aplicativo.

  • Emula a semântica de TCP/IP ao usar um provedor de serviços SAN nativo.

As interfaces superior e inferior do switch estão em conformidade com o Windows Sockets Service Provider Interface (SPI). A interface inferior do switch usa extensões para o Windows Sockets SPI para aproveitar os recursos de uma SAN. Essas extensões são descritas em Windows Sockets SPI Extensions for SANs e totalmente documentadas no Windows Sockets Direct Reference.

O switch gerencia o acesso do aplicativo a todas as redes. Um computador pode conter várias NICs SAN de vários fornecedores, bem como uma ou mais NICs LAN e WAN, como uma LAN NIC que suporta uma rede Ethernet. O switch gerencia o acesso do aplicativo a todas as redes associadas a essas NICs de forma transparente.

Funções TCP/IP

Como acontece com qualquer NIC exposta através de NDIS, o driver de protocolo TCP/IP atribui um ou mais endereços IP a cada SAN NIC. O switch Windows Sockets e os provedores de serviços SAN determinam essas atribuições, conforme descrito em Recebendo e traduzindo endereços NIC. O switch usa essas informações de endereço IP para determinar qual provedor de serviços de SAN usar para uma determinada conexão de soquete. Os provedores de serviços de SAN usam essas informações de endereço IP para converter endereços IP em endereços SAN nativos.

O switch trabalha em estreita colaboração com o provedor de serviços TCP/IP de base padrão para obter funcionalidades que os provedores de serviços SAN não suportam. O fornecedor de serviços TCP/IP suporta a escuta de ligações em vários fornecedores e a sincronização entre vários fornecedores.

O provedor de serviços TCP/IP também lida com toda a comunicação através de interconexões LAN e WAN padrão, soquetes IP brutos, todos os soquetes UDP e conexões entre sub-redes.