1. Ethernet帧(除去上层负载后长度为18字节)

以太帧有好多种,我们最常用到的是Ethernet II

Ethernet II即DIX 2.0:Xerox与DEC、Intel在1982年制定的以太网标准帧格式。Cisco名称为:ARPA

链路层常见报文格式及长度-LMLPHP

Ethernet II类型以太网帧的最小长度为64字节(6+6+2+46+4)最大长度为1518字节(6+6+2+1500+4)。其中前12字节分别标识出发送数据帧的源节点MAC地址和接收数据帧的目标节点MAC地址。(注:ISL封装后可达1548字节,802.1Q封装后可达1522字节)

接下来的2个字节标识出以太网帧所携带的上层数据类型,如下:

IPv4: 0x0800

ARP:0x0806

PPPoE:0x8864

802.1Q tag: 0x8100

IPV6: 0x86DD

MPLS Label:0x8847

在不定长的数据字段后是4个字节的帧校验序列(Frame. Check Sequence,FCS)

2. ARP (ARP Header长度:8字节)

链路层常见报文格式及长度-LMLPHP

硬件类型:1 表示以太网

协议类型:和Ethernet数据帧中类型字段相同

OP操作字段:1 表示ARP请求

2 表示ARP应答

3 表示RARP请求

4 表示RARP应答

3. 802.1q VLAN数据帧(4字节)

基于802.1Q的VLAN帧格式

链路层常见报文格式及长度-LMLPHP

  • Type:长度为2字节,取值为0x8100,表示此帧的类型为802.1Q Tag帧。
  • PRI:长度为3比特,可取0~7之间的值,表示帧的优先级,值越大优先级越高。该优先级主要为QoS差分服务提供参考依据(COS)。
  • VLAN Identifier (VID) : 长度12bits,可配置的VLAN ID取值范围为1~4094。通常vlan 0和vlan 4095预留,vlan1为缺省vlan,一般用于网管。

    QinQ帧格式

    链路层常见报文格式及长度-LMLPHP

    4. PPP帧(除去信息字段后长度为:8字节)

    PPP报文格式

    链路层常见报文格式及长度-LMLPHP

    PPP报文的内容是指Address、Control、Protocol和Information四个域的内容。各字段的含义如下。

  • Flag域Flag域标识了一个物理帧的起始和结束,该字节为0x7E。
  • Address域PPP协议是被运用在点对点的链路上,它可以唯一标识对方。因此使用PPP协议互连的两个通信设备无须知道对方的数据链路层地址。所以该字节已无任何意义,按照协议的规定将该字节填充为全1的广播地址。
  • Control域同Address域一样,PPP数据帧的Control域也没有实际意义,按照协议的规定通信双方将该字节的内容填充为0x03。Address和Control域一起表示了此报文为PPP报文,即PPP报文头为FF03。
  • Protocol域协议域可用来区分PPP数据帧中信息域所承载的数据报文的内容。

协议代码

协议类型

0021

Internet Protocol

8021

Internet Protocol Control Protocol

C021

Link Control Protocol

C023

Password Authentication Protocol

C223

Challenge Handshake Authentication Protocol

  • Information域信息域最大长度是1500字节,其中包括填充域的内容。信息域的最大长度等于PPP协议中MRU(Maximum Receive Unit)的缺省值。

    5. HDLC帧(除去信息字段后长度为:8字节)

    HDLC帧格式

    链路层常见报文格式及长度-LMLPHP

    各字段的含义解释:

字段

长度(字节)

含义

Protocol

2

协议字段。表示Information域中的数据封装的协议类型。

Information

N

信息字段。可以是任意的二进制比特串,长度未作限定。其上限由FCS字段或通信节点的缓冲容量来决定,目前国际上用得较多的是1000~2000比特,而下限可以是0,即无信息字段。但是监控帧中不可有信息字段。

6. PPPoE报文(报文头长度为6字节)

链路层常见报文格式及长度-LMLPHP

windows系统pppoe MTU大小

默认和最大 PPPoE MTU 大小为 1,480 字节。对于某些 Internet 服务提供商 (ISP),您可能需要将 PPPoE 连接的 MTU 大小降至 1,400 1,480 之间的一个值(例如 1,454)。不要将 MTU 大小设置为小于 1,400

路由器pppoe拨号时MTU为1492

7. MPLS Label

Label报文格式:

链路层常见报文格式及长度-LMLPHP

MPLS uses a 32-bit label field that contains the following information:

  • 20-bit label (a number)
  • 3-bit experimental field (usually used to carry IP precedence value)
  • 1-bit bottom-of-stack indicator (indicates whether this is the last label before the IP header)
  • 8-bit TTL (equal to the TTL in IP header)used to prevent indefinite looping of packets.

11-06 18:39