Vous êtes sur la page 1sur 15

Cours rseaux informatiques

Techniques de dtection & de


correction des erreurs de
transmission
Rushed KANAWATI
Dpartement GTR - IUT de Villetaneuse, 2002
rushed.kanawati@lipn.univ-paris13.fr

R. Kanawati, Cours rseaux, IUT de Villetaneuse, dpartement GTR, 1er anne, 2002-2003

Sommaire

2 / 15

n
n
n

Problmatique
Principe de dtection des erreurs
Techniques de dtection des erreurs
u
u

Techniques de correction des erreurs


u
u

Codes de parit
Code polynomiale (CRC)
Codes auto-correcteurs : code de Hamming
Correction par demande de retransmission

Bibliographie
Le plan de ce cours est inspir du cours fait par B. Cousin, IFSIC, Universit de Rennes

R. Kanawati, Cours rseaux, IUT de Villetaneuse, dpartement GTR, 1er anne, 2002-2003

Problmatique

3 / 15

Entit A

1001001

Entit B

1000001

Erreur
Comment B peut dtecter l'occurrence dune erreur ?
Comment B peut localiser une erreur ?
Comment B peut corriger une erreur ?

R. Kanawati, Cours rseaux, IUT de Villetaneuse, dpartement GTR, 1er anne, 2002-2003

Approche nave : la rptition


n

4 / 15

Dtection derreurs
u Le message envoy est constitu du double du
message initial.
u Envoyer 10010011001001 au lieu de 1001001
u Le rcepteur dtecte une erreur si les exemplaires ne
sont pas identiques.
Auto-correction
u Le message envoy est constitu du triple du message
initial.
u Envoyer 100100110010011001001 au lieu de 1001001
u Le message correcte correspond aux 2 exemples
identiques.

R. Kanawati, Cours rseaux, IUT de Villetaneuse, dpartement GTR, 1er anne, 2002-2003

Quelques remarques
n

La dtection et la correction des erreurs ncessitent


dintroduire de la redondance dans les messages
transmis.
Certaines erreurs ne peuvent pas tre dtectes
u

Certaines erreurs dtectes ne peuvent pas tre corriges


u

5 / 15

Exemple : Une erreur diffrente sur au moins deux exemplaires.

Certaines erreurs sont mal corriges


u

Exemple : la mme erreur sur les deux exemplaires

une mme erreur sur deux exemplaires simultanment

Lauto-correction ncessite plus de redondance que


la simple dtection.

R. Kanawati, Cours rseaux, IUT de Villetaneuse, dpartement GTR, 1er anne, 2002-2003

Dtection des erreurs :


Code de parit
n
n

6 / 15

La parit peut tre paire ou impaire.


Pour une parit paire (impair), on protge une
squence de k bits par lajout de r bits de sorte
que le nombre de bits ayant la valeur 1 soit pair
(impair)
Lettre

Code ASCII

(parit paire)

(parit impaire)

G
T
R

1110001
0100001
0100101

11100010
01000010
01001011

11100011
01000011
01001010

Ce code dtecte les erreurs en nombre impair.


Pas de correction automatique.

R. Kanawati, Cours rseaux, IUT de Villetaneuse, dpartement GTR, 1er anne, 2002-2003

Dtection des erreurs :


Code polynomial
n

A toute squence de bits on associe un polynme


U = <u0, u1, u2 ,..., un > U( x) = u0 +u1 .x+ u2 .x2
+...+ un .xn
u 1001001 X6 +X3+1
u

7 / 15

Les squences envoys (cods) doivent tre un multiple


dun polynme g(x) dit polynme gnrateur.
Le polynme g(x) est connu lavance par
lmetteur et le rcepteur.

R. Kanawati, Cours rseaux, IUT de Villetaneuse, dpartement GTR, 1er anne, 2002-2003

Procdure de codage
n

n
n

Soit P(X) le polynme associ la squence de bits


protger.
Soit g(x) le polynme gnrateur de degr k .
Les calculs sont faits dans le corps Z/2Z
u

n
n

8 / 15

1+1=0; X+X=0; X=-X

On calcule P(X) = P(X).Xk


