tag 标签: 网关路由

相关帖子
相关博文
  • 热度 8
    2022-5-15 16:10
    1406 次阅读|
    0 个评论
    测试开发实践:网关路由功能及测试 1. 前言 当前,车内 通信 技术越来越 复杂 , 协议 类型更加 多样 , 不同总线及协议间的转换和路由等也更为复杂, 网关 作为 通信枢纽的 载体,其测试的复杂程度和重要性也越来越高。本文将分享网关路由测试开发过程中的经验和遇到的问题。 2. 网关功能简介 网关 主要功能是通过报文路由转发、报文过滤与信号重组等工作实现信息的交换, 包括不同通信协议间的交互, 如 Ethernet 、 FlexRay 、 CAN 、 CAN FD 、 LIN 。传统的网关按照实现方式可分为独立网关和集成网关, 集成网关指集成路由功能的仪表或车身控制器,使用集成网关时 ,其 网络拓扑相对简单 ; 独立网关主要 实现 路由 功能 ,网络拓扑相对复杂。近 几 年 E/E 架构逐渐向域控方向发展, 新的 域控制器,通常也具备网关路由的功能。 目前, 典型 的网络拓扑主要有以下三种: 1 ) 传统的 EE 架构, Central Gateway 与所有 ECU 直连,独立完成整车所有的信息交互任务。 图 1 传统网络架构及网关 2 ) 基于 Domain 的 EE 架构,整车拓扑中除了 Central Gateway 还存在 Domain Gateway , Domain Gateway 参与下属节点间的信息交互,也承载了网关的功能。 图 2 基于域控制器的网络架构及网关 3 ) 混合的 E / E 架构,在从传统网络架构到基于域控制器的网络架构的过渡阶段存在的网络架构,兼具两种网络架构的特点。 图 3 混合网络架构及网关 以上基于域节点的网络架构的 Central Gateway 和 Domain Gateway 直接通过以太网点对点连接,域节点间的信息交互通过 L2 的 Switch 和 L3 的 IP Router 实现。 除了基本的路由功能,网关通常还具有以下属性和功能: 1)各功能域物理隔离:网关区分各个功能域,将不同的功能域区分开 2) 外部沟通媒介与网络安全防护:网关是整车与外部信息交互的媒介,因 此网关需要过滤外部信息,避免整车内部网络被攻击 3) 网络休眠唤醒管理:网关依据整车休眠唤醒条件,协调各个网段间的休眠唤醒 4) OTA Master 功能:实现整车远程刷写功能,获取 ECU 升级数据包并存储在本地,当满足刷写条件时,网关可作为刷写机,以既定的刷写流程将刷写数据传输给待升级 ECU 5) 整车状态管理和能量管理:管理整车模式和用户使用模式 由于网关功能多样和复杂 ,且部分功能具有功能安全要求 ,需要通过测试来保证最终软件的成熟度。针对网关的不同功能需要做相应的测试,本文重点探讨基本的路由功能测试。 3. 网关路由类型介绍 网关路由的类型可以分为 3 种:信号路由、报文路由、 TP 路由(诊断路由)。以下针对这三种路由类型分别做介绍。 1)信号路由:从源网段接收到的一条或多条报文中的部分信号(或信号组)打包在新报文中,然后在目标网段上按照定义的方式发送出来。 信号 从 源网段到目标网段的路由过程中,信号所在报文的发送方式、信号在报文中的位置、信号所在报文的 ID 和信号所在报文的周期都可以改变,另外源网段和目标网段的通信协议也可以不一致。 A UTOSAR 架构下定义了信号和信号组的 Update bit,对于有 Update bit 的信号和信号组,只有在其 Update bit 置位的情况下网关才对其进行转发 , 并在目标网段更新 Update bit ,当源网段信号丢失时网关转发的信号的 Update bit 持续不置位,指示接受该信号的控制器信号超时。而针对非 A UTOSAR 架构 ,部分 OEM 定义了 T imeout flag ,指示源网段信号超时。 图 4 信号路由 2 ) 报文路由:从源网段接收到报文后转发到目标网段。根据目标网段的发送形式,报文路由又可以分为事件型报文路由和周期型报文路由 。 事件型报文路由在源网段收到报文后立即触发目标网段的发送;周期型报文路由在源网段和目标网段都有固定的周期,源网段接收到报文的周期和目标网段发送的报文周期没有必然关系。 图 5 报文路由 3 ) TP 路由:带有传输协议报文的路由称为 TP 路由。 TP 路由又可分为两种:不带协议转换的 TP 路由(一般称为报文透传)和带有协议转换的 TP 路由。前者在部分 OEM 的定义中和事件型报文路由未作区分,但实际两种路由的应用场景是不同的,事件型报文路由针对应用报文, 要求转发延时低 且最新的信号值最具重要性( latest value is the most important );报文透传对速率的要求不高 , 但要求先入先出( first in first out )和不丢帧。带有协议转换的 TP 路由主要特点是:可以实现协议转换(源网段和目标网段的协议可以不一致),且网关作为传输连接的一部分,在源网段的接收和转发均须符合传输层协议,不符合传输协议的不转发。 图 6 TP 路由 下图以 CAN-LIN 的 TP 路由为例介绍带协议转换的 TP 路由,由于 CAN 和 LIN 的传输协议不一致,网关在源网段以 CAN 的传输层协议接收数据后,在 LIN 的网段按照 LIN 传输层协议发送数据。 CAN 和 LIN 的报文虽然都是 8 字节,但由于传输层协议不同, CAN 和 LIN 网段的每帧报文传输的数据内容都是不一致的。此外,由于 CAN 和 LIN 的传输速率不一样, CAN 网段接收数据后存储在缓存中,在 LIN 网段按顺序发出。 图 7 CA N-LIN2.1 TP 路由 由于带协议转换的 TP 路由需要在源网段接收到数据后先存储到缓存中,因此需要占用较多的内存资源,但同时这也是并行刷写的实现基础,网关在高带宽的网段接收到诊断数据后先行存储,然后按照低带宽网段的传输协议,并行分发到各个低带宽网段,在此过程中最大效率的利用了高带宽网段的带宽,提高整车的刷写效率。 4. 网关路由测试实践 对于具备多种路由形式的网关,为了验证是否满足设计需求,应该根据每种路由类型设计测试规范和测试场景,本节将探讨路由测试的痛点与积累的经验。 1)信号路由测试 信号路由测试的难点在于信号路由的数量众多并且路由信息的提取困难。根据北汇过往项目经验来看,基于非域控架构(所有控制器都和中央网关直连)的 信号路由数量大约有 800+ ;基于域控的网络架构则更加复杂,每个域控制器都具有网关行为。在信号路由数量如此庞大的情况下手动验证已 几乎不可能 。此外,基于 AUTOSAR 架构的信号路由和信号组路由,通过人工方式 更 难获取 相关的 信息。 为了实现信号路由自动化测试,北汇通过定制开发,实现了从 ARXML 文件 中提取信号路由信息并将信号路由和信号组路由加以区分,定义了标准的路由表模板, 也可 基于 OEM 给定的通信矩阵或路由模板 进行定制适配 。下图为支持 Update bit 的信号路由的自动化测试报告。 图 8 信号路由自动化测试报告 2)报文路由测试 报文路由测试与信号路由测试一样,都面 临 路由条目众多的问题,此外针对于事件型报文路由和周期型报文路由,由于路由机制不同,对应的测试策略需要分别制定。 图 9 路 由自动化测试工程 3)TP 路由测试 针对报文透传,除了测试路由一致性外,还需要考虑在各种应用场景( EOL 、刷写、标定等)下,网关需保证不丢帧不乱序。 针对带有协议转换的 TP 路由测试,测试难点在于针对各个通信协议其传输层机制不同,测试中需要按照各网段对应的传输层协议发送和接收数据。在支持并行刷写的 TP 路由测试中,需要考虑多个传输连接同时发送和接收数据。这种路由方式需同步关注缓存数量、缓存大小以及 U p per_Link 和 Lower_Link 网段传输层机制和参数。 图 1 0 带有协议转换的 TP 路由测试 5. 总结 随着以太网通信技术的应用、 OTA 的推广以及电子电器架构的更新换代,网关的“形态”和功能都呈现了新的变化。 北汇信息 紧跟网关技术发展态势, 专注于汽车电子测试,通过与各 OEM 的合作, 从源头 掌握了各类型网关路由的策略和设计需求,积累了丰富的测试实践经验 ,覆盖了第一代和第二代架构下的网关 。后续文章我们将针对 新一代“ 网关 ”,其 新的功能特点 、构成形态 以及测试方案 与 大家继续探讨 和 分享。 参考文献 AUTOSAR_SRS_Gateway