Zum Inhalt springen

Ethernet/Frame: Unterschied zwischen den Versionen

Aus Foxwiki
Keine Bearbeitungszusammenfassung
K Textersetzung - „Obsoleted by“ durch „Ersetzt durch“
 
(203 dazwischenliegende Versionen desselben Benutzers werden nicht angezeigt)
Zeile 1: Zeile 1:
===Ethernet Formate===
'''{{BASEPAGENAME}}''' - Typen von Ethernet-Frames
*Es gibt vier Typen von Ethernet-Frames.
**Ethernet-Version I (nicht mehr benutzt, Definition 1980 durch Konsortium DEC, Intel und Xerox).
**Der Ethernet-Version-2- oder Ethernet-II-Frame, der sogenannte DIX-Frame (Definition 1982 durch das Konsortium DEC, Intel und Xerox).


== Beschreibung ==
== Formate ==


Seit 1983 entsteht der Standard IEEE 802.3, dieser definiert zwei weitere Frame-Formate:
=== Ethernet Version 1 ===
# IEEE 802.3 3.1.a Basic MAC frame
; Nicht mehr benutzt
# IEEE 802.3 3.1.b Tagged MAC frame
Definition 1980 durch das '''DIX'''-Konsortium '''D'''EC, '''I'''ntel und '''X'''erox
*definiert das 16-bit-Feld nach den MAC-Adressen als Type/Length-Feld.
*Ethernet ist quasi ein Synonym für diesen Standard.


==== Ethernet Version 2 ====
=== Ethernet-Version-2 oder Ethernet-II-Frame ===
Das heute ausschließlich verwendete Ethernet-Datenblockformat
; DIX-Frame Version 2
[[Datei:Ethernet II Frame.PNG|thumb|ohne|800px|Ethernet-Version-2 Frame]]
* Definition 1982 durch das Konsortium DEC, Intel und Xerox


; Ethernet Version 2 Tagged
; Standard IEEE 802.3
* Seit 1983
* Definiert zwei weitere Frame-Formate
*# IEEE 802.3 3.1.a Basic MAC frame
*# IEEE 802.3 3.1.b Tagged MAC frame
* definiert das 16-bit-Feld nach den MAC-Adressen als Type/Length-Feld
* Ethernet ist quasi ein Synonym für diesen Standard


[[Datei:Ethernet II Tagged Frame.PNG|mini|ohne|800px|Ethernet-II Standard mit 802.1Q VLAN-Tag]]
; Heute verwendetes Ethernet-Datenblockformat
{| class="big"
|-
| colspan="2" style="background-color:#00a4e9;" | '''Bitfolge'''</br>1010101010
| colspan="5" style="background-color:#9adaeb;" | '''Ethernet-Frame'''</br>64-1518 Byte
| rowspan="3" style="background-color:#7193bf;" | '''Inter</br>Frame</br>Gap</br>'''9,6 μs
|-
| style="background-color:#c4c4c4;" | '''Präambel'''
| style="background-color:#c4c4c4;" | '''SFD'''
| style="background-color:#fff200;" | '''Zieladresse'''
| style="background-color:#ffca05;" | '''Quelladresse'''
| style="background-color:#ff8022;" | '''Typ'''
| style="background-color:#b6e717;" | '''Daten'''
| style="background-color:#ffb0ca;" | '''FCS'''
|-
| colspan="2" style="background-color:#c4c4c4;" | 8 Byte
| style="background-color:#fff200;" | 6 Byte
| style="background-color:#ffca05;" | 6 Byte
| style="background-color:#ff8022;" | 2 Byte
| style="background-color:#b6e717;" | 46-1500 Byte
| style="background-color:#ffb0ca;" | 4 Byte
|}


