在浏览项目整体框架的时候,发现
E2E是一个不可绕开的点,而且处处可见Autosar框架的踪迹,因此开一个专栏,每天学习一点相关知识点
E2E(end to end)是Autosar规范里规定的一种用于保证数据传输正确的概念,属于功能安全范畴
以汽车中两个ECU通信来举例,两个节点通过CAN总线进行通信,当ECU-A要将数据传给EUC-B时,采用E2E校验对数据进行保护

E2E的作用和特点
E2E保护概念的核心是针对安全相关的数据交换,需要在运行时进行保护,以消除通信链路中可能的失效带来的影响。
关于数据交换过程中可能的失效模式有哪些,如下:
- 信息的重复发送,相同的信息被收到了多次
- 信息的丢失,整条或者信息的一部分在通信过程中丢失
- 信息的延迟,接收信息的时间异于期望的时间
- 信息的插入,多余的内容被插入到信息中
- 假冒的或者不正确的寻址,假冒的- - 发送者发送未认证的信息被接收端接受,或者正确的信息被错误的接收端接受
- 信息顺序错误,数据流中的信息顺序错误
- 信息破损,信息的内容被篡改
- 向多个接收端发送非对称信息,接收端收到的数据不一致
- 仅部分接收端收到发送者的信息
- 阻塞通信通道
参数计算
按照Autosar规范的要求,E2E存在一系列的Profile(配置)每种配置在计算CRC时有各自的机制、参数、数据格式,具有非常强的灵活性,用户可以根据实际需要选择配置
以
Profile 1为例
CRC:对数据进行多项式除法计算后的余数Counter:用于计数每次增加1,ECU-A将计数值发给ECU-B,ECU-B可以依据收到的Counter值确定是否接收及时Timeout monitoring:用来评价Counter是否丢失延时DataID:提前定好的特殊数字,一般是16b,按照E2E P01 DataID Mode的不同分为1A,1B,1C三种细分的配置,计算CRC时对DataID做不同处理
Profile 0x
分为E2E Profile 01、E2E Profile 02、E2E Profile 03、E2E Profile 04、E2E Profile 05、E2E Profile 06
细节处可查询文档,此处不做概述
功能点
- 校验传输过程中是否存在数据的重复发送。(通过
Counter校验) - 校验发送过程中是否存在消息丢失 (通过
Counter校验) - 校验是否在指定时间内接收到信息 (通过
Counter校验) - 校验传输过程中是否存在数据插入 (通过
DataID校验) - 校验是否接收到伪装正确源地址的消息 (通过
DataID /CRC校验) - 校验传输过程中是否发生数据损坏 (通过
CRC校验) - 校验传输过程中是否发生数据顺序错误 (通过
Counter校验) - 校验接收方是否从同一发送方接收到不同的信息 (通过
CRC校验) - 校验发送方信息是否仅由一部分接收者接收 (通过
Counter校验) - 提供
P01、 P02、 P04、 P05、 P06数据保护与校验方法



















