DoIP——通信建立
在上两篇文章中:
分别介绍了Tester与车辆获取物理连接、车辆声明自身信息后接下来需要操作的就是本文所要分享的内容:Tester与车辆控制器的通信建立。
一、通信模式
通信建立区分:
1、UnsecuredDoIP session;
2、Secured(TLS) DoIP session
A、UnsecuredDoIP session;
此DoIP会话模式为没有经过安全认证。
如下图所示,为了启动客户端DoIP实体与车辆中的DoIP实体之间的连接,第一步就是打开套接字(Socket)。这一步是在任何报文交换前必须完成的。因此DoIP实体需要提供处理传入通信请求的资源(Socket资源)。
为了激活初始化连接,Client需要发送路由激活请求报文(routingactivation request message)到DoIP实体。让Socket状态跳转到“路由激活”(routingactive相当于将此链路激活打通,可以进行诊断通信)。当诊断客户端不在需要此连接,需要将此Socket断开,就可以保证该Socket被其他新的请求使用。
B、Secured(TLS) DoIP session
关于经过安全认证后DoIP会话模式,其过程是增加了一步TLS安全认证(TLS源于互联网,稍后会专门有文章说明此内容)。
当一个Socket连接建立后,TLS协议特定的握手初始化步骤由客户端DoIP实体和DoIP实体执行。TLS握手成功完成后,所有后续消息都通过此TLSTCP_DATA套接字交换。
同样道理,当DoIP客户端不需要安全的TCP连接,需要将该Socket连接释放,以便其他新的请求使用。
其中Socket套接字,一端是IP地址,一端是Port口。
二、路由激活(Routingactivation)格式
首先需要清楚DoIP报文头框架结构:
如上图,是截取ISO13400协议关于DoIP报文头框架,其中最需要注意的地方就是Payloadtype。它决定了该帧报文的具体功能类型。
回归到本文话题,关于路由激活的Payloadtype:
截取Demo中Trace数据如下:
在协议中,定义路由激活报文格式如下:
其中关于Routingactivation request activation types定义如下:
其中对于激活报文的作用类型分了好多种,也预留了相应位置,保证协议的灵活性;也预留给OEM自定义使用的权限。
将路由激活请求发送至DoIP实体,DoIP实体处理机制如下:
根据处理机制,DoIP响应其请求
响应格式如下
其中Routingactivationresponse code值详细定义如下表:
路由激活响应码值由不同的触发条件触发:
当DoIP实体收到的路由激活报文请求中,源地址(sourceaddress)未知时,发送路由激活响应并标注路由激活响应码0x 00;
当DoIP实体收到的路由激活报文请求时,如果sockethandler判断TCP_DATAsocket不可用时,发送路由激活响应并标注路由激活响应码0x 01;
当DoIP实体收到的路由激活报文请求中,源地址与已收到的TCP_DATAsocket套接字中表连接入口不一致,发送路由激活响应并标注路由激活响应码0x 02;
当DoIP实体收到的路由激活报文请求中,源地址已经在TCP_DATAsocket中注册并激活,发送路由激活响应并标注路由激活响应码0x 03;
当DoIP实体收到的路由激活报文请求中,在路由激活请求之前,需要其他身份认证,发送路由激活响应并标注路由激活响应码0x 04;
当DoIP实体收到的路由激活报文请求中,需要车辆内的确认,但此确认同时被拒绝,发送路由激活响应并标注路由激活响应码0x 05;
当DoIP实体收到的路由激活报文请求中,DoIP实体不支持此路由激活类型(routingactivation type),发送路由激活响应并标注路由激活响应码0x 06;
当DoIP实体收到的路由激活报文请求中,出现以下条件时,发送路由激活响应并标注路由激活响应码 0x 10
(1)、路由激活请求报文中,逻辑源地址对于DoIP实体是可知的
(2)、按照sockethandler要求,TCP_DATAsocket是可用的
(3)、没有额外的认证步骤需要完成
(4)、没有要求车辆确认
当DoIP实体收到的路由激活报文请求中,出现以下条件时,发送路 由激活响应并标注路由激活响应码0x 11:
(1)、路由激活请求报文中,逻辑源地址对于DoIP实体是可知的
(2)、按照sockethandler要求,TCP_DATAsocket是可用的
(3)、没有额外的认证步骤需要完成
(4)、需要车辆内部的其他确认(e.g.需要确认组合仪表显示屏中的信息报文)
以上是关于DoIP通信前的路由激活全过程。
我相信时间的力量,愿你我每天进步一点点!
自媒体提供了一个展现自己观点的平台,我有幸参与其中,来畅所欲言的表达自己观点。但鉴于眼界和以往经验,阐述的观点有可能具有一定的局限性,望读者批判性的阅读。
若您有所收获,我将万分激动,因为他人的认可是我幸福度提高的动力和源泉,也是我不断更新的动力。
若您也发现有争议的点,欢迎邮件沟通交流哈!!!
若您有所收获,是我更新的最大动力!
有关注,不迷路!
现阶段可在私信上面沟通技术疑问,我会及时回复!
-----------------------------------------
作者简介 | 穿拖鞋的汉子
汽车电子工程师
chuantuoxiedehanzi@163.com
来,每天进步一点点!