Vous êtes sur la page 1sur 6

B.KECHAR : bkechar2000@yahoo.

fr Sous Couche LLC - Page 1


Chapitre III : La sous couche LLC Module : Rseaux dordinateurs Anne : 2007/2008




Universit dOran Es-Snia
Facult des sciences
Dpartement dInformatique
Support de cours

Copyright 2007























B.KECHAR
Email : bkechar2000@yahoo.fr


La couche liaison de donnes (sous couche LLC)

2.1 Objectifs

Implantation dalgorithmes pour la communication fiable et efficace entre deux machines
voisines.
Fournir des services la couche rseau.

2.2 Fonctions principales

dtection derreurs de transmission,
contrle de flux

Le rle de la couche liaison de donnes est de faire paratre un canal de
communication non fiable comme tant parfait dans le but que tous les bits transmis
arrivent correctement lautre bout.


3.3.3. Couche liaison de donnes
(Sous couche LLC)
Plan

2.1 Objectifs
2.2 Fonctions principales
2.3 Mthode de parit
2.4 Mthode du CRC (code redondance cyclique)
2.5 Mthode du Code de Hamming
2.6 Contrle de flux


B.KECHAR : bkechar2000@yahoo.fr Sous Couche LLC - Page 2
Chapitre III : La sous couche LLC Module : Rseaux dordinateurs Anne : 2007/2008
Mthode de dtection et
de correction
Codes
dtecteurs
redondance faible
Codes
correcteurs
forte redondance
Rcepteur : dtecte
l'erreur et demande sa
retransmision
Les codes redondance
cyclique (CRC)
Rcepteur: dtecte et
corrige l'erreur
Code de Hamming
Parit
redondance trs
faible
(1 bit)
Rcepteur: calcule le
nombre de bits 1
- parit paire
- parit impaire




2.3 Mthode de parit

A chaque bloc de i bits (i=7 ou 8), on ajoute un bit de parit de telle sorte que parmi les i+1 bits mis, le
nombre de bits 1 soit toujours pair (parit paire) ou impair (parit impaire).
Exemple :
0110100 : bloc envoyer,
parit paire :01101001 ------->au niveau du rcepteur le nombre de 1 doit tre paire, sinon il y a erreur.
Parit impaire :01101000 --->au niveau du rcepteur le nombre de 1 doit tre impaire, sinon il y a erreur.

Donc, la rception, le dcodeur calcule le nombre de bits 1 :
si parit paire et nombre de bits pair alors on suppose quil ny a pas derreur,
si parit paire et nombre de bits impair alors il y a erreur de transmission, mais on ne sait pas la
localiser et il faut donc demander la remission de ce bloc.
si parit impair et nombre de bits impair alors on suppose quil ny a pas derreur,
si parit impair et nombre de bits pair alors il y a erreur de transmission, mais on ne sait pas la
localiser et il faut donc demander la remission de ce bloc.
Inconvnients:
Ne permet pas de dtecter 2n erreurs dans le mme bloc car la parit ne sera pas chang.
Avantage:
Elle prsente une faible redondance (1 seul bit ajout dans le message envoyer) et elle est
simple mettre en uvre.

2.4 Mthode du CRC (code redondance cyclique)

Elle ajoute des bits qui sont des combinaisons linaires de bits de linformation transmettre. La suite de
bits transmettre u
1
u
2
. u
k
est considre comme un polynme M(x)=u
1
X
k-1
+u
2
X
k-2
+.+u
k
.
Exemple : la suite de bits transmettre 1101011011 on fait correspondre le polynme :
M(x)=x
9
+x
8
+x
6
+x
4
+x
3
+x+1
A lmission, on calcule : x
r
* M(x)/G(x) o G(x) est le polynme gnrateur de degr r (standardis), le
terme x
r
* M(x) signifie quon ajoute r 0-bits aprs le bit du poids faible du message transmettre (M(x)).
Ceci implique que : x
r
* M(x) = Q(x) * G(x) + R(x) avec :
Rseaux : technique utilise
Codes dtecteurs


