Вы находитесь на странице: 1из 6

Introduction Couche physique Couche liaison Couche rseau Couche transport

Mode connect
Len-tte TCP
Port source Port de destination
Numros de port
un numro de port est un entier de 16 bits
les ports rservs (well known ports) de 0 1023
les ports de connexion (registered ports) de 1024 49151
les ports dynamiques (dynamic ports) de 49152 65535
la liste des numros
http://www.iana.org/assignments/port-numbers
2 / 25
Introduction Couche physique Couche liaison Couche rseau Couche transport
Mode connect
Len-tte TCP
Numro de squence
Pointeur urgent
Numros de squence
tout octet de donnes transmis sur une connexion TCP possde
son propre numro de squence de 32 bits
le numro de squence dun segment TCP est celui de son premier
octet de donnes
le pointeur durgence est un dcalage en octets partir du numro de
squence courant permettant de signaler les donnes urgentes
3 / 25
Introduction Couche physique Couche liaison Couche rseau Couche transport
Mode connect
Len-tte TCP
Numro d'accus de rception
Taille de la fentre
Acquittement et taille de fentre
le numro daccus de rception dun segment TCP est celui du
prochain octet de donnes attendu
la taille de la fentre prcise le nombre doctets que lon peut envoyer
la suite de loctet acquitt
4 / 25
Introduction Couche physique Couche liaison Couche rseau Couche transport
Mode connect
Len-tte TCP
U
R
G
A
C
K
P
S
H
R
S
T
S
Y
N
F
I
N
Six drapeaux
URG pointeur de donnes urgentes signicatif
ACK accus de rception signicatif
PSH fonction Push
RST rinitialisation de la connexion
SYN synchronisation des numros de squence
FIN n de transmission
5 / 25
Introduction Couche physique Couche liaison Couche rseau Couche transport
Mode connect
Len-tte TCP
Total de contrle
Total de contrle
Il porte sur len-tte, les donnes et le pseudo en-tte
Adresse source
Adresse de destination
Longueur du segment TCP Protocole TCP = 6 0
mise 0 du champ total de contrle
ajout ventuel dun octet nul
complment 1 de la somme des complments 1 des mots de 16 bits
6 / 25
Introduction Couche physique Couche liaison Couche rseau Couche transport
Mode connect
Len-tte TCP
LET
Options (zro ou plusieurs mots de 32 bits)
Les options
Elles permettent dajouter des possibilits non offertes dans len-tte xe
spcier la charge utile TCP la plus grande accepte
modier lchelle de fentre avec une taille sur 30 bits (RFC 1323)
autoriser une rmission slective avec la notion de NAK (RFC 1106)
7 / 25
Introduction Couche physique Couche liaison Couche rseau Couche transport
Mode connect
Politique de transmission TCP
Exemple de gestion de fentre sous TCP
l'application
crit 2Ko
l'application
lit 2Ko
l'metteur
est bloqu
l'metteur
peut envoyer
jusqu' 2Ko
0 4Ko
vide
plein
2K SEQ = 2048
2K SEQ = 0
1K SEQ = 4096
ACK = 2048 WIN = 2048
ACK = 4096 WIN = 0
ACK = 4096 WIN = 2048
metteur rcepteur
l'application
crit 2Ko
tampon
8 / 25
Introduction Couche physique Couche liaison Couche rseau Couche transport
Mode connect
Politique de transmission TCP
Possibilits en cas de fentre de rception nulle
Quand la fentre de rception est nulle, lmetteur ne peut envoyer de
segment que pour
permettre un utilisateur de stopper une application sexcutant sur la
machine distante (donnes urgentes)
obliger le rcepteur annoncer de nouveau
le prochain octet attendu
la taille de la fentre de rception
Souplesse dans le choix de transmission et dacquittement
un metteur nest pas tenu de transmettre immdiatement les donnes
provenant des applications
un rcepteur nest pas tenu dacquitter le plus vite possible
9 / 25
Introduction Couche physique Couche liaison Couche rseau Couche transport
Mode connect
Politique de transmission TCP
Problme de lapplication mettant octet par octet
l'application
dlivre
des donnes
octet par octet
segment TCP de 21 octets
segment TCP de 20 octets
metteur rcepteur
acquittement
1 octet de donne
segment TCP de 20 octets
segment TCP de 21 octets
cho
ack
Algorithme de Nagle
envoi du premier octet
stockage des autres dans un tampon
attente acquittement ou tampon plein
envoi du tout dans un segment
10 / 25
Introduction Couche physique Couche liaison Couche rseau Couche transport
Mode connect
Politique de transmission TCP
Syndrome de la fentre de rception stupide
l'application
dlivre beaucoup
de donnes
en gros blocs
l'application
lit 1 octet
plein
segment de 21 octets
segment TCP de 20 octets
metteur rcepteur
fentre de 1 octet
1 octet de donne
plein
Solution de Clark
Le rcepteur ne doit pas envoyer dindication
dactualisation de fentre tant que
fentre < min ( tampon / 2 , MSS )
11 / 25
Introduction Couche physique Couche liaison Couche rseau Couche transport
Mode connect
Contrle de congestion TCP
Evolution des rseaux et congestion
Internet connait partir doctobre 1986 une srie de situations dcroulement
dues des congestions
contrle de ux insufsant
contrle de congestion inexistant
Principe de Van Jacobson
publication de Congestion Avoidance and Control Proceedings of SIGCOMM 88
loi de conservation des paquets
ne pas injecter un nouveau paquet si un ancien nest pas sorti
le nombre de paquets injects doit tre infrieur la capacit
dacheminement du rseau
les acquittements permettent TCP de sauto-rguler (self-clocking)
12 / 25
Introduction Couche physique Couche liaison Couche rseau Couche transport
Mode connect
Contrle de congestion TCP
Gestion de multiples timers
timer de retransmission
retransmettre en supposant que lacquittement sest perdu
timer de persistance
viter les interblocages dus la perte de segments annonant une
fentre de rception non nulle
timer de limitation dattente
fermer une connexion aprs une longue inactivit
timer grant ltat TEMPORISATION pendant la fermeture
sassurer que tous les segments mis soient reus
13 / 25
Introduction Couche physique Couche liaison Couche rseau Couche transport
Mode connect
Contrle de congestion TCP
Timer de retransmission
difcult de calculer le temps aller-retour sur une destination
difcult de xer une valeur de temporisation
Dans la couche liaison
T 0.3
0.2
0.1
0
0 10 20
Dure d'un aller-retour (ms)
P
r
o
b
a
b
ilit