u Ceci quivaut un dcalage de P(X), de k positions
vers la gauche.
On divise P(X) par g(x).
u P(X)=Q(X).g(X)+R(X)

Le message envoy est : P(X) +R(X)


P(X)+R(X) = Q(X).g(X) est multiple de g(X)

R. Kanawati, Cours rseaux, IUT de Villetaneuse, dpartement GTR, 1er anne, 2002-2003

Procdure de dcodage
n
n

9 / 15

Soit M(X) le message reu.


On divise M(X) par g(X)
Si le reste de division est non nul alors : dtection
dune erreur.
u Sinon (reste de division nul) il y a une forte
probabilit que la transmission est correcte.
u

R. Kanawati, Cours rseaux, IUT de Villetaneuse, dpartement GTR, 1er anne, 2002-2003

Exemple
n
n
n
n

10 / 15

Soit la squence 1101 envoyer


g(x) = x 3+x+1
P(x)=x3+x2+1
P (x)=P(x).x 3=x6+x5+x3
x6+x5+x3

x3+x+1

x6 +x4+x3
x5+x4

x3 +X2 +X+1

x5+x3+x2
x4+x3+x2
x4+x2+x
x3+x
x3+x+1

R(x)=1

Message envoy : 1101001

R. Kanawati, Cours rseaux, IUT de Villetaneuse, dpartement GTR, 1er anne, 2002-2003

Caractristique du code
polynomiale
n

11 / 15

La qualit de la protection dpend du choix du


polynme gnrateur g(x).
On dmontre par exemple (voir TD 03) que si :
g(x) comporte au moins 2 termes alors les erreurs
simples sont dtectables.
u si g(x) a un facteur irrductible de trois termes
alors les erreurs doubles sont dtectables
u g(x) est multiple de x+1 alors les erreurs en
nombre impair sont dtectables.
u

R. Kanawati, Cours rseaux, IUT de Villetaneuse, dpartement GTR, 1er anne, 2002-2003

Correction des erreurs


n

12 / 15

Deux approches :
u

Utilisation de code auto-correcteurs


F

Exemple : code de Hamming

Correction par retransmission


F

Si dtection dune erreur alors demander


lmetteur de renvoyer le mme message.

R. Kanawati, Cours rseaux, IUT de Villetaneuse, dpartement GTR, 1er anne, 2002-2003

Code de Hamming

La distance de Hamming entre deux squences binaires


de mme taille est gale au nombre de bits de rang
identique par lesquels elles diffrent.
n Exemple : d(1100110, 1010110) = 2
n Soit un code compos de N mot valides.
n La distance de Hamming de ce code est dfinie comme la
distance minimale qui spare deux mots valides du code.
n Exemple : le code :
C= [000000, 001110,010101,011011,100011,101101] a une
distance de Hamming = 3
n Un code avec une distance d dtecte d-1 erreurs et
13 / 15 corrige k erreurs o d=2K+1
n

R. Kanawati, Cours rseaux, IUT de Villetaneuse, dpartement GTR, 1er anne, 2002-2003

Correction par retransmission


n
n
n

14 / 15

Lmetteur conserve une copie des donnes quil envoie.


Le rcepteur applique une mthode de dtection des erreurs.
Le rcepteur informe lmetteur de la bonne (resp. mauvaise)
rception en lui retournant un paquet spcifique : acquittement positif
(resp. ngatif)
Dans le cas dun acquittement ngatif, lmetteur doit renvoi le paquet
erron.
Un temporisateur bornant la dure dattente des acquittements est
ncessaire pour assurer la correction du mcanisme lors des pertes
de paquets de donnes.
Lidentification des paquets (de donnes et dacquittement) est
ncessaire pour assurer la correction du mcanisme lors des pertes
dacquittement.

R. Kanawati, Cours rseaux, IUT de Villetaneuse, dpartement GTR, 1er anne, 2002-2003

Pour en savoir plus


n

15 / 15

K. Lahche, Les codes en informatique : codes


dtecteurs et correcteurs derreurs, Herms,1995.
R. Dapoigny, Les transmissions dans les rseaux
informatiques, Support IUT, gatan morin diteur 1999.
Chapitre 5.
A. Tanenbaum, Rseaux, InterEditions, 1997.