- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
关于SOMEIP的理解
1
总体说明
如上图所示为标准的网络七层架构,SOME/IP?(?Scalable service-Oriented MiddlewarE over IP),即“运行于IP之上的可伸缩的面向服务的中间件”。他在系统中其实就是一个中间件的存在,所谓“Middleware中间件”是一种独立的系统软件或服务程序,分布式应用软件可借助Middleware在不同的技术之间共享资源。所谓的分布式应用软件,在这里指的就是“服务”;不同的技术之间,在这里指的就是“不同的平台或操作系统,比如Adaptive AUTOSAR系统等。
2
服务说明
服务是SOME/IP的最核心概念。在一个服务中,定义了Server和Client两个角色:Server提供服务,Client调用服务。对于同一个服务,只能存在一个Server,但可以同时存在多个Client调用服务。一个Service由0~多个Event/Method/Field组成。与CAN相比,面向服务的通讯方式能够大大降低总线的负载率。
2.1 Method
调用或引用一个进程/函数/子程序,通常由Client发起,并由Server答复。Request是最常见的一种Method,由Client向Server请求数据;Response是Request的结果,由Server答复Client的Request。而Method Fire Forget方式,只Client向Server发起,但Server对该请求不回复。
2.2 Event
一个单向的数据传输,只能是on change类型,用于Server主动向订阅(Subscribe)了相关服务的Client发布(Publish)信息。
2.3 Field
由以下三项内容构成:
Notifier:通知,Server的Client订阅了服务后第一时间主动向其发送数据。
Getter:获取,由Client向Server请求数据。
Setter:设置,由Client修改Server的数据。
3
解析SOME/IP格式
3.1 Message Type说明
值
报
文类型
说明
0x00
REQUEST
请求,需要回复
0x01
REQUEST_NO_RETURN
请求,不需要回复
0x02
NOTIFICATION
Notifier/Event,不需要回复
0x80
RESPONSE
回复
0X81
ERROR
带有错误信息的回复
3.2 Payload说明
通常在传输数据时,为了使数据传输更可靠,要把原始数据分批传输,并且在每一批数据的头和尾都加上一定的辅助信息,比如数据量的大小、校验位等,这样就相当于给已经分批的原始数据加一些外套,这些外套起标示作用,使得原始数据不易丢失,一批数据加上“外套”就形成了传输通道的基本传输单元,叫做数据帧或数据包,而其中的原始数据就是payload。
4
SOME/IP 服务发现SD
由于服务需要由Server和Client共同完成,因此在进行正常的数据传输之前,需要一系列的准备工作确认Server和Client之间是否已有网络连接。之后,Client还要询问Server能否提供所需的服务,并对服务的Event进行订阅。这些工作都是通过SOME/IP服务发现(Service Discovery)实现的。
SOME/IP服务发现用于定位服务实例、检查服务是否可用以及部署发布和订阅句柄。服务发现只能通过UDP实现。
服务发现的报文格式与一般的SOME/IP报文相同,但是其Message ID固定为0xFFFF8100。
4.1 主要功能
定位服务实例
检测服务实例是否在运行(即服务实例的状态)
发布/订阅行为的管理
4.2 SD报文解析
SOME/IP SD报文也是一种SOME/IP报文,是在SOME/IP报文的基础上进行了扩展,增加了Entry、Option等字段;Entries用于同步服务实例的状态和发布/订阅的管理,Options用于传输Entries的附加信息。
SOME/IP SD报文的ServiceID(0xFFFF)、MethodID(0x8100)、Request ID(0x0000)、ProtocolVersion(0x01)、Interface Version(0x01)、MessageType(0x02)、ReturnCode(0x00)等属性都是固定值。
4.2.1 Entry
Entry字段可以理解为服务实例的“入口”,该入口包含服务实例以及需要订阅的事件组的信息。主要通过Entry实现提供服务、发现服务,以及订阅事件组的功能。
供服务用Entries
供EventGroup用Entries
报文中Type内容解释如下:
类别
Type值
Type名称
Service?
0x00
您可能关注的文档
最近下载
- 2024届九省联考英语试题(含答案解析、MP3及录音稿).docx VIP
- 人教版高一数学必修一期末检测试卷(附答案).pdf VIP
- 9《复活》课件(共41张PPT)(含音频+视频).pptx VIP
- 神经营养性角膜炎诊疗指南(2025年版).pdf
- 小麦剥及皮制粉工艺技术进展.ppt VIP
- 检验评定标准(第一册土建工程)JTGF80-1---2017).pdf VIP
- 2025年中心医院工作总结暨2026年工作计划.docx
- 《既有建筑幕墙维护与改造工程技术标准》.docx VIP
- 小麦磨粉品质及制粉工艺和面粉成分相关性的研究.doc VIP
- 初中体育与健康华东师大九年级(2023年新编) 田径类运动水平四《快速跑》教学设计.docx VIP
原创力文档


文档评论(0)