1. E2E基本概念
E2E,全称叫做End To End。这个概念的提出是用于保护在ECU运行时与安全相关的数据交换不受通信链路中故障的影响。根据AUTOSAR E2E Protocol Specification描述,基于E2E的通信可以按照如下示例:
很明显,E2E在传输中用于防止MCU硬件的随机失效、通信总线上的随机bit反转等故障。
其实除了ECU之间的E2E保护,在不同OS-Application之间的数据通信也可使用E2E保护,如下图:
具体可以看上图中E2E针对软件和硬件的失效。
进一步讲,大家可以想一下,在之前没有E2E的时候,汽车ECU开发关于关键CAN 报文的校验也是基于Checksum 和RollingCounter;而从代码上看,E2E也是基本按这种方式(有不同变体)
那么为什么要把E2E纳入AUTOSAR标准?个人认为这是由于功能安全的引入,迫使AUTOSAR组织在这方面形成一个标准。
在ISO26262中,关于报文的错误,考量范围有:
1.端到端的通信丢失
2.消息重放
3.发送时消息丢失
4.数据接收顺序与发送顺