Catégories de sockets du noyau Winsock

L’interface de programmation réseau (NPI) du noyau Winsock (WSK) définit cinq catégories différentes de sockets : sockets de base, sockets d’écoute, sockets datagrammes, sockets orientés connexion et sockets de flux. Chaque catégorie de socket WSK a des fonctionnalités uniques et prend en charge un ensemble différent de fonctions de socket. Une application WSK doit spécifier la catégorie de socket WSK qu’elle crée chaque fois qu’elle crée un nouveau socket. L’objectif de chaque catégorie de socket WSK est le suivant :

Sockets de base
Les sockets de base sont utilisés uniquement pour obtenir et définir les options de socket de la pile de transport ou pour effectuer des opérations de contrôle d’E/S de socket. Les sockets de base ne peuvent pas être liés à une adresse de transport locale et ne prennent pas en charge l’envoi ou la réception de données réseau.

Sockets d’écoute
Les sockets d’écoute sont utilisés pour écouter les connexions entrantes à partir d’adresses de transport distantes. La fonctionnalité d’un socket d’écoute inclut toutes les fonctionnalités d’un socket de base.

Sockets de datagramme
Les sockets de datagrammes sont utilisés pour envoyer et recevoir des datagrammes. La fonctionnalité d’un socket de datagramme inclut toutes les fonctionnalités d’un socket de base.

Sockets orientés connexion
Les sockets orientés connexion sont utilisés pour envoyer et recevoir des données réseau via des connexions établies. La fonctionnalité d’un socket orienté connexion inclut toutes les fonctionnalités d’un socket de base.

Sockets de flux
Les sockets de flux sont utilisés pour écouter les connexions entrantes à partir d’adresses de transport distantes (agissent comme un socket d’écoute), ou pour envoyer et recevoir des données réseau sur des connexions établies (agissent comme un socket orienté connexion). Utilisez un socket de flux lorsque vous ne savez pas au moment de la création du socket si vous souhaitez un socket d’écoute ou un socket orienté connexion. La fonctionnalité d’un socket de flux inclut toutes les fonctionnalités d’un socket de base.