Différences
Ci-dessous, les différences entre deux révisions de la page.
Les deux révisions précédentesRévision précédenteProchaine révision | Révision précédente | ||
010-deep:030-transport [le 08/02/2025 à 18:18] – [Le segment] prof | 010-deep:030-transport [le 14/02/2025 à 17:41] (Version actuelle) – [Séquence TCP] prof | ||
---|---|---|---|
Ligne 2: | Ligne 2: | ||
Ici, deux formats d' | Ici, deux formats d' | ||
===== Le segment ===== | ===== Le segment ===== | ||
+ | Autrement-dit TCP. | ||
+ | |||
+ | C'est le mode connecté qui utilise TCP. Pratiquement, | ||
{{: | {{: | ||
- | Autrement-dit TCP. L' | + | L' |
- Le port source (16 bits). | - Le port source (16 bits). | ||
- Le port destination (16 bits). | - Le port destination (16 bits). | ||
Ligne 9: | Ligne 12: | ||
- Acknowledgment Number (32 bits). Lorsqu' | - Acknowledgment Number (32 bits). Lorsqu' | ||
- Offset (4 bits) définit le nombre de mots de 32 bits présents dans l' | - Offset (4 bits) définit le nombre de mots de 32 bits présents dans l' | ||
- | - 6 bits dont les 3 premiers sont éservés | + | - 6 bits dont les 3 premiers sont réservés |
- ECN/NS | - ECN/NS | ||
- CWR | - CWR | ||
- ECE | - ECE | ||
- | | + | * ces bits ne sont pas systématiquement utilisés car tous les protagonistes d'une transmission doivent être capables de gérer l' |
+ | | ||
+ | - Checksum (16 bits) est une somme de contrôle de l' | ||
+ | - Urgent pointer (16 bits) concerne l' | ||
+ | - Enfin, le champ Options + padding contient des options 8-o et le padding est un bourrage de bits pour que la taille de l' | ||
+ | ==== Séquence TCP ==== | ||
+ | {{ : | ||
+ | Les champs '' | ||
+ | - le premier '' | ||
+ | - le serveur dans sa réponse ACK Va calculer l' '' | ||
+ | - le client va reprendre comme '' | ||
+ | - et ainsi de suite jusqu' | ||
+ | |||
+ | Notons que les longueurs indiquées sont les longueurs du segment TCP. | ||
+ | |||
+ | Cette façon de faire permet au serveur de garantir qu'il classera les segments reçus dans le bon ordre, même si IP avait fait que ces segments avaient été transportés dans le désordre. | ||
+ | ==== Agrandir la fenêtre ==== | ||
+ | Comprenons bien l' | ||
+ | |||
+ | Lorsqu' | ||
+ | |||
+ | Les deux nœuds disposent d'un tampon de réception d'une certaine taille et l'ACK ne devient vraiment nécessaire que lorsque le tampon va déborder. Nous avons vu que la taille de ce tampon est définie sur 16 octets soit 2< | ||
+ | |||
+ | Comme il n'est pas possible, à l' | ||
+ | |||
+ | Les deux nœuds négocient ce paramètre '' | ||
+ | |||
+ | Ceci permet de bien ouvrir la fenêtre... | ||
===== Le datagramme ===== | ===== Le datagramme ===== | ||
- | Autrement-dit UDP | + | Autrement-dit UDP. |
+ | |||
+ | Alors là, pas de chichi ! Même pas besoin de faire un dessin. L' | ||
+ | - 2 octets pour le port source. | ||
+ | - 2 octets pour le port destination | ||
+ | - 2 octets pour la longueur de tout le datagramme. | ||
+ | - 2 octets pour le checksum. Lui est un peu plus complexe. Il est calculé en tenant compte d'une partie de l' | ||
+ | |||
+ | Compte tenu de l’extrême simplicité de ce type de transport, il est principalement utilisé pour des données intégralement insérées dans un datagramme. Dans tous les cas de figure, si l' |
Transport: Dernière modification le: 08/02/2025 à 18:18 par prof