0% ont trouvé ce document utile (0 vote)
30 vues9 pages

Exercice de TCP : Débit, Fenêtre et Contrôle de Congestion

td tcp

Transféré par

Lounes Abbar
Copyright
© © All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd
0% ont trouvé ce document utile (0 vote)
30 vues9 pages

Exercice de TCP : Débit, Fenêtre et Contrôle de Congestion

td tcp

Transféré par

Lounes Abbar
Copyright
© © All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd

Université Paris-saclay 2021

Master E3A M2 PRO Res-Tel

TD TCP
Exercice 0 : Débit réel et fenêtre

On considère plusieurs liaisons utilisées par une connexion TCP :


Fenêtre Débit TCP Taux
liaison Débit brut RTT (octets) utilisation
Ethernet 100 Mb/s 0.3 ms
Canal T1 satellite 1.54 Mb/s 500 ms
T3 transcontinental 45 Mbps 60 ms
Gigabit transcontinental 1 Gbps 60 ms

Sur ces liaisons, un hôte TCP envoie des fenêtres maximales.


 Quelle est la taille d’une fenêtre maximale TCP ? Wmax = 524288 bits
 Pour chaque liaison, quel est le débit maximum au niveau TCP ? Dtcp = Wmax/RTT bits/s
 Pour chaque liaison, quel est le taux d’utilisation de la liaison ? Taux = Dtcp / Dlink

Exercice 1 : Diagramme d’échange TCP

Une connexion TCP est établie entre 2 hôtes A et B.


Sur le diagramme d’échanges page suivante, chaque segment est résumé par une ligne:
Seq=2000 (1000) Ack=7000 W= 4000

2000 =numéro de séquence initial du premier octet du segment
(1000) nombre d’octets de données contenus dans le segment
Ack=7000 = numéro d’acquittement
W=4000 = nombre d’octets dans la fenêtre de contrôle de flux TCP

 Compléter le diagramme d’échanges en annexe.

 Expliquer pourquoi B renvoie des segments contenant 0 octets.

G30 – TD TCP 1
Exercice 2:
Client
Serveur Web
Envoie des données
Envoie des données de
de 100 bytes
1000 bytes
CPT_em = 3259
CPT_REC= 0
CPT_em=712
CPT_REC=

CPT_em =
CPT_REC=
CPT_em =
CPT_REC=
Exercice 2:
Client
CORRIGE Serveur Web
Envoie des données
Envoie des données de
de 100 bytes
1000 bytes
CPT_em = 3259
CPT_REC= 0
CPT_em=712
CPT_REC=3260
CPT_em =3260
CPT_REC=713
CPT_em = 713
CPT_REC=3360
CPT_em = 3360
CPT_REC= 1713
CPT_em = 1713
CPT_REC= 3460

CPT_em =3460
CPT_REC= 2713
CPT_em =2713
CPT_REC= 3560
CPT_em = 3560
CPT_REC= 3713

CPT_em =3713
CPT_em = 3660 CPT_REC= 3660
CPT_REC=3714

CPT_em = 3660
CPT_REC= 3714 CPT_em = 3714
CPT_REC= 3660

CPT_em =3714
CPT_REC=3661
Université Paris-saclay 2021
Master E3A M2 PRO Res-Tel

Exercice 2 : Fast Retransmit


Examiner le tableau des échanges de segments TCP ci-dessous et expliquer ce qu’il se passe :

No Source Destination TCP Application commentaire


50034 > http [SYN] Seq=0 Port client :50034
51 [Link] [Link] Win=8192 Len=0 MSS=1460 Port serveur = 80=http
WS=2
http > 50034 [SYN, ACK] Seq=0
52 [Link] [Link] Ack=1 Win=5672 Len=0
MSS=1430
50034 > http [ACK]Seq=1 Ack=1 pas de données
53 [Link] [Link]
Win=17016 Len=0
HTTP GET ….
50034 > http [ACK] Seq: 1, HTTP/1.1
54 [Link] [Link]
Ack: 1, Len: 752

http > 50034 [ACK] Seq=1 Ack


55 [Link] [Link]
=753 Win=7232 Len=0
http > 50034[ACK] Seq: 2837, segment déséquencé
56 [Link] [Link] HTTP
Ack: 753, Len: 1026
50034 > http [ACK] Seq: 753, répéte dernier ACK
57 [Link] [Link]
Ack: 1, Len: 0

http > 50034[ACK]Seq: 1, Ack: HTTP/1.1 200 envoi du premier segment


58 [Link] [Link]
753, Len: 1418 OK
50034 > http [ACK]Seq=753
59 [Link] [Link] ack le segment 58
Ack=1419 Win=17016 Len=0
http > 50034[ACK]Seq: 1419, envoi du deuxième segment
60 [Link] [Link] HTTP
Ack: 753, Len: 1418

ack les 3 segments


50034 > http [ACK]Seq=753
61 [Link] [Link]
Ack=3863 Win=17016 Len=0

http > 50034[ACK]Seq: 6699,


62 [Link] [Link] HTTP segment déséquencé
Ack: 753, Len: 1260

50034 > http [ACK]Seq=753


63 [Link] [Link] répète le dernier ack
Ack=3863 Win=17016 Len=0

http > 50034[ACK]Seq: 3863,


64 [Link] [Link] HTTP en séquence
Ack: 753, Len: 1418