d
'a
r
r
iv

e

d
e
s

a
c
q
u
it
t
e
m
e
n
t
s
30 40 50
Dans la couche transport
T1 T2 0.3
0.2
0.1
0
P
r
o
b
a
b
ilit


d
'a
r
r
iv

e

d
e
s

a
c
q
u
it
t
e
m
e
n
t
s
0 10 20
Dure d'un aller-retour (ms)
30 40 50
14 / 25
Introduction Couche physique Couche liaison Couche rseau Couche transport
Mode connect
Contrle de congestion TCP
Timer de retransmission : algorithme de Jacobson & Karn
ajuste dynamiquement la valeur de temporisation temp
en fonction de mesures continues des performances du rseau
gre pour chaque connexion une variable RTT (Round Trip Time)
estimation courante du temps aller-retour
lenvoi dun segment, on arme un timer
si acquittement (au bout dun temps M) avant expiration
RTT RTT + (1 ) M
D D + (1 ) | RTT M |
temp RTT + 4 D
si expiration avant acquittement
temp 2 temp
15 / 25
Introduction Couche physique Couche liaison Couche rseau Couche transport
Mode connect
Contrle de congestion TCP
Algorithmes de dmarrage lent et dvitement de congestion
permettent de dterminer la taille de la fentre de congestion
augmentent progressivement la charge impose au rseau
se basent sur la MSS (Maximum Segment Size) xe par le rcepteur
et un seuil dvitement de congestion (Congestion Avoidance Threshold)
Algorithme de dmarrage lent (Slow Start)
utilis au dbut dun transfert ou aprs la rparation dune perte
dtecte par le timer de retransmission, et ceci tant que fc seuil
initialisation du ct metteur
fentre de congestion 1 MSS
seuil dvitement de congestion 64 Ko
la fentre de congestion est augmente de la taille des donnes
acquittes (doublement chaque RTT : croissance exponentielle)
16 / 25
Introduction Couche physique Couche liaison Couche rseau Couche transport
Mode connect
Contrle de congestion TCP
Algorithmes de dmarrage lent et dvitement de congestion
permettent de dterminer la taille de la fentre de congestion
augmentent progressivement la charge impose au rseau
se basent sur la MSS (Maximum Segment Size) xe par le rcepteur
et un seuil dvitement de congestion (Congestion Avoidance Threshold)
Algorithme dvitement de congestion (Congestion Avoidance)
principe AIMD (Additive Increase Multiplicative Decrease)
utilis ds que fc > seuil
la fentre de congestion est augmente de MSS par RTT (linaire)
utilis jusqu ce quil y ait dtection de congestion
expiration du timer de retransmission
arrive dun message source quench
17 / 25
Introduction Couche physique Couche liaison Couche rseau Couche transport
Mode connect
Contrle de congestion TCP
Augmentation de la fentre de congestion
tous les segments d'une rafale acquitts
fc < seuil
fc min ( seuil , 2 x fc ) fc fc + 1
oui non
Diminution de la fentre de congestion
seuil
dtection
fc seuil fc 1
dtection d'une perte de segment
fc / 2
expiration du timer rception d'ack dupliqu
18 / 25
Introduction Couche physique Couche liaison Couche rseau Couche transport
Mode connect
Contrle de congestion TCP
Exemple de contrle de congestion
44
40
36
32
28
24
20
16
12
8
4
0
0 2 4 6 8 10 12
Expiration du timer
Nouveau seuil
14 16 18 20 22 24
F
e
n

