You are on page 1of 29

Couche Liaison de donnes P.

Sicard - Cours Rseaux


1
La couche liaison de donnes
MAC
Frontire du sous-rseau
Transport
Physique
Rseau
Liaison
Protocole de Transport
Protocole de Liaison de donnes
1
2
3
4
MAC
Liaison

2 Couche Liaison de donnes P. Sicard-Cours Rseaux 2
Dcoupage en trame
Un transfert able: La dtection/correction des erreurs
Contrle de ux et rcupration derreur
Accs multiples un support ( fait par la sous couche MAC :
Medium Access Control)
Un exemple : le protocole Ethernet
Une grande partie de ces problmatiques est en fait souvent
ralise dans la couche transport (en particulier pour les rseaux
locaux)
Dans Ethernet la couche Liaison se rsume la couche MAC ,
la dlimitation des trames et la dtection des erreurs
Cest un service sans connexion, ni acquittement
Le reste (contrle de ux et rcupration derreur) est fait dans
TCP
Services fournis la couche rseau

3 Couche Liaison de donnes P. Sicard-Cours Rseaux 2
But: xer une unit pour le contrle derreur.
Techniques de dcoupage en trame
1- Compter les caractres
2- Utiliser des marqueurs de dbut et de n de trame
3- Changer le codage utilis dans la couche physique
Notion de trame
F1 x y F2 F1 a b c d F2 F1 i j k l m n o p F2
Marqueurs de dbut et n de trame
3 x y 4 a b c d 7 i j k l m n o
nombre d'octets
3 trames:

4 Couche Liaison de donnes P. Sicard-Cours Rseaux 2
Problme de Transparence (1)
Confusion des dlimiteurs de trame et des donnes
Les donnes peuvent contenir les dlimiteurs de trames
Exemple 1 : caractres de dlimitation
Les caractres DLE STX et DLE ETX dlimite le dbut et la n des trames. Pour
assurer la transparence des donnes lmetteur rajoute un DLE devant tout DLE des
donnes.
DLE STX DLE STX DLE ETX
Donnes
DLE STX DLE DLE STX DLE ETX Envoys:
Marqueurs de dbut et n de trame

5 Couche Liaison de donnes P. Sicard-Cours Rseaux 2
Exemple 2 : Utilisation de fanions
HDLC est une procdure de liaison de donnes et qui utilise comme dlimiteur de
dbut et n de trame la squence de bits : 01111110
Pour assurer la transparence lmetteur ajoute systmatiquement un 0 aprs
toute squence de 5 bits 1 rencontre dans la trame
Le rcepteur effectue l'opration inverse, c'est dire quil retire le 0 qui suit
chaque squence de 5 bits 1.
Mthodes hybrides:
Certains protocoles combinent plusieurs de ces mthodes pour limiter les risques
de confusion en cas derreur. Que se passe-t-il si dans la 1re mthode le nombre
doctets est erron larrive ?
Exemple : Ethernet utilise un marqueur de dbut de trame et effectue une
violation du codage Manchester pour dtecter la n de trame
Transparence (2)

6 Couche Liaison de donnes P. Sicard-Cours Rseaux 2
Les donnes peuvent tre modies (ou perdues) pendant le
transport
Un service primordial pour de nombreuses applications
Exemple : le transfert de chier
La dtection derreur:
Comment se rendre compte de la modication/pertes des donnes larrive des
trames ?
La correction derreur, deux techniques :
Comment corriger larrive les donnes errones ? : La correction
Faire en sorte que lmetteur, renvoie les trames errones/perdues: la rcupration
derreurs
Le contrle derreur

7 Couche Liaison de donnes P. Sicard-Cours Rseaux 2
Ide: rajouter de linformation aux donnes permettant de
dtecter/corriger les erreurs larrive
Mme technique pour le stockage de donnes
Exemple de dtection: Le code de parit
On rajoute un bit 1 ou 0 suivant la parit du nombre de bits 1 dans les donnes.
Le rcepteur vrie la valeur de ce bit de parit.
Exemple:
Donnes: 1 0 0 0 1 1 Bit de parit: 1
Donnes: 1 0 0 1 1 1 0 1 1 Bit de parit : 0
Qualit de la dtection derreur ?
Est-on capable de dtecter 1 seul bit erron ? 2 bits ?...
La dtection/correction derreur

