0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

基于IP网络的诊断通信流程分析

jf_EksNQtU6 来源:车端 作者:车端 2022-11-07 15:56 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

1 概述

DoIP全称为基于IP网络的诊断通信Diagnostic communication over Internet Protocol,由ISO 13400标准定义,是基于IP的汽车诊断协议。由于DoIP可以传输大量数据,以及响应速度快,且可以通过以太网进行远程诊断,因此DoIP逐步成为代替传统的CAN等总线方式,成为车载网络诊断的必然趋势。DoIP诊断经由通用的统一诊断服务UDS协议引入诊断服务,通过传输控制协议TCP、用户数据报协议UDP和以太网协议IP,完成外部测试设备与ECU间的诊断通信。在OSI 7层模型中,ISO 13400规定了DoIP的传输层、网络层、数据链路层和物理层。应用层和会话层部分和基于CAN总线诊断一样采用ISO 14229实现。当然,DoIP并不仅仅只是UDS的载体,虽然在ISO13400标准中内容不多,但是它也有自己的一些逻辑,不可能说在TCP/IP之上加了一层封装就完成了自己的任务,这样的话安全性就没有保证了,毕竟车载以太网通过网络能够将车内与车外进行网络的连接,而DoIP又是诊断的入口,这个门口如果不好好看住,会存在安全性的问题的。

2 网络拓扑

下图为未来整车架构的网络拓扑图,根据该拓扑结构,5个域控制器:车身、动力总成、底盘、信息娱乐、高级驾驶员辅助系统ADAS,通过以太网作为主干网连接,每个域内部均可使用不同网络,当域与域之间需要信息交流时,报文可经由域控制器路由转发到目标网络。

bc39979a-5c3c-11ed-a3b6-dac502259ad0.png

注意图中的一些关键信息可参考DoIP中的以下几个关键概念来理解:

DoIP entity(DoIP实体):实现DoIP协议的节点,即DoIP gateway或者DoIP node;

DoIP gateway( DoIP网关):实现DoIP协议,并能进行协议转发的节点;

DoIP node(DoIP节点):实现DoIP协议,但不能进行协议转发的节点;

DoIP edge node(DoIP边缘节点):连接以太网激活线的DoIP节点,此部分和DoIP gateway有什么区别?其实没什么区别,唯一的区别就是多了个使能线的判断,从图中可以看出External test equipment和DoIP edge node gateway之间有一条线叫做Activation line。那么这条线的功能就是对协议栈进行使能作用的,当然External test equipment和DoIP edge node gateway之间不只是Activation line相连的,这个图只是功能示意图,少了很多细节,其实是通过标准的OBD-II接头相连的,其中一个针脚就是Activation line。

Network Node(网络节点):连在IP网络上,但不能实现DoIP的节点。

External test equipment:此部分为外部测试设备,通常为OBD诊断仪或者其他诊断客户端

端口:指定了端口号,客户端和服务端可以在此端口上进行收发数据。我们知道不管是TCP还是UDP,都包含源端口号和目的端口号,在DoIP报文中用到了以下三种端口:

UDP_DISCOVERY:端口类型-UDP,端口号-13400,该端口有以下两个应用场景:

1) 被用于诊断设备发送给DoIP节点的车辆信息请求报文和DoIP节点控制报文,此时该端口在报文中被设置为目的端口。

2) 被用于DoIP节点在没有收到请求的时候发送的UDP报文,如车辆声明报文。此时该端口同样被设置为目的端口,源端口可以为该端口,也可以由发送方动态定义。

UDP_TEST_EQUIPMENT_REQUEST:端口类型-UDP,端口号-动态定义(49152-65535):该端口由外部诊断设备在49152-65535范围内动态定义,用于诊断设备向DoIP节点发送的UDP报文,在报文中作为源端口,报文的目的端口应设置为UDP_DISCOVERY。当DoIP节点向诊断设备发送响应的时候,报文中的目的端口应设置为UDP_TEST_EQUIPMENT_REQUEST,源端口可以为UDP_DISCOVERY,也可以有DoIP节点动态定义。

TCP_DATA:端口类型-TCP,端口号-13400:该端口用于外部诊断设备和DoIP节点之间的TCP通信,如路由报文和诊断报文。当诊断设备向DoIP节点发送报文时,使用TCP_DATA作为目的端口号;当DoIP节点向诊断设备发送报文时,使用TCP_DATA作为源端口号。

bc697e74-5c3c-11ed-a3b6-dac502259ad0.png

DoIP在车载领域的应用首先汽车系统的整体框架要能够支持DoIP,正因为车载以太网的快速发展,相较于传统的车载系统,目前的车载系统的整体框架都会加入一层DoIP协议层,在TCP/IP之上。并且为了更好的配合OBD诊断,远程诊断,FOTA等等技术,对整体的车载架构进行了调整,利用swich将MPU,MCU,其它以太网ECU统统通过以太网进行连接,并对外网与内网进行隔离。

DoIP架构模型必须实现以下特征:

①车辆与测试设备能够加入到网络中并识别对方;②汽车具有声明存在且被检测到的能力;③获取车辆基本状态信息(如Power Mode状态);④通信建立,如双方通信请求建立,保持,以及对网关的控制等;⑤汽车网关实现诊断设备与车辆子网组件之间的数据路由;⑥错误状态处理。

3 DoIP帧格式

DoIP报文由DoIP报头和Payload(有效载荷)组成,具体如下图所示。

bc92d04e-5c3c-11ed-a3b6-dac502259ad0.png

bcb4436e-5c3c-11ed-a3b6-dac502259ad0.png

1)DoIP报头包含:DoIP协议版本号,目前为0x02(DoIP

2012)。

2)协议版本号取反,目前为0xFD。注意:协议书上特别说明了Protocol version可以为0xFF,设这个值的作用是,当客户端和服务端的协议版本不匹配,可以设置此值绕过协议头版本不匹配而拒绝请求的case。

3)Payload类型,分为3大类:

①节点管理类,包含DoIP报头否定应答、车辆声明及标识、路由激活、在线检查;

②车辆信息类,包含DoIP实体状态、诊断电源模式信息;

③诊断数据类,包含诊断报文。

关于每个类型的含义如下表所示,具体含义参考标准即可。

bce279e6-5c3c-11ed-a3b6-dac502259ad0.png

4 DoIP状态机和通信流程

c013c6f6-5c3c-11ed-a3b6-dac502259ad0.png

DoIP实体内管理着一个DoIP connection table ,用来记录和维护诊断通信的逻辑连接。上图就是这个表中的一个元素,即一个逻辑连接的状态机。上图中的方框就是连接所处的状态,[Step]是状态之间跳转时发生的事情。

[Step1] 当一个新的套接字建立,逻辑连接的状态就从“listen”跳转到“socket initialized”,同时启动一个定时器, initial inactivity timer。

[Step2] 当DoIP实体接收到tester发来的一个routing activation信息后,逻辑连接的状态就从“socket initialized”跳转到“Registered [Pending for Authentication]” ,此时 initial inactivity timer被停止,启动一个名为general inactivity timer的定时器。

[Step3] 在完成Authentication之后,逻辑连接的状态就从“Registered [Pending for Authentication]”跳转到“Registered [Pending for Confrmation]” 。

[Step4] 在完成Confrmation之后,逻辑连接的状态就从“Registered [Pending for Confrmation]”跳转到“Registered [Routing Active] ” 。

[Step5] 如果initial timer 或general inactivity timer 过期后仍没收到后续请求,或者authentication 和 confrmation 被拒绝了,又或者外部测试设备对alive check 消息没有响应,则逻辑连接进入“Finalize”状态。

[Step6]进入Finalize后,此时TCP套接字将被关闭,并重新回到“listen”状态。

5 DoIP通信流程

通信的建立

当一辆车和外部测试设备都连接到DoIP网络中,并且IP地址配置完成,DoIP实体将通过车辆公告信息广播其VIN、EID、GID和逻辑地址3次,外部测试设备通过广播发送车辆识别请求来触发车辆识别响应,从而完成车辆声明及标识步骤。打开Socket(套接字)是外部测试设备向车辆内部DoIP实体发起连接的第一步,必须在交换任何报文前完成,一旦建立了连接,必须执行一些初始化操作。为了激活初始化连接中的路由,外部测试设备将发送一个路由激活请求消息到DoIP实体。如果外部测试设备符合条件,DoIP实体将发送一个路由激活成功的响应,此时就可以对有效的DoIP报文(如DoIP诊断报文)进行转发或处理。DoIP会话示例如下图所示。

c02e094e-5c3c-11ed-a3b6-dac502259ad0.png

报文头的处理

每个DoIP实体(实现了DoIP协议的节点)将按下图中指定的顺序处理所有DoIP报文的通用DoIP报头结构

c08ba4dc-5c3c-11ed-a3b6-dac502259ad0.png

如果接收到来自DoIP实体不正确的DoIP报文,外部测试设备不得发送通用DoIP报头的否定应答报文。通用DoIP报头否定应答报文只能用于确定先前发送的DoIP报文的错误条件。

审核编辑:郭婷

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 控制器
    +关注

    关注

    114

    文章

    17931

    浏览量

    196015
  • 以太网
    +关注

    关注

    41

    文章

    6323

    浏览量

    182020
  • 总线
    +关注

    关注

    10

    文章

    3071

    浏览量

    91997

原文标题:5  DoIP通信流程

文章出处:【微信号:谈思实验室,微信公众号:谈思实验室】欢迎添加关注!文章转载请注明出处。