==== Ethernet 802.3 Raw (Novell)====
; Ethernet Version 2 Tagged
Ethernet-II Standard mit 802.1Q VLAN-Tag
{| class="big"
|-
| colspan="2" style="background-color:#00a4e9;" | '''Bitfolge''' </br>1010101010
| colspan="6" style="background-color:#9adaeb;" | '''Ethernet-Frame'''</br>68-1522 Byte
| rowspan="3" style="background-color:#7193bf;" | '''Inter</br>Frame</br>Gap</br>9,6 μs'''
|-
| style="background-color:#c4c4c4;" | '''Präambel'''
| style="background-color:#c4c4c4;" | '''SFD'''
| style="background-color:#fff200;" | '''Zieladresse'''
| style="background-color:#ffca05;" | '''Quelladresse'''
| style="background-color:#ff8022;" | '''Tag'''
| style="background-color:#ff8022;" | '''Typ'''
| style="background-color:#b6e717;" | '''Daten'''
| style="background-color:#ffb0ca;" | '''FCS'''
|-
| colspan="2" style="background-color:#c4c4c4;" | 8 Byte
| style="background-color:#fff200;" | 6 Byte
| style="background-color:#ffca05;" | 6 Byte
| style="background-color:#ff8022;" | 2 Byte
| style="background-color:#ff8022;" | 2 Byte
| style="background-color:#b6e717;" | 46-1500 Byte
| style="background-color:#ffb0ca;" | 4 Byte
|}


[[Datei:Novell Ethernet 802.3 Raw Frame.PNG |thumb|ohne|800px| 802.3raw, die vermeintliche Rohversion des 802.3-Pakets]]
=== Ethernet 802.3 Raw (Novell) ===


==== Ethernet IEEE 802.3 Basic====
{| class="big"
|-
| colspan="1" style="background-color:#00a4e9;" | '''Bitfolge''' </br>1010 1010
| colspan="1" style="background-color:#00a4e9;" | </br>1010 101<u>1</u>
| colspan="6" style="background-color:#9adaeb;" | '''Ethernet-Frame'''</br>64-1518 Byte
| rowspan="3" style="background-color:#7193bf;" | '''Inter</br>Frame</br>Gap</br>9,6 μs'''
|-
| style="background-color:#c4c4c4;" | '''Präambel'''
| style="background-color:#c4c4c4;" | '''SFD'''
| style="background-color:#fff200;" | '''Zieladresse'''
| style="background-color:#ffca05;" | '''Quelladresse'''
| style="background-color:#ff8022;" | '''Länge'''
| style="background-color:#b6e717;" | '''0xFFFF'''
| style="background-color:#b6e717;" | '''Daten'''
| style="background-color:#ffb0ca;" | '''FCS'''
|-
| colspan="2" style="background-color:#c4c4c4;" | 8 Byte
| style="background-color:#fff200;" | 6 Byte
| style="background-color:#ffca05;" | 6 Byte
| style="background-color:#ff8022;" | 2 Byte
| style="background-color:#b6e717;" | 2 Byte
| style="background-color:#b6e717;" | 44-1498 Byte
| style="background-color:#ffb0ca;" | 4 Byte
|}


[[Datei:IEEE 802.3 Ethernet Frame.PNG|thumb|ohne|800px|Neu sind „DSAP“ und „SSAP“, ersetzt Type-Field ]]
=== Ethernet IEEE 802.3 Basic ===
Neu sind "DSAP" und "SSAP", ersetzt Type-Field
{| class="big"
|-
| colspan="1" style="background-color:#00a4e9;" | '''Bitfolge''' </br>1010 1010
| colspan="1" style="background-color:#00a4e9;" | </br>1010 101<u>1</u>
| colspan="8" style="background-color:#9adaeb;" | '''Ethernet-Frame'''</br>64-1518 Byte
| rowspan="3" style="background-color:#7193bf;" | '''Inter</br>Frame</br>Gap</br>9,6 μs'''
|-
| style="background-color:#c4c4c4;" | '''Präambel'''
| style="background-color:#c4c4c4;" | '''SFD'''
| style="background-color:#fff200;" | '''Zieladresse'''
| style="background-color:#ffca05;" | '''Quelladresse'''
| style="background-color:#ff8022;" | '''Länge'''
| style="background-color:#b6e717;" | '''DSAP'''
| style="background-color:#b6e717;" | '''SSAP'''
| style="background-color:#b6e717;" | '''Controle'''
| style="background-color:#b6e717;" | '''Daten'''
| style="background-color:#ffb0ca;" | '''FCS'''
|-
| colspan="2" style="background-color:#c4c4c4;" | 8 Byte
| style="background-color:#fff200;" | 6 Byte
| style="background-color:#ffca05;" | 6 Byte
| style="background-color:#ff8022;" | 2 Byte
| style="background-color:#b6e717;" | 1 Byte
| style="background-color:#b6e717;" | 1 Byte
| style="background-color:#b6e717;" | 1 Byte
| style="background-color:#b6e717;" | 42-1497 Byte
| style="background-color:#ffb0ca;" | 4 Byte
|}


