Windows 套接字 2 包含分层协议的概念:一种仅实现更高级别的通信功能,同时依赖于基础传输堆栈,以便与远程终结点实际交换数据。 此类分层协议的一个示例是一个安全层,它向套接字连接过程添加协议,以便执行身份验证和建立加密方案。 此类安全协议通常要求基础和可靠的传输协议(如 TCP 或 SPX)的服务。
基协议 术语是指完全能够与远程终结点执行数据通信的协议,例如 TCP 或 SPX。 分层协议 是一种无法独立运行的协议,而 协议链 是一个或多个分层协议串在一起并由基协议锚定。
如果设计分层协议以支持 Windows 套接字 2 SPI 的上边缘和下边缘,则可以创建协议链。 特殊的 WSAPROTOCOL_INFO 结构是指整个协议链,并描述分层协议的联接顺序。 下图对此进行了说明。 由于只有基本协议和协议链可由应用程序直接使用,因此,当已安装的协议使用 WSAEnumProtocols 函数枚举时,它们是唯一列出的协议。