TCPIP Rhattoy 20 Etud
TCPIP Rhattoy 20 Etud
TCPIP Rhattoy 20 Etud
ESTM 1
ESTM 2
Le datagramme IPV4
0 4 8 16 19 24 31
VERS HL Type de service Longueur totale du paquet
IDENTIFICATION Flags Place du fragment
TTL Protocole ChecksumHeader
Adresse IP Source
Adresse IP Destination
Options Padding
Données
...
ESTM 3
priorité D T R Inutilisé
ESTM 4
FRAGMENT OFFSET, FLAGS, IDENTIFICATION :
Sur toute machine ou passerelle mettant en œuvre TCP/IP on définit une unité
maximale de transfert (Maximum Transfert Unit ou MTU).
lorsque le datagramme est routé vers un réseau physique dont le MTU est plus
petit que le MTU courant, la passerelle fragmente le datagramme en un certain
nombre de fragments,
Longueur totale : taille du fragment et non pas celle du datagramme initial.
IDENTIFICATION : entier sur 16 bits qui identifie le datagramme courant.
FLAGS contient un bit appelé « Do not fragment" (010)
un autre bit appelé "More fragments" (FLAGS = 001 signifie d'autres
fragments à suivre) permet au destinataire final de reconstituer le
datagramme initial en identifiant les différents fragments (milieu ou fin du
datagramme initial)
ESTM 5
ESTM 6
Durée de vie
Ce champ indique en secondes, la durée maximale de transit du
datagramme sur internet.
Protocole
Ce champ identifie le protocole de transport de niveau supérieur
auquel a été confié le paquet.
6 : TCP,
17 : UDP,
1 : ICMP
Somme de contrôle de l’en-tête
Ce champ permet de détecter les erreurs survenant dans l'en-tête
du datagramme.
OPTIONS
Le champ OPTIONS est facultatif et de longueur variable. Les
options concernent essentiellement des fonctionnalités de
mise au point.
ESTM 7
ESTM 8
UDP : protocole de transport sans connexion.
L'arrivée des messages ainsi que l’ordonnancement ne sont pas
garantis.
Identification du service : les ports
Les adresses IP désignent les machines entre lesquelles les
communications sont établies. Lorsqu'un processus désire entrer en
communication avec un autre processus, il doit adresser le processus
s'exécutant cette machine.
L'adressage de ce processus est effectué selon un concept abstrait,
ces destinations abstraites permettant d'adresser un service applicatif
sont des ports de protocole.
L'émission d'un message se fait sur la base d'un port source et d’un
port destinataire.
Les processus disposent d'une interface système leur permettant de
spécifier un port ou d'y accéder (socket).
ESTM 9
Données ...
Les ports source et destination contiennent les numéros de port utilisés par UDP pour
démultiplexer les datagrammes destinés aux processus en attente de les recevoir.
ESTM 11
ESTM 12
Transport fiable.
Service orienté connexion.
Garantie de livraison des datagrammes ainsi que
de leur ordonnancement.
ESTM 13
Connexion
Une connexion de type circuit virtuel est établie avant que les
données ne soient échangées : appel + négociation +
transferts.
Une extrémité de connexion = couple (adresse IP, port).
ESTM 14
Segmentation
Segmentation, contrôle de flux
Les données transmises à TCP constituent un flot d'octets de longueur
variable.
TCP divise ce flot de données en segments en utilisant un mécanisme de
fenêtrage.
Un segment est émis dans un datagramme IP.
Acquittement de messages
Contrairement à UDP, TCP garantit l'arrivée des messages, c'est à dire qu'en
cas de perte, les deux extrémités sont prévenues.
Ce concept repose sur les techniques d’acquittement de message : lorsqu'une
source S émet un message Mi vers une destination D, S attend un
acquittement Ai de D avant d'émettre le message suivant Mi+1.
Si l’acquittement Ai ne parvient pas à S, S considère au bout d'un certain
temps que le message est perdu et reémet Mi :
ESTM 15
Acquittements
Emission de Mi
Temporisation
Mi n‘est pas reçu
armée
Ai non envoyé
Réception de Mi
Emission de Ai
Réception de Aj
ESTM 16
Fenêtrage
ESTM 17
Segment
Segment : unité de transfert du protocole TCP.
échangé pour établir les connexions.
transférer les données.
émettre des acquittements.
fermer les connexions.
0 4 10 16 24 31
Port source Port destination
Numéro de séquence
Numéro d’acquittement
HLEN réservé Codes fenêtre
N * 32bits
Checksum pointeur urgence
Options éventuelles padding
Données . . .
ESTM 18
Numéro de séquence : un nombre indiquant la position du bloc
courant dans l’ensemble du message.
ESTM 19
ESTM 20
Format du header
OPTIONS
ESTM 21
TCP : connexion
Une connexion TCP est établie en trois temps de manière à assurer la synchronisation
nécessaire entre les extrémités :
SYN SEQ 50
ACK 201
ESTM 22
TCP : transfert
SYN SEQ 50
ACK 51
ESTM 23
TCP : déconnexion
Une connexion TCP est libérée en un processus dit "trois
temps modifié":
FIN SEQ 50
ACK 51
+ fin -> applicatif
ESTM 24
TCP : ports standards
ESTM 25