Proveedores de servicios de transporte
Un proveedor de servicios de transporte determinado admite uno o varios protocolos. Por ejemplo, un proveedor TCP/IP proporcionaría, como mínimo, los protocolos TCP y UDP, mientras que un proveedor IPX/SPX podría proporcionar IPX, SPX y SPX II. Cada protocolo admitido por un proveedor determinado se describe mediante una estructura de WSAPROTOCOL_INFO y el conjunto total de estas estructuras se puede considerar como el catálogo de protocolos instalados. Las aplicaciones pueden recuperar el contenido de este catálogo (para obtener más información, vea WSAEnumProtocols, WSCEnumProtocols y WSCEnumProtocols32) y examinando las estructuras de WSAPROTOCOL_INFO disponibles, detecta los atributos de comunicación asociados a cada protocolo.
Protocolos superpuestas y cadenas de protocolos en el SPI
Windows Sockets 2 admite el concepto de un protocolo en capas. Un protocolo en capas es uno que implementa solo funciones de comunicaciones de nivel superior, mientras se basa en una pila de transporte subyacente para el intercambio real de datos con un punto de conexión remoto. Un ejemplo de este protocolo en capas sería una capa de seguridad que agrega el protocolo al proceso de establecimiento de conexión para realizar la autenticación y establecer un esquema de cifrado acordado mutuamente. Por lo general, este protocolo de seguridad requeriría los servicios de un protocolo de transporte confiable subyacente, como TCP o SPX. El término protocolo base hace referencia a un protocolo como TCP o SPX que es totalmente capaz de realizar comunicaciones de datos con un punto de conexión remoto y el término protocolo en capas se usa para describir un protocolo que no puede ser independiente. A continuación, una cadena de protocolos se definiría como uno o varios protocolos en capas y anclados por un protocolo base.
Esta cadena de protocolos en capas y protocolos base en cadenas se puede lograr mediante la organización de los protocolos en capas para admitir el SPI de Winsock en sus bordes superior e inferior. Se crea una estructura WSAPROTOCOL_INFO especial que hace referencia a la cadena de protocolos en su conjunto y que describe el orden explícito en el que se unen los protocolos en capas. Esto se muestra en el gráfico siguiente.