t
r
e

d
e

o
n
g
e
s
t
io
n

(
k
ilo
-
o
c
t
e
t
s
)
Nombre de transmissions
Seuil initial
19 / 25
Introduction Couche physique Couche liaison Couche rseau Couche transport
Mode connect
Contrle de congestion TCP
Algorithmes de retransmission rapide (Fast Retransmit)
et rcupration rapide (Fast Recovery)
la rception dun segment dsquenc
mission immdiate dun acquittement (dupliqu)
lorsquun segment comble un trou de squence
mission immdiate dun acquittement
la rception dun troisime acquittement dupliqu
seuil fc / 2
retransmission du segment visiblement perdu
fc seuil + 3 MSS
la rception de chaque acquittement dupliqu
fc fc + MSS
transmission dun segment si possible
la rception du premier acquittement de nouvelles donnes
fc seuil
20 / 25
Introduction Couche physique Couche liaison Couche rseau Couche transport
Mode connect
Contrle de congestion TCP
Exemple de contrle de congestion
44
40
36
32
28
24
20
16
12
8
4
0
0 2 4 6 8 10 12
Rception de doublons d'acquittement
Nouveau seuil
14 16 18 20 22 24
F
e
n

t
r
e

d
e

o
n
g
e
s
t
io
n

(
k
ilo
-
o
c
t
e
t
s
)
Nombre de transmissions
Seuil initial
21 / 25
Introduction Couche physique Couche liaison Couche rseau Couche transport
Mode connect
Contrle de congestion TCP/IP
Notication de congestion explicite ECN (RFC 3168)
RED (Random Early Detection)
mcanisme de gestion active de le dattente
un routeur voyant ses tampons se remplir peut dcider de supprimer
alatoirement des paquets avant que ses tampons soient
effectivement pleins et donc avant quil y ait effectivement
congestion
ECN offre aux routeurs une alternative de marquage des paquets
lunique solution de suppression
adoption progressive
coexistence et coopration avec dautres mcanismes
surcharge de traitement non rdhibitoire
22 / 25
Introduction Couche physique Couche liaison Couche rseau Couche transport
Mode connect
Contrle de congestion TCP/IP
Notication de congestion explicite ECN (RFC 3168)
notication dans len-tte IPv4 ou IPv6
Version=4 LET DSCP Longueur totale ECN
Version=6 tiquette de flux DSCP ECN
00 Not-ECT Not ECN-Capable Transport
01 ECT(1) si ncessaire
10 ECT(0) ECN-Capable Transport
11 CE Congestion Experienced
notication dans len-tte TCP
LET Taille de la fentre
U
R
G
A
C
K
P
S
H
R
S
T
S
Y
N
F
I
N
0
C
W
R
E
C
E
CWR Congestion Window Reduced
ECE ECN-Echo
23 / 25
Introduction Couche physique Couche liaison Couche rseau Couche transport
Mode connect
Contrle de congestion TCP/IP
Notication de congestion explicite ECN (RFC 3168)
ECT=10 ACK=1
ECT=00 SYN=1 CWR=1 ECE=1
ECT=10 ACK=1
ECT=00 SYN=1 ACK = 1 ECE=1
ECT=10 ACK=1
metteur rcepteur
ECT=11 ACK=1
congestion
naissante
diminution
du dbit
ECT=10 ACK=1 ECE=1
ECT=10 ACK=1 CWR=1
ECT=10 ACK=1
24 / 25
Introduction Couche physique Couche liaison Couche rseau Couche transport
Mode non connect
Le protocole UDP
UDP (User Datagram Protocol) protocol/nextheader 0x11
est un protocole de transport en mode non connect
utilise IP pour acheminer, dun ordinateur un autre, en mode non
able des datagrammes qui lui sont transmis par une application
permet de distinguer plusieurs applications destinatrices sur la mme
machine par lintermdiaire des ports
ni accus de rception, ni rordonnancement, ni contrle de ux
particulirement adapt
aux applications client-serveur (RPC)
aux applications multimdias temps rel (RTP & RTCP)
Port source
Longueur UDP
Port de destination
Total de contrle UDP
32 Bits
25 / 25