Introduction
Le protocole TCP, est l'abréviation de «Transfer Control Protocol», soit une suite un protocole de transport permettant de transmettre des paquets sur un réseau entre les différents ordinateurs. Parmi les caractéristiques le définissants :
- Le protocole TCP est un protocole fiable, il est conçu pour n'avoir aucune perte de données. En opposition avec le protocole UDP.
- Mode connecté à flots d'octets : Il peut fonctionner aussi bien par modem téléphonique qu'avec une carte réseau.
- Il dispose d'un contrôle de flux de données par fenêtre.
- Il est full duplex.
- Il permet de sélectionner un service particulier : Il offre la possibilité d'utiliser un numéro de port réseau pour la source et un numéro de port pour la destination. Par conséquent, il propose un mode multiplexage grâce au concept de port.
Segment TCP
Voici la structure de données des différents champs d'un segment TCP :
Position | Taille | Description |
---|---|---|
Octet 0, bit 0 | 2 octets (16 bits) | Ce champ permet d'indiquer le port source. |
Octet 2, bit 0 | 2 octets (16 bits) | Ce champ permet d'indiquer le port de destination. |
Octet 4, bit 0 | 4 octets (32 bits) | Ce champ permet d'indiquer le numéro de séquence. |
Octet 8, bit 0 | 4 octets (32 bits) | Ce champ permet d'indiquer le numéro d'acquittement. |
Octet 12, bit 0 | 4 bits | Ce champ permet d'indiquer la taille de l'entête. La valeur par défaut est 5. |
Octet 13, bit 2 | 1 bit | Ce champ permet d'indiquer s'il existe la présence de données urgente. |
Octet 13, bit 2 | 1 bit | Ce champ permet d'indiquer s'il faut tenir compte du numéro d'acquittement. |
Octet 13, bit 4 | 1 bit | Ce champ permet d'indiquer s'il faut demander d'acquitter immédiatement les données à l'application. |
Octet 13, bit 5 | 1 bit | Ce champ permet d'indiquer s'il faut reprendre la connexion depuis le début. |
Octet 13, bit 6 | 1 bit | Ce champ permet d'indiquer s'il faut ouvrir une connexion. |
Octet 13, bit 7 | 1 bit | Ce champ permet d'indiquer s'il faut fermer la connexion. |
Octet 14, bit 0 | 2 octets (16 bits) | Ce champ permet d'indiquer la fenêtre, soit le nombre d'octets à recevoir pour le numéro d'acquittement. |
Octet 16, bit 0 | 2 octets (16 bits) | Ce champ permet d'indiquer la sommation de vérification, soit un calcul en fonction de l'entête TCP et des données. |
Octet 18, bit 0 | 2 octets (16 bits) | Ce champ permet d'indiquer un pointeur vers les données urgentes. |
Octet 20, bit 0 | variable | Ce champ optionnel permet d'indiquer le bourrage, doit être un multiple de 4 octets. |
variable | variable | Ce champ permet d'indiquer les données. |
Dernière mise à jour : Mardi, le 16 février 2016