; Ethernet 802.3 Tagged
=== Ethernet 802.3 Tagged ===
Ethernet-II nach IEEE 802.3 (mit 802.1Q VLAN-Tag)
{| class="big"
|-
| colspan="1" style="background-color:#00a4e9;" | '''Bitfolge''' </br>1010 1010
| colspan="1" style="background-color:#00a4e9;" | </br>1010 101<u>1</u>
| colspan="9" style="background-color:#9adaeb;" | '''Ethernet-Frame'''</br>68-1522 Byte
| rowspan="3" style="background-color:#7193bf;" | '''Inter</br>Frame</br>Gap</br>9,6 μs'''
|-
| style="background-color:#c4c4c4;" | '''Präambel'''
| style="background-color:#c4c4c4;" | '''SFD'''
| style="background-color:#fff200;" | '''Zieladresse'''
| style="background-color:#ffca05;" | '''Quelladresse'''
| style="background-color:#ff8022;" | '''Tag'''
| style="background-color:#ff8022;" | '''Länge'''
| style="background-color:#b6e717;" | '''DSAP'''
| style="background-color:#b6e717;" | '''SSAP'''
| style="background-color:#b6e717;" | '''Controle'''
| style="background-color:#b6e717;" | '''Daten'''
| style="background-color:#ffb0ca;" | '''FCS'''
|-
| colspan="2" style="background-color:#c4c4c4;" | 8 Byte
| style="background-color:#fff200;" | 6 Byte
| style="background-color:#ffca05;" | 6 Byte
| style="background-color:#ff8022;" | 4 Byte
| style="background-color:#ff8022;" | 2 Byte
| style="background-color:#b6e717;" | 1 Byte
| style="background-color:#b6e717;" | 1 Byte
| style="background-color:#b6e717;" | 1 Byte
| style="background-color:#b6e717;" | 42-1497 Byte
| style="background-color:#ffb0ca;" | 4 Byte
|}


[[Datei:Ethernet IEEE 802.3 Tagged Frame.PNG|mini|ohne|800px|Ethernet-II nach IEEE 802.3 (mit 802.1Q VLAN-Tag)]]
== Jumbo Frames ==
; Nicht standardisierte und übergroße Frames
* Frames länger als die Standardgröße (IEEE 802.3), werden als Jumbo Frames bezeichnet


*das Ethernetframe ist auf der Sicherungsschicht (Schicht 2) des OSI-Modells.
==== Maximum Transmission Unit (MTU) ====
; Maximale Paketgröße eines Protokolls der Vermittlungsschicht
* gemessen in Oktetten (Bytes)
* die Maximum Transmission Unit (MTU) kann ohne Fragmentierung in den Frame eines Netzes der Sicherungsschicht (Schicht 2) übertragen werden


===Aufbau nach IEEE 802.3===
==== Maximale Frame-Größe ====
*Ethernet überträgt die Daten seriell, beginnend jeweils mit dem untersten, niederwertigsten Bit (der „Einerstelle“) eines Bytes.
* Maximale Rahmengröße = Größte MTU aller benutzten Protokolle der Vermittlungsschicht + Größe der Sicherungsschichtheader
*Bytes der breiteren Felder werden als BigEndians übertragen (Byte mit der höheren Wertigkeit zuerst).
*Das erste Bit eines Frames ist das Multicast-Bit (Multicastadressen: meist das erste Byte mit einer ungeraden Zahl).


