AutoSar AP平台的SOMEIP文档的理解笔记

前言

前段时间,阅读了AutoSar AP的SOME/IP的标准文档(《SOME/IP Protocol Specification.pdf》),并以PPT的图文并茂的形式做了理解笔记,内容主要是SOME/IP的协议规范,由SOME/IP报文格式和协议部分。

1. SOMEIP报文格式

1.1 SOME/IP消息格式:头格式

6fc8ddbbc71c42d6a5ea04e6c82f4b10.png

1.2 SOME/IP头格式:Request ID (Client ID/Session ID)

9ae5ff13597b411c834709a53c79dee1.png

1.3 SOME/IP头格式:Message Type [8 Bit] and Return Code [8 Bit]

报文字段Return Code内容和含义如下表所示:

2e0b3f46741c43569694c99f54e27d47.png

1.4 SOME/IP消息格式的大小端

04881d8402af456597d38705256577c8.png

1.5 SOME/IP消息格式:序列化基本概念

  • 处理对象:服务接口定义的参数列表(以某种数据结构呈现)。

  • 功能定义:服务接口精确定义了PDU中所有数据结构的准确位置,并考虑了对齐的问题。序列化的功能则是为了实现服务接口要求。

  • 对齐策略:如果变长数据不是序列数据流中的最后一个元素,则在变长数据后插入填充元素实现数据的对齐。

d218c5e8c2b74922802e31d14f128233.png

1.6 SOME/IP序列化的数据对象

c9ce3c26aef2408e81574edb7d422f8c.png

1.7 SOME/IP序列化的数据对象 : 基本类型

  • 每一个参数的字节序均可配置

  • Boolean类型按照uint8处理,只关注最低有效位

add109c55750443d87fbb11387839bdb.png

其他序列中暂时省略...

2 SOME/IP协议规范

2.1 服务实例的概念

080268b8ff4a43bc93e2b0019b42551f.png

2.2 服务实例:绑定传输层

174ed050aa9348ebb148b426809da35f.png

2.3 传输层绑定:支持多SOME/IP消息

ad9a451f886b41a7abb867b77e8b98a9.png

2.4 传输层绑定:SOME/IP消息的对齐问题

19f22a1d7a7d4815a2ce14ed3d497a6b.png

2.5 传输层绑定:SOME/IP消息的边界问题

e443ee327c104a11b992c46e86060bdb.png

2.6 UDP绑定的概念

a69a0d5bb63a48828d101346f5905f88.png

2.7 UDP绑定:单播连接和多播连接

cfc70e3233084579a1a64d6cb64d409d.png

2.8 TCP绑定:连接断开处理

cdbb06f0f1464e4b921b17c4135f6189.png

2.9 TCP绑定:TCP连接

38e3572662ce45d6aa503ba9c62f5356.png

2.10 TCP绑定:「魔法小饼干」消息组成

81931f2d798940519c73e8d01ba1f202.png

2.11 多服务实例:概念

bb5fc94b72064acf9a54b121d467da65.png

2.12 多服务实例:传输层端口号映射

685e01193ee342a0a3835aa8018aa36a.png

2.13 多服务实例:如何确认唯一的服务实例?

d18c4c9cb9584238b7a51dfed899f3be.png

2.14 UDP传输协议SOME/IP-TP:分段消息头的数据存储方式

ddb54e8c88ca4e2494cb0ce32fb0ffcf.png

2.15 UDP传输协议SOME/IP-TP:分段消息头的offset域

e1f9c9a1128c4e758daf537f693f88b3.png

2.16 UDP传输协议SOME/IP-TP:分段消息头的预留位和分段Flag位域

08fb547b569e4181a03c0d403f0186f6.png

2.17 UDP传输协议SOME/IP-TP:分段消息的Length和Payload

edd8eef0d3844547bf81d24300bb6fbd.png

2.18 UDP传输协议SOME/IP-TP: 示例

b0cbb2f8ef1d4e27bbeb2486fb1652f8.png

2.19 SOME/IP通信: Request/Response

9b8b1f76ebf34aedac1d35405cdf54a2.png

2.20 SOME/IP通信: Request/Response

066599ffa2f84e3cac86aa8fa147fe72.png

2.21 SOME/IP通信: Fire&Forget

af830ec4dc714973beee8c836e5383f9.png

2.22 SOME/IP通信: Notification(基本功能)

ee4acc06d80b4091af5dbc0fbac732c6.png

2.23 SOME/IP通信: Notification(多订阅者客户端在同一ECU中)

86e9b6deab1f4f878ec2ae092880e581.png

2.24 Fields的基本概念

333ff16037fe48aab1ea315a7df01071.png

2.25 Fields的getter和setter通信

e688ab5da66e41cea80638c5cec09c94.png

2.26 Fields的notifier通信

65dfe768f3a04a90b1a7f16120d5689f.png

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

青草地溪水旁

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值