news 2026/4/15 9:04:40

【翻译】【SOMEIP-SD】Page79 - Page84

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
【翻译】【SOMEIP-SD】Page79 - Page84

文章目录

        • 5.1.4.5 SOME/IP-SD 机制和错误处理
        • 5.1.4.6 错误处理
5.1.4.5 SOME/IP-SD 机制和错误处理

本节介绍SOME/IP-SD的机制设计原因和错误处理
Soft State Protocol:SOME/IP-SD被设计软件状态协议,因此设计了TTL机制。软件状态需要按时刷新以保持其有效性,可以在配置中将TTL设置成最大值用于关闭这个功能。

Initial Wait Phase:
引入Initial Wait Phase有两个原因:1、为了缓解全车ECU启动时造成的通信压力。2、允许ECU接收SD消息中的多个Entry。

Repetition Phase:
引入Repetition Phase是为了快速同步服务端和客户端。如论客户端和服务端谁先启动都能快速同步。Repetition Phase采用指数方式增加发送消息的间隔事件是为了避免系统消息过载。

Main Phase:
引入Main Phase的目的是SD试图保持一个稳定状态,在这个状态下服务端和客户端不在试图快速同步通信(以较低的固定频率同步信息)。

Request-Response-Delay:
之所以引入 Request-Response-Delay,以在组播场景延迟应答消息。是为了避免在规模大的系统中有多个ECU要回复同一个请求,造成被应答者的网络压力过大。

5.1.4.6 错误处理


[PRS_SOMEIPSD_00125]
SOME/IP-SD消息至少包含12byte的数据,如果收到小于12byte的数据应该抛弃,不应再有下一步 操作。


[PRS_SOMEIPSD_00126]
如果收到一个非Subscribe Eventgroup Entry的Entry,其包含未知的Service ID该Entry应被忽略。[PRS_SOMEIPSD_00393]中提到大的Negative Acknowledgement除外。


[PRS_SOMEIPSD_00127]
如果收到一个非Subscribe Eventgroup Entry的Entry,其包含未知的Instance ID该Entry应被忽略。[PRS_SOMEIPSD_00393]中提到大的Negative Acknowledgement除外。


[PRS_SOMEIPSD_00128]
如果收到一个非Subscribe Eventgroup Entry的Entry,其包含未知的Major Version该Entry应被忽略。[PRS_SOMEIPSD_00393]中提到大的Negative Acknowledgement除外。


[PRS_SOMEIPSD_00129]
如果收到一个非Subscribe Eventgroup Entry的Entry,其包含未知的Eventgroup ID该Entry应被忽略。[PRS_SOMEIPSD_00393]中提到大的Negative Acknowledgement除外。本条只适用于Eventgroup Entry


[PRS_SOMEIPSD_00803]
如果Entries Array的长度不合理(如:Entries Array的长度超过了消息整体长度)。则抛弃整个消息不做下一步动作。


[PRS_SOMEIPSD_00130]

检测Entry引用的Option顺序如下

  • Option是否存在
  • Entry所需的Option是否完备
  • Entry是否只引用自己需要的Option
  • Entry引用的Option中没有相互之间冲突的
  • Option的Type是否是已知Type,除了discardable flag为1的除外
  • Option必须是在[PRS_SOMEIPSD_00583]中规定允许引用的,除了discardable flag为1的除外
  • Option的Length长度与Option的Type相匹配
  • Endpoint Option包含有效的传输层协议字段
  • Option是有效的
    如果Entry引用的Option是SD已知的类型,但是其并不被服务端所需要(如:提供服务方提供了TCP和UDP的Option,但客户端只需要UDP Option)则当前Entry应继续被处理

[PRS_SOMEIPSD_00131]
检查TCP连接是否已完备。仅适用于配置中Eventgroup 和 Subscribe Eventgroup Entry采用TCP的情况


[PRS_SOMEIPSD_00852]
检测安全关联是否完备


[PRS_SOMEIPSD_00132]
检测是否有足够的剩余资源


[PRS_SOMEIPSD_00232]
如果Find entry没有通过[PRS_SOMEIPSD_00232]中规定的检查,当前Entry应该被忽略。除了[PRS_SOMEIPSD_00529]中规定的可以忽略Endpoint 或 Multicast Options的情况


