Socket, serveurs, TCP/IP Sockets, cycle de connexion UDP, Internet Protocol
Comment réaliser un dialogue d'ordinateurs ?
Comment sont-ils interconnectés ?
Datagramme (paquet) service Best-effort :
- Pertes,
- Ré-alignement,
- Duplication,
- Délai.
Transport Protocols :
- Offre des service sur IP,
- User Datagram Protocol (UDP),
- checksum,
- Best-effort,
- Transmission Control Protocol (TCP).
[...] . TCP/IP Sockets en < number > Computer Chat Comment réaliser un dialogue d'ordinateurs? Comment sont ils interconnectés? [...]
[...] I'm Jane” < number > TCP Client/Serveur: Interaction Client Créer la Socket TCP Etablir la connexion Communiquer quitter Serveur Créer la Socket serveur TCP Affecter un port à la Socket Mettre la Socket à l'écoute Boucle: Accepter nouv.conn Communiquer quitter Le serveur commence par se préparer à recevoir la requête client < number > Students should follow along with source code in the book Synoptique du cycle en mode connecté(TCP) client socket(); server socket(); bind(); connect(); send(); close(); bind(); listen(); accept(); receive(); close(); socket() crée la socket et retourne un nombre (=file descriptor) si pas d'erreur bind() associe le port local à la socket connect() associe l'@ IP dest et le N° port avec la socket et envoie et envoie le segment SYN send() envoie un bloc de données vers la destination listen() bloque la reception jusqu'a la reception de SYN pour ce N° de port local. Crée une nouvelle socket (en rose) et retourne le descripteur de fichier relatif à cette nouvelle socket receive() blocage jusqu'a un bloc de données est prêt. Vous devez spécifier comme argument la taille max du Buffer. [...]
[...] Cycle de Connexion UDP client socket(); bind(); sendto(); close(); serveur socket(); bind(); rcvfrom(); socket() crée la socket et retourne un nombre (=file descriptor) si pas d'erreur bind() associe le port local à la socket sendto() fournit l'@ IPdest, N°port et le message à envoyer recvFrom() blocage jusqu'a reception de données sur ce port. Retourne l'@ IPdest, N°port et le message < number > TCP Client/Server: Interaction Client Créer Etablir Comm Quitter Serveur Créer Aff sock au port Sock écoute Boucle: Accepter Communiquer quitter Create socket for incoming connections if ((servSock = socket(PF_INET, SOCK_STREAM, IPPROTO_TCP)) [...]
[...] < number > Création d'une socket Fonction socket() Socket: Crée une socket. Syntaxe : int socket(int PF, int TYPE, int PROTOCOL) ; L'entier retourné est le descripteur de la socket nouvellement créée Par cet appel. Librairies requises :
[...] In WinSock, Socket handles and file handles are not the same thing. Unix Descriptor Table Descriptor Table Data structure for file 0 Data structure for file 1 Data structure for file 2 Socket Descriptor Data Structure Descriptor Table Family: PF_INET Service: SOCK_STREAM Local IP: Remote IP: Local Port: 2249 Remote Port: 3726 sin_len sa_len sa_family sa_data AF_INET sin_port sin_addr sin_zero sockaddr sockaddr_in Rappel: type de données int8_t signed 8bit int uint8_t unsigned 8 bit int int16_t signed 16 bit int uint16_t unsigned 16 bit int int32_t signed 32 bit int uint32_t unsigned 32 bit int u_char, u_short, u_int, u_long Type de données dans les Sockets sa_family_t address family socklen_t length of struct in_addr_t IPv4 address in_port_t IP port number ‘h' : host byte order ‘n' : network byte order ‘s' : short (16bit) ‘l' : long (32bit) uint16_t htons(uint16_t); uint16_t ntohs(uint_16_t); uint32_t htonl(uint32_t); uint32_t ntohl(uint32_t); Fonctions d'ordre Réseau Addresses Génerique de la Socket struct sockaddr { uint8_t sa_len; sa_family_t sa_family; char sa_data[14]; sa_family specifie le type d'adresse. [...]
Source aux normes APA
Pour votre bibliographieLecture en ligne
avec notre liseuse dédiée !Contenu vérifié
par notre comité de lecture