Vous êtes sur la page 1sur 26

Comportement face aux erreurs

BTS 1ère année


Systèmes Numériques

Comportement face aux erreurs  page 2

Attitude face aux erreurs

• Les deux fonctions essentielles des protocoles


• Attitude face aux erreurs
• Procédés de codage pour la détection d’erreurs
BTS 1ère année
Systèmes Numériques

Comportement face aux erreurs  page 3

Les fonctions essentielles des protocoles

– Le transfert entre deux systèmes A et B commence dans la


mesure où…
• L’un prend l’initiative d’émettre
• L’autre est prêt à recevoir
BTS 1ère année
Systèmes Numériques

Comportement face aux erreurs  page 4

Contrôle de flux
– I l faut contrôler le flux des données Les profs OUI !
échangées
• La source ne peut émettre continûment de l’information vers
le puits sans savoir si le partenaire est toujours en état de
recevoir
• Le puits doit pouvoir asservir la source





BTS 1ère année
Systèmes Numériques

Comportement face aux erreurs  page 5

Qu’est-ce qu’un protocole d’échanges ?

– Autour du transfert proprement dit, un ensemble de « règles du


jeu » consistant en des…
• Demandes (mots de commande) de A vers B
• Acquittements (mots d’état) de B vers A
BTS 1ère année
Systèmes Numériques

Comportement face aux erreurs  page 6

Exemple d’échange

Allo Paul, ici Jean !

Paul pas pr êt
Allo Paul, ici Jean !

I NI TI ALI SATI
Oui, à vous Jean !
ON
Blablabla

Répét ez !

Blablabla TRANSFER
T
Bien r eçu !

Ter miné !

Ter miné !
TERMI NAI
SON
BTS 1ère année
Systèmes Numériques

Comportement face aux erreurs  page 7

Le transfert est-il correct ?

Pour une interprétation correcte, le flux ne doit être…

• Ni réduit (perte)

• Ni augmenté

• Ni désordonné (déséquencement)

• Ni modifié (erreur)
BTS 1ère année
Systèmes Numériques

Comportement face aux erreurs  page 8

Attitude face aux erreurs

• Émission double ou triple


– Comparaison à la réception (peu utilisé, exemple : grues)
• Mode ECHOPLEX
– Utilisé en asynchrone uniquement
– Le récepteur n’acquitte pas mais renvoie le caractère reçu en
écho et l’émetteur vérifie si l’écho est identique au caractère émis
• Exemples : terminal passif, modems, bit E dans la trame LAPD de RNI
S
BTS 1ère année
Systèmes Numériques

Comportement face aux erreurs  page 9

Attitude face aux erreurs

• Détection d’erreur (à l’aide d’un codage approprié) et correction


par demande de répétition
– Cette méthode est bien adaptée dans le cas d’erreurs par
paquets.
Le contrôle de flux et le contrôle d’erreur sont liés
– Acquittement positif ou négatif bloc par bloc
– Ou acquittement tous les n blocs
– Mécanisme d’anticipation par fenêtre encore appelé CREDI T
– En cas d’erreur, la répétition peut alors être globale (à partir
du bloc erroné) ou sélective (le bloc erroné)
– Cette méthode est de loin la plus utilisée
• Correction directe de l’erreur
– Utilisation de codes autocorrecteurs (HAMMI NG)
– Méthode coûteuse, matériel récepteur plus élaboré
BTS 1ère année
Systèmes Numériques

Comportement face aux erreurs  page 10

Procédés de codage pour la détection d’erreurs

• VRC
– Vertical Redondancy Check (Parité transversale)
• VRC + LRC
– Longitudinal Redondancy Check (Parité
longitudinale)
• CRC
– Cyclic Redondancy Check
BTS 1ère année
Systèmes Numériques

Comportement face aux erreurs  page 11

Détection d’erreurs basée sur la parité


