Vous êtes sur la page 1sur 5

Gestion des erreurs de transmission

Le codage binaire est très pratique pour une utilisation dans des appareils électroniques tels
qu'un ordinateur, dans lesquels l'information peut être codée grâce à la présence ou non d'un
signal électrique.

Cependant le signal électrique peut subir des perturbations (distorsion, présence de bruit),
notamment lors du transport des données sur un long trajet. Ainsi, le contrôle de la validité des
données est nécessaire pour certaines applications (professionnelles, bancaires, industrielles,
confidentielles, relatives à la sécurité, ...).

C'est pourquoi il existe des mécanismes permettant de garantir un certain niveau d'intégrité des
données, c'est-à-dire de fournir au destinataire une assurance que les données reçues sont bien
similaires aux données émises. La protection contre les erreurs peut se faire de deux façons :

 soit en fiabilisant le support de transmission, c'est-à-dire en se basant sur une protection


physique. Une liaison conventionnelle a généralement un taux d'erreur compris entre
10-5 et 10-7.
 soit en mettant en place des mécanismes logiques de détection et de correction des
erreurs.

La plupart des systèmes de contrôle d'erreur au niveau logique sont basés sur un ajout
d'information (on parle de « redondance ») permettant de vérifier la validité des données. On
appelle somme de contrôle (en anglais checksum) cette information supplémentaire.

1-Contrôles de parité
Le contrôle de parité a pour principe de rajouter en supplément un bit de vérification à plusieurs
bits de données afin de comptabiliser le nombre total de bits à 1 ; du caractère pair / impair de
ce nombre total de bits dépend la valeur du bit de vérification.
Deux contrôles de parité existent et se complètent: la parité verticale et la parité longitudinale.

1-1 Parité verticale (VRC : Vertical Redundancy Check ou Checking)


La parité verticale consiste à rajouter un bit de parité à un groupe de bits de données – en général
7, formant ainsi un octet. On parle de parité paire lorsque le nombre total de bits (données + bit
parité) est pair; de même pour la parité impaire.

Exemple :
0101100, il y a trois « 1 » ; le bit de parité sera 1 en cas de parité paire, 0 en cas de parité impaire
; l’octet transmis sera alors respectivement 01011001 ou 01011000.
En cas d’erreur de transmission, le bit de parité ne correspond pas; on détecte donc une erreur
de transmission sur un groupe de bits.
Cependant, il est impossible de localiser la source d’erreur, et de fait de la corriger. De plus, si
l’erreur de transmission a affecté deux bits différents, elle n’est pas détectée

1-2 Parité Longitudinale (LRC : Longitudinal Redundancy Check)


La parité longitudinale consiste à rajouter un octet de parité à un bloc d’octets dont chacun s’est
vu appliqué un contrôle de parité verticale. Là aussi, la parité peut être paire ou impaire.

Exemple: Un bloc de 3 octets transmis selon des parités verticale et longitudinale impaires.
2- Contrôle de redondance cyclique
Pour vérifier la précision d’une transmission, les réseaux recours en général à une méthode de
détection d’erreurs appelée CRC (Cyclic Redundancy Check ou Control de Redondance
Cyclique). Cette méthode permet de détecter plus d’erreurs que le control de parité.
Le principe de la méthode se présente comme suit :
✓ Soit a0a1a2......... an la séquence d’éléments binaires du bloc de n bits à transmettre, et r0r1r2
……rk la séquences de bits redondants qui seront placés dans le bloc de données, dans la zone
de détection d’erreur appelée aussi CRC (nom générique de la méthode) ou FCS (Frame Check
Sequence).

Structure d'un bloc de bits contenant des informations de détection d'erreur

✓ On fait correspondre au bloc de données a0a1a2......... an un polynôme de degré n-1 noté P(x)
: P(x)= a0 + a1x+ a2x2+.........+ an-1xn-1, même chose pour la zone FCS on lui fait
correspondre un polynôme de degré k-1 noté R(x) :
R(x) = a0 + a1x+ a2x2+.........+ an-1xk-1.

Vous aimerez peut-être aussi