通过前面的文章我们已经了解了DoIP所具备的Payload类型,基础的信息都已经具备了,今天我们就要进一步的去了解DoIP的处理逻辑了;按照正常的逻辑来看,处理无论是我们人眼去看书,还是计算机处理一段数据,都是从前到后依次进行处理;而DoIP的信息处理也不例外,也是从头开始进行数据的分析剥离,直至最终的可用数据。下面我们先来看DoIP Header的信息处理。
DoIP头部信息检测逻辑
02 FD 80 01 00 00 00 06 10 25 10 28 10 03
上面是一帧完整的DoIP报文,通过该报文我们来聊一下DoIP头部检查逻辑,进一步的去了解DoIP处理方式是什么,以及我们的协议栈在接收到一帧DoIP报文后,是如何去一步一步处理这一帧报文的,下面我们来一步步的看。
从左上角开始,按照箭头的顺序往下走:
1、检查DoIP的协议版本和协议取反版本是否正确:这里检查的是我们的DoIP数据前面2个byte(02 FD),02代表协议版本ISO13400 - 2,FD为02的取反数据;在一家公司中,这一对数据是固定的,是由该主机厂选择的协议版本决定的,当然也存