Ethernet Definitionen

Allgemein:
Die ursprüngliche Ethernet Definitionen stammen aus den 1980er Jahren und wurden zunächst von Rank Xerox (Ethernet I) und im weiteren Verlauf dann zusammen mit Intel und DEC (Ethernet II) entwickelt. Hieraus ging später der Standard IEEE 802.3 zur Spezifikation des Datenframe Aufbaus hervor. Da beide Datenformate im Aufbau unterschiedlich waren, wurde bzgl. der Kompatibilität das sogenannte IEEE 802.2 SNAP Format (Sub Network Access Protocol) entwickelt. Ethernet ist auf OSI Schicht 1 (Übertragung) und 2 (Sicherung) angesiedelt. Als Übertragungsmedien werden Koaxialkabel bzw. verdrillte Kupferdoppeladern (twisted pair) benutzt.

Datenformate:

Der Ethernet Datenblock besteht im wesentlichen aus zwei Teilblöcken.
Datenformat Ethernet
Einmal gibt es eine Präambel, welche aus 7+1Bytes besteht und den Start des Blocks signalisiert. Die Präambel benutzt eine alternierende Bitfolge in den 7 Bytes (0xAA). Das achte Byte schliesst die Präambel mit 0xAB ab.
(Hinweis: Die eigentliche Datenübertragung erfolgt immer mit dem niedrigsten Bit voran. Daher wäre richtigerweise das Format als 0x55 und 0xD5 zu bezeichnen.)
Mit Hilfe dieser Startsequenz können sich alle, ans Netz angeschlossenen Devices synchronisieren. Unmittelbar nach der Präambel kommt der eigentliche Ethernet-Frame. Dieser besteht seinerseits ebenfalls aus mehreren Teilblöcken. Nachfolgend ist der Aufbau der jeweiligen Frames dargestellt:

MAC Adresse (media access control):

Mit Hilfe der gerätespezifischen und einmalig vorhandenen MAC Adresse wird der Empfänger des Datenframes angewiesen diesen auszuwerten. Gleichzeitig wird mit der Sender MAC innerhalb des Ethernet Frames definiert, wer die Daten versendet. Die MAC Adresse besteht aus 6 Bytes bzw. 2+46bit.
Im Bit0 des höchstwertigen Bytes kann definiert werden, ob es sich um eine Unicast Adresse (Bit0=0), oder um eine Multicast/Broadcast-Adresse (Bit0=1) handelt.
Im Bit1 des höchstwertigen Bytes wird vorgegeben, ob die MAC Adresse global (Standardvorgabe Bit1=0) oder lokal (Bit1=1) verwaltet wird.

Frame Type:

Das Frame-Type Feld besteht aus 2 Bytes und informiert darüber mit welchem Protokoll (in der nächst höheren OSI-Schicht) die Nutzdaten interpretiert werden. Ist hier der Wert kleiner 0x0600 vorgegeben, so handelt es sich um ein Ethernet I Frame. Weitere Vorgaben können sein:
0x0800 ⇒ IPv4 (Internet Protocol Version 4)
0x0806 ⇒ ARP (Address Resolution Protocol)
0x86DD ⇒ IPv6
0x8892 ⇒ ProfiNet
0x88A4 ⇒ EtherCAT

Datenfeld:

Das Datenfeld beinhaltet die eigentlichen Nutzdaten. Das Datenfeld hat eine minimale und eine maximale Größenbeschränkung. Hierbei besteht die kleinste Datenmenge aus 38/43/46 Bytes (IEEE 802.2/IEEE 802.3/Ethernet II). Sollen trotzdem weniger Nutzdaten übertragen werden, müssen die restlichen Bytes im Datenfeld mit sogenannten Füllbytes belegt werden. Diese sorgen auch dafür, dass die Ethernet-Frame Größe 64 Bytes nicht unterschreitet. Das ausgewählte Protokoll erkennt und ignoriert dann diese Füllbytes.
Die maximale Nutzdatenlänge sind 1492/1497/1500 Bytes (IEEE 802.2/IEEE 802.3/ Ethernet II).

CRC32:

Die 32bit Prüfsumme wird über den gesamten Ethernet-Frame gebildet. Im Gegensatz zu einer normalen CRC32 Berechnung wird hierbei jedoch eine Invertierung der ersten 32bit (Destination MAC Address) und des Endergebnisses selbst vorgenommen.

LLC Header:

Der LLC Header spezifiziert die Schnittstelle zwischen der Protokollebene und der Übertragungsebene im OSI Modell.

SNAP Header:

Der SNAP-Header ist aus Kompatibilitätsgründen zu Ethernet II eingeführt worden. Der Header besteht aus 5 Bytes, bei denen die ersten 3 Bytes den Namen OUI (Organizationally Unique Identifer) und zumeist den Wert 0 besitzen. Die letzten 2 Bytes sind identisch mit dem Frame-Typ. Weiterhin ist der vorher liegende LLC-Header mit der Byte Kombination 0xAA,0xAA,0x03 definiert.

Sie benötigen eine spezielle Applikation?

Dann nehmen Sie gleich Kontakt mit uns auf oder informieren Sie sich über unser Entwicklungsangebot