车载以太网DoIP协议测试

    DOIP在车载以太网中应用较为广泛,其主要用在诊断方面。与传统的CAN诊断相比,以太网的传输速率有了极大的提升。今天主要介绍一下DOIP协议的测试方法, 由于每个OEM的需求都不尽相同,因此DOIP测试并没有统一的测试方法,主要参考的是ISO-13400。
  1. 测试实施要求

测试设备需要处理如下的情形,除非另有备注说明:

1) 作为以太网测试设备需要能够发送和接收诊断报文和软件下载中的请求和响应;

2) 测试设备需要支持标准IEEE802.3中100BASE-TX标准;

3) 诊断设备传输的以太网帧的大小需要符合ISO 13400-2和DoIP需求规范中传输层和网络层的定义,诊断报文中不应包含未使用的字节;

4) 能够监控以太网的通信;

5) 测试设备的通讯需要符合ISO 13400-2和DoIP需求规范中传输层和网络层定义;

6) 当测试设备发送导致ECU复位的请求时,如果ECU是边缘节点且连接丢失,则测试设备应在此类请求之后与ECU建立新的TCP连接。这包括路由激活等。如果ECU不是边缘节点,并且在ECU重置后失去连接,则ECU将建立一个新的连接。每次ECU重置后,如果可能的话,来自测试设备的下一个请求应始终尝试使用与原先请求中相同的TCP连接。

以太网的相关参数需要配置如下内容:

1) 测试设备与DoIP实体间的TCP连接中,DoIP实体用来接收的端口一定使用Port端口:13400;

2) 测试设备在目标端口TCP_DATA建立的连接通信同一时刻只能与一个DoIP实体通讯;

3) UDP车辆UDP_DISCOVERY号应为13400;

4) UDP_TEST_EQUIPMENT应动态分配;

5) 测试设备应监听13400端口接收未经请求的DoIP报文;

6) 测试设备和DoIP实体应在7s内分配IP地址;

7)每个UDP数据报中只能传输一个DoIP报文。

  测试工具或测试用例中报文格式

测试工具应从两个视角呈现所有请求和响应报文,通过诊断服务的实际数据和通过总线传输的报文,举例如下:

由于通过TCP/IP或UDP/IP传输的以太网报文包含很多数据,在此文档中使用以下描述:

对于TCP单帧报文的长度为<=1460 bytes或UDP单帧报文的长度为<=1472 bytes。

例如实际的报文是“22 F18C”,那么显示的报文为 02 FD 8001 00 00 00 07 U1 U2 T1 T2 22 F18C(其中U1/U2为源地址,T1/T2为目标地址)。

上述总线传输的报文如下:

Ethernet II:02 50 C2 25 60 01 00 1D 09 0C 87 F4 08 00

IP: 45 00 00 37 12 F2 40 00 80 06 66 79 C0 A8 00 02 C0 A8 00 03

TCP: 05 05 34 58 CE 4D 9F 1A 00 00 13 B5 50 18 FF D3 81 7F 00 00

DoIP: 02 FD 8001 00 00 00 07 U1 U2 T1 T2 22 F18C

如有DoIP报文超过了单帧传输(TCP传输为>=1460或UDP传输>=1472),报文需要分段传输,实际报文传输为“36 01 E0 E0 E0 E0 …E0”

显示的报文传输为:02 FD 8001 00 00 0F FE 00 01 04 01 36 01 E0 E0 E0 …E0

总线传输报文如下:

报文的第一帧为:

Ethernet II:02 50 C2 25 60 01 00 1D 09 0C 87 F4 08 00

IP: 45 00 05 DC 13 50 40 00 80 06 60 76 C0 A8 00 02 C0 A8 00 03

TCP: 05 05 34 58 CE 4D B7 64 00 00 19 06 50 10 FA 82 87 24 00 00

DoIP: 02 FD 8001 00 00 0F FE 00 01 04 01 36 01 E0 E0 E0 …E0

报文的第二帧为:

Ethernet II:02 50 C2 25 60 01 00 1D 09 0C 87 F4 08 00

IP: 45 00 05 DC 13 51 40 00 80 06 60 75 C0 A8 00 02 C0 A8 00 03

TCP: 05 05 34 58 CE 4D BD 18 00 00 19 06 50 10 FA 82 87 24 00 00

DoIP: E0 E0 E0 E0.E0.E0.E0.E0.E0…E0

   时间参数要求

测试设备发送DoIP请求后,DUT需要在P2Server内发送响应,若超过最大的时间未发送响应,需要判断超时错误。

当DUT接收请求后在规定的时间内未发送响应,测试设备需要等待2s后才执行下一个请求。

今天就先分享到这里,后续部分会陆续分享给大家。

  • 15
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

??480

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值