¿Qué son el orden de bytes de red y el orden de bytes de host en la red informática?

La manera en que las arquitecturas informáticas representan valores mayores que un byte varía. Las dos formas más comunes que conozco son conocidas como “big-endian” y “little-endian”.

Por ejemplo, considere el valor entero 1 representado como 4 bytes. En una máquina con arquitectura big-endian, este valor se representaría (en decimal) como los cuatro bytes 0, 0, 0, 1. En una máquina con arquitectura little-endian, esto se revertiría como 1, 0, 0, 0. La forma en que la computadora de punto final representa los valores (en términos de red) se denomina orden de bytes del host. El valor 0, 0, 0, 1 en la máquina little-endian se interpreta realmente como el valor 16777216, y del mismo modo para 1, 0, 0, 0 en una máquina big-endian.

El orden de bytes de red es una forma estándar de representar valores de varios bytes para que la comunicación pueda tener lugar a través de una red sin tener que conocer la “resistencia” de las dos máquinas que se comunican. Una computadora que no tiene el mismo endianness que el orden de bytes de red estandarizado (que hasta donde yo sé es siempre big endian, aunque no tiene que ser siempre que todos sepan qué orden se está usando) debe revertir el bytes de sus datos antes de enviar datos a través de la red, y también deben invertir los bytes después de recibir los datos para que se interpreten correctamente.

El orden de bytes de red se refiere a cómo se organizan los bytes al enviar datos a través de una red. En TCP / IP, esto es generalmente Big Endian. Esto significa el byte más significativo en la dirección más pequeña de una palabra.

El orden de bytes del host se refiere a cómo se organizan los bytes al referirse a la arquitectura de la computadora de una plataforma de computación host. Debido a la omnipresencia de la arquitectura Intel, esto generalmente es Little Endian. Esto significa el byte menos significativo en la dirección más pequeña de una palabra.