Envoyé par
sevyc64
Que ce soit parité, checksum, crc, etc, ils ne servent pas à corriger les erreurs. Ils ne servent qu'à détecter qu'une erreur a eu lieu mais sans dire où.
Pour être pointilleux et exact, ils n'indiquent pas qu'il y a eu une erreur, mais valide plutôt que la transmission s'est faite correctement, les données reçues correspondent aux données envoyées. Mais forcément s'ils ne valident pas, ça veut dire erreur quelque part.
Que ce soit les protocoles IP, TCP, UDP, ICMP, ..., ils n'ont pas de corrections d'erreurs, juste une indication si la données est arrivée correctement. Si la donnée n'est pas correcte, la correction consiste simplement à demander à l’émetteur de renvoyer cette donnée.
Par contre, au niveau au dessus de TCP, le protocole utilisé peut lui intégrer une correction d'erreur, comme par exemple le codage de Hamming. Ce codage consiste à découper les bits d'un octet en plusieurs groupe et d’adjoindre une parité à chaque groupe. Là c'est idem, les parités ne corrigent pas, elles indiquent juste si ça arrive ok ou pas. Mais, avec le découpage judicieux des groupes et les valeurs des parités correspondantes, le récepteur peut arriver à savoir quel bit dans la transmission a été modifié et donc le corriger de lui-même sans en redemander la retransmission de la donnée entière. Cependant, si malgré tout, le récepteur n'est pas capable de déterminer quel bit est en erreur, il n'aurait pas d'autre choix que de redemander la donnée à l’émetteur
Partager