====Präambel und Start Frame Delimiter (SFD)====
==== Padding-Feld (PAD-Feld)====
=====Präambel=====
; Ethernet-Frame auf Minimalgröße erweitern
*Datenpräambel oder Präambel ist ein Signal, das in einem Rechnernetz übertragenen Nachrichten vorangestellt wird.
* 64 Byte
*Besteht aus einer sieben Byte langen, alternierenden Bitfolge („101010…1010“).
* Wichtig bei alten Übertragungsverfahren, um Kollisionen in der sogenannten Collision-Domain sicher zu erkennen
*Dient zur Bit-Synchronisation der Netzwerkgeräte.
* Präambel und SFD (8 Bytes) werden bei der Mindestlänge des Frames nicht mitgezählt (ein VLAN-Tag schon)
* Ein PAD-Feld wird somit erforderlich, wenn als Nutzdaten weniger als 46 bzw.&nbsp;42 Bytes (ohne bzw.&nbsp;mit 802.1Q-VLAN-Tag) zu übertragen sind
* Das in Type angegebene Protokoll muss dafür sorgen, dass diese als Pad angefügten Bytes (auch "Padding Bytes" genannt) nicht interpretiert werden (üblicherweise eine eigene Nutzdaten-Längenangabe)


=====SFD (Start Frame Delimiter)=====
====Frame Check Sequence (FCS)====
*Folgt auf die Präambel.
; Allgemeines
*Besteht aus einer festen Bitsequenz „1010 1011“.
* 32-Bit-CRC-Prüfsumme
*Kennzeichnet den Beginn des Frames (dient als Startmuster).
* Wird über dem eigentlichen Frame berechnet, also beginnend mit der Ziel-MAC-Adresse und endend mit dem PAD-Feld
*Dient dem Empfänger als Zeichen für den beginnenden Frame-Anfang.
* Präambel, der SFD und die FCS selbst sind nicht in der FCS enthalten
 
====Ziel- und Quell-MAC-Adresse====
=====Allgemeines=====
*Die Quelladresse identifiziert den Sender, die Zieladresse den Empfänger.
*Diese Adresse kann auch eine Multicast- oder Broadcast-Adresse sein.
*Gekaufte Netzwerkkarten haben eine weltweit eindeutige MAC-Adresse, die global von einem Konsortium und der Herstellerfirma verwaltet wird.
 
=====Aufbau=====
*MAC-Adressen werden traditionell als Hex-Zahlen dargestellt, die mit Doppelpunkten getrennt sind, z. B. „08:00:01:EA:DE:21“.
*Quell- und Ziel-Mac-Adressen haben eine Länge von sechs Bytes (48 Bit).
*Zwei Bit der MAC-Adresse werden zu ihrer Klassifizierung verwendet.


=====Klassifizierung=====
; Ablauf
*Dabei wird entschieden:
* Wird ein Paket beim Sender erstellt, wird eine CRC-Berechnung über die Bitfolge durchgeführt und die Prüfsumme an den Datenblock angehängt.
** ob Unicast- oder Broadcast-/Multicast-Adresse.
* Der Empfänger führt nach dem Empfang die gleiche Berechnung aus.
** ob die MAC-Adresse (46 Bit) global oder lokal administriert werden.
* Stimmt die empfangene nicht mit der selbst berechneten Prüfsumme überein, geht der Empfänger von einer fehlerhaften Übertragung aus, und der Datenblock wird verworfen.


; Berechnung
* Zur Berechnung der CRC-32-Prüfsumme werden die ersten 32 Bit der Mac-Adresse invertiert und das Ergebnis der Prüfsummenberechnung wird ebenfalls invertiert (Vermeidung des Nullproblems).
* In üblichen CRC-Implementierungen als rückgekoppelte Schieberegister werden Datenbits in übertragener Reihenfolge, also vom LSB (least significant bit) zum MSB (most significant bit), durch ein Schieberegister geschickt, das aber selbst vom LSB aus beschickt wird.
* In Schieberichtung steht damit das MSB der CRC zuerst zur Verfügung und gerät auch in Abweichung zu allen anderen Daten zuerst auf die Leitung.
* Wird nun der Datenstrom beim Empfänger inklusive empfangenem CRC-Wert in das Schieberegister geschrieben, enthält die CRC im fehlerfreien Fall den Wert Null.
* Ein von Null abweichender Wert deutet auf einen Übertragungsfehler hin.
* Durch die Invertierung der ersten 32 Bit und der CRC-Summe ist das Ergebnis nicht mehr Null.
* Wenn kein Übertragungsfehler aufgetreten ist, dann enthält das Schieberegister immer dieselbe Zahl, auch Magic Number genannt.
* Beim Ethernet lautet die Magic Number 0xC704DD7B.
[[Kategorie:Ethernet]]