8 Couche Liaison de donnes P. Sicard-Cours Rseaux 2
Mot de code
Si une trame contient m bits de donnes et r bits de contrle, on appelle mot du
code le mot form par les m + r bits. On pose n = m + r.
Distance de Hamming
tant donn deux mots de n bits m1 et m2, le nombre de bits dont ils diffrent
est appel leur distance de Hamming (note Disth).
Distance de Hamming du code complet
h = { Min Disth(x1, x2) ; x1 et x2 M }
M est lensemble des 2
m
mots de codes possibles si on admet que les r bits de
contrle sont calculs en fonction des m bits de donnes.
Contrle derreur : un
modle dtude.

9 Couche Liaison de donnes P. Sicard-Cours Rseaux 2
Dtection derreur
9 10 ...
1 2 3 4 5 6 7 8
Bits de parit
k=8
n
Proprit:
Pour dtecter ( coup sr) x erreurs il suft que la distance de Hamming h x + 1
En effet ainsi sil y a x erreurs on ne pourra pas retomber sur un code existant
(diffrent forcment de x+1 bits)
Exemple de code dtecteur :
Bit de parit
m = 2, r =1 : M = {000, 011, 101, 110 }
h = 2 mais dtecte aussi tous les erreurs dont le nombre est impair
Bit de parit par colonne:
Trame considre comme une matrice n*k bits
1 bit de parit par colonne
h=2
dtection des rafales derreurs de longueur k

10 Couche Liaison de donnes P. Sicard-Cours Rseaux 2
Donnes considres comme n mots de k bits
Bits de contrles = complment 1 de la somme des n mots
A la rception la somme des n mots de donnes plus le checksum
ne doit pas contenir de 0
h=2 mais dtection aussi des rafales derreur de longueur k
Utilis dans UDP, TCP
Dtection derreur par
checksum
0 0 0 1 1 1 0 1
k=8
n=3
+
+
0 0 0 1 0 0 0 1
=
Checksum
0 0 1 1 0 0 0 0
0 1 0 1 1 1 1 0
1 0 1 0 0 0 0 1
Complment 1

11 Couche Liaison de donnes P. Sicard-Cours Rseaux 2
Dtection derreur par CRC
(Cyclic redundancy Code)
Base sur des calculs de division de polynme coefcient dans [0, 1]

Exemple: 1 0 1 0 1 correspond x
4
+x
2
+1

Division de x
3
+x
2
+1= (x
2
+1)* (x + 1) + (x) : Reste =x, Quotient = x+1
Arithmtique polynomiale modulo 2 (sans retenue): soustraction et addition sont
quivalentes un ou-exclusif bit bit
On se donne un polynme gnrateur G de degr n qui dtermine le nombre de bits de
contrle
T= Quotient*G + Reste donc (T+Reste)/G = 0
La trame envoye E= (Donnes, Reste) est divisible par G, il suft larrive de
calculer la division de E par G. Si le reste est non nul il y a une erreur
000...0
Donnes
T:
G
Quotient
Reste
n

12 Couche Liaison de donnes P. Sicard-Cours Rseaux 2

Exemple: 6 bits de donnes: 110101 , Polynme gnrateur 101 : x


2
+1
E= 110101 11
Ne dpend pas de la taille des donnes
Calcul coteux mais souvent fait par hard : ou exclusif successifs au fur et
mesure que la trame arrive.
On peut avec n=16 dtecter toutes les erreurs simples et doubles, toutes les erreurs
comportant un nombre impair de bits et tous les paquets d'erreur de longueur 16
et, avec une trs bonne probabilit, les paquets derreurs de longueur suprieure
.
Exemple: Ethernet utilise un champs CRC 16 bits.
Code dtecteur par CRC
1 1 0 1 0 1 0 0
1 0 1
1 0 1
0 1 1 1
1 1 1 0 1 1
1 0 1
0 1 0 0
1 0 1
0 0 1 1 0
1 0 1
0 1 1 0
1 0 1
Reste= 0 1 1