[PRS_SOMEIPSD_00233]
如果Offer Entry没有通过[PRS_SOMEIPSD_00232]中规定的检查,当前Entry应该被忽略


[PRS_SOMEIPSD_00234]
如果Subscribe Eventgroup Entry没有通过在 [PRS_SOMEIPSD_00130],[PRS_SOMEIPSD_00131],[PRS_SOMEIPSD_00832],[PRS_SOMEIPSD_00852] 或[PRS_SOMEIPSD_00132]中规定的检查,需要发送Subscribe Eventgroup NACK Entry作为回应。


[PRS_SOMEIPSD_00235]
如果Subscribe Eventgroup ACK Entry没有通过[PRS_SOMEIPSD_00130] 和 [PRS_SOMEIPSD_00132] 中的检查,应该继续处理当前Entry。但需要将订阅请求视为失败。


[PRS_SOMEIPSD_00231]
满足下列情况的Option应被忽略

  • Option Type未知(未知的Option,尚未支持的Option)并且discardable flag被设置成1
  • Option是冗余的(同Entry引用的类型和内容相同的Option)
  • Option不被需要(如仅使用组播的事件,接收到了unicast endpoint option)

[PRS_SOMEIPSD_00844]
多个配置选项中配包含了冲突的Item(名称相同),则这些Item都需要被处理,而不能做合并处理。


[PRS_SOMEIPSD_00832]
需要对需要安全连接的对外提供服务的实例进行检查。检查其相关的链接是否已与安全关联建立了管系。

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/4/13 13:33:37

Open-AutoGLM怎么部署在自己电脑上:5步实现本地大模型自由运行

第一章:Open-AutoGLM本地部署概述Open-AutoGLM 是一个开源的自动化代码生成与推理框架,基于 GLM 架构构建,支持自然语言到代码的转换、智能补全及多语言项目分析。本地部署该系统可保障数据隐私、提升响应效率,并允许深度定制模型…

作者头像 李华
网站建设 2026/4/15 15:17:01

职业发展规划:基于行业趋势的个性化成长路径建议

职业发展规划:基于行业趋势的个性化成长路径建议 在今天这个信息爆炸的时代,每个人都在面对一个共同的困境:知识越来越多,但真正能被“用起来”的却越来越少。尤其是职场人,手头积累了大量学习笔记、项目文档、行业报告…

作者头像 李华
网站建设 2026/4/15 10:54:29

深入理解Java注解(从零开始手把手教你自定义与使用Java注解)

在Java开发中,Java注解(Annotation)是一种强大的元数据工具,它允许开发者在代码中添加额外的信息,而不会直接影响程序逻辑。无论是Spring框架中的Autowired,还是JPA中的Entity,都离不开注解的支…

作者头像 李华
网站建设 2026/4/15 8:52:29

Open-AutoGLM架构分析(20年专家亲授,9大核心模块全解析)

第一章:Open-AutoGLM沉思 架构分析核心设计理念 Open-AutoGLM 采用模块化与解耦设计,旨在实现自动化生成语言模型推理流程的灵活编排。其核心思想是将任务分解为可复用的认知单元(Cognitive Units),通过动态调度机制组…

作者头像 李华
网站建设 2026/4/13 8:31:41

Kibana的Discover页面搜索

要在Kibana中只过滤出包含Updated的日志信息,直接在搜索框中使用关键词匹配即可,操作非常简单: 步骤1:在Kibana的Discover页面搜索框输入过滤条件 在当前页面的搜索框(通常在页面顶部)中输入: m…

作者头像 李华
网站建设 2026/4/15 9:39:32

Open-AutoGLM沉思版究竟有多强:5大核心能力重塑企业智能化未来

第一章:Open-AutoGLM沉思版究竟有多强:重新定义企业智能化边界Open-AutoGLM沉思版作为新一代开源大语言模型框架,凭借其强大的语义理解、任务自动分解与多智能体协同能力,正在重塑企业级AI应用的技术边界。它不仅支持复杂业务流程…

作者头像 李华