50034 > http [ACK]Seq: 753, ack le segment 64


65 [Link] [Link]
Ack: 5281, Len: 0
http > 50034[ACK]Seq: 5281,
66 [Link] [Link] HTTP segment en séquence
Ack: 753, Len: 1418
50034 > http [ACK]Seq=753
67 [Link] [Link] ack les segments 62, 64 et 66
Ack=7959 Win=17016 Len=0

G30 – TD TCP 2
Université Paris-saclay 2021
Master E3A M2 PRO Res-Tel

Exercice 3 : TCP

Pour chacun des segments A, B, C et D envoyés par l’hôte émetteur, expliquez comment l’hôte
récepteur acquitte ce qu’il reçoit. Mettez à jour les compteurs Em et Rec.

ACK=1000 1000

ACK=1100 REC= 1100


1100
1100

NE FAIT RIEN
1200
1200

REC=1100
Déséquencement
ACK=1100 Répète dernier ack

timeout
renvoi des segments C et D

Segment A Le Récepteur reçoit un segment avec Seq=800 alors que son


compteur indique 1000 => le segment a déjà été reçu ; le R
envoie le dernier acquittement

Segment B

Segment C

Segment D

G30 – TD TCP 3
Université Paris-saclay 2021
Master E3A M2 PRO Res-Tel

Exercice 4 : TCP Une connexion TCP est établie entre 2 hôtes A et B. Sur le diagramme
d’échanges, chaque segment est résumé par une ligne: Seq=2000, 100 bytes data ou Ack=7000, W=
4000

50 REC=150
50
150

150
150 250

250

FENËTRE 250 250


[250,550]

350
350 250 250 350 450
450
450

250 250 350 550


250

250
3 ACK DUPLIQUES

SEQ=250, 100 BYTES 550

EM=550
ACK=550, W=300

 Compléter le diagramme d’échanges ci-dessus en faisant figurer les valeurs du compteur


d’émission Em ou Cpt_emis et de celui de réception Rec ou Cpt_rec, les valeurs des
numéros de séquence et d’acquittement (SEQ et ACK) ainsi que l’état de remplissage du
buffer de réception.
 Le troisième segment envoyé par A est perdu. Effectuez la reprise sur erreurs.

G30 – TD TCP 4
Université Paris-saclay 2021
Master E3A M2 PRO Res-Tel

Exercice 4 : TCP congestion control


La figure ci-dessous montre le comportement de la fenêtre de congestion d’une connexion dans TCP
Reno. L’unité de temps est le RTT (Round Trip Time), la fenêtre de congestion est donnée en nombre
de segments. Répondre aux questions et justifier vos réponses.
TCP Reno
34 TIMEOUT
SS=32/2=16
32
30
28
26
24
Congestion Window Size

22 3 ack dupliqués
SS= 20/2=10
20 CA
timeout
18
ss=16 SS=16/2=8
16
14 CA CA
12
SS
10
8
6
4
SS
2
0
0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34
RTT

a) Donnez 2 raisons pour justifier pourquoi la phase slow start est utilisée

b) Identifier le(s) intervalle(s) de temps pendant lesquel(s) la connexion est dans la phase TCP
Slow Start.

c) Quelle est la valeur du seuil de Slow Start au premier RTT?

d) Identifier le(s) intervalle(s) de temps pendant lesquel(s) la connexion est dans la phase TCP
Congestion Avoidance.

G30 – TD TCP 5
Université Paris-saclay 2021
Master E3A M2 PRO Res-Tel

e) Après le 15ème (14ème) RTT, la perte d’un segment est-elle détectée par un triple ACK dupliqué
ou un time-out?

f) Quelle est la valeur du seuil de Slow Start après cette perte?

g) Après le 21ème RTT, la perte d’un segment est-elle détectée par un triple ACK dupliqué ou un
time-out?

h) Quelle est la valeur du seuil de Slow Start après cette perte?

G30 – TD TCP 6
Université Paris-saclay 2021
Master E3A M2 PRO Res-Tel

HOMEWORK

Exercice 5 : TCP Congestion Control TCP utilise un algorithme de contrôle de congestion qui gère
la taille de la fenêtre de congestion en fonction des détections de pertes de segment.
Pas de 3 Ack dupliqué avec TCP Tahoe
On considère que le protocole TCP Tahoe est utilisé avec une fenêtre initiale de 1. Il n’y a aucun
retard dans les acquittements : un segment est immédiatement acquitté par le récepteur TCP. On
considère une application qui doit transférer en tout 18 segments. NB : on reste dans la phase Slow
Start donc on n’a pas besoin de seuil.

Questions:
a. En supposant qu’il n’y a aucune perte lors du transfert des 7 premiers segments, quelle
est la valeur de la fenêtre de congestion Cwnd après la réception du 7ème acquittement ?

b. Quels segments seront transmis à réception du 7ème acquittement ?

c. On suppose que le 8ème segment est perdu, mais pas les segments ultérieurs. Quelle est la
valeur de Cwnd à la fin de la connexion quand les 18 segments de l’application ont été
acquittés. Pour cette question, on suppose que l’acquittement correspondant au segment
retransmis n’augmente pas la valeur de Cwnd.

d. Que devient le temps de transfert total si l’on divise le RTT (Round Trip Time) de la
connexion par 2 ?

G30 – TD TCP 7

Vous aimerez peut-être aussi