以太网帧结构
以太网主要有以下四种帧结构
- Ethernet II
- Ethernet 802.3 raw(Novell Ethernet)
- Ethernet 802.3 SAP
- Ethernet 802.3 SNAP
- Ethernet II类型以太网帧的最小长度为64字节(6+6+2+46+4),最大长度为1518字节。
- 类型字段标识出以太网帧所携带的上层数据类型,如16进制数0x0800代表IP协议数据 。
- 校验序列(Frame Check Sequence,FCS),采用32位CRC循环冗余校验对从"目标MAC地址"字段到"数据"字段的数据进行校验。
image/tcp_ip/ethernet_novell.png
- 在Ethernet 802.3 raw类型以太网帧中,原来Ethernet II类型以太网帧中的类型字段被“总长度”字段所取代,它指明其后数据域的长度,其取值范围为:46-1500。
- 接下来的2个字节是固定不变的16进制数0xFFFF,它标识此帧为Novell以太类型数据帧。
- 802.3 SAP首部包括两个服务访问点:源服务访问点(SSAP)和目标服务访问点(DSAP)。它们用于标识以太网帧所携带的上层数据类型,如16进制数 0x06代表IP协议数据。
- 控制字段基本不使用(一般被设为0x03,指明采用无连接服务的802.2无编号数据格式)。
image/tcp_ip/ethernet_snap.png
- Ethernet 802. 3 SNAP类型以太网帧格式和Ethernet 802. 3 SAP类型以太网帧格式的主要区别在于:
- 2个字节的DSAP和SSAP字段内容被固定下来,其值为16进制数0xAA。
- 1个字节的“控制”字段内容被固定下来,其值为16进制数0x03。
- 增加了SNAP字段,由下面两项组成:Org code+类型(与Ethernet II 中类型字段含义相同)。
TCP/IP数据报文结构
IP头部结构: image/tcp_ip/ip_hdr.png
UDP头结构: