SOME/IP协议的详细介绍

分享到:

SOME/IP,全称为Scalable service-Oriented MiddlewarE over IP,是用于控制消息的汽车中间件解决方案,是一种面向服务的可伸缩的协议。SOME/IP于2011年由BMW设计,2014年纳入AUTOSAR规范。

SOME/IP的报文格式如下图所示,由消息头部(Header)和消息体(Payload)组成,Header主要包括以下字段:

RF, 射频, 协议

Message ID,用于唯一标识消息,当消息为Method类型时,由Service ID和Method ID组成,当消息为Event类型时,由Service ID和Event ID组成,如下图所示:

RF, 射频, 协议

Length,消息长度(从Request ID开始到Payload结束);

Request ID,服务提供者和调用者可用于区分相同消息的不同调用,由Client ID和Session ID组成,如下图所示:

RF, 射频, 协议

通常我们称服务提供者为Service,服务调用者为Client,Service ID和Client ID用于区分,一般会在一个SOA架构中统一地配置这些ID的数值。

这里插播一点个人理解,在SOA中,每个服务就好像我们每一个人在社会中扮演的角色,在对别人提供着服务的同时,同时也享受着别人提供出来的服务,人与人之间,既是彼此独立的,又是需要互相通讯的。服务提供者将功能具象为一组接口,这样使用者就能知道如何调用服务,完成某件事情,得到某个结果。

Protocol Version,协议头版本号,目前该值必须为1;

Interface Version,接口版本号,一般由服务提供者定义;

Message Type,用于标识消息的类型,如下图所示:

RF, 射频, 协议

消息类型和通信机制之间的映射关系,如下图所示(灵魂画手,将就看吧),不难发现,Field结合了Method和Event,这也就理解了Message ID中为什么只有Method ID和Event ID,没有Field ID。Field可以用于实现这样一种通信场景:客户端希望能够获取/设置/监听服务端的某一个状态值,图中SOME/IP-SD

RF, 射频, 协议

RF, 射频, 协议

Return Code,用于标识请求是否成功处理,不同的消息类型,它们在传输时所携带的Return Code也不同:

RF, 射频, 协议

具体返回值和错误码定义如下:

RF, 射频, 协议

Payload,也叫有效载荷,是消息内容,通常它的长度是可变的。SOME/IP协议在OSI七层网络结构中位于应用层,它建立在TCP或者UDP传输层协议之上。当通过UDP传输时,由于UDP的限制,Payload的长度应该限制在1400字节以内,超了则要分组(SOME/IP-TP),而当通过TCP传输时,可以传输更多的字节,理论上只要不超过Length字段的大小即可。

对于AUTOSAR系统,Payload要遵循AUTOSAR规范进行序列化,对于非AUTOSAR系统,可以遵循AUTOSAR规范进行序列化,也可以采用其他序列化方式如常用的Google Protocol Buffer、JSON等。

以上介绍了SOME/IP协议,可以发现,SOME/IP其实并不等同于SOA,只能说要实现SOA,SOME/IP是一个很不错的协议选择。

继续阅读
一文讲解无线通信领域的混频器和调制器

在所有的无线设计中,混频器和调制器都支持变频并实现通信。它们确定整个信号链的基本规格。它们的接收信号链具有最高功率,对来自发射通路中的数模转换器(DAC)的信号进行上变频,并实现数字预失真(DPD)系统,从而影响整个通信系统的性能。那么,基本混频器的工作原理如何?有哪些重要规格要考虑?目前有哪些混频器和调制器方案可用来改进和简化系统设计?

存储器技术发展概述

半导体存储技术在电子设计中占有重要的地位,在几乎任何包含处理器的系统中都会用到各种各样的存储器。 随着处理器的进化和发展,存储技术也跟随着不断进步。 另外,随着处理器和计算机系统而不断复杂的软件系统,也对存储技术提出越来越高的要求,新型的存储技术因此不断涌现。 然而,当今的主流存储技术在可预见的将来仍然会被大量应用在计算机系统、数码相机、智能手机等电子设备当中。

I2C总线的工作原理

I2C总线是一种十分流行并且强大的总线,其多用于一个(或多个)主机与单个或多个从设备通讯的场景。图1表明了多种不同的外设可以共享这种只需要两根线便可以连接到处理器的总线,相对于其他接口来说,这也是I2C总线可以提供的最大优势之一。这篇应用笔记的目标是帮助大家理解I2C总线是如何工作的。

引线键合和倒装焊封装制程工艺详解

系统级封装技术已经成为电子技术研究新热点和技术应用的主要方向之一,SIP封装工艺作为SIP封装技术的重要组成部分,值得从事相关技术行业的技术人员和学者进行研究和学习,引线键合和倒装焊作为系统级封装的两种工艺,各有其特点和优势,需要根据具体生产要求进行选择。

机器视觉的三种种目标识别方法讲解

随着机器视觉技术的快速发展,传统很多需要人工来手动操作的工作,渐渐地被机器所替代。传统方法做目标识别大多都是靠人工实现,从形状、颜色、长度、宽度、长宽比来确定被识别的目标是否符合标准,最终定义出一系列的规则来进行目标识别。这样的方法当然在一些简单的案例中已经应用的很好,唯一的缺点是随着被识别物体的变动,所有的规则和算法都要重新设计和开发,即使是同样的产品,不同批次的变化都会造成不能重用的现实。而随着机器学习,深度学习的发展,很多肉眼很难去直接量化的特征,深度学习可以自动学习这些特征,这就是深度学习