mardi 17-Déc-2002
   
 
 
 
  Travail
  Compte rendu des TP Réseaux
  Résumé Cours Réseaux
  Perso
  Photos
  Mes Favoris
  Me contacter

TCP

(Transport Control Protocol)

Apparu en 1974.

Appartient à la couche 4 du système OSI. Transport en mode connecté. Contrairement à UDP, TCP communique par flux d'octets.

L'entête TCP :

 
Port source
Port destination
 
Numéro de séquence
 
Numéro d'acquittement
 
Longueur de l'entête
F
L
A
G
S
Fenêtre
 
Contrôle d'erreur
Pointeur
 
Option

Flags :

 

Urgent

 

Lorsque ce flag est activé, le champs pointeur indique le début des octets à traiter en priorité.
 

Ack

 

Le numéro d'acquittement est valide
 

Eom

 

Est nécessaire à la segmentation des paquets. Le flag Eom est à 1 pour le dernier paquet d'un message segmenté. (option pour délimiter les messages dans le flux d'octets)

 

Rst

 

Rejet de demande de connexion (utilisé lors de doublon du paquet de demande de connexion)
 

Syn

 

Utilisé (bit Syn à 1) lors de la demande de connexion et lors de l'acceptation de connexion.
 

Fin

 

Demande de fermeture de connexion (fermeture dans un seul sens) => La machine ayant activé ce flag indique qu'elle n'a plus rien à émettre, mais elle peut toujours recevoir

La fermeture doit être réalisée dans les deux sens (<=> par les deux machines)

 

 

Ouverture et fermeture de connexion : Syn, Fin, Rst

Fragmentation et réassemblage : Eom

Contrôle de flux : Champ WIN = Nb d'octets que le récepteur est capable de stocker

Champ numéro de séquence : Numéro du premier octet de donnée.

Champ numéro d'acquittement : Valide si Ack = 1, c'est le numéro du dernier octet acquité +1 (c'est le numéro du prochain octet attendu)

Récupération des erreurs : Numéro de séquence(4octets) = numéro du premier octet de donnée du paquet ; Numéro d'acquittement (4 octets) = Numéro du dernier octets reçu +1 (= numéro du prochain octet attendu)

Gestion de données urgentes : Flag Urgent

 

Coté émetteur : Un timer est associé à chaque paquet + mémorisation du paquet. Retransmission lors de la fin du timer. Le timer est variable en fonction du temps d'aller-retour des paquets et ack précédents.

Coté récepteur : Si numéro de séquence attendu, alors acquittement jusqu'au dernier octet reçu, sinon : mémorisation du paquet et acquittement jusqu'au dernier octet reçu "sans trou".

 

Contrôle de flux : Fenêtre à anticipation variable : champ fenêtre = nombre d'octets pouvant être expédiés après le numéro d'acquittement. Si le champs fenêtre est à 0, le buffer de réception est plein et l'émission est bloquée jusqu'à une lecture de l'application. Déblocage ( l'émetteur tente de renvoyer de temps en temps de petites données, il regarde le champs fenêtre de l'acquittement pour savoir si le buffer s'est vidé) à partir d'un certain seuil de libération du buffer.

 

 
{reg2}  
Arnaud MARESCHAL Website - ingénieur Réseaux informatiques