Weiteres zu MAC-Adressen: [[MAC-Adresse]]
=== Mindestgröße ===
Ein Frame muss mindestens 64 Byte groß sein
* 68 Byte bei Tagged
* Minimale Slot-Time zur Erkennung von Kollisionen
* Andernfalls werden Bit ergänzt


====VLAN-Tag (TPID/TCI)====
{| class="wikitable options big"
* Im Tagged-MAC-Frame (IEEE 802.1Q) folgen vier Bytes als VLAN-Tag.
! Standard !! Mindestgröße Daten
 
Weiteres zu VLAN: [[VLAN]]
 
====Typ-Feld (Ether-Type)====
* Ethertype beschreibt das Format bzw. das Protokoll zur Interpretation des Datenblocks.
** Zulässige Werte für Ethertype werden von der IEEE administriert (beschränkt sich auf die Vergabe neuer Ethertype-Werte).
** Gibt Auskunft über das verwendete Protokoll der nächsthöheren Schicht innerhalb der Nutzdaten.
* Die Werte sind größer als 0x0600 (sonst ist das ein Ethernet-I-frame mit Längenfeld in dieser Position).
* Ist ein VLAN-Tag vorhanden, darf das daran anschließende Typ-Feld nicht 0x8100 sein (0x8100 ist zur Kennzeichnung eines VLAN-Tags reserviert).
 
{| class="wikitable"
! Typfeld !! Protokoll
|-----
|-----
| 0x0800 || IP Internet Protocol, Version 4 (IPv4)
|Ethernet II
|46 Bytes
|-----
|-----
| 0x0806
|Ethernet 802.3
| Address Resolution Protocol (ARP)
|42 Bytes
|-----
|-----
| 0x0842 || Wake on LAN (WoL)
|}
|-----
 
| 0x8035
; VLAN 802.1q (tagged)
| Reverse Address Resolution Protocol (RARP)
{| class="wikitable eoptions big"
|-----
! Standard !! Mindestgröße Daten
| 0x809B || AppleTalk (EtherTalk)
|-----
| 0x80F3
| Appletalk Address Resolution Protocol (AARP)
|-----
| 0x8100
| VLAN Tag (VLAN)
|-----
| 0x8137 || Novell Internetwork Packet Exchange (IPX)
|-----
| 0x8138 || Novell
|-----
| 0x86DD
| IP Internet Protocol, Version 6 (IPv6)
|-----
| 0x8847
| MPLS Unicast
|-----
| 0x8848
| MPLS Multicast
|-----
| 0x8863 || PPP over Ethernet PPPoE Discovery
|-----
| 0x8864 || PPP over Ethernet PPPoE Session
|-----
| 0x8870
| Jumbo Frames
|-----
| 0x888E
| 802.1X Port Access Entity
|-----
| 0x8892
| Echtzeit-Ethernet PROFINET
|-----
| 0x88A2
| ATA over Ethernet ATA over Ethernet Coraid AoE
|-----
| 0x88A4
| Echtzeit-Ethernet (EtherCAT)
|-----
| 0x88A8
| Provider Bridging
|-----
| 0x88AB
| Echtzeit-Ethernet Ethernet Powerlink (Ethernet POWERLINK)
|-
|0x88B8
|IEC61850 Generic Object Oriented Substation Events (GOOSE)
|-----
| 0x88CC
| Link Layer Discovery Protocol (LLDP)
|-----
| 0x88CD
| Echtzeit-Ethernet Sercos III
|-----
|-----
| 0x88E1
|Ethernet Version 2.0 tagged
| HomePlug AV
|46 Bytes
|-
|0x88E5
|MACsec
|-----
|-----
| 0x8906
|IEEE 802.3 tagged
| Fibre Channel over Ethernet
|46 Bytes
|-----
|-----
| 0x8914
| FCoE Initialization Protocol (FIP)
|-
|0x8947
|GeoNetworking protocol
|}
|}


