Vous êtes sur la page 1sur 20

Protocole TCP

Protocole TCP

Mode contextuel Transport Contrôle Contrôle de


(connecté) fiable de flux congestion

GRT4-RM-VoIP 146
Protocole TCP
SOURCE A DESTINATION B

Connection request SYN (SEQ= x)


(SYN = 1; ACK=0)
SYN (SEQ=y, ACK=x+1) Connection accepted
(SYN = 1; ACK=1)
SYN (SEQ=x+1, ACK=y+1)
Connection confirmée
(SYN = 1; ACK=1)

Echange données Echange données


(SEQ=Vs, ACK=Vr+n) (SEQ=Vr, ACK=Vs+m)

END (SEQ=v)
Clear request
(END=1,ACK=0)
END (SEQ= 0, ACK=v+1) Clear confirm
(END=1,ACK=1)

- Les valeur initiales X, Y et V sont aléatoires, fixées par l ’horloge


- Les connexions sont unidirectionnelles; elles doivent être établies
dans les deux sens pour une communication duplex
GRT4-RM-VoIP 147
Protocole TCP : Mode Fiable

sender receiver

GRT4-RM-VoIP 148
Protocole TCP : Mode Fiable

sender receive
r
1er bit du paquet est émis, t =
Dernier bit du Segment est émis, 0

1er bit de paquet reçu


RTT Dernier bit de Segment reçu,
envoie ACK

ACK arrive, envoie du précdent


Segment,

GRT4-RM-VoIP 149
Protocole TCP : Mode Fiable

sender receive
r
1er bit du paquet est émis, t =
Dernier bit du Segment est émis, 0

1er bit de paquet reçu


RTT Dernier bit de Segment
reçu, envoie ACK

ACK arrive, envoie du prochain


Segment,

GRT4-RM-VoIP 150
Protocole TCP : Mode Fiable

sender receiver
1er bit du paquet est émis, t = 0
Dernier bit du Segment est émis, t = L
/ R

1er bit de paquet reçu


RTT Dernier bit de Segment reçu,
envoie ACK

ACK arrive, envoie du prochain


Segment, t = RTT + L / R

L (packet length in bits)


T Transmit = : Temps de transmission
par la
R (transmission rate, bps)
source

GRT4-RM-VoIP 151
Exemple d’application

• Pour un lien à 1 Gbps link


• 1 paquet chaque RTT=30 ms
• Une transmission à 8 kb par
paquet
U L/R .008
= = = 0.00027
sender 30.008
RTT + L / R microsec
onds

Taux d’utilisation très faible : transmission half duplex

GRT4-RM-VoIP 152
TCP : le fenêtrage

• La technique acquittement simple pénalise les


performances puisqu'il faut attendre un acquittement
avant d'émettre un nouveau message.

• La technique du fenêtrage : une fenêtre de taille T,


permet l'émission d'au plus T messages "non acquittés"
avant de ne plus pouvoir émettre :

GRT4-RM-VoIP 153
Rappel du protocole TCP

sender receiver
1er bit du paquet est émis, t = 0
Dernier bit du paquet est émis,
t = L / R

1er bit du paquet reçu

RTT Dernier bit reçu, envoi ACK


Dernier bit du 2ème paquet reçu, envoi ACK
Dernier bit du 3ème paquet reçu, envoi ACK

ACK arrive, envoie du prochain


paquet, t = RTT + L / R

Améliore le taux d’utilisation


par un facteur de 3!

U 3*L/R .024
= = = 0.0008
sender 30.008
RTT + L / R microsecon
ds
GRT4-RM-VoIP 154
TCP Round Trip Time et Timeout

• Pour prendre en compte les variations des délais rencontrés, TCP utilise
un algorithme adaptatif
• Cet algorithme :
– gère les délais correspondant à chaque connexion
• Dépenent des équipements traversés (performance, charge,…)

– Ajuste les valeurs de temporisation

RTT: gaia.cs.umass.edu to fantasia.eurecom.fr

350

300

250
RTT (milliseconds)

200

150

100
1 8 15 22 29 36 43 50 57 64 71 78 85 92 99 106
time (seconnds)

