Pourquoi l'ordre des octets du réseau est-il défini comme étant big-endian? [fermé]

88

Comme écrit dans l'en-tête, ma question est la suivante: pourquoi TCP / IP utilise-t-il le codage big endian lors de la transmission de données et non le schéma alternatif little-endian?

Neji
la source
36
malgré le fait qu'elle a été fermée, cette page a été très utile
Goaler444

Réponses:

77

RFC1700 a déclaré qu'il doit en être ainsi . (et défini l'ordre des octets du réseau comme big-endian).

La convention dans la documentation des protocoles Internet est d'exprimer les nombres en décimal et de représenter les données dans l'ordre "big-endian" [COHEN]. Autrement dit, les champs sont décrits de gauche à droite, avec l'octet le plus significatif à gauche et l'octet le moins significatif à droite.

La référence qu'ils font est de

On Holy Wars and a Plea for Peace 
Cohen, D. 
Computer

Le résumé peut être trouvé à IEN-137 ou sur cette page IEEE .


Sommaire:

La voie choisie ne fait pas trop de différence. Il est plus important de s'entendre sur une commande que sur quelle commande est convenue.

Il conclut que les schémas big-endian et little-endian auraient pu être possibles. Il n'y a pas de schéma meilleur / pire , et l'un ou l'autre peut être utilisé à la place de l'autre tant qu'il est cohérent dans tout le système / protocole.

Anirudh Ramanathan
la source
La RFC 3232 semble dire "RFC1700 est obsolète" sans donner de remplacement
MM
11
@Anirudh, Cette "réponse" évite la question. La question demande la raison sous - jacente est pourquoi bigEndian choisi à la place de l'alternative ( s ). Re "La manière dont on choisit ne fait pas trop de différence ", c'est faux car en réalité c'est important du simple fait que les performances comptent (et une telle norme est ancrée dans les couches les plus basses des communications réseau).
Pacerier
2
@Pacerier Il n'y aurait pas de différence en termes de performances, ce dont parle en détail l'article lié.
Anirudh Ramanathan
1
@Anirudh, cela peut vous intéresser: recherchez le lien Big Endian sur wolfvision.com/wolf/commands_cynap_wolfvision/… .
atravers