以太网帧格式

以太网帧(Ethernet frame)是数据链路层在网络中传输数据的基本单位,它有一系列固定的格式和组成部分,通常用“octets”(八位组,即字节)来描述其结构。一个标准的以太网II (Ethernet II) 帧格式主要包含以下几个部分,每个部分占用一定的字节数:

  1. 前导码(Preamble) - 7个字节,由10101010... pattern 组成,用于同步接收器并指示新帧的开始。

  2. 帧开始定界符(Start of Frame Delimiter, SFD) - 1个字节,通常是10101011,紧跟在前导码之后,明确表示帧的起始位置。

  3. 目的MAC地址(Destination MAC Address) - 6个字节,表示帧的接收方的物理地址。

  4. 源MAC地址(Source MAC Address) - 6个字节,表示帧的发送方的物理地址。

  5. 类型/长度字段(Type/Length Field) - 2个字节,这个字段根据值的不同有两种解释。如果值大于等于0x0600,则它表示上层协议类型,如0x0800表示IPv4,0x0806表示ARP等。如果值小于等于0x05DC,则它表示以太网帧中的数据字段的长度。

  6. 数据字段(Data Field) - 可变长度,最小46字节(如果数据不足46字节,需要填充至该长度),最大1500字节(不包括前导码、SFD、源/目的MAC地址、类型/长度字段和帧校验序列)。

  7. 帧校验序列(Frame Check Sequence, FCS) - 4个字节,用于错误检测,通常是CRC校验码。

综上所述,一个标准的以太网II帧至少有64字节(最小帧长度),这是由前导码(7字节)、SFD(1字节)、两个MAC地址(共12字节)、类型/长度字段(2字节)、最小数据载荷(46字节)和FCS(4字节)组成。

在以太网链路上的数据包称作以太帧。以太帧起始部分由前导码和帧开始符组成。后面紧跟着一个以太网报头,以MAC地址说明目的地址和源地址。帧的中部是该帧负载的包含其他协议报头的数据包(例如IP协议)。以太帧由一个32位冗余校验码结尾。它用于检验数据传输是否出现损坏。
image

以太网第二版[note 3] 或者称之为Ethernet II 帧,DIX帧,是最常见的帧类型。并通常直接被IP协议使用。

Ethernet II
以太 II 帧 (也称作DIX以太网,是以这个设计的主要成员,DEC,Intel和Xerox的名字命名的。[1]),把紧接在目标和源MAC地址后面的这个两字节定义为以太网帧数据类型字段。

例如,一个0x0800的以太类型说明这个帧包含的是IPv4数据报。同样的,一个0x0806的以太类型说明这个帧是一个ARP帧,0x8100说明这是一个IEEE 802.1Q帧,而0x86DD说明这是一个IPv6帧。

以太网帧格式

posted @ 2024-05-24 22:33  乱串的鱼  阅读(691)  评论(0)    收藏  举报