Search

Ethernet Frame Format

In this tutorial lesson, you will learn about Ethernet Frame format, Structure of Ethernet frame, Ethernet Frame header fields, Preamble, SFD (Start Frame Delimiter), Source and Destination MAC Addresses, Length, Data/Padding and FCS (Frame Check Sequence).

As you had learned from previous lessons, "Frame" is the name of data packet at layer 2 (Datalink layer) of five layered TCP/IP model. There are different formats available for Ethernet Frame. The format of most widely used Ethernet frame these days is explained below.

Structure of Ethernet Frame

The data packets from layer 3 (Network layer) is moved down to Layer 2 (Datalink Layer) as data moves down the TCP/IP protocol stack at Sender. There is a size limitation for Ethernet Frame. The total size of the ethernet frame must be between 64 bytes and 1,518 bytes (not including the preamble). Datalink layer breaks IP Datagrams (from Network layer) into smaller chunks (if necessary), which will become the data payload of ethernet frames at Datalink layer. A Frame includes data to be transmitted and also a header and a trailer which contain information that the network adapters on the ethernet need to process the frame.

As you can see from below image (not including the preamble and SFD), the minimum size of an Ethernet Frame must be 64 bytes (6+6+2+46+4) and maximum size of an Ethernet Frame 1,518 bytes (6+6+2+1500+4).

Ethernet frame structure

As you had learned from previous lessons, Ethernet "Frame" has a Header part, Data part and Trailer part. Please visit TCP/IP encapsulation and decapsulation lesson to learn more.

Following image shows the Header, Data and Trailer part of Ethernet Frame.

frame-header-trailer-data.jpg

Ethernet Frame fields

Preamble

A sequence of 56 bits (7 bytes) having alternating 1 and 0 values (10101010101010101010101010101010101010101010101010101010) that are used for synchronization. Preamble allows receiving computer to synchronize timing and to reach a steady state before actual ethernet frame arrives.

ethernet-frame-preamble.jpg

SFD (Start Frame Delimiter)

SFD (Start Frame Delimiter) is a sequence of 8 bits having the bit configuration 10101011 that indicates the start of the frame. The difference between a Preamble byte and SFD byte is that the last bit of a Preamble byte is "0" (10101010) and last bit of SFD byte is "1" (10101011). The SFD (Start Frame Delimiter) byte indicates the receiving computer that the next part of Ethernet Frame transmission is the destination MAC address.

sfd-start-frame-delimiter.jpg

Source and Destination MAC Addresses

The Source MAC Address and the Destination MAC Address are the most important part of an ethernet frame. The Source MAC Address is the MAC Address of the device that the ethernet frame is coming from. The Destination MAC Address is the MAC Address of the device which is going to receive the ethernet frame. Both Source and Destination MAC Addresses fields are 6 bytes long.

MAC address (Layer 2 addresses, physical address or hardware address) is a universally unique identifier, permanently burned in the network card/interface. For Ethernet and Token Ring, these addresses are 48 bits, or six octets (bytes). MAC Addresses are represented in hexadecimal characters because hexadecimal format is easier for humans to read when compared with the binary format. One hexadecimal digit resembles a group of four contiguous binary bits, called a nibble. An example representation of MAC address is AA.F0.C1.E8.13.40.

To view the MAC Address when you are working with a Windows workstation, run cmd (Start > run > type cmd and Enter). Type the command "ipconfig /all" in the prompt and Enter. Do remember to remove double quotes.

Type

Type is a 2-byte (16-bit) field contains the information about the type of protocol at the upper layer of Layer 2 (Layer 3, Network Layer). Type field is used to identify the exact Layer 3 protocol at the receiving computer to which data packet is intended to be delivered.

Following table shows the hexadecimal codes of important Network Layer (Layer 3) protocols, used in Ethernet frame’s "Type field".

Network Layer Protocol Hexadecimal Code
IPv4 0x0800
IPv6 0x86DD
IEEE 802.1Q (VLAN Tagged Frame) 0x8100
IEEE 802.1X (EAP over LAN) 0x888E
ARP (Address Resolution Protocol) 0x0806
RARP (Reverse Address Resolution Protocol) 0x8035
Simple Network Management Protocol (SNMP) 0x814C

 

Data/Padding

This field contains the actual data transferred from the source device to the destination device. As you can see from Ethernet Frame format image, the minimum size of data field is 46 bytes and maximum size of data field is 1500 bytes.

Excluding preamble and SFD, the minimum Ethernet frame size is 64 bytes from the Destination MAC Address field including the Frame Check Sequence field. If the length of Data field is less than its minimum value (46 Bytes), then padding of "0’s" is added to meet the minimum allowed length.

FCS (Frame Check Sequence)

FCS (Frame Check Sequence) field contains a 4-byte Cyclic Redundancy Check (CRC) value used for error checking. When a source device assembles a frame, it performs a Cyclic Redundancy Check (CRC) calculation on all fields in the frame except the Preamble, SFD (Start Frame Delimiter), and frame check sequence using a predetermined algorithm. The source device stores the value in this field and transmits it as part of the frame. When the frame is received by the destination device, it performs an CRC test again using the same algorithm. If the CRC value calculated at the destination device does not match the value in the FCS (Frame Check Sequence) field, the destination device will discard the frame, considering this as a transmission error.

Following image shows Ethernet Frame fields and sizes, including upper layer protocol data.

ethernet-frame-structure-with-upper-layer-protocol-data.jpg

Ethernet Runt and Giant Frames

The total size of the ethernet frame must be between 64 bytes and 1,518 bytes (not including the preamble). A frame shorter than the minimum 64 bytes but with a valid CRC is called as a runt. In most cases, such frames arise from a collision or a damaged network card. Any frame which is received and which is greater than the maximum frame size, is called a "giant". A "giant" is longer than 1518 bytes yet have a valid CRC. Both runts and giants are considered as invalid ethernet frames.

You have learned about Ethernet Frame format, structure of Ethernet Frame and different fields of Ethernet Frame. Click next link to continue learning.

Related Tutorials
Introduction to TCP/IP, Features of TCP/IP, TCP/IP History, What is RFC (Request for Comments)
What is PDU (Protocol Data Unit)
How data is moved through different layers of OSI model at sending and receiving computers
Names of data packets at different layers of OSI model
Why OSI model failed
Four Layers of original TCP/IP model, Functions of four layers of TCP/IP model
Five layered TCP/IP model
Comparison between four layered TCP/IP model and five layered TCP/IP model
Protocols/Standards at various layers of TCP/IP model
Comparison between TCP/IP and OSI models
How data is moved through different layers of TCP/IP model at sending and receiving computers
TCP/IP Encapsulation and Decapsulation
Physical Layer (Layer 1)
Datalink Layer (Layer 2)
Ethernet Frame Format
What is MAC address or Layer 2 address or physical address
Network Layer (Layer 3)
IPv4 Protocol, IPv4 header and fields of IPv4 header
IPv4 addresses, IPv4 Address Classes, IPv4 Address Classifications
Transport Layer (Layer 4)
Application Layer (Layer 5)