在当前新能源行业发展日益蓬勃的今天,车载以太网的引入也在逐渐走入各位从业者的眼中,我也是在学习初期在网络上搜索大量关键词,以期对车载以太网的协议有一个更加清晰的认识,不过由于从业人员太少,以及行业太过小众化,所查找的资料并不是很多,因此为了自己以后能够在使用的时候随时查找,并且希望帮助各位初学者进行一个简单的认识,今天就简单介绍些车载以太网协议中的ICMP协议,本文主要对其数据类型进行整体的解析,以保证初学者能够清晰的理解整条以太网报文中所包含的字段有哪些、且所表达的是什么意思,下面来简单进行标注,如果有不对的地方,欢迎批评指正!
以下是摘录CANoe软件的Trace窗口的原始报文信息:
Detail View:
General
Type: Ethernet packet
Channel: Eth 1
Frame Length: AC59D325
Packet Length: 70 byte
Direction: Rx
Length 70 byte
Data
Length 70 byte
000h 02 76 86 28 25 2D 02 76 86 28 25 99 08 00 45 00 00 38 EC 9D 00 00 40 01 33 78 C0 A8 01 21 C0 A8
020h 01 2D 03 03 B5 F2 00 00 00 00 45 00 00 35 3F 0A 00 00 40 11 E0 FE C0 A8 01 21 C0 A8 01 2D 7A 1E
040 40 10 00 21 A5 BA
解析:
前导码:
帧起始:
1、Destination MAC:02 76 86 28 25 2D 目标物理地址
2、Source MAC:02 76 86 28 25 99 源物理地址
3、ETH type:08 00
General Use:0x0800 IPv4;0x86DD IPv6;0x8100 Adressing resolution protocol;0x9100 VLAN 0x0806 ARP;ICMP
Single Tag:0x88F5 VLAN Double Tag;
AVB:0x22F0 IEEE 1722;0x88F7 GPTP网络;0x22EA Multiple Stream Reservation Protocol;
V2X:0x88DC Wave short Message Protocol;
802.3:0x0-0x05DC IEEE 802.3长度
4、Version+HIL:45
版本:如4表示IPV4 IPV4:4,IPV6:6
5、 DSCP+ECN:00
Differentiated Service:一般没有使用,详细参考RFC
Explicit Congestion Notification:用于扩展检测丢包
6、 Total length:00 38
总长度:header+数据 总长度
7、 Identification:EC 9D
计时器:占16位,它是一个计数器,用来产生数据包的标识
8、Flags+Fragment Offset: 00 00
标明是否分片 bit 0: Reserved; must be zerobit 1: Don't Fragment (DF) bit 2: More Fragments (MF)
占12位,指较长的分组在分片后某片在原分组中的相对位置.片偏移以 8 个字节为偏移单位
9、 Time to alive:40
生存时间:占8位,记为TTL (Time To Live) 数据报在网络中可通过的路由器数的最大值,TTL 字段是由发送端初始设置一个 8 bit字段.推荐的初始值由分配数字 RFC 指定,当前值为 64.发送 ICMP 回显应答时经常把 TTL 设为最大值 255
10、Protocol:01
协议类型:占8位,指出此数据报携带的数据使用何种协议以便目的主机的IP层将数据部分上交给哪个处理过程, 1表示为 ICMP 协议, 2表示为 IGMP 协议, 6表示为 TCP 协议, 17表示为 UDP 协议
11、Header checksum:33 78 数据头CRC
12、Source IP: C0 A8 01 21 源IP地址
13、Destination IP: C0 A8 01 2D 目标IP地址
14、ICMP Type:03 类型
15、ICMP Code:03 代码
16、Checksum:B5F2
17、Reserved:00 00 00 00
18、Version+HIL:45
19、DSCP+ECN:00
Differentiated Service:一般没有使用,详细参考RFC
Explicit Congestion Notification:用于扩展检测丢包
20、Total Length:00 35 总长度:header+数据
21、Identitification:3F 0A
计时器:占16位,是一个计数器,用来记录产生的数据包标识
22、Flag+Frament Off输入:00 00
标明是否分片,bit 0: Reserved;must be zerobit 1: Don't Fragment(DF) bit 2: More Fragment(MF)占12位;指较长的分组在分片后某片在原分组的中的相对位置,偏移以8个字节为偏移单位
23、 Time to alive:40
生存时间:占8位,记为TTL (Time To Live) 数据报在网络中可通过的路由器数的最大值,TTL 字段是由发送端初始设置一个 8 bit字段.推荐的初始值由分配数字 RFC 指定,当前值为 64.发送 ICMP 回显应答时经常把 TTL 设为最大值 255
24、Protocol:11
协议类型:占8位,指出此数据报携带的数据使用何种协议以便目的主机的IP层将数据部分上交给哪个处理过程, 1表示为 ICMP 协议, 2表示为 IGMP 协议, 6表示为 TCP 协议, 17表示为 UDP 协议
25、Header checksum:E0 FE 数据头CRC
26、Source IP: C0 A8 01 21 源IP地址
27、Destination IP: C0 A8 01 2D 目标IP地址
28、Payload:7A 1E 27 10 00 21 A5 BA