B.KECHAR : bkechar2000@yahoo.fr Sous Couche LLC - Page 3
Chapitre III : La sous couche LLC Module : Rseaux dordinateurs Anne : 2007/2008
Q(x) : le quotient ; G(x) : le polynme gnrateur ; R(x) : polynme reste de la division.
Remarque : larithmtique polynomiale est faite ici modulo 2. Dans cette arithmtique il ny a pas de
retenue dans laddition ni dans la soustraction, les oprations et + sont quivalentes (il sagit du ou
exclusif).
La suite de bits correspondants R(x) constituent le CRC, qui est ajout linformation transmettre.
Le polynme mis est : E(x)= x
r
* M(x) + R(x)
Exemple : si G(x)=x
4
+x+1 (degr =4)
Alors (aprs le calcul de division modulo 2)

x
13
+x
12
+x
10
+x
8
+x
7
+x
5
+x
4
= (x
9
+x
8
+x
3
+x) (x
4
+x+1)+ (x
3
+x
2
+x)
x
4
* M(x) Q(x) G(x) R(x)
11010110110000 1100001010 10011 1110
Ceci implique :

(x
13
+x
12
+x
10
+x
8
+x
7
+x
5
+x
4 ) -
(x
3
+x
2
+x) = (x
9
+x
8
+x
3
+x) (x
4
+x+1)
x
4
* M(x)R(x) Q(x) G(x)
11010110110000 - 1110 1100001010 10011
Or dans larithmtique modulo 2, la soustraction est quivalente laddition, donc on aura :

(x
13
+x
12
+x
10
+x
8
+x
7
+x
5
+x
4 ) +
(x
3
+x
2
+x) = (x
9
+x
8
+x
3
+x) (x
4
+x+1)
x
4
* M(x)+R(x) Q(x) G(x)
11010110110000 + 1110 1100001010 10011
11010110111110 1100001010 10011
E(x) Q(x) G(x) E(x) est multiple de G(x)

Le bloc E(x), cest dire, M(x) :1101011011, accompagn du CRC :1110, sera transmis.

A la rception, on divise le polynme M(x) correspondant la suite total de bits reus par G(x), qui est
aussi connu au niveau du rcepteur.
Si le reste calcul est non nul alors il existe une ou plusieurs erreurs dans la transmission.
Si le reste est nul alors la transmission sest faite sans erreur.

Dans le cas o il ny a pas derreurs, le polynme reu M(x)=E(x)
Dans le cas o il y a erreur, le polynme reu M(x)=E(x)+T(x) avec T(x) tant le polynme
correspondant aux erreurs (par exemple : T(x)=x
i
si le i
me
bit a t invers).
En faite, la rception, le dcodeur calcule le reste de : [E(x)+T(x)]/G(x) qui revient calculer T(x)/G(x)
car E(x) est un multiple de G(x) comme nous lavons dmontr plus haut. Si le rsultat de la division est
non nul alors T(x) est non nul ce qui explique quil a eu de(s) erreur(s) lors de la transmission.
Si T(x) est multiple de G(x) alors le rsultat est nul (alors quil y a eu erreur), ceci masque des erreurs.
Mais le choix judicieux de G(x) permet de minimiser ces erreurs non dtectes.

Inconvnient :
Si lerreur se produit au niveau du CRC et non au niveau de linformation transmettre alors la mthode
signale une erreur de transmission et demande une retransmission inutile.

Qualit de la mthode : dpend du polynme gnrateur G(x). Seulement les erreurs qui sont
gaux des polynmes divisibles par G(x) ne sont pas reconnus.

Type derreurs:
1 erreur simple
2 erreurs simples isoles
un nombre impair de bits errons
suite conscutifs de bits <r.
Exemple de CRC :
CRC-CCITT-HDLC : G(x) =x
16
+x
12
+x
5
+1
Ethetnet: G(x) =x
32
+x
26
+x
23
+x
22
+x
16
+x
12
+x
11
+x
10
+x
8
+x
7
+x
5
+x
4
+x
2
+1


