Многоуровневые протоколы и цепочки протоколов
Windows Sockets 2 включает в себя концепцию многоуровневого протокола, который реализует только функции связи более высокого уровня, используя базовый стек транспорта для фактического обмена данными с удаленной конечной точкой. Примером такого типа многоуровневого протокола является уровень безопасности, который добавляет протокол к процессу подключения к сокету для выполнения проверки подлинности и установления схемы шифрования. Для такого протокола безопасности обычно требуются службы базового и надежного транспортного протокола, например TCP или SPX.
Термин базовый протокол относится к протоколу, такому как TCP или SPX, который полностью поддерживает обмен данными с удаленной конечной точкой. Многоуровневый протокол — это протокол, который не может стоять отдельно, в то время как цепочка протоколов представляет собой один или несколько многоуровневых протоколов, нанизанных вместе и привязанных базовым протоколом.
Цепочку протоколов можно создать, если многоуровневые протоколы будут поддерживать spi-сокеты Windows 2 как на верхнем, так и на нижнем крае. Специальная структура WSAPROTOCOL_INFO относится к цепочке протоколов в целом и описывает явный порядок соединения многоуровневых протоколов. Это показано на рисунке ниже. Так как приложения могут напрямую использовать только базовые протоколы и цепочки протоколов, они являются единственными, перечисленными при перечислении установленных протоколов с помощью функции WSAEnumProtocols .