SampleRTT Estimated RTT

GRT4-RM-VoIP 155
TCP Round Trip Time et Timeout

• enregistre la date d’émission d’un segment,

• enregistre la date de réception de l’acquittement correspondant,

• calcule l’échantillon de temps de boucle RTT écoulé,

• détermine le temps de boucle moyen RTT (Round Trip Time) :

Nouv_RTT = (a * Anc_RTT) + ((1-a) * Mes_RTT))

avec 0<= a < 1

» a proche de 1 : RTT insensible aux variations brèves,


» a proche de 0 : RTT très sensible aux variations rapides,

• calcule la valeur du temporisateur en fonction de RTT.

• Les premières implémentations de TCP ont choisi un coefficient


constant B pour déterminer cette valeur : Temporisation = B * RTT
avec B >1 (généralement B=2).

GRT4-RM-VoIP 156
Protocole TCP : C. Congestion Vs C. de flux

Sender Network Receiver

CF

CC

GRT4-RM-VoIP 159
Rappel du protocole UDP

Protocole de transport non fiable en mode non connecté

• PAS de CONTEXTE:
– Envoi de messages de bout en bout avec minimum de
fonctionnalités.

• PAS de CONTRÔLE de FLUX :


– Pas de garantie d ’arrivée
– Pas de contrôle de séquencement

• SÉCURISATION :
– Somme de contrôle (Dont pseudo-entête)

GRT4-RM-VoIP 160
Le protocole UDP

32 bits

0 31

ADRESSE IP SOURCE
Pseudo
ADRESSE IP DESTINATION
Entête
RÉSERVÉ LONGUEUR UDP

PORT SOURCE PORT DESTINATION

LONGUEUR MESSAGE TOTAL CONTROLE

... DONNÉES ...

Message UDP = DATAGRAMME UDP


GRT4-RM-VoIP 161
TCP Vs UDP

• TCP • UDP
1. Phase de 1. Pas de signalisation
signalisation Lourde
2. Taille datagramme
2. Traitement d’erreurs petite
3. Traitement du 3. Pas de contrôle
désordre 1. Flux
4. Contrôle de 2. Congestion
1. Flux 4. Pas de fiabilité
2. Congestion
5. Taille Segment
1. Grande

GRT4-RM-VoIP 162
Traitement des pertes en VoIP

• Utiliser TCP ?
– Pertes dans le réseau détectées par le récepteur TCP
– Traitement des pertes par TCP inadéquat en VoIP
• Re-émission du segment TCP perdu:
augmentation de gigue !!
• Réduction de la fenêtre d’émission: diminution
du débit et augmentation du délai !!

• Utiliser UDP ?
– Absence de traitement des pertes
– Pertes dans le réseau non détectées par le récepteur UDP
• UDP ne peut pas reconstituer le flux audio !!

GRT4-RM-VoIP 163
Traitement des pertes en VoIP

• Des deux protocoles candidats au transport des


données multimédias à savoir TCP et UDP,

– l’un est « trop complet »

– et l’autre trop limité.


• Il est cependant possible de partir du protocole UDP
et de lui ajouter des fonctionnalités inspirées de TCP
(ordonnancement).

GRT4-RM-VoIP 164
Applications

• Type 1 • Type 2
– Fiabilité – Temps réel
– Débit variable – Débit constant

– TCP – UDP

GRT4-RM-VoIP 165
Applications

• TCP • UDP
• Message transmis • Message transmis
– ALLO – ALLO
• Message reçu • Message reçu
– OALL – OL !!!
• Message Reconstitué (App) • Message Reconstitué (App)
– ALLO – ???

– Additivité garantie – Auditivité non garantie

GRT4-RM-VoIP 166
Traitement des pertes en VoIP

• Utiliser UDP + un autre mécanisme


– Détection des Pertes

– Mesure de la qualité de la transmission….


– Contribuer à la Fiabilité des transmissions
– Permettre différentes stratégies de traitement des pertes au niveau
applicatif

Ce mécanisme = les protocoles RTP/RTCP

GRT4-RM-VoIP 167

Vous aimerez peut-être aussi