B.KECHAR : bkechar2000@yahoo.fr Sous Couche LLC - Page 4
Chapitre III : La sous couche LLC Module : Rseaux dordinateurs Anne : 2007/2008
CRC-12=X
12
+x
11
+x
3
+x
2
+x+1 (1100000001111)
CRC-1=x
16
+x
15
+x+1 (11000000000000101)

Algorithme (rsum de la mthode)
Considrons la suite de bits transmettre u
1
u
2
. u
k
: un polynme M(x)=u
1
X
k-1
+u
2
X
k-2
+.+u
k

(ex:1011 M(x)=x
3
+x+1)

2. Soit r le degr de G(x) polynme gnrateur (ex:x
2
+1 101). Ajouter
r 0-bits aprs le bit de poids faible du bloc transmettre. Il contient ainsi m+r bits, correspondant
au polynme x
r
M(x) (ex:101100 x
5
+x
3
+x
2
=
x
2
(x
3
+x+1)).
3. Effectuer la division modulo 2 du polynme x
r
M(x) par G(x)
ie : x
r
M(x) =Q(x) G(x)+R(x) R(x) est le CRC
(ex : (x
5
+x
3
+x
2
)/(x
2
+1)=x
3
+1 reste 1 R(x)=1)
4. Soustraire modulo 2 le reste R(x) de la chane de bits correspond au polynme x
r
M(x). Le
rsultat de cette opration est la trame transmise au destinataire. Appelant E(x) le polynme
correspondant
(E(x)=x
r
M(x)-R(x) E(x)=x
r
M(x)+R(x))
(ex : (x
5
+x
3
+x
2
)-1 =x
5
+x
3
+x
2
+1 qui correspond la chane
1 0 1 1 0 1



5. Le rcepteur calcul E(x)/G(x) : sil y a un reste alors une erreur a eu lieu
demande retransmission.

2.5 Mthode du Code de Hamming

Cette mthode utilise galement des bits supplmentaires (redondants) et les ajoute au bits du
message envoyer (ce sont des bits de contrle).
Ainsi, une trame (message) est form de :
bits de donnes (m bits)
bits de contrle (r bits)
n=m+r est note la longueur de la trame. La chane des n bits sera appele mot de code (codeword).

Dfinition :
Soient deux mots de code M et M, la distance de Hamming est le nombre de bits diffrents entre M et
M. elle est calcule comme suit :
on effectue MM,
on compte le nombre de bits 1 du rsultat.

Soit une distance de Hamming d entre M et M, il faut d erreurs de 1 bit pour que M devient M.
Par exemple : M=00011101, M=01110101 d=3.

Exemple de code de Hamming :

Il est donn par la technique suivante :
On veut envoyer des caractres cods sur 4 bits de donnes ABCD (m=4), on va mettre la suite (le
mot de code) ABCP
2
DP
1
P
0
dans laquelle les bits de contrle Pi(i=0,1,2), donc r=3, sont placs sur les
bits de rang 2
i
.
Rang 7 6 5 4 3 2 1
Mot de code A B C P
2
D P
1
P
0

2
i
2
2
=4 2
1
=2 2
0
=1

Calcul des bits de contrle P
0
,P
1
,P
2

CRC


B.KECHAR : bkechar2000@yahoo.fr Sous Couche LLC - Page 5
Chapitre III : La sous couche LLC Module : Rseaux dordinateurs Anne : 2007/2008
Les P
i
sont des bits de parit dfinis laide des bits de donnes de rang k tels que la dcomposition de
k en somme de puissance de 2 contienne 2
i
.
Exemple :
A est un bit de rang 7=2
0
+2
1
+2
2
A sert au calcul de P
0
, P
1
et P
2
.
B est un bit de rang 6=2
1
+2
2
B sert au calcul de P
1
et P
2
.
C est un bit de rang 5=2
0
+2
2
C sert au calcul de P
0
et P
2
.
D est un bit de rang 3=2
0
+2
1
D sert au calcul de P
0
et P
1
.

P
0
=ACD
P
1
=ABD
P
2
=ABC
A la rception, on calcule :

P
0
=P
0
ACD
P
1
=P
1
ABD
P
2
=P
2
ABC
Si on obtient P
2
=P
1
=P
0
=0 pas derreur pendant la transmission.
Sinon, la valeur binaire de P
2
P
1
P
0
donne la place de lerreur dans les bit reus (en commenant par la
droite). On corrige alors lerreur et on recalcule les P
i
, sil sont devenus tous nuls, lerreur a t corrige,
sinon il y avait au moins deux erreurs et on peut rejeter la suite de bits mais pas la corriger.

Par exemple, le message envoyer est : 0010 (A=0 ; B=0 ; C=1 ; D=0), donc la chane envoyer (mot
de code) est : 001P
2
0P
1
P
0
.

P
0
=ACD P
0
=010 =1
P
1
=ABD P
1
=000 =0
P
2
=ABC P
2
=001 =1
On envoie: 0011001,

Si au niveau du rcepteur en reoit : 0010001 (bit P
2
invers),
On trouve :

P
0
=P
0
ACD P
0
=1010 =0
P
1
=P
1
ABD P
1
=0000 =0
P
2
=P
2
ABC P
2
=0001 =1
P
2
P
1
P
0
=100 rang 4 donc lerreur tait en 4eme place.
On corrige pour obtenir 0011001 et un nouveau calcul donne P
2
=P
1
=P
0
=0 qui montre quon a corrig.

Remarque : les codes de Hamming ne peuvent corriger que les erreurs simples.


2.6 Contrle de flux

Le contrle de flux assure que lmetteur n envoie pas plus que le rcepteur ne puisse recevoir.

mthode arrt et attente stop and wait : transmision dune trame la fois avec acquittement
individuel.
Mthode des fentres danticipation (sliding window protocol) : transmission continue de trames
jusqu une limite du nombre de trames non acquittes.

Exemples de protocoles


B.KECHAR : bkechar2000@yahoo.fr Sous Couche LLC - Page 6
Chapitre III : La sous couche LLC Module : Rseaux dordinateurs Anne : 2007/2008
t
e
m
p
s
E metteur R cepteur
trame1
A CK
trame2
NA K
trame2
A CK
t
e
m
p
s
E metteur
R cepteur
trame1
A CK
trame2
trame2
A CK
t
e
m
p
o
r
i
s
a
t
e
u
r
t
e
m
p
o
r
i
s
a
t
e
u
r
t
e
m
p
o
r
i
s
a
t
e
u
r

t
e
m
p
s
Emetteur Rcepteur
trame(1)
ACK
trame(1)
trame(2)
ACK
t
e
m
p
o
r
i
s
a
t
e
u
r
t
e
m
p
o
r
i
s
a
t
e
u
r
t
e
m
p
o
r
i
s
a
t
e
u
r
t
e
m
p
s
Emetteur
Rcepteur
trame1
ACK
trame1
ACK
t
e
m
p
o
r
i
s
a
t
e
u
r
t
e
m
p
o
r
i
s
a
t
e
u
r
b
i
e
n

r
e

u
e
Duplication
Sol: Numroterationdes trames
ACK
trame(1)
bien reue
trame(1)
ignore
trame(2)
bien reue



t
e
m
p
s
Emetteur Rcepteur
trame(1)
ACK(1)
trame(1)
trame(2)
t
e
m
p
o
r
i
s
a
t
e
u
r
t
e
m
p
o
r
i
s
a
t
e
u
r
t
e
m
p
o
r
i
s
a
t
e
u
r
t
e
m
p
s
Emetteur
Rcepteur
trame(1)
ACK
trame(1)
ACK
t
e
m
p
o
r
i
s
a
t
e
u
r
t
e
m
p
o
r
i
s
a
t
e
u
r
ACK i n t er pr t
com m e
acq ui t t em en t
p ou r l a t r am e(2)
Sol: Numroterationdes acquittements
ACK(1)
trame(1)
bien reue
trame(1)
ignore
trame(2)
bien reue
trame(2)
trame(1)
ignore
trame(1)
bien reue

Vous aimerez peut-être aussi