▎概述
IEEE 802.1Qbv[1]是TSN系列协议中备受关注的技术之一,如图1所示,它定义了一种时间感知整形器(Time Aware Shaper,TAS),支持Qbv协议的交换机可以按照配置好的门控列表来打开/关闭交换机出口队列,可从而为周期型的重要数据提供确定性延迟保障。
为了更有效地为业务流量提供网络传输服务,更好地发挥Qbv协议的能力,需要进行Qbv协议的应用设计。完整的Qbv设计开发流程包含以下步骤:
- 流量优先级分类:从车辆功能需求出发,基于通讯矩阵和整车拓扑,梳理整车的流量优先级
- 门控列表设计:基于已经分类好的整车流量,设计门控列表,仿真分析门控列表是否满足流量的传输需求
- 设计迭代:如果关键数据的需求不能被满足或者门控列表数量超出硬件门控列表长度上限等情况,迭代分析前两步流量分类结果、设计的门控列表中的不合理处,调整流量分类或门控列表设计结果
▎流量优先级分类
目前车载环境下,车内的网络流量固定可知,可根据车辆功能需求,明确各个流量的最大时延、周期、负载大小等需求,将流量分为多个优先级类别。
梳理流量优先级是Qbv设计的关键步骤,除了需要满足以上提到基本的需求之外,在实际情况下,更需要对功能准确理解,比如:一般情况下会把控制类指令统一设计为高优先级,而实际转向、制动类控制指令推荐优先级高于车窗相关的控制指令。
这需要TSN网络设计工程师有大量的设计经验,针对不同的功能需求,来综合设计流量的优先级。
基于通讯矩阵,并结合图2示例的拓扑,梳理得到表1所示的示例流量优先级分类结果。
表1 示例流量优先级分类
▎门控列表设计
基于以上流量优先级分类,并且各个节点已基于IEEE 802.1AS[2]完成了时间同步,即所有节点都有一个相同的时间基准,4条数据流在Switch2-D的出口队列汇聚,在时间同步的基础上,需要设计合理的门控列表,来保障该瓶颈出口队列的高优先级数据流的时延可控。有如下假设:
- 数据流①的初始发包时间相位为0us,即在0ms,1ms,2ms,…的时刻发包,传输到Switch2-D的出口队列的传输延时+Switch1和Switch2的硬转发延时为3us
- 数据流②的初始发包时间相位为10us,即在0.010ms,2.020ms,4.040ms,…的时刻发包,传输到Switch2-D的传输延时+Switch1和Switch2的硬转发延时5us
- 数据流③的初始发包时间相位为5us,即在0.005ms,2.005ms,4.005ms,…的时刻发包,传输到Switch2-D的出口队列的传输延时+
Switch2的硬转发延时1us
三者周期的最小公倍数为2ms,所以Switch2-D的出口队列循环门控列表的最小周期为2ms,一个完整的循环周期内,该门控列表可设计成:
表2 witch2-D的门控列表设计
需要注意的是,表2只展示了Switch2-D的门控列表设计,实际在Swicth1-Switch2的端口上,如果还有其他数据流,数据流①和数据流②也会和这些数据流产生竞争,也需要设计门控列表,为了让关键数据流能达到端到端的延迟和抖动控制,这两个门控列表需要同时工作,让关键数据在端到端的完整路径上“一路开门,畅行无阻”。
此外,还可以通过增加关键数据的开门时间或者设置“Guard band”的方式,进一步来保障关键数据的低延迟和减少传输抖动。
▎设计迭代
有了初步的设计结果后,需要分析目前的设计是否完全满足业务需求,如效果不佳,需要完善设计结果。以下举例说明,可能的优化过程。
观察表2可以发现,简单的4个数据流,设计好的门控列表已经比较复杂,而如果仿真发现已经能较好满足关键数据的时延要求,或者在实际部署时,太频繁的门开关状态切换,会由于ECU端的发送端发送周期抖动,而导致关键数据错过开门时机,那没有必要为各个数据流划分过多的优先级和特别细致的门控列表。
可以考虑合并优先级6和7,并且为数据流①②③统一开门,得到的门控列表如表3所示,能够很大程度上简化门控列表的复杂度,并且保证关键数据的传输质量。
表3 时间感知整形器示意图
▎RTaW-Pegase助力Qbv设计
面对日益复杂化的汽车电子电气架构及网络系统,实际上人工计算与迭代的设计方式已很难适用。在实际的量产车型上,需要传输的数据流远大于以上举例的4条,而门控列表编排可以抽象成任务调度问题,是典型的NP-Hard问题,即在多项式时间的运算次数内不可求解的问题,除非NP=P,否则无法在多项式时间内求得最优解,其工作量非常巨大,一般会需要软件辅助帮忙解决。我们可以借助RTaW-Pegase来辅助完成TSN设计工作。
如图3所示, RTaW可以选择一键配置整形器,如TAS、CBS、Preemption、ATS等整形器,快速验证TSN整形器的选择效果。
在Qbv设计中,可借助RTaW内置的TAS门控列表编排算法,帮助我们生成满足图4所示的满足时延需求的门控列表,避免了人工设计复杂的门控列表。后续可以将设计结果和交换机的配置接口适配后,导入到车载TSN交换机的配置中。
RTaW还能进一步帮助分析设计结果,为了将有TAS的配置与没有TAS的配置进行比较,可执行这些ComConfig的最坏情况下的时延等指标分析,能够直观地看到时延满足情况,辅助TSN网络设计师分析结果。
除此之外,如果关键数据较多,延迟要求又比较高,现有硬件条件不能完全满足所有数据的确定性延迟需求。此时,需要TSN网络设计工程师,对服务部署、路由选择等上层通信设计提出修改建议,并从多种可能的Qbv设计方案中合理选择延迟超时相对可容忍的方案进行实际部署,这需要设计师有大量的实车部署经验,综合选择最合适的落地设计方案。
▎总结
随着车载TSN软硬件产业链更加成熟,汽车电子电气架构设计向跨域融合、集中式计算的架构升级,以太网为主干网的链路上,各种类型数据的通信需求都需要兼顾, IEEE 802.1 Qbv是一种时间敏感数据低抖动性的保障。
RTaW-Pegase[3]能够大力辅助Qbv的设计工作,它是法国国家信息与自动化研究所(INRIA)下属公司RTaW的产品。该公司主要为汽车等领域的企业提供时间仿真和配置工具。RTaW-Pegase(V4.2.7)全面支持CAN(FD)、车载以太网以及TSN协议的设计仿真及性能评估。
RTaW五年前由经纬恒润引入国内,是该公司在中国的重要合作伙伴。经纬恒润凭借多年在车载以太网领域的经验以及RTaW工具的强大支持,已经成功完成了多款车型的TSN设计。更多资讯请点击链接,了解更多RTaW工具信息。
▎参考资料
[1] IEEE, 802.1, “IEEE 802.1Qbv—Enhancements for Scheduled Traffic”, [online] Available: https://www.ieee802.org/1/pages/802.1bv.html.
[2] IEEE, 802.1AS-2020, “Time and Synchronization for Time-Sensitive Applications in Bridged Local Area Networks”, 2020.
[3] https://www.realtimeatwork.com/chin