【翻译】【SOMEIP-SD】Page24 - Page26

目录

        • [5.1.2.2 SOME/IP-SD消息头](#5.1.2.2 SOME/IP-SD消息头)
5.1.2.2 SOME/IP-SD消息头

** [PRS_SOMEIPSD_00252]**

SOME/IP-SD应通过SOME/IP传输

** [PRS_SOMEIPSD_00253]**

SOME/IP-SD头以8bit的Flags字段为开始。

** [PRS_SOMEIPSD_00254]**

Flags的最高位被称为Reboot Flag

** [PRS_SOMEIPSD_00255]**

所有的SOME/IP-SD消息的Reboot Flag都应被设置成1. 直到Session-ID达到最大值后被重新设置成1后,Reboot Flag应被设置成0.
[PRS_SOMEIPSD_00256]

多播和单播之间,Reboot Flag和Session ID的处理应被分开。
[PRS_SOMEIPSD_00631]

单播的每对发送方和接受方之间,Reboot Flag和Session ID的处理应被分开。

发送方:

  • 每个组播有一个独立的Session ID计数器。

  • 每个单播的每个对端有一个独立的Session ID计数器。

接收方:

  • 每个组播有一个独立的Session ID计数器。

  • 每个单播有一个独立的Session ID计数器。

** [PRS_SOMEIPSD_00258]**

判断通信对端重启的逻辑如下

  1. 上一次接受的reboot flag为0,新接受的reboot flag为1则对端发生重启
  2. 上一次接受的reboot flag为1,新接受的reboot flag为1,但上一次接受的Session ID大于等于新接受的Session ID则对端发生重启
    ** [PRS_SOMEIPSD_00259]**
    Flags的第二个bit为称为Unicast Flag.
    ** [PRS_SOMEIPSD_00540]**
    Unicast Flag应被设置成1,代表使用单播进行消息接收是被允许的。

Unicast Flag是一个遗留字段,设置它只是出于兼容性考虑。

[PRS_SOMEIPSD_00702]

Flags中的其它bit在发送时都设置成0,接收时应被忽视。
[PRS_SOMEIPSD_00261]

在Flags后是24bit的保留位。
[PRS_SOMEIPSD_00262]

在SOME/IP-SD头之后是Entries Array
[PRS_SOMEIPSD_00263]

Entries Array中,Entry的处理应该按照其在数组中的位置顺序进行
[PRS_SOMEIPSD_00264]

在Entries Array之后是Option Array的头
[PRS_SOMEIPSD_00265]

Entries Array和Option Array都以Length字段为开头,Length字段中的值是其数组中所有元素的字节数之和。

相关推荐
EniacCheng5 天前
【翻译】【SOMEIP-SD】Page87 - Page89
some/ip·some/ip-sd
EniacCheng7 天前
【翻译】【SOMEIP-SD】Page79 - Page84
some/ip·some/ip-sd
EniacCheng12 天前
【翻译】【SOMEIP-SD】Page54- Page56
some/ip·some/ip-sd
EniacCheng12 天前
【翻译】【SOMEIP-SD】Page59 - Page62
some/ip·some/ip-sd
EniacCheng16 天前
【翻译】【SOMEIP-SD】Page35 - Page37
some/ip·some/ip-sd
EniacCheng16 天前
【翻译】【SOMEIP-SD】Page30 - Page33
some/ip·some/ip-sd
EniacCheng19 天前
【翻译】【SOMEIP-SD】Page37 - Page39
some/ip·some/ip-sd
EniacCheng22 天前
【翻译】【SOMEIP-SD】Page19 - Page23
some/ip·some/ip-sd
EniacCheng1 个月前
【翻译】【SOMEIP-SD】Page6 - Page7
some/ip-sd