Обеспечивая полную совместимость с предыдущими версиями, WinSock 2 расширяет первоначальную реализацию интерфейса в ряде областей:
|
Улучшенная эффективность работы |
|
Дополнительная поддержка разрешения имен |
|
Параллельный доступ к нескольким сетевым транспортам |
|
Поддержка процедур управления качеством обслуживания (QoS) |
|
Поддержка многоточечного и многоадресного вещания |
В дополнение к поддержке доступа к нескольким сетевым транспортам и механизмам разрешения имен по сравнению со спецификацией WinSock 1.1 изменилась и архитектура Windows Sockets 2, которая теперь включает два основных уровня: уровень динамических библиотек (DLL), обеспечивающих интерфейс Windows Sockets API, и уровень поставщиков услуг, которые располагаются ниже библиотек API и взаимодействуют с ними через интерфейс поставщика услуг (Service Provider Interface, SPI). Описание Windows Sockets 2 включает три отдельных спецификации: описание Windows Sockets 2 API, описание Windows Sockets 2 SPI и приложение (Appendix), описывающее особенности протокола транспортного уровня.
DLL-библиотека Windows Sockets 2 (WS2-32.DLL) включает все API, используемые разработчиками приложений. Она включает существующий Windows Sockets 1.1 API, а также новый API для расширенных средств обмена данными и API обобщенной службы имен. Многие поставщики теперь предлагают параллельный доступ к их собственным транспортам, создавая DLL поставщика услуг, которая соответствует спецификации Windows Sockets 2 SPI. Это означает, что можно разработать приложение, обращающееся через новый API, например, к TCP/IP и IPX/SPX одновременно.
Интерфейс SPI пространства имен позволяет обращаться к нескольким службам разрешения имен (Name Resolution Services) через единый API. Поскольку производители поставляют программные модули уровня поставщика услуг для DNS, для службы каталогов NetWare (NDS) и Х.500 все их функции разрешения имен будут доступны через API пространства имен Windows Sockets 2.