Couche Liaison de donnes P. Sicard - Cours Rseaux
13
Proprit:
Pour corriger x erreurs il suft que la distance de Hamming h 2x + 1
En effet s il y a x erreurs, le code erron reste ainsi le plus proche du code juste, on
peut donc le retrouver. Les autres ont encore x+1 diffrences.
Exemple de code correcteur
m = 2, r = 3
M = {00111, 01100, 10000, 11011}, h = 3, on corrige une erreur
Problme :
Quelle est la valeur minimale de r permettant de corriger les erreurs simples dans
des trames de m bits de donnes et r de contrle ?
Il faut que l'ensemble possible des mots errons (diffrant de 1 bit) pour chaque mot
juste soit infrieur au nombre de mots possibles, pour que lon ne retombe pas sur
un autre mot erron ou un original (quand il y a une erreur) cest dire:
(n+1) 2
m
<= 2
n
soit (m + r + 1) <= 2
r
2
m
mots justes avec (n+1) diffrents (n errons et le juste) pour chacun
Les codes derreur cotent chers
Par exemple: 4 bits sont ncessaires pour corriger une erreur sur 8 bits de donnes.
Correction derreur

14 Couche Liaison de donnes P. Sicard-Cours Rseaux 2

Les bits de donnes qui servent au calcul dun bit de contrle de numro c sont
ceux tel que c apparat dans la dcomposition en puissance de 2 de leur numro.
Exemple: 7 = 1 + 2+ 4 donc 7 apparat dans le calcul de 1, de 2 et de 4
1 calcul de telle faon que (1, 3, 5, 7, 9, 11, ) parit paire
2 calcul de telle faon que (2, 3, 6, 7, 10, 11,) parit paire
4 calcul de telle faon que (4, 5, 6, 7, 12, 13,) parit paire
...
Valable pour un nombre quelconque de bits de donne.
Nombre de bit de contrle minimal pour n bits de donnes
A destination on recalcule les bits de contrle. La somme des numros
des bits de contrle errons donne le numro du bit qui porte lerreur.
Le code correcteur de Hamming
Les bits de contrle sont les bits de numro= 2
n
3 4 5 6 7 8 9 10 11 12 1 2
r r r
r

15 Couche Liaison de donnes P. Sicard-Cours Rseaux 2
Rseaux particuliers diffusion: bus, radio
Intressant pour leur faible cot
Problme :
Rseau diffusion implique un support unique pour n metteurs/rcepteurs
Il existe diffrentes solutions pour raliser ces accs multiples:
Par partage strict du support
Le support est divis, soit dans le temps, soit physiquement
Par accs alatoire :
On parle quand on veut
Par accs squentiel
On parle tour de rle
La sous couche MAC:
Le contrle daccs multiple
au canal

16 Couche Liaison de donnes P. Sicard-Cours Rseaux 2
Multiplexage en frquence: Dcoupage et allocation
permanente des plages de frquences.
Exemple la radio FM
Problme de lallocation des plages de frquences
Multiplexage temporel: Dcoupage dans le temps de lallocation
de la totalit de la bande passante chaque entit
Peu efcace pour des changes sporadiques
Accs multiple: solutions
par partage
1 2 3 4 1 2 3 4 1 2 3 4
Intervalle de temps

17 Couche Liaison de donnes P. Sicard-Cours Rseaux 2
Une seule frquence, possibilits de collisions
Protocoles ALOHA (bonjour en hawaen)
Rseau radio entre iles hawaennes puis Ethernet en 73 et normalisation en 80
ALOHA PUR
Une station voulant mettre un paquet dinformation sur le rseau, commence
immdiatement le transmettre. videmment, si deux metteurs ou plus mettent
en mme temps, il y a collision et les metteurs devront r-mettre leur paquet
ultrieurement.
La r-mission a lieu immdiatement avec une probabilit p. Sinon lmetteur
attend la dure dmission dune trame puis mettra avec une probabilit p.
On peut montrer que l'on arrive une efcacit de 18% du dbit total dans le
meilleur des cas
Accs multiple: solutions par
accs alatoires