收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    多端口矢量网络分析仪校准流程详解

    矢量网络分析仪(VNA)是微波射频领域中用于测量器件散射参数(S参数)的核心设备,广泛应用于通信、雷达、微波电路设计等场景。为确保测量结果的准确性与可靠性,校准是使用前必不可少的关键步骤。尤其在多端口VNA的测试中,校准流程更为
    的头像 发表于 04-02 15:21 240次阅读
    多端口矢量<b class='flag-5'>网络分析</b>仪校准<b class='flag-5'>流程</b>详解

    华为数据通信牵头立项TM Forum IP网络L4自智架构

    华为数据通信近日在网络智能化标准领域取得关键突破,正式宣布在TM Forum(电信管理论坛)立项IG1251G“IP网络L4多场景自智Agentic架构标准”,标志着全球
    的头像 发表于 03-14 16:13 1943次阅读
    华为数据<b class='flag-5'>通信</b>牵头立项TM Forum <b class='flag-5'>IP</b><b class='flag-5'>网络</b>L4自智架构

    Profinet转Ethernet IP网关协议转换:从诊断到数据互通的细节全拆解与快速上手

    Profinet转Ethernet****IP网关协议转换:从诊断到数据互通的细节全拆解与快速上手 案例基础信息 应用场景:小型自动化产线(如小型装配线),实现西门子S7-1200PLC
    的头像 发表于 02-24 14:28 902次阅读
    Profinet转Ethernet <b class='flag-5'>IP</b>网关协议转换:从<b class='flag-5'>诊断</b>到数据互通的细节全拆解与快速上手

    电能质量在线监测装置能远程诊断通信故障吗?

    是的,主流电能质量在线监测装置均支持通信故障的远程诊断功能 ,这已成为现代智能型装置的核心标配能力之一,通过分层检测、远程告警与运维协同,实现通信故障的快速定位与处理。 一、远程诊断
    的头像 发表于 12-12 15:34 643次阅读

    华为如何通过大模型技术打造智能IP网络

    2025年非洲通信展在南非开普敦召开,华为数据通信产品线NCE数据通信领域总裁王辉受邀参加“Telecoms For Tomorrow”论坛,发表题为“拥抱AI时代,打造面向未来的智能IP
    的头像 发表于 11-14 16:39 1719次阅读

    视频卡顿分析流程

    视频卡顿分析流程
    发表于 11-10 16:55 0次下载

    华为助力南非MTN在IP网络领域实现突破

    在全球通信行业权威机构TM Forum(全球电信管理论坛)组织的自智网络(Autonomous Network,简称“AN”)等级测评中,华为助力南非MTN在IP网络领域实现突破,获得
    的头像 发表于 11-06 11:06 1244次阅读

    车载通信设备EMC整改:高频问题与AI辅助诊断方案

    车载通信设备EMC整改:高频问题与AI辅助诊断方案|深圳南柯电子
    的头像 发表于 10-14 10:14 870次阅读

    诊断路由功能及测试方案介绍

    随着车内通信技术(如OTA、SOME/IP、DDS)的快速发展,网关作为整车网络的核心枢纽,其路由能力至关重要。OTA升级对网关的诊断路由性能提出了更高要求;而SOME/
    的头像 发表于 09-24 10:04 3602次阅读
    <b class='flag-5'>诊断</b>路由功能及测试方案介绍

    EtherCAT网络分析仪:工业实时通信的“诊断专家”,让复杂网络透明化

    在工业4.0与智能制造的浪潮中,EtherCAT凭借其微秒级实时性、纳秒级同步精度及超90%的有效带宽利用率,已成为机器人控制、CNC机床、智能电网等领域的核心通信协议。然而,随着网络规模扩大、节点
    的头像 发表于 09-10 18:33 1720次阅读
    EtherCAT<b class='flag-5'>网络分析</b>仪:工业实时<b class='flag-5'>通信</b>的“<b class='flag-5'>诊断</b>专家”,让复杂<b class='flag-5'>网络</b>透明化

    实时监控与诊断,让EtherCAT网络管理更轻松!

    上期我们探讨了AWStudio运动控制版的EtherCAT配置功能,这期我们将聚焦于其强大的诊断与监控工具,看看它是如何帮助开发者实时掌握网络状态并快速定位问题的。AWStudio运动控制
    的头像 发表于 08-28 11:36 905次阅读
    实时监控与<b class='flag-5'>诊断</b>,让EtherCAT<b class='flag-5'>网络</b>管理更轻松!

    华为Net5.5G助力IP网络迈入智能新时代

    2025年8月21日,第九届未来网络发展大会在南京成功举办。华为数据通信标准专利部部长朱科义发表了主题演讲《智启未来:Net5.5G引领IP网络全面迈入智能新时代》,深入
    的头像 发表于 08-22 16:57 2445次阅读

    信而泰×DeepSeek:AI推理引擎驱动网络智能诊断迈向 “自愈”时代

    网络智能诊断平台。通过对私有化网络数据的定向训练,信而泰打造了高性能、高可靠性的网络诊断模型,显著提升了AI辅助
    发表于 07-16 15:29

    告别通信烦恼!CC\\-Link IE 与 Ethernet/IP 的“梦幻联动”

    CC-Link IE 与 Ethernet/IP网关的“强强联合”,或许就是你的“救星”。 CC-Link IE 是工业自动化领域公认的“通信高手”,它有着高速、稳定、兼容性强的特点,就像工业现场的“超级
    发表于 06-18 13:58

    神经网络专家系统在电机故障诊断中的应用

    摘要:针对传统专家系统不能进行自学习、自适应的问题,本文提出了基于种经网络专家系统的并步电机故障诊断方法。本文将小波神经网络和专家系统相结合,充分发挥了二者故障诊断的优点,很大程度上降
    发表于 06-16 22:09