Warum sind Ethernet- / Mac-Adressen in Hex (und haben 48 Bit) und IP-Nummern in Dezimalstellen (und haben 32 Bit)? Hat das historische oder praktische Gründe?
Warum sind Ethernet- / Mac-Adressen in Hex (und haben 48 Bit) und IP-Nummern in Dezimalstellen (und haben 32 Bit)? Hat das historische oder praktische Gründe?
Antworten:
Unterschiedliche Personen entwerfen unterschiedliche Protokolle. Ethernet kann mehr als IP transportieren (IPX war vor 15 bis 20 Jahren weit verbreitet und verwendete auch Hex in seinen Adressen. Genauer gesagt: Der lokale Teil einer IPX-Adresse war die MAC-Adresse). IP hingegen kann ohne Verwendung von Ethernet als Layer-2-Protokoll ausgeführt werden.
Irgendwie wurde Ethernet (und MAC-Adressierung) zum dominanten Layer-2-Protokoll und IPv4 zum dominanten Layer-3-Protokoll. Mit IPv6 haben wir HEX wieder in unseren IP (v6) -Adressen.
Jens hat eine großartige technische Antwort (und hat eine positive Bewertung von mir erhalten), aber der andere Aspekt ist die Lesbarkeit des Menschen, denn als Menschen sollten wir immer die "Dinge" sein, die diese Adressen auf einer höheren Bewusstseinsebene verstehen müssten, die maschinell funktioniert nicht besitzen. Die Übermittlung einer 48-Bit-Adresse in Dezimalzahl wäre weniger effizient als die Übermittlung einer 32-Bit-Adresse in Dezimalzahl (im Kontext der menschlichen Lesbarkeit; alles ist binär zu einem Router / Switch / was auch immer).
Zum Beispiel eignet sich der Zahlenraum, der durch 32 Bit ausgedrückt werden kann, gut dazu, diesen Raum in gleichmäßig große Blöcke (die Blöcke hier sind Bytes oder Oktette ) von jeweils 8 Bit zu zerlegen, und Sie haben eine maximale Dezimalstelle "von 255 für jeden dieser Brocken. Dies würde natürlich dazu führen, dass diese Adressen im gepunkteten Dezimalformat dargestellt werden, da Sie niemals ein Oktett haben werden, das länger als 3 Dezimalstellen ist.
Eine MAC-Adresse ist anders. Hexadezimal ist hier effizienter, weil Sie mit weniger mehr ausdrücken können und Sie wiederum den Umfang der Ziffernlänge einschränken, um den größeren Adressraum auszugleichen. Eine 48-Bit-Adresse enthält 6 Oktette, und jede hexadezimale Ziffer besteht aus 4 Bit. In einer 48-Bit-Adresse darf kein Oktett länger als zwei hexadezimale Ziffern sein.
aa:d3:ad:be:ef:aa
ist einfacher (effizienter) zu lesen, zu schreiben und zu interpretieren als
170:211:173:190:239:170