18 Couche Liaison de donnes P. Sicard-Cours Rseaux 2
Le temps est discrtis en intervalles de dure M/D
M: nombre de bits des messages
D: dbit
M//D = temps dmission d'une trame
Les horloges de toutes les stations sont synchronises
Les messages ne peuvent tre transmis quen dbut dintervalle
Lefcacit est ainsi double (0,37)
Aloha discrtis
-M/D 0 2*M/D 3*M/D
temps
Transmission russie
Collision
M/D

19 Couche Liaison de donnes P. Sicard-Cours Rseaux 2
Pour augmenter les performances:
CSMA (Carrier Sense Multiple Access) : on sait dtecter si le cble est libre
CD (Collision detection): une machine coute le cble pendant quelle met, sil
y a une diffrence par rapport ce quelle met, cest quil y a une collision
Il y a encore des collisions !
Dtection des collisions
une station qui veut dtecter les collisions doit observer le cble pendant une
dure de 2* t (avec t = temps de propagation du signal dun bout lautre du
cble) sinon lefcacit seffondre : les erreurs devront tre rattrapes par les
couches suprieures
T=2* t est appel la tranche canal
Vers un protocole avec dtection
dactivit et de collision
A
B
t - e
2* t -e

20 Couche Liaison de donnes P. Sicard-Cours Rseaux 2
Une station ayant dtecte une collision se met en attente pendant une dure
alatoire X dont lintervalle de dnition double chaque nouvelle collision
jusqu une valeur maximum au-del de laquelle elle abandonne
Exemple pour 2 stations, au premier coup:
soit 2 stations tirent 0 ou 1 -> nouvelle collision
Soit 2 stations 0 et t ou t et 0-> plus de collision
Donc 1 chance sur 2 pour avoir nouveau une collision
Sinon on passe une chance sur 4 au deuxime coup ... etc
Donc lattente des stations est non dterministe
Il existe un protocole dterministe (plus compliqu), il implique que lon
connat le nombre et lidentication des stations du rseau
Stratgie de rsolution des collisions

21 Couche Liaison de donnes P. Sicard-Cours Rseaux 2
Construire trame mettre; NbTentative=0
Rpter:
Tant que cble occup faire attendre
Tant que pas de collision faire transmettre
Si collision dtecte et NbTentative <16 faire
Arrter transmission + mission brouillage
Tirage alatoire du temps dattente X en fonction du nombre de tentative
Attendre X
NbTentative= NbTentative+1
Jusqu transmission complte ou NbTentative =16

Tirage alatoire:
premire collision on tire alatoirement X dans {0, T}
deuxime collision on tire X dans {0, t, 2*T, 3*T }

i me collision on tire X dans {0, ..., (2


i
- 1) * T }
On sarrte i = 10 pour lintervalle des dures et 16 pour le nombre dessais
Le protocole Ethernet

22 Couche Liaison de donnes P. Sicard-Cours Rseaux 2
Soit Tprop le temps maximal de propagation sur le support (Longueur du support/
vitesse), Soit Tmis le temps dmission moyen dune trame (Longueur trame/dbit)
Si lon dnit lefcacit E comme le temps moyen dmission de trame sans collision
Avec un nombre important de station voulant mettre, on arrive approximativement
E= 1/(1+(5*Tprop/Tmis))
Tprop tend vers 0 , E tend vers 1
Tmis devient grand / Tprop, E tend vers 1
Efcacit en fonction de la taille des trames et du nombre de station tentant dmettre
avec Tprop=50 microsec et un dbit de 10 mgabits/s
Efcacit du protocole Ethernet

23 Couche Liaison de donnes P. Sicard-Cours Rseaux 2
Normes 802.3
10 base 2 : cble coaxial n
10 base T, 100 base T: paires torsades
100 base FX : bre optique
Ethernet 10 mga bit/s

Longueur maximale du support= 2500 m , vitesse de propagation= 10


8
m/s

Temps suppos maximal sur le rseau: Tranche canal : T = 2 * t = 50. 10


-6
s

Longueur minimale des trames 50. 10


-6
*10. 10
6
arrondie 512 bits= 64 octets
Ethernet 100 Mgabit/s
On garde taille minimale des trames 64 octets
Tranche canal 5,12 microsecondes
Rduction de la longueur du support (250 m)
Ethernet 1 gigabit/s existe, bientt Ethernet 10 gigabit/s
Caractristiques dEthernet

