打开APP
userphoto
未登录

开通VIP,畅享免费电子书等14项超值服

开通VIP
DoIP——通信建立

在上两篇文章中:

DoIP—物理连接

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

    来,每天进步一点点!

本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请点击举报
打开APP,阅读全文并永久保存 查看更多类似文章
猜你喜欢
类似文章
【热】打开小程序,算一算2024你的财运
DoIP基础知识
DoIP协议之时间参数简介
HTTP协议
DoIP—Alive Check
汽车以太网诊断路由深度排雷
深入浅出-iOS的TCP/IP协议族剖析&&Socket
更多类似文章 >>
生活服务
热点新闻
分享 收藏 导长图 关注 下载文章
绑定账号成功
后续可登录账号畅享VIP特权!
如果VIP功能使用有故障,
可点击这里联系客服!

联系客服