Categorias de soquete kernel winsock

A NPI (Interface de Programação de Rede ) do Winsock Kernel (WSK) define cinco categorias diferentes de soquetes: soquetes básicos, soquetes de escuta, soquetes de datagrama, soquetes orientados à conexão e soquetes de fluxo. Cada categoria de soquete do WSK tem funcionalidade exclusiva e dá suporte a um conjunto diferente de funções de soquete. Um aplicativo WSK deve especificar qual categoria de soquete WSK ele está criando sempre que cria um novo soquete. A finalidade para cada categoria de soquete do WSK é a seguinte:

Soquetes básicos
Soquetes básicos são usados apenas para obter e definir opções de soquete de pilha de transporte ou para executar operações de controle de E/S de soquete. Soquetes básicos não podem ser associados a um endereço de transporte local e não dão suporte ao envio ou recebimento de dados de rede.

Soquetes de escuta
Soquetes de escuta são usados para escutar conexões de entrada de endereços de transporte remoto. A funcionalidade de um soquete de escuta inclui toda a funcionalidade de um soquete básico.

Soquetes de datagrama
Soquetes de datagrama são usados para enviar e receber datagramas. A funcionalidade de um soquete de datagrama inclui toda a funcionalidade de um soquete básico.

Soquetes orientados à conexão
Os soquetes orientados à conexão são usados para enviar e receber dados de rede em conexões estabelecidas. A funcionalidade de um soquete orientado à conexão inclui toda a funcionalidade de um soquete básico.

Soquetes de fluxo
Os soquetes de fluxo são usados para escutar conexões de entrada de endereços de transporte remoto (atuam como um soquete de escuta) ou para enviar e receber dados de rede em conexões estabelecidas (atuar como um soquete orientado à conexão). Use um soquete de fluxo quando você não souber no momento da criação do soquete se quiser um soquete de escuta ou um soquete orientado para conexão. A funcionalidade de um soquete de fluxo inclui toda a funcionalidade de um soquete básico.