An Ethernet data frame is the fundamental unit of data transmission on an Ethernet network, carrying information between network devices.
An Ethernet frame is essentially a structured packet of data that encapsulates information being sent across an Ethernet connection. It includes specific fields that allow network devices to synchronize, identify sender and receiver, determine the type of data being carried, and detect errors.
According to the provided reference, an Ethernet frame is defined as a data packet structure that includes:
- A 64-bit preamble for signal synchronization.
- 48-bit addresses for source and destination hosts.
- A packet type field for protocol identification.
- Up to 1500 bytes of data.
- A 32-bit CRC for error detection.
Structure of an Ethernet Frame
The Ethernet frame has a defined structure, with each field serving a critical function in reliable data delivery over a local network.
Let's break down the key components:
Preamble and Start of Frame Delimiter (SFD)
- Preamble (64 bits): This field consists of an alternating pattern of 1s and 0s (10101010...) used by receiving stations to synchronize their clock with the incoming bit stream. This is crucial for reliable data reception.
- Start of Frame Delimiter (SFD) (8 bits): The last byte of the 64-bit Preamble is the SFD (10101011). It signals the beginning of the actual Ethernet frame.
MAC Addresses
- Destination MAC Address (48 bits): Specifies the hardware address of the intended recipient device. This allows switches and other network devices to forward the frame to the correct destination on the local network segment. MAC addresses are globally unique identifiers assigned to network interfaces (e.g.,
00:1A:C2:7B:00:47
). You can learn more about MAC Addresses here (example hyperlink). - Source MAC Address (48 bits): Specifies the hardware address of the sending device. This is used by the recipient to identify the source of the frame and for potential response traffic.
EtherType (Packet Type Field)
- EtherType (16 bits): This field identifies the protocol carried in the frame's data payload. For example, an EtherType of
0x0800
indicates an IPv4 packet, while0x0806
indicates an ARP (Address Resolution Protocol) packet. This tells the receiving station how to interpret the data that follows.
Payload (Data and Padding)
- Data (up to 1500 bytes): This is where the actual network layer data (like an IP packet) resides. The maximum size for the data field is 1500 bytes, defining the Maximum Transmission Unit (MTU) for standard Ethernet. If the data is less than 46 bytes, padding is added to meet the minimum frame size requirement.
Frame Check Sequence (FCS)
- Frame Check Sequence (FCS) (32 bits): This field contains a Cyclic Redundancy Check (CRC) value calculated over the entire frame content after the Preamble/SFD. The receiving station recalculates the CRC based on the received data and compares it to the FCS value in the frame. If they don't match, it indicates an error occurred during transmission, and the frame is typically discarded.
Summary Table
Here's a quick overview of the Ethernet frame structure based on common Ethernet II framing:
Field Name | Size (Bits) | Size (Bytes) | Purpose |
---|---|---|---|
Preamble + SFD | 64 | 8 | Synchronization & Frame Start Signal |
Destination MAC Address | 48 | 6 | Recipient Hardware Address |
Source MAC Address | 48 | 6 | Sender Hardware Address |
EtherType | 16 | 2 | Protocol Identification (e.g., IPv4, ARP) |
Data (Payload) + Padding | up to 12000 | up to 1500 | Actual Network Layer Data |
Frame Check Sequence (FCS) | 32 | 4 | Error Detection (CRC) |
Note: The total frame size can vary based on the data payload, but the minimum is 64 bytes (including FCS, excluding Preamble/SFD) and the maximum is 1518 bytes (excluding Preamble/SFD).
Understanding the Ethernet frame structure is essential for comprehending how data is formatted and transported at the data link layer (Layer 2) of the networking model.