0 1 1 0 0 1 0 0 0 1 1 0 0 1 0 0 1
1 0 1 0 1 0 1 0 1 0 1 0 1 0 1 0 0
1 0 0 0 1 0 0 0 1 0 0 0 1 0 0 0 0
0 0 0 0 0 0 1 1 0 0 0 0 0 0 1 1 0
1 0 1 1 0 0 0 0 1 0 1 1 0 0 0 0 1
0 0 1 0 1 0 1 0 0 0 1 0 1 0 1 0 1
0 0 0 1 0 1 0 0 0 0 0 1 0 1 0 0 0
Par ité
1 1 0 0 1 0 1 1 1 1 0 0 1 0 1 1 1
pair e
• Utilisation de la parité transversale et
• Ajout d’un bit de parité par caractère
de la parité longitudinale
• Seules les erreurs en nombre croisée)
(parité
impair sont détectées
Sur un ensemble de
• Nombre d’erreurs détectées / caractères (exemple : 128), ajout
Nombre d’erreurs réel = Efficacité = 50 d’un octet de contrôle de parité
à 60 % longitudinale dit mot test ou «
somme de test »
(checksum)
• Efficacité = 98 %
BTS 1ère année
Systèmes Numériques

Comportement face aux erreurs  page 12

LRC erreur simple


calculé

à l'émission à la réception
0 1 1 0 0 1 0 0 1 0 1 1 0 0 1 0 0 1 1
1 0 1 0 1 0 1 0 0 1 0 1 0 1 0 1 0 0 0
1 0 0 0 1 0 0 0 0 1 0 0 0 0 0 0 0 1 0
0 0 0 0 0 0 1 1 0 0 0 0 0 0 0 1 1 0 0
1 0 1 1 0 0 0 0 1 1 0 1 1 0 0 0 0 1 1
0 0 1 0 1 0 1 0 1 0 0 1 0 1 0 1 0 1 1
0 0 0 1 0 1 0 0 0 0 0 0 1 0 1 0 0 0 0
1 1 0 0 1 0 1 1 1 1 1 0 0 0 0 1 1 1 1
1
reçu 1 1 0 0 1 0 1 1 1

• L'utilisation de la parité permet de détecter les


croisée simples ET de les corriger.
erreurs
BTS 1ère année
Systèmes Numériques

Comportement face aux erreurs  page 13

LRC, erreur double calculé

à l'émission à la réception
0 1 1 0 0 1 0 0 1 0 1 1 0 0 1 0 0 1 11
1 0 1 0 1 0 1 0 0 1 0 1 0 1 0 1 0 0 00
1 0 0 0 1 0 0 0 0 1 0 0 0 0 0 1 0 0 00
0 0 0 0 0 0 1 1 0 0 0 0 0 0 0 1 1 0 00
1 0 1 1 0 0 0 0 1 1 0 1 1 0 0 0 0 1 11
0 0 1 0 1 0 1 0 1 0 0 1 0 1 0 1 0 1 11
0 0 0 1 0 1 0 0 0 0 0 0 1 0 1 0 0 0 00
1 1 0 0 1 0 1 1 1 1 1 0 0 0 0 0 1 1
1
reçu 1 1 0 0 1 0 1 1 1
• L’utilisation de la parité croisée permet de détecter les
erreurs doubles
– Dans cet exemple, deux erreurs se sont produites sur la même
ligne. Le bit LRC correspondant ne permet donc pas de
détecter l’erreur (bit calculé = bit reçu)
– L’erreur est détectée grâce aux VRC
BTS 1ère année
Systèmes Numériques

Comportement face aux erreurs  page 14

LRC, erreur double calculé


à l'émission à la réception
0 1 1 0 0 1 0 0 1 0 1 1 0 0 1 0 0 1 11
1 0 1 0 1 0 1 0 0 1 0 1 0 1 0 1 0 0 00
1 0 0 0 1 0 0 0 0 1 0 0 0 0 0 0 0 1 00
0 0 0 0 0 0 1 1 0 0 0 0 0 0 0 1 1 0 00
1 0 1 1 0 0 0 0 1 1 0 1 1 1 0 0 0 0 11
0 0 1 0 1 0 1 0 1 0 0 1 0 1 0 1 0 1 11
0 0 0 1 0 1 0 0 0 0 0 0 1 0 1 0 0 0 00
1 1 0 0 1 0 1 1 1 1 1 0 0 1 0 1 1 1
1
reçu
reçu 1 1 0 0 1 0 1 1 1
• L’utilisation de la parité croisée permet de détecter les
erreurs doubles
– Dans cet exemple, deux erreurs se sont produites sur la même
colonne. Le bit VRC correspondant ne permet donc pas de
détecter l’erreur (bit calculé = bit reçu)
– L’erreur est détectée grâce au LRC
BTS 1ère année
Systèmes Numériques

Comportement face aux erreurs  page 15

LRC, erreur double


calculé

à l'émission à la réception
0 1 1 0 0 1 0 0 1 0 1 1 0 0 1 0 0 1 11
1 0 1 0 1 0 1 0 0 1 0 1 0 1 0 1 0 0 00
1
1 0
0 00 00 11 00 0
0 00 00 1 0 0 0 0 0 0 0 1 00
0 0 0 0 0 0 1 1 0 0 0 0 0 0 0 1 1 0 00
1 0 1 1 0 0 0 0 1 1 0 1 1 0 0 1 0 0 11
0 0 1 0 1 0 1 0 1 0
0 0
0 11 0 1
0 1 00 1 1 00 11 11
0 0 0 1 0 1 0 0 0 0 0 0 1 0 1 0 0 0 00
1 1 0 0 1 0 1 1 1 1 1 0 0 0 0 0 1 1
1
reçu
reçu 1 1 0 0 1 0 1 1 1

• L’utilisation de la parité croisée permet de détecter les


erreurs doubles
– Dans cet exemple,les deux erreurs qui se sont produites
sont équivalentes à deux erreurs simples
BTS 1ère année
Systèmes Numériques

Comportement face aux erreurs  page 16

LRC, erreur triple


calculé

à l'émission à la réception
0 1 1 0 0 1 0 0 1 0 1 1 0 0 1 0 0 1 11
1 0 1 0 1 0 1 0 0 1 0 1 0 1 0 1 0 0 00
1 0 0 0 1 0 0 0 0 1 0 0 1 0 1 0 0 1 00
0 1 0
0 0 0 0 0 0 1 1 0 0 0 0 0 0 0 1 1 0 00
1 0 1 1 0 0 0 0 1 1 0 1 1 0 0 1 0 0 11
0 0 1 0 1 0 1 0 1 0 0 1 0 1 0 1 0 1 11
0 0 0 1 0 1 0 0 0 0 0 0 1 0 1 0 0 0 00
1 1 0 0 1 0 1 1 1 1 1 0 1 0 1 0 1 1
1
reçu
reçu 1 1 0 0 1 0 1 1 1

• L’utilisation de la parité croisée permet de détecter les


erreurs triples
BTS 1ère année
Systèmes Numériques

Comportement face aux erreurs  page 17

LRC, erreur quadruple


calculé

à l'émission à la réception
0 1 1 0 0 1 0 0 1 0 1 1 0 0 1 0 0 1 11
1 0 1 0 1 0 1 0 0 1 0 1 0 1 0 1 0 0 00
1
1 0
0 00 0 11 0 00 00 00 1 0 0 1 1 1 0 0 0 00
0 0
0 0 0 0 0 0 1 1 0 0 0 0 0 0 0 1 1 0 00
1 0 1 1 0 0 0 0 1 1 0 1 0 0 1 0 0 1 11
0 0 1 0 1 0 1 0 1 0
0 0
0 11 00 11 00 11 00 11 11
0 0 0 1 0 1 0 0 0 0 0 0 1 0 1 0 0 0 00
1 1 0 0 1 0 1 1 1 1 1 0 0 1 0 1 1 1
1
reçu
reçu 1 1 0 0 1 0 1 1 1

• L’utilisation de la parité croisée ne permet pas de détecter


les erreurs quadruples
– En particulier lorsqu’elles sont disposées en rectangle
BTS 1ère année
Systèmes Numériques

Comportement face aux erreurs  page 18

CRC Cyclic Redundancy Check

• Utilisé dans les transmissions synchrones (BSC, SDLC,


HDLC)
• Efficacité = 99,99 %
• Un bloc faux sur 10 000 échappe à la détection
BTS 1ère année
Systèmes Numériques

Comportement face aux erreurs  page 19

Calcul de CRC
7 6 5 4 3 2 1 0
Soit le message à 1 0 0 1 1 1 0 1
transmettre:

On forme le polynôme associé: P (x)  x 7


 x 4
 x 3
 x 2

1
On choisit un polynôme générateur: G (x)  x  x 
3

1
Ce polynôme est connu à la fois du générateur et du récepteur

Le générateur choisi est de degré 3  on x 3


P
réalise (x)
Le message devient: x  P (x)  x  x  x  x  x
3 10 7 6 5 3

10 9 8 7 6 5 4 3 2 1 0
cela revient à y ajouter trois zéros: 1 0 0 1 1 1 0 1 0 0 0
BTS 1ère année
Systèmes Numériques

Comportement face aux erreurs  page 20

Calcul de CRC

On divise le polynôme obtenu x3  P par le polynôme générateur


(x)
x 10
10
 xx7 7 x 6 x6 x 5 xx5 3 x 33  xx
x 3 11
x  xx8 8
10

x7 xx777 7 xx55  1 Quotient


x xx xx xxx
+x
-x 88 8 66 55 5 33
1xx 5
x 38 6
x x x5

x3
x3 x 1

Reste x
BTS 1ère année
Systèmes Numériques

Comportement face aux erreurs  page 21

Calcul du CRC

x 3  P (x)  Générateur Quotient 


Reste x 10  x 7  x 6  x 5  x 3  G Q 
• On ajoute  1)
( x le reste des 2 côtés de l'équation

x 10  x 7  x 6  x 5  x 3  x  1  G
Q est devenu:
• Le message
10 5 4 3 2 1 0
1 0 0 1 1 1 0 1 0 1 1
9
• C'est ce message que l'on envoie en ligne
• 8
A la réception, le message étant multiple de G(x)
est à nouveau divisé par G(x)
7
• Si le reste est nul, la transmission s’est faite sans erreur !
BTS 1ère année
CRC, conclusion Systèmes Numériques

Comportement face aux erreurs  page 22

• Un polynôme couramment utilisé est celui de l’avis V41 de l’UI T:


G (x)  x 16  x 12  x 5  1
• Ce qui revient à ajouter 16 bits de redondance au message
– A titre d'exemple, l'efficacité de ce polynôme est la suivante:
• 100 % des erreurs simples
• 100 % des erreurs doubles
• 100 % des erreurs sur un nombre impair de bits
• 100 % des paquets d'erreurs de longueur < 17
• 99,997% des paquets d'erreurs de longueur 17
• 99,998 % des paquets d'erreurs de longueur > 17
– Un tel système détecteur permet de diviser le taux d'erreur
moyen par 1000 et n'introduit qu'une redondance de 16 bits
pour des blocs dont la taille courante est de l'ordre de 1000 bits
BTS 1ère année
Systèmes Numériques

Comportement face aux erreurs  page 23

Polynômes générateurs
Les polynômes générateurs les plus couramment employés sont :

•CRC-12 : X12 + X11 + X3 + X2 + X + 1

•CRC-16 : X16 + X15 + X2 + 1

•CRC CCITT V41 : X16 + X12 + X5 + 1

(Ce code est notamment utilisé dans la procédure HDLC.)

CRC-32 (Ethernet) :
X32 + X26 + X23 + X22 + X16 + X12 + X11 + X10 + X8 + X7 + X5 + X4 + X2 + X + 1

•CRC ARPA :
X24 + X23+ X17 + X16 + X15 + X13 + X11 + X10 + X9 + X8 + X5 + X3 + 1
BTS 1ère année
Systèmes Numériques

Comportement face aux erreurs  page 24

Que faut-il retenir de cette présentation ?

• La plupart des protocoles mis en œuvre aujourd’hui…


– transmettent l ’information sous forme de séquence de bits
(que l ’on appellera selon les cas trame, paquet, message,
cellule…),
– ajoutent à chacune de ces séquences une détection d ’erreur à
l ’aide d ’un code de redondance approprié (CRC) calculé sur
cette séquence,
– corrigent les erreurs détectées en demandant la répétition de la
séquence en cause,
• La longueur des séquences est liée à la fiabilité des
supports. Exemples :
– 1500 octets sur Ethernet (réseau local donc très fiable),
– 128 octets par défaut sur Transpac (réseau public).
BTS 1ère année
Systèmes Numériques

Comportement face aux erreurs  page 25

• Cette méthode est bien adaptée dans le cas d'erreurs


par paquets (cas le plus fréquent)
• Le contrôle de flux et le contrôle d'erreur sont liés
– Acquittement positif ou négatif bloc par bloc
– ou Acquittement tous les n blocs
– Mécanisme d'anticipation par fenêtre encore appelé CREDI T
– En cas d'erreur, la répétition peut alors être globale (à partir
du bloc erroné) ou sélective (le bloc erroné)
– Cette méthode est la plus utilisée pour les liaisons synchrones
Merci

Vous aimerez peut-être aussi