Ein Datenframe ist ein Datagramm auf Schicht 2 des OSI-Modells. Der Begriff Frame ist dabei klar von dem Begriff Paket zu unterscheiden, da dieser für die Schicht 3 des OSI-Modells reserviert ist.
Der Datenframe beinhaltet mindestens
- Trennzeichen, um Beginn und Ende des Frames festzustellen,
- Ziel- und Quell-Adressen (schichtspezifisch, auch Hardware, oder MAC-Adressen genannt),
- Steuerinformationen (schichtspezifisch),
- die Daten des Pakets aus Schicht 3, und
- Prüfsummen zum Erkennen von Übertragungsfehlern.
Der Datenframe bei Ethernet (IEEE-802.3)
SOF | Z-MAC | Q.MAC | T/L | DATA | FCS |
6 Byte | 6 Byte | 2 Byte | 46-1500 Byte | 4 Byte | |
Start of Frame | Ziel MAC | Quell MAC | Type or Length | DATA | Frame Check Sequence |
Standardmäßig ist der Datenframe 1518 Byte groß, von denen 18 Byte für den Header und Trailer reserviert sind. Für das Datenfeld stehen maximal 1500 Byte zur Verfügung, wobei im Minimalfall 64 Byte belegt werden müssen, damit die Mindestrahmenlänge von 64 Byte für die Kollisionserkennung eingehalten wird. (siehe CSMA/CD)
Ein IP-Paket kann bis ca. 65.000 Byte groß sein und würde somit nicht in einen Datenframe passen. Deshalb werden die IP-Pakete von der Schicht 3 nur so groß gemacht, dass sie auch in einen Datenframe passen. Wird ein großes IP-Paket hierbei zerlegt, so spricht man von Fragmentierung. Typischerweise kann man dem IP-Protokollstack über die Maximum Transmission Unit (MTU) mitteilen, wie groß die Nutzdaten im Datenframe auf Schicht 2 sind, um die Fragmentierung zu vermeiden.