¿Por qué las direcciones ethernet / mac están en hexadecimal (y tienen 48 bits) y los números ip en decimales (y tienen 32 bits)? ¿Tiene eso razones históricas o prácticas?
¿Por qué las direcciones ethernet / mac están en hexadecimal (y tienen 48 bits) y los números ip en decimales (y tienen 32 bits)? ¿Tiene eso razones históricas o prácticas?
Respuestas:
Diferentes personas diseñan diferentes protocolos. Ethernet puede transportar más que IP (IPX era bastante común hace 15-20 años y también usaba hexadecimal en sus direcciones. Para ser más precisos: la parte local de una dirección IPX era la dirección MAC). IP, por otro lado, puede ejecutarse sin utilizar Ethernet como protocolo de capa 2.
De alguna manera, Ethernet (y el direccionamiento MAC) se convirtió en el protocolo de capa 2 dominante e IPv4 en el protocolo de capa 3 dominante. Con IPv6 tenemos HEX de nuevo en nuestras direcciones IP (v6).
Jens tiene una gran respuesta técnica (y recibió un voto positivo de mi parte), pero el otro aspecto es la legibilidad humana, porque como humanos siempre fuimos destinados a ser las "cosas" que tendrían que entender estas direcciones en una capa superior de conciencia que las máquinas No poseas. Transmitir una dirección de 48 bits en decimal sería menos eficiente que transmitir una dirección de 32 bits en decimal (en el contexto de la legibilidad humana; todo es binario a un enrutador / conmutador / lo que sea).
Por ejemplo, el espacio numérico que puede expresarse en 32 bits se presta muy bien para dividir ese espacio en fragmentos de tamaño uniforme (los fragmentos aquí son bytes u octetos ) de 8 bits cada uno, y tiene una capacidad decimal máxima " "de 255 por cada uno de esos trozos. Esto naturalmente llevaría a representar esas direcciones en el formato decimal punteado, porque nunca tendrá un octeto que tenga más de 3 dígitos decimales.
Una dirección MAC es diferente. El hexadecimal es más eficiente aquí porque puede expresar más con menos, y nuevamente está limitando el alcance de la longitud de los dígitos para compensar el espacio de direcciones más grande. Hay 6 octetos en una dirección de 48 bits, y cada dígito hexadecimal es de 4 bits; no tendrá ningún octeto en una dirección de 48 bits que sea más largo que dos dígitos hexadecimales.
aa:d3:ad:be:ef:aa
es más fácil (más eficiente) de leer, escribir e interpretar que
170:211:173:190:239:170