====Nutzdaten====
*auch Payload genannt.
*Pro Datenblock können maximal 1500 Bytes an Nutzdaten übertragen werden.
*Die Nutzdaten werden von dem unter Type angegebenen Protokoll interpretiert.
*Die Datenbytes werden in aufsteigender Byte-Reihenfolge verschickt.
*Jumbo Frames, Super Jumbo Frames und Jumbogramme erlauben auch größere Datenblöcke, diese Spezialmodi bewegen sich aber offiziell abseits von Ethernet (beziehungsweise IEEE 802.3).


====  Jumbo Frames ====
<noinclude>
*bezeichnet nicht standardisierte und übergroße Frames.
*Frames länger als die Standardgröße (IEEE 802.3), werden als Jumbo Frames bezeichnet.


== Anhang ==
=== Siehe auch ===
<div style="column-count:2">
<categorytree hideroot=on mode="pages">{{BASEPAGENAME}}</categorytree>
</div>
----
{{Special:PrefixIndex/{{BASEPAGENAME}}/}}


===== Maximum Transmission Unit (MTU) =====
=== Dokumentation ===
*beschreibt die maximale Paketgröße eines Protokolls der Vermittlungsschicht (gemessen in Oktetten (Bytes)).
<!--
*die Maximum Transmission Unit (MTU) kann ohne Fragmentierung in den Frame eines Netzes der Sicherungsschicht (Schicht 2) übertragen werden.


