以太网上的CAN报文传输(2)——测试如何执行?

概述

       在上一篇文章《什么,以太网能传CAN报文?》中,我们了解到IEEE 1722中的ACF协议为“以太网传输控制报文”提供了一种方案。这一篇继续以较为常见的ACF-CAN为例,进一步讨论1722 ACF的测试思路。

 

测试环境

image

ACF_CAN测试环境示意图

 

          ACF CAN测试环境如上图所示,Tester和DUT间主要存在三条连接通道,分别为:

  • Ethernet communication channel:DUT和Tester间的以太网链路,Tester通过此链路与DUT完成AVTP ACF报文的交互

  • DUT control channel:Tester用来控制DUT或者获取DUT相关状态的链路,具体实现形式需视DUT实际情况而定

  • CAN channel:可选,针对将CAN指令打包至AVTP ACF帧里的实现情况,Tester需要经过此链路向DUT模拟CAN报文

 

测试对象

       根据ACF的实际实现情况,我们将DUT归为三类,如下图所示:

 

 

image

 

  • Bridge Talker:将收到的控制指令打包至AVTP ACF报文中

  • Talker:控制指令的源节点,将控制指令以ACTP ACF格式报文发送

  • Listener:负责AVTP ACF报文的接收,并将控制指令进行还原

      注:Bridge Talker为方便理解的自定义命名,非官方名称

 

测试内容

          针对ACF协议的测试内容主要包括报文发送、报文接收以及性能测试等,具体包括的测试用例根据被测对象的不同而略有差异。下图展示了目前经纬恒润ACF测试方案中的部分测试内容。

image

 

  • 报文发送测试

          主要验证Talker发送的AVTP ACF报文中各个字段的正确性。需要注意的是,针对Bridge Talker这类节点,还需要验证其封装的控制指令信号内容是否和原始报文一致。

 

         测试用例示例

          TestCase: ACF Message fdf 字段发送测试

  • 测试目的:验证DUT作为AVTP Talker时,发出的ACF报文携带的fdf字段是否正确

  • 测试对象:AVTP talker/Bridge Talker

  • 测试步骤

    step1:DUT上电

    step2:触发DUT发送 ACF报文(若DUT为Bridge,Tester需要根据DUT实际实现情况,向DUT模拟发送CAN/CANFD报文)

    step3:监听DUT发出的 ACF报文,分析报文格式

  • 通过标准

    step3- DUT发出的ACF报文中携带的fdf字段与实际定义一致,即0代表携带的报文为CAN 报文,1代表CANFD报文。

image

 

 

          报文接收测试

          主要验证Listener节点能否根据收到的ACF报文中的字段信息执行正确的解析行为,同时也需要测试Listener对控制报文信息解析的正确性。

 

          测试用例示例

           TestCase: ACF Message acf_msg_type 接收测试

  • 测试目的:验证DUT作为AVTP Listener时,能够正确解析接收的ACF报文中的acf_msg_type字段,当报文中存在DUT不支持的ACF Message类型时,DUT应仅忽略不支持的message,不应影响后续内容的解析

  • 测试对象:AVTP listener

  • 测试步骤

    step1:DUT上电

    step2:Tester向DUT模拟发送ACF报文,在一帧报文中需同时携带DUT支持和不支持的两种ACF Message类型(如同时包括ACF_CAN和ACF_LIN)

    step3:获取DUT的解析结果*,分析数据

  • 通过标准

    step3-DUT的解析结果中仅包括其支持的ACF_CAN信息。

          * DUT需要向Tester提供获取解析结果的接口

 

image

 

  • 性能测试

          在满足协议栈正确性的前提下,针对Bridge Talker节点测试其对原始CAN报文的打包性能;针对Listener 节点测试其对ACF报文的解析性能,重点关注是否丢包、延时等方面性能。

 

          测试用例示例

          TestCase: ACF 打包完整性测试

  • 测试目的:验证DUT作为AVTP Talker(Bridge Talker)时,能够将收到的所有网段的所有CAN报文,打包至ACF报文中发出

  • 测试对象:Bridge Talker

  • 测试步骤

    step1:DUT上电,测试设备监听DUT以太网链路

    step2:Tester向DUT支持的所有网段模拟发送CAN/CANFD报文,设置CAN报文发送速率为n package/s

    step3:DUT发送的ACF报文中携带的CAN报文数量和Tester发送的报文数量一致

  • 通过标准

    step3- DUT发送的ACF报文中携带的CAN报文数量和Tester发送的报文数量一致。

          * DUT需要向Tester提供获取解析结果的接口

 

image

 

 

总结

       本文主要介绍了IEEE 1722 ACF协议的测试方案,从报文格式、逻辑实现以及性能等方面保证ACF协议栈的正确性,为传统控制报文在以太网链路中的准确传输提供保障。

       经纬恒润作为OPEN联盟会员和AUTOSAR联盟的高级合作伙伴,长期为国内外各大OEM和供应商提供涵盖TCP/IP、SOME/IP、DoIP、AVB、TSN、DDS等技术领域的设计和测试咨询服务,积极研发和探索车载网络前沿技术的工程应用。通过多个项目的实践经验,已建立了高质量、本土化的设计与测试一体化解决方案,为整车网络架构提供可靠支持。

       了解更多:请致电 010-64840808转6116或发邮件至market_dept@hirain.com(联系时请说明来自博客园)

posted @ 2026-07-24 17:52  经纬恒润  阅读(7)  评论(0)    收藏  举报