Académique Documents
Professionnel Documents
Culture Documents
Chapitre 5
Chapitre 5
U: 2014/2015
CHAPITRE 5
TCP / UDP
1
Couche Transport
Objectifs
• La couche transport segmente les données et gère la séparation des
données pour les différentes applications
• La couche transport divise les données en segments qui sont plus faciles à
gérer et à transporter.
• La segmentation facilite le transport des données par les couches
inférieures du réseau.
• Le contrôle d’erreur peut s’effectuer sur les données du segment pour
déterminer si le segment a été modifié lors de sa transmission.
2
Couche Transport
Les protocoles
3
TCP & UDP
Notion de ports
• Permet à plusieurs processus applicatifs de communiquer simultanément sur le
réseau, potentiellement avec un même protocole de transport (TCP ou UDP).
4
TCP & UDP
Ports prédéfinis RFC 1060
Attribution des numéros de Port :
Ports réservés (numéros 0 à 1023). Ces numéros sont réservés à des services et
applications « assignés » par l’IANA (Internet Assigned Numbers Authority)
Ports inscrits (numéros 1024 à 49151). Ces numéros de ports sont affectés à des
processus ou applications d’utilisateurs.
Ports privés ou dynamiques (numéros 49152 à 65535). Également appelés ports
éphémères, ces ports sont généralement affectés de façon dynamique à des
applications clientes lorsqu’une connexion est initiée.(dynamiquement alloués
par l’OS)
5
TCP & UDP
Ports prédéfinis RFC 1060
6
TCP (Transmission Control Protocol)
• Un protocole de bout en bout entre applications orienté connexion.
– Protocole de bout en bout: Les processus pairs des couches transport de 2
équipements connectés dialoguent l'un avec l'autre sans rien connaître du
réseau. C'est au niveau IP que l'on se préoccupe de la fragmentation et du
réassemblage des segments TCP.
8
TCP (Transmission Control Protocol)
Entête
• Source Port (16 bits) : Numéro du port source.
• Destination Port (16 bits) : Numéro du port destination.
• Sequence Number (32 bits) : Cette valeur permet de situer à quel endroit du flux
de données le paquet, qui est arrivé, doit se situer par rapport aux autres paquets.
– Si SYN = 0, le numéro de séquence est celui du premier octet de données de ce
segment.
– Si SYN = 1, il s'agit du numéro de séquence initial (ISN). le premier octet de
donnée est à ISN+1.
• Acknowledgment Number (32 bits) :
– définit un acquittement pour les paquets reçus. Cette valeur signale le prochain
numéro de paquet attendu. Par exemple, si il vaut 1500, cela signifie que tous les
Datagrammes <1500 ont été reçus.
• Header length (4 bits) : Taille de l'en-tête TCP en mots de 32 bits.
• Reserved (6 bits) : Champ réservé pour une utilisation ultérieure. Les 6 bits doivent
être à 0.
9
TCP (Transmission Control Protocol)
Entête
• Flag (6 bits)
– URG : Urgent Pointer field significant
– ACK : Acknowledgment field significant
– PSH : Push Function ( indique au récepteur de délivrer les données à
l'application et de ne pas attendre le remplissage des tampons.)
– RST : Reset the connection
– SYN : Synchronize sequence numbers
– FIN : No more data from sender
• Window (16 bits) : Nombre d'octets de données à partir de celui indiqué
par le champ Acknowledgment.
• Checksum (16 bits) : Somme de contrôle sur 16 bits de l'en-tête et des
données.
• Urgent Pointer (16 bits) : Ce champ est interprété uniquement si le bit
de contrôle URG est à 1. Le pointeur donne le numéro de séquence de
l'octet qui suit les données « urgentes ».
• Options : variable il existe 2 formats d'options : un seul octet de
catégorie d'option ou un octet de catégorie d'option suivi d'un octet de
longueur d'option et de l'octet des données de l'option. 11
TCP (Transmission Control Protocol)
Fonctionnement du protocole
12
TCP (Transmission Control Protocol)
Fonctionnement du protocole
14
TCP (Transmission Control Protocol)
Etablissement de la connexion
1. Le client initiant la session envoie au serveur un segment contenant un numéro d’ordre
2. Le serveur répond par un segment contenant un numéro de reçu égal au numéro d’ordre
reçu plus 1, ainsi que son propre numéro d’ordre de synchronisation. Ce numéro est
supérieur au numéro d’ordre car l’ACK est toujours l’octet suivant attendu. Ce numéro de
3. Le client initiant la session répond par un numéro de reçu égal au numéro d’ordre reçu
Quand le protocole TCP sur l’hôte source n’a pas reçu de reçu après un délai prédéterminé, il
15
TCP (Transmission Control Protocol)
Ré ordonnancement des segments dans l’ordre de leur transmission
16
TCP (Transmission Control Protocol)
La fiabilité
Un Mécanisme naïf : “Send and Wait” : on transmet un segment
puis on attend l’acquittement avant de transmettre le suivant.
18
TCP (Transmission Control Protocol)
La fenêtre glissante
• Les performances sont en fonction de la taille de la fenêtre et de la vitesse à
laquelle le réseau accepte les paquets.
19
UDP (User Datagram Protocol) rfc 768
Services offerts :
de connexion)
UDP. 20
UDP (User Datagram Protocol) rfc 768
Entête
21
UDP (User Datagram Protocol) rfc 768
Entête
optionnel.
des données.
22
UDP (User Datagram Protocol) RFC 768
Fonctionnement
23