24 Couche Liaison de donnes P. Sicard-Cours Rseaux 2
Prambule : 7 octets 10101010, pour la synchronisation bit du rcepteur
Marqueur de dbut : 1 octet 10101011
Adresse source et destination :
FF:FF:FF:FF:FF:FF adresse broadcast
Champ longueur ou protocole suprieur: 2 octets.
La longueur dune trame doit tre au minimum de 64 octets de ladresse
destination au champ contrle.
Pad : si la longueur des donnes transmettre est insufsante ce champ contient des
octets de remplissage quelconques.
Contrle : il sagit de 4 octets servant au contrle derreur (par CRC)
La trame Ethernet
Prambule
Adr
destination
Adr
source
Donnes Pad
Dlimiteur
de
trame
Type du protocole suprieur (Ethernet)
ou
Longueur du champ donnes (802.3)
Bourrage
7 1 6 6 2 0 - 1500 0 - 46
Contrle CRC
4
Nombre doctets

Couche Liaison de donnes P. Sicard - Cours Rseaux
25
Principe base de jeton
Un message particulier appel jeton, passe de station en station tour de rle
(topologie danneau).
Recevant le jeton, une station qui veut mettre retire le jeton et le remplace
par son message. Quand elle a ni dmettre la station qui a retir le jeton en
r-met un quelle transmet sa voisine. Une station ne dsirant pas mettre
retransmet le jeton sa voisine.
Problmes
Si on ne dispose pas dune topologie en anneau il faut la recrer, au moyen
dun protocole (dit protocole danneau virtuel : bus jeton).
Qui gnre le premier jeton, le recre en cas de disparition et en assure
lunicit ?
Anneau ou bus jeton (norme 802.5 et 802.4)
En dsutude par rapport Ethernet (mme pour les rseaux
industriel temps-rel)
Accs multiple: Solutions
dallocation sans collision

26 Couche Liaison de donnes P. Sicard-Cours Rseaux 2
Connexion de LAN htrognes
Optimisation de la charge
Le pont fait ofce de ltre et il y a donc moins de charge sur chaque LAN
Augmentation des performances : domaines de collisions restreints
Augmentation de la abilit
Les ponts
Hub
Pont
Lan1
Lan2

27 Couche Liaison de donnes P. Sicard-Cours Rseaux 2
Filtrage des trames au vue des adresses Ethernet destinations
Mmorisation des trames
Analyse de lentte Ethernet
Rmission sur un seul port
Gestion dune table : adresses Ethernet appartenant chaque rseau avec
dure de vie limite
Auto-apprentissage des adresses Ethernet grce ladresse source des premiers
paquets. Les premiers paquets sont rmis sur tous les ports.
Algorithme de larbre recouvrant (spanning tree) pour liminer les problmes
de boucle et de multiplication de trames
Fonctionnement des ponts
Lan1
Lan2
Lan3
Pont1
Pont2

28 Couche Liaison de donnes P. Sicard-Cours Rseaux 2
Pont haute performance (nombreux ports, ltrage)
Utilis la place des hubs pour augmenter les performances
Existe avec diffrents dbits sur les ports
Par exemple: 1 port 100 mgabit/s et 10 ports 10 mgabit/s
Mmorisation des trames dans le switch
Possibilits de plusieurs ux en parallle
Il ny a plus de collisions
Le commutateur (ou switch) Ethernet
A B C D
F E
Commutateur

Couche Liaison de donnes P. Sicard - Cours Rseaux
29
Possibilits dmettre et de recevoir en mme temps
Algorithme Ethernet change : pas de dtection de porteuse, de
dtection de collision
Carte Ethernet particulire dite full duplex
Saturation possible du commutateur (mmoire pleine)
Suppression des trames par le commutateurs (reprise des pertes par couche
suprieure)
Fausse trame gnre par le commutateur dans le cas du half duplex pour
limiter les missions
Trame de stop/start comprise par les cartes Ethernet dans le cas du full-duplex
Commutateur la vole (cut-through switching):
pour diminuer le temps de mmorisation/rmission, le commutateur
commence rmettre ds quil a reu ladresse destination
Intressant seulement quand la le dattente de sortie est vide
Commutateur Ethernet

You might also like