20.07.2014 Views

U.E. Architecture des Réseaux (ARES) 3/5 : Couche transport

U.E. Architecture des Réseaux (ARES) 3/5 : Couche transport

U.E. Architecture des Réseaux (ARES) 3/5 : Couche transport

SHOW MORE
SHOW LESS

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

Service de base<br />

Service fiable<br />

Contrôle de congestion<br />

Principes de transfert de données fiable<br />

TCP : un protocole en mode orienté connexion<br />

TCP : mécanismes de fiabilisation<br />

Service de base<br />

Service fiable<br />

Contrôle de congestion<br />

Principes de transfert de données fiable<br />

TCP : un protocole en mode orienté connexion<br />

TCP : mécanismes de fiabilisation<br />

Transmission fiable de TCP<br />

TCP : Calcul du RTT<br />

TCP est un protocole fiable de transfert sur le service IP non fiable<br />

mécanismes de base :<br />

pipeline<br />

ACK cumulatifs<br />

temporisateur de retransmission unique<br />

retransmissions déclanchées par :<br />

expiration de temporisation (timeout)<br />

duplication d’ACK<br />

dans la suite...<br />

émetteur TCP simplifié :<br />

pas d’ACK dupliqué<br />

pas de contrôle de flux<br />

pas de contrôle de congestion<br />

Round Trip Time<br />

Estimation de la temporisation de retransmission :<br />

supérieure au RTT... mais le RTT varie !<br />

trop petit : retransmissions inutiles<br />

trop grand : réaction lente aux pertes<br />

Estimation du RTT :<br />

RTT mesure = ∆ (envoi segment, reception ACK correspondant)<br />

RTT mesure peut varier rapidement ➠ lissage<br />

RTT = αRTT mesure + (1 − α)RTT ancien<br />

avec α usuel = 1/8<br />

moyenne glissante à décroissance exponentielle<br />

Olivier Fourmaux (olivier.fourmaux@upmc.fr)<br />

U.E. <strong>Architecture</strong> <strong>des</strong> Réseaux (<strong>ARES</strong>) 3/5 : <strong>Couche</strong> <strong>transport</strong><br />

Olivier Fourmaux (olivier.fourmaux@upmc.fr)<br />

U.E. <strong>Architecture</strong> <strong>des</strong> Réseaux (<strong>ARES</strong>) 3/5 : <strong>Couche</strong> <strong>transport</strong><br />

Service de base<br />

Service fiable<br />

Contrôle de congestion<br />

TCP : Exemple de calcul de RTT<br />

Principes de transfert de données fiable<br />

TCP : un protocole en mode orienté connexion<br />

TCP : mécanismes de fiabilisation<br />

Service de base<br />

Service fiable<br />

Contrôle de congestion<br />

TCP : Temporisations<br />

Principes de transfert de données fiable<br />

TCP : un protocole en mode orienté connexion<br />

TCP : mécanismes de fiabilisation<br />

ms<br />

500<br />

450<br />

400<br />

350<br />

300<br />

250<br />

200<br />

150<br />

100<br />

0 20 40 60 80 100 120<br />

temps (ACK)<br />

"RTT_calcul"<br />

"RTT_mesure"<br />

Gestion de multiples temporisations (timers) :<br />

retransmission timer (détecte les pertes)<br />

RTO = RTT + δD<br />

avec δ = 4 et une valeur initiale du RTT élevée (3 secon<strong>des</strong>)<br />

D = β(|RTT mesure − RTT ancien |) + (1 − β)D ancien<br />

calcul de l’écart moyen avec β usuel = 1/4<br />

algorithme de Karn<br />

ne pas tenir compte <strong>des</strong> paquets retransmis et doubler le RTO<br />

à chaque échec (exponential backoff)<br />

persistence timer (évite les blocages)<br />

envoi d’un acquittement avec une fenêtre à 0<br />

keep alive timer (vérifie s’il y a toujours un <strong>des</strong>tinataire)<br />

closing timer (terminaison)<br />

Olivier Fourmaux (olivier.fourmaux@upmc.fr)<br />

U.E. <strong>Architecture</strong> <strong>des</strong> Réseaux (<strong>ARES</strong>) 3/5 : <strong>Couche</strong> <strong>transport</strong><br />

Olivier Fourmaux (olivier.fourmaux@upmc.fr)<br />

U.E. <strong>Architecture</strong> <strong>des</strong> Réseaux (<strong>ARES</strong>) 3/5 : <strong>Couche</strong> <strong>transport</strong>

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!