Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1153 connectés 

  FORUM HardWare.fr
  Programmation
  Divers

  Checksum : pourquoi on utilise le complément et pas la somme ?

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

Checksum : pourquoi on utilise le complément et pas la somme ?

n°1752124
godbout
Génial.
Posté le 27-06-2008 à 09:31:16  profilanswer
 

En étudiant le fonctionnent des réseaux, y a une question qui me turlupine et dont j'arrive pas à trouver une réponse qui me convient : pourquoi est-ce que dans le cas des checksums on utilise le complément pour le foutre dans le header, et pas tout simplement la somme ?

 

Mon raisonnement est peut-être foireux, et c'est surement pour ça que je comprends pas, mais voilà ce que j'comprends :

 

On a 2 words de 16 bits par exemple. On les additionne, on obtient un résultat. On prend le complément de ce résultat et on le fout dans le header. On envoie les données.
Du coté receveur, on récupère les 2 words de 16 bits et le complément, on les additionne. Si on obtient que des 1, aucune erreur détectée, sinon erreur.

 

Donc, d'après ça, j'vois pas l'utilité du complément. On peut très bien :
Faire la somme des 2 words, et la foutre dans le header. Envoyer les données. Le receveur récupère les 2 words et la somme. Il additionne les 2 words, et compare le résultat obtenu avec la somme dans le header. Si c'est pareil, aucune erreur détectée, sinon erreur.

 

Ça devrait marcher non ?

 

Si quelqu'un arrive à me trouver une réponse convenable, j'lui paye un super diner s'il vient dans ma ville, promis :sol:


Message édité par godbout le 27-06-2008 à 09:34:43
mood
Publicité
Posté le 27-06-2008 à 09:31:16  profilanswer
 

n°1752170
ccp6128
Syntax error
Posté le 27-06-2008 à 11:09:57  profilanswer
 

Pour augmenter la fiabilité du calcul, tout simplement.
 
Le but, c'est que l'altération s'il y en a une dans le message, affecte un maximum de bits dans le checksum.
 
Avec une simple addition, le fichier contenant tes word A et B aura exactement la même somme de contrôle que le fichier contenant les word B et A. C'est donc loin d'être un algorithme suffisant.

n°1752245
godbout
Génial.
Posté le 27-06-2008 à 14:28:55  profilanswer
 

Ouh, je sens qu'on se rapproche du diner là :D
T'aurais pas un petit exemple concret ? Je sens que j'vois que la route commence à être tracée mais c'est encore un peu flou.

n°1752360
ccp6128
Syntax error
Posté le 27-06-2008 à 16:07:10  profilanswer
 

Nope, en fait ma réponse était totalement à côté de la plaque (ca m'apprendra à ne pas lire correctement un post).
 
Le checksum utilisé dans le cas des paquets réseau a toujours cette faiblesse vis à vis des mots inversés.
 
Je dirais plutôt que cela a été fait pour des raisons d'architecture (de la façon dont c'est implémenté, le calcul du checksum est correct que ce soit sur une plate forme en little endian ou en big endian).

n°1752633
godbout
Génial.
Posté le 28-06-2008 à 12:06:35  profilanswer
 

Ah merde, ça m'éclate moins du coup là :/ :D
 
J'vois pas où est le problème avec l'architecture. Au bout du compte, à la fin, soit tu compares avec une série de 1111111, soit tu compares avec la somme [:spamafote]
 
La seule raison que j'pourrais trouver, c'est que dans le cas du 111111, tu sais à quoi tu t'attends, dans le cas de la somme tu sais pas. M'enfin, ça change pas grand chose au final, puisque tout est additionné. Nan, j'vois vraiment pas la raison :/

n°1753273
antac
..
Posté le 30-06-2008 à 10:00:52  profilanswer
 

Je ne suis pas sur mais :  
 
En fait si tu ne prends pas le complément à 1 tu risques d'avoir des problèmes de retenues sur certaines architectures (little endian ou big endian).


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  Divers

  Checksum : pourquoi on utilise le complément et pas la somme ?

 

Sujets relatifs
Somme d'elements de differentes tablesSGBD/SQL/ALIAS
taille de structure == somme éléments?Calcul d'une somme un peu spéciale...
SOMME.SI.ENS[JAVA]Algorithme de calcul de la limite de la somme des entiers
somme des noeuds d'un arbrefaire la somme des valeurs négatives dans une plage variable
Somme à plusieurs critère vbasomme sous vba
Plus de sujets relatifs à : Checksum : pourquoi on utilise le complément et pas la somme ?


Copyright © 1997-2025 Groupe LDLC (Signaler un contenu illicite / Données personnelles)