Comment Ca Marche - Communauté informatique  
   
Accueil - Encyclopédie informatiqueTélécharger l'encyclopédieContribuer à cet article

Sockets - Déroulement d'une communication

Déroulement d'une communication avec les sockets Encyclopédie


Comme dans le cas de l'ouverture d'un fichier, la communication par socket utilise un descripteur pour désigner la connexion sur laquelle on envoie ou reçoit les données. Ainsi la première opération à effectuer consiste à appeler une fonction créant un socket et retournant un descripteur (un entier) identifiant de manière unique la connexion. Ainsi ce descripteur est passé en paramètres des fonctions permettant d'envoyer ou recevoir des informations à travers le socket.

L'ouverture d'un socket se fait en deux étapes :

  • La création d'un socket et de son descripteur par la fonction socket()
  • La fonction bind() permet de spécifier le type de communication associé au socket (protocole TCP ou UDP)

Un serveur doit être à l'écoute de messages éventuels. Toutefois, l'écoute se fait différemment selon que le socket est en mode connecté (TCP) ou non (UDP).

  • En mode connecté, le message est reçu d'un seul bloc.
    Ainsi en mode connecté, la fonction listen() permet de placer le socket en mode passif (à l'écoute des messages). En cas de message entrant, la connexion peut être acceptée grâce à la fonction accept(). Lorsque la connexion a été acceptée, le serveur reçoit les données grâce à la fonction recv().
  • En mode non connecté, comme dans le cas du courrier, le destinataire reçoit le message petit à petit (la taille du message est indéterminée) et de façon désordonnée.
    Le serveur reçoit les données grâce à la fonction recvfrom().
La fin de la connexion se fait grâce à la fonction close().

Voici le schéma d'une communication en mode connecté:
les sockets en mode connecté

Voici le schéma d'une communication en mode non connecté:
les sockets en mode non connecté

Trucs & astuces pertinents trouvés dans la base de connaissances

03/09 11h11 Problème IPconfig (Windows XP)
Winsock Plus d'astuces sur « Winsock »

Discussions pertinentes trouvées dans le forum

11/01 22h20 winsock connection internet WINSOCK PB CONNECTION INTERNET Internet 13/01 18h16->Séb085
16/12 23h20 controle winsock controle winsock Réseaux 27/01 17h08->temk201
08/11 19h01 winsock.scr manquant winsock.scr Manquant Windows 23/12 00h22->jpp9
30/03 10h07 kernel winsock pb kernel, winsock Virus/Sécurité 30/03 16h48->foobar477
20/03 16h44 il manque winsock.dll il me manque "winsock.dll" Windows 20/03 18h27->yuccas6
26/04 15h54 kernell32.dll winsock.dll wsock32.dll KERNELL32.dll ; winsock.dll ; wsock32.dll Virus/Sécurité 13/11 16h11->Clovila6
22/04 14h23 winsock.ocx winsock.ocx Développement 23/04 07h41->trois membres5
25/05 14h51 winsock error Winsock Error Windows 25/05 15h20->dje-dje5
12/02 13h42 requêtte http 1.0 fausse ip winsock Requêtte HTTP/1.0 avec une fausse IP (Winsock Développement 14/02 09h03->sebsauvage4
16/04 23h55 winsock visual basic winsock en visual basic Développement 28/01 15h12->temk204
Discussion fermée Problème résolu Winsock Plus de discussions sur « Winsock »

Ce document intitulé « Sockets - Déroulement d'une communication » issu de l'encyclopédie informatique Comment Ça Marche (www.commentcamarche.net) est mis à disposition sous les termes de la licence Creative Commons. Vous pouvez copier, modifier des copies de cette page, dans les conditions fixées par la licence, tant que cette note apparaît clairement.