导语:近期项目中遇到一些E2E的诊断故障,涉及到整车需求和AutoSAR配置,对这个概念重新做了下梳理,与大家交流。由于E2E机制比较成熟,本文章内容更多出自于AutoSAR标准、ISO和相关文献,这里只捡重点和个例对这个概念做下解读。
1.什么是E2E?
2.为什么要做E2E?
3.怎么做E2E?
4.常用的保护形式有哪些?
5.E2E状态机与配置参数
1.什么是E2E?
首先明确一点,E2E并非只是在汽车领域应用,任何通信领域都会涉及,只不过是AutoSAR对这一协议/机制做了规范。
E2E,全称EndtoEnd,中文即端到端的通信保护,是一种针对安全相关数据,为防止通信链路中可能存在的故障(HW/SW),在通信节点之间执行的一种数据保护协议/机制。其适用于多种网络结构:CAN、CANFD、FlexRay、Ethernet等。
具体,如下图所示,假设有两个ECU:ECU1和ECU2,两节点之间通过CAN总线通信,ECU1要将某一安全信号传输至ECU2,如果采用E2Eprofile1保护协议(AutoSARE2ELibrary),ECU1在对必要信息数据做传递之外,还要补充CRC和Counter信息给至ECU2,ECU2在接收到这帧数据后,会计算CRC,然后与接收到的进行比较,ECU2会根据校验结果执行下一步动作(这就涉及到故障的处理,之前有做过简要概述,可参见文章《电动汽车动力系统的望闻问切
故障诊断》)。
不知道是否注意到,所谓的E2E其实是对两个关键对行为的保护:发送端(sender)和接收端(receiver)。标准中定义如下:
E2E所涉及的所有保护机制都围绕这两个行为展开的。
2.为什么要做E2E?
通过上述简介,可以get到,E2E保护概念的核心是针对安全相关的数据交换,需要在运行时进行保护,以消除通信链路中可能的失效带来的影响,这就是为什么要做E2E的本质原因。另外,E2E也是汽车动力系统实现ASILD的必要手段。
那么,数据交换过程中可能的失效模式有哪些呢?关于这个问题ISO中有总结,如下
/p>
●信息的重复发送(RepetitionofInformation),相同的信息被收到了多次
●信息的丢失(LossofInformation),整条或者信息的一部分在通信过程中丢失
●信息的延迟(DelayofInformation),接收信息的时间异于期望的时间
●信息的插入(InsertionofInformation),多余的内容被插入到信息中
●假冒的或者不正确的寻址(MasqueradeorIncorrectAddressingofInformation),假冒的发送者发送未认证的信息被接收端接受,或者正确的信息被错误的接收端接受
●信息顺序错误(IncorrectSequenceofInformation),数据流中的信息顺序错误
●信息破损(CorruptionofInformation),信息的内容被篡改
●向多个接收端发送非对称信息(Asymmetricinformationsentfromasendertomultiplereceivers),接收端收到的数据不一致
●仅部分接收端收到发送者的信息(Informationfromasenderreceivedbyonlyasubsetofreceivers
●阻塞通信通道(Blockingaccessto