DoIP技术

本文是关于DoIP技术的第一篇文章,主要进行一些概念介绍,具体的细节会在后续的文章中和大家探讨。

DoIP是Diagnostic communication over Internet Protocol 的简称,顾名思义,就是通过网络协议进行诊断通信。这里的网络协议,指的就是OSI七层模型中,通用计算机网络所使用的从层4到层1这四层协议。

DoIP由ISO13400 系列标准定义,作为实现基于Ethernet的诊断通信的方案。本标准的各部分内容如下:

— Part 1: General information and use case defnition

— Part 2: Transport protocol and network layer services

— Part 3: Wired vehicle interface based on IEEE 802.3

— Part 4: Ethernet Diagnostic Connector

— Part 5: Conformance test specifcation

我这里只有前四个,不知道第五个测试标准是否已经定义完了。

DoIP的优势有以下几点:

更快的诊断响应
传输大量数据的时间更短(用于软件刷新和参数下载)
使得远程的直接诊断成为可能

在这里插入图片描述
在这里插入图片描述
上图展示了DoIP通信完整协议栈所使用的标准号。

ISO13400-1处于应用层(层7)之上,是对一些通用信息、应用场景的描述。

应用层基于ISO14229-1和ISO14229-5,前者是UDS的完整定义,后者是UDS通过网络协议传输的实现。

会话层(层5),ISO14229-2对于所有的诊断通信都是一样的,目的是为上层提供统一的接口,使上层应用不需要随着底层通信技术的变化而改变。

传输层和网络层(层4和层3)由ISO13400-2定义,ISO13400-2中规定了DoIP通信在传输层中使用TCP和UDP协议,在网络层中使用IPv4或IPv6。此标准中还定义了专属于DoIP通信的信息内容,这些信息和上层的诊断命令共同构成了传给TCP或UDP协议的SDU。

ISO13400-2定义了DoIP诊断通信对Ethernet数据链路层(层2)和物理层(层1)的要求,比如,规定DoIP通信在这两层上支持100BASE-TX (100 Mbit/s Ethernet) 和10BASE-T (10 Mbit/s Ethernet) 两种方案。

DoIP数据的基本结构
在这里插入图片描述
DoIP数据作为SDU层层向下传递,直至构成完整的以太网帧,通过物理层的介质发送出去。DoIP的数据内容分为5个部分:

  1. 所使用的ISO13400版本信息,占用1个字节
  2. 所使用的ISO13400版本信息依比特取反,占用1个字节
  3. 数据类型,占用2个字节(标识本帧数据的用途,比如用于上报或请求车辆信息、诊断命令、诊断逻辑链接激活、alive check等)
  4. 数据长度,占用4个字节(标识后面的数据长度)
  5. 诊断数据,长度为0至2的32次方减1,这里的数据又分为sender
    address、receiver address、 应用数据这三部分。
    应用场景
    ISO13400中定义了DoIP的4种使用场景,如下四幅图所示:
    在这里插入图片描述
    在这里插入图片描述
    外部测试设备的多个应用层实体(在一台硬件或多台硬件上)与单个车辆连接
    路由机制
    根据隐藏在Gateway后面的控制器的诊断类型的不同(比如有的通过DoIP,有的通DoCAN等),DoIP的路由机制可以分为两种,分别是CutThrough(以太网对以太网) 和Store&Forward-Routing (以太网对CAN, CAN FD 和LIN等)。

我用PPT粗略地画了两个示意图展示一下:
在这里插入图片描述
原理很简单,当网关后面被诊断的ECU也支持DoIP时,则网关每收到一个以太网帧,只需要更改以太网帧包头中的地址信息即可转发出去。而如果网关后面被诊断的ECU不支持Ethernet,则网关需要完整地接收所有的诊断数据之后,再从应用层开始重新组织适合其他总线传输的数据帧。

转载链接:https://zhuanlan.zhihu.com/p/32898969

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值