==== maximale Größe eines Frames der Sicherungsschicht ====
===== RFC =====
*Maximale Rahmengröße = Größte MTU aller benutzten Protokolle der Vermittlungsschicht + Größe der Sicherungsschichtheader
{| class="wikitable big options col1center col3center"
|-
! RFC !! Titel !! Jahr !! Status
|-
| [https://www.rfc-editor.org/info/rfc2460 2460] || Internet Protocol, Version 6 (IPv6) Specification || 1998 || Ersetzt durch [https://www.rfc-editor.org/info/rfc8200 RFC 8200]
|-
| [https://www.rfc-editor.org/info/rfc8200 8200] || Internet Protocol, Version 6 (IPv6) Specification || 2017 || Updated by [https://www.rfc-editor.org/info/rfc9673 RFC 9673]
|}
===== Man-Page =====
===== Info-Page =====
-->


==== Padding-Feld (PAD-Feld)====


*Wird verwendet um den Ethernet-Frame auf die Minimalgröße von 64 Byte zu bringen.
=== Links ===
*Wichtig bei alten Übertragungsverfahren, um Kollisionen in der sogenannten Collision-Domain sicher zu erkennen.
==== Weblinks ====
*Präambel und SFD (8 Bytes) werden bei der Mindestlänge des Frames nicht mitgezählt (ein VLAN-Tag schon).
 
*Ein PAD-Feld wird somit erforderlich, wenn als Nutzdaten weniger als 46 bzw. 42 Bytes (ohne bzw. mit 802.1Q-VLAN-Tag) zu übertragen sind.
{{DEFAULTSORT:new}}
*Das in Type angegebene Protokoll muss dafür sorgen, dass diese als Pad angefügten Bytes (auch „Padding Bytes“ genannt) nicht interpretiert werden (üblicherweise eine eigene Nutzdaten-Längenangabe).
{{DISPLAYTITLE:new}}


====Frame Check Sequence (FCS)====
</noinclude>
=====Allgemeines=====
[[Kategorie:Ethernet]]
*Das FCS-Feld stellt eine 32-Bit-CRC-Prüfsumme dar.
*Die FCS wird über dem eigentlichen Frame berechnet, also beginnend mit der Ziel-MAC-Adresse und endend mit dem PAD-Feld.
*Die Präambel, der SFD und die FCS selbst sind nicht in der FCS enthalten.
=====Ablauf=====
*Wird ein Paket beim Sender erstellt, wird eine CRC-Berechnung über die Bitfolge durchgeführt und die Prüfsumme an den Datenblock angehängt.
*Der Empfänger führt nach dem Empfang die gleiche Berechnung aus.
*Stimmt die empfangene nicht mit der selbst berechneten Prüfsumme überein, geht der Empfänger von einer fehlerhaften Übertragung aus, und der Datenblock wird verworfen.
=====Berechnung=====
*Zur Berechnung der CRC-32-Prüfsumme werden die ersten 32 Bits der Mac-Adresse invertiert und das Ergebnis der Prüfsummenberechnung wird ebenfalls invertiert (Vermeidung des Nullproblems).
*In üblichen CRC-Implementierungen als rückgekoppelte Schieberegister werden Datenbits in übertragener Reihenfolge, also vom LSB (least significant bit) zum MSB (most significant bit), durch ein Schieberegister geschickt, das aber selbst vom LSB aus beschickt wird.
*In Schieberichtung steht damit das MSB der CRC zuerst zur Verfügung und gerät auch in Abweichung zu allen anderen Daten zuerst auf die Leitung.
*Wird nun der Datenstrom beim Empfänger inklusive empfangenem CRC-Wert in das Schieberegister geschrieben, enthält die CRC im fehlerfreien Fall den Wert Null.
*Ein von Null abweichender Wert deutet auf einen Übertragungsfehler hin.
*Durch die Invertierung der ersten 32 Bit und der CRC-Summe ist das Ergebnis nicht mehr Null.
*Wenn kein Übertragungsfehler aufgetreten ist, dann enthält das Schieberegister immer dieselbe Zahl, auch Magic Number genannt.
*Beim Ethernet lautet die Magic Number 0xC704DD7B.

Aktuelle Version vom 5. Juli 2025, 10:16 Uhr

Ethernet/Frame - Typen von Ethernet-Frames

Beschreibung

Formate

Ethernet Version 1

Nicht mehr benutzt

Definition 1980 durch das DIX-Konsortium DEC, Intel und Xerox

Ethernet-Version-2 oder Ethernet-II-Frame

DIX-Frame Version 2
  • Definition 1982 durch das Konsortium DEC, Intel und Xerox
Standard IEEE 802.3
  • Seit 1983
  • Definiert zwei weitere Frame-Formate
    1. IEEE 802.3 3.1.a Basic MAC frame
    2. IEEE 802.3 3.1.b Tagged MAC frame
  • definiert das 16-bit-Feld nach den MAC-Adressen als Type/Length-Feld
  • Ethernet ist quasi ein Synonym für diesen Standard
Heute verwendetes Ethernet-Datenblockformat
Bitfolge
1010101010
Ethernet-Frame
64-1518 Byte
Inter
Frame
Gap
9,6 μs
Präambel SFD Zieladresse Quelladresse Typ Daten FCS
8 Byte 6 Byte 6 Byte 2 Byte 46-1500 Byte 4 Byte
Ethernet Version 2 Tagged

Ethernet-II Standard mit 802.1Q VLAN-Tag

Bitfolge
1010101010
Ethernet-Frame
68-1522 Byte
Inter
Frame
Gap
9,6 μs
Präambel SFD Zieladresse Quelladresse Tag Typ Daten FCS
8 Byte 6 Byte 6 Byte 2 Byte 2 Byte 46-1500 Byte 4 Byte

Ethernet 802.3 Raw (Novell)

Bitfolge
1010 1010

1010 1011
Ethernet-Frame
64-1518 Byte
Inter
Frame
Gap
9,6 μs
Präambel SFD Zieladresse Quelladresse Länge 0xFFFF Daten FCS
8 Byte 6 Byte 6 Byte 2 Byte 2 Byte 44-1498 Byte 4 Byte

Ethernet IEEE 802.3 Basic

Neu sind "DSAP" und "SSAP", ersetzt Type-Field

Bitfolge
1010 1010

1010 1011
Ethernet-Frame
64-1518 Byte
Inter
Frame
Gap
9,6 μs
Präambel SFD Zieladresse Quelladresse Länge DSAP SSAP Controle Daten FCS
8 Byte 6 Byte 6 Byte 2 Byte 1 Byte 1 Byte 1 Byte 42-1497 Byte 4 Byte

Ethernet 802.3 Tagged

Ethernet-II nach IEEE 802.3 (mit 802.1Q VLAN-Tag)

Bitfolge
1010 1010

1010 1011
Ethernet-Frame
68-1522 Byte
Inter
Frame
Gap
9,6 μs
Präambel SFD Zieladresse Quelladresse Tag Länge DSAP SSAP Controle Daten FCS
8 Byte 6 Byte 6 Byte 4 Byte 2 Byte 1 Byte 1 Byte 1 Byte 42-1497 Byte 4 Byte

Jumbo Frames

Nicht standardisierte und übergroße Frames
  • Frames länger als die Standardgröße (IEEE 802.3), werden als Jumbo Frames bezeichnet

Maximum Transmission Unit (MTU)

Maximale Paketgröße eines Protokolls der Vermittlungsschicht
  • gemessen in Oktetten (Bytes)
  • die Maximum Transmission Unit (MTU) kann ohne Fragmentierung in den Frame eines Netzes der Sicherungsschicht (Schicht 2) übertragen werden

Maximale Frame-Größe

  • Maximale Rahmengröße = Größte MTU aller benutzten Protokolle der Vermittlungsschicht + Größe der Sicherungsschichtheader

Padding-Feld (PAD-Feld)

Ethernet-Frame auf Minimalgröße erweitern
  • 64 Byte
  • Wichtig bei alten Übertragungsverfahren, um Kollisionen in der sogenannten Collision-Domain sicher zu erkennen
  • Präambel und SFD (8 Bytes) werden bei der Mindestlänge des Frames nicht mitgezählt (ein VLAN-Tag schon)
  • Ein PAD-Feld wird somit erforderlich, wenn als Nutzdaten weniger als 46 bzw. 42 Bytes (ohne bzw. mit 802.1Q-VLAN-Tag) zu übertragen sind
  • Das in Type angegebene Protokoll muss dafür sorgen, dass diese als Pad angefügten Bytes (auch "Padding Bytes" genannt) nicht interpretiert werden (üblicherweise eine eigene Nutzdaten-Längenangabe)

Frame Check Sequence (FCS)

Allgemeines
  • 32-Bit-CRC-Prüfsumme
  • Wird über dem eigentlichen Frame berechnet, also beginnend mit der Ziel-MAC-Adresse und endend mit dem PAD-Feld
  • Präambel, der SFD und die FCS selbst sind nicht in der FCS enthalten
Ablauf
  • Wird ein Paket beim Sender erstellt, wird eine CRC-Berechnung über die Bitfolge durchgeführt und die Prüfsumme an den Datenblock angehängt.
  • Der Empfänger führt nach dem Empfang die gleiche Berechnung aus.
  • Stimmt die empfangene nicht mit der selbst berechneten Prüfsumme überein, geht der Empfänger von einer fehlerhaften Übertragung aus, und der Datenblock wird verworfen.
Berechnung
  • Zur Berechnung der CRC-32-Prüfsumme werden die ersten 32 Bit der Mac-Adresse invertiert und das Ergebnis der Prüfsummenberechnung wird ebenfalls invertiert (Vermeidung des Nullproblems).
  • In üblichen CRC-Implementierungen als rückgekoppelte Schieberegister werden Datenbits in übertragener Reihenfolge, also vom LSB (least significant bit) zum MSB (most significant bit), durch ein Schieberegister geschickt, das aber selbst vom LSB aus beschickt wird.
  • In Schieberichtung steht damit das MSB der CRC zuerst zur Verfügung und gerät auch in Abweichung zu allen anderen Daten zuerst auf die Leitung.
  • Wird nun der Datenstrom beim Empfänger inklusive empfangenem CRC-Wert in das Schieberegister geschrieben, enthält die CRC im fehlerfreien Fall den Wert Null.
  • Ein von Null abweichender Wert deutet auf einen Übertragungsfehler hin.
  • Durch die Invertierung der ersten 32 Bit und der CRC-Summe ist das Ergebnis nicht mehr Null.
  • Wenn kein Übertragungsfehler aufgetreten ist, dann enthält das Schieberegister immer dieselbe Zahl, auch Magic Number genannt.
  • Beim Ethernet lautet die Magic Number 0xC704DD7B.

Mindestgröße

Ein Frame muss mindestens 64 Byte groß sein

  • 68 Byte bei Tagged
  • Minimale Slot-Time zur Erkennung von Kollisionen
  • Andernfalls werden Bit ergänzt
Standard Mindestgröße Daten
Ethernet II 46 Bytes
Ethernet 802.3 42 Bytes
VLAN 802.1q (tagged)
Standard Mindestgröße Daten
Ethernet Version 2.0 tagged 46 Bytes
IEEE 802.3 tagged 46 Bytes



Anhang

Siehe auch


Dokumentation

Links

Weblinks