Категории сокетов ядра Winsock
Сетевой программный интерфейс (NPI) ядра Winsock (WSK) определяет пять различных категорий сокетов: базовые сокеты, сокеты прослушивания, сокеты датаграмм, сокеты, ориентированные на подключение, и сокеты потоков. Каждая категория сокетов WSK имеет уникальные функциональные возможности и поддерживает другой набор функций сокетов. Приложение WSK должно указать категорию создаваемого сокета WSK при создании нового сокета. Для каждой категории сокетов WSK используется следующая цель:
Базовые сокеты
Базовые сокеты используются только для получения и задания параметров сокета транспортного стека или для выполнения операций управления вводом-выводом сокета. Базовые сокеты не могут быть привязаны к локальному адресу транспорта и не поддерживают отправку или получение сетевых данных.
Прослушивание сокетов
Прослушивающие сокеты используются для прослушивания входящих подключений с удаленных транспортных адресов. Функциональность прослушивающего сокета включает в себя все функции базового сокета.
Сокеты датаграмм
Сокеты датаграмм используются для отправки и получения датаграмм. Функциональные возможности сокета датаграммы включают в себя все функции базового сокета.
Сокеты, ориентированные на подключение
Сокеты, ориентированные на подключение, используются для отправки и получения сетевых данных через установленные подключения. Функциональные возможности сокета, ориентированного на подключение, включают в себя все функции базового сокета.
Сокеты потоковой передачи
Потоковые сокеты используются либо для прослушивания входящих подключений с удаленных транспортных адресов (выступающего в качестве сокета прослушивания), либо для отправки и получения сетевых данных через установленные подключения (выступать в качестве сокета, ориентированного на подключение). Используйте потоковый сокет, если во время создания сокета не известно, требуется ли сокет прослушивания или сокет, ориентированный на подключение. Функциональность сокета потока включает в себя все функции базового сокета.