SOME/IP精华学习笔记
文章平均质量分 86
SOME/IP精华学习笔记
aFakeProgramer
Adaptive AUTOSAR的技术专家,AUTOSAR中国官方培训讲师,具备深厚的汽车行业知识和以太网通信技能。SOME/IP、IPC、DDS、DoIP、UDS、TSN和SOA架构,MQTT,加密,操作系统,v2x,以及c++和Python编程语言。改写成个人简介
展开
-
我们来聊聊SOME/IP的timing时间参数和TTL(Time To Live)的作用及使用规则。
SOME/IP的timing时间参数和TTL(Time To Live)的作用及使用规则。原创 2024-09-14 16:21:08 · 375 阅读 · 0 评论 -
在SOME/IP协议中Service Entry和Eventgroup Entry有什么作用?
在SOME/IP协议中,Service Entry和Eventgroup Entry是用于服务发现和事件订阅的关键元素。这些Entry帮助客户端和服务端在网络中定位和连接所需的服务。Service Entry 的长度为 16 字节,各字段应满足如下要求,格式如图所示:1) 类型字段 [ uint8]:编码为 FindService(0x00) 、 Offe rService(0x01) 和 StopOfferService(0x01)原创 2024-09-14 16:02:29 · 136 阅读 · 0 评论 -
介绍一下SOME/IP 的Session handing功能
(1) SOME/IP协议详解[6 SOME/IP-TP]_someip tp-CSDN博客. https://blog.csdn.net/hammershr2012/article/details/131073230.(5) 详解SOME/IP协议文档-1_someip session id-CSDN博客. https://blog.csdn.net/wjz110201/article/details/119544676.所有属于同一会话的消息都共享相同的会话ID³。原创 2024-08-29 10:43:57 · 422 阅读 · 0 评论 -
SPME/IP PPT详解
什么是中间件?它是操作系统与应用程序之间的一块代码,它对于应用程序提供了一些标准接口,屏蔽了应用程序与底层的一些交互,上层应用程序只要和中间件进行交互就可以了,这样就可以达到一个解耦的目的。SOMEIP其实是一个中间件,它是操作系统与应用程序之间的一段代码,它是可以运行在TCP/IP之上的,可以在很多平台上使用,可以适配较多的操作系统,可以提供很多接口。经过序列化之后,在网络上传输的是一些101010这样的二进制流。SOME/IP可以承接应用层的一些数据,进行打包放到传输层。翻译 2024-04-01 15:13:20 · 303 阅读 · 0 评论 -
SecOC中新鲜度值和MAC都按照完整的值来生成,但是在发送和认证的时候只会截取一部分。这边截取的部分一般取多长?由什么参数设定?
SecOC协议提供了一种截取的方式,即在生成完整的FV和MAC后,只发送其中的一部分,而在接收端,根据相同的规则,重新生成完整的FV和MAC,然后与发送端的截取部分进行比较,以验证数据的合法性。这意味着,对于每个受保护的I-PDU,SecOC模块会使用CMAC/AES-128的算法,根据密钥、数据ID、完整的FV和待认证的数据,生成一个128 bit的MAC。不同的配置文件可能会有不同的截取长度和规则,因此,发送端和接收端需要使用相同的配置文件,才能正确地进行数据的验证。原创 2024-01-04 15:14:41 · 1244 阅读 · 0 评论 -
someip中通过event方式通信,为什么实际使用时使用的是eventGroup?
告知服务端自己只关心某一组的消息,而不需要接收所有的Event。这样可以减少不必要的通信和计算消耗。是为了提高通信的效率和灵活性,让客户端可以按需订阅感兴趣的事件,而不是被动地接收所有的事件。可以按照一定的规则或者周期发送数据,也可以根据服务端的条件触发发送数据。是一种面向服务的可伸缩的协议,用于控制消息的汽车中间件的解决方案。是一种主动发送的接口,用于通知客户端服务端的状态变化或者事件发生。,分别对应不同的通信机制和场景。方式通信,实际使用时使用的是。的概念,它可以将多个相关的。原创 2024-01-04 13:42:17 · 1046 阅读 · 0 评论 -
SOME/IP SubscriberEventGroup
SOME/IP-SD使用一个特定的多播地址(239.255.255.255)和端口(30490)来传输消息,这些消息包含服务的ID,方法的ID,属性的ID,事件组的ID,以及其他的选项和参数。(1) SOME/IP 学习笔记 - Zijian/TENG - 博客园. https://www.cnblogs.com/tengzijian/p/15360205.html.然后,您可以接收到服务提供者回复的Offer Service的消息,使用单播的方式,告诉您服务的详细信息,比如IP地址,端口号,传输协议等。原创 2023-12-20 10:13:16 · 1376 阅读 · 0 评论 -
autosar引入了Secure SOME/IP-ACL 有什么目的?如何实现的?
(2) 浅谈SomeIP以及在AutoSAR中的运用 - CSDN博客. https://blog.csdn.net/weixin_43307365/article/details/109522669.(3) SOME/IP协议【Autosar AP必备知识】 - CSDN博客. https://blog.csdn.net/fu_kou/article/details/127400613.它的目的是防止未经授权的客户端或服务端访问或提供敏感的服务²。原创 2023-12-15 16:04:32 · 1465 阅读 · 1 评论 -
DDS 分布式系统中消息传递的协议
DDS全称为Data Distribution Service,是一种用于实现分布式系统中消息传递的协议。它是由OMG(Object Management Group)定义的一种标准,可以在多种硬件平台和操作系统上运行。总之,DDS是一种用于实现分布式系统中消息传递的协议,具有发布/订阅机制、实时性和可靠性、数据中心化、可扩展性等特点,被广泛应用于工业自动化、医疗设备、航空航天等领域。转载 2023-12-15 13:49:15 · 286 阅读 · 0 评论 -
DSOMEIP丢数据问题分析和总结:
(1)问题现象无论使用arm64硬件、x86 ubuntu电脑、ubuntu docker哪种组合进行DSOMEIP event通信,接收端都会在event payload长度增加到一定程度时udp方式出现丢数据现象。总体上arm64硬件略优于x86 ubuntu电脑,x86 ubuntu电脑略优于ubuntu docker。并且用wireshark抓包时每次都可以抓到丢的SOMEIP数据包,并且数据包完整并且TP顺序没有问题。原创 2023-09-25 09:27:36 · 281 阅读 · 0 评论 -
SOME/IP 支持两种序列化方式:TLV(Tag Length Value) 和 TV (Tag Value)
SOME/IP 是一种基于 IP 的可扩展面向服务的中间件协议,它可以在车载以太网中实现 ECU 之间的高效通信和互操作性¹²。原创 2023-09-05 13:10:59 · 1293 阅读 · 0 评论 -
SOME/IP TTL 在各种Entry 中各是什么意思?有什么限制?
(1) SOME/IP 学习笔记 - Zijian/TENG - 博客园. https://www.cnblogs.com/tengzijian/p/15360205.html.(6) SOME/IP 学习笔记 - Zijian/TENG - 博客园. https://www.cnblogs.com/tengzijian/p/15360205.html.(2) 一篇入门SOME/IP协议 - 知乎 - 知乎专栏. https://zhuanlan.zhihu.com/p/253077443.原创 2023-09-04 11:28:21 · 1704 阅读 · 0 评论 -
车载以太网之SOME/IP-SD专题篇
鉴于SOME/IP-SD的重要性,本文将着重讲解下SOME/IP-SD的几类Entry Type的具体定义说明,SD报文的发送与接收流程,SD的状态机解析,让大家对SOME/IP-SD协议有个更为清晰的了解与认识。如下图13我总结了Client端SD各个状态机的转换关系以及转换之间的若干条件,其中条件1,条件2,条件3为"或"的关系,并不是”与“的关系,每个Phase阶段中发生的行为均体现在Action下面。同理,对于SD报文的接收也需要经历以下几个基本环节才能够获取到数据至SD模块并得到正确处理。转载 2023-09-04 11:16:17 · 322 阅读 · 0 评论 -
一网打尽车载以太网之SOME/IP(上)
在任何通信过程中总是会存在各种各样的 错误,SOME/IP作为一种面向服务的应用协议也不例外,因此AUTOSAR为了更为高效的定位到通讯过程中的问题所在,因此制定了一套检查SOME/IP协议格式内容的错误处理机制。由于SOME/IP协议内容较多且关联复杂,为了让大家对SOME/IP有一个循序渐进的了解过程,限于篇幅本文将主要讲解应用层的SOME/IP标准协议,其他协议内容会在下篇继续给大家分享,敬请大家多多关注!SOME/IP就是运行在车载以太网协议栈基础之上的中间件,或者也可以称为应用层软件。转载 2023-09-04 10:56:19 · 592 阅读 · 0 评论 -
SOME/IP协议详解[7 SOME/IP序列化]
可以看出,tag+length+数据的形式就在字节流中将每个数据划分成了一段,形成了一个链表,如果不想要该tag的数据,就可以通过length直接跳过去,甚至不用再反序列化(注意的一点是,这里length无论是静态动态数据类型,只要不是基础数据类型都必须要有长度域,以便能通过长度域找到下一个数据)。同时有些c语言规范也不提倡使用联合体,容易在使用中出问题,所以可能是我们使用中最不常见的一种形式 联合体是说将一块内存的数据可以解析成不同的类型,以方便调用,而序列化的时候,只能选定其中一种类型进行传输。转载 2023-09-13 13:57:47 · 1297 阅读 · 2 评论 -
SOME/IP协议安全攻击
接着服务端在启动服务并进入到正式阶段(Main Phase)后,会周期性地在这个交换机网络中广播自己提供的服务,例如图中所示服务端提供了0x1234和0x5678这2个服务ID的服务,并让客户端和攻击者都收到了这条广播数据。当然因为攻击者只能在SOME/IP协议层面进行复制攻击,无法对下层通信进行干预,因而客户端就会在短时间内收到2条宣称自己具有0x1234和0x5678服务的广播报文,然后可能会选择攻击者发送的这条广播报文进行回复,即图中的请求服务。Client端期望在发送请求后,接收到相应的响应消息。转载 2023-08-21 13:11:22 · 227 阅读 · 0 评论 -
如何高效定位网络丢包问题?
引言本期分享一个比较常见的网络问题--丢包。例如我们去ping一个网站,如果能ping通,且网站返回信息全面,则说明与网站服务器的通信是畅通的,如果ping不通,或者网站返回的信息不全等,则很可能是数据被丢包了,类似情况想必大家都不陌生。针对网络丢包,本人提供一些常见的丢包故障定位方法,希望能够帮助大家对网络丢包有更多的认识,遇到丢包莫要慌,且跟着一起来涨姿(知)势(识)···什么是丢包数据在Internet上是以数据包为单位传输的,单位为字节,数据在网络上传输,受网络设备,网络质量等原因的影响,使得接收到转载 2023-08-21 11:13:20 · 294 阅读 · 0 评论 -
VSomeip的routing_manager分析
最近和vsomeip杠上了,主要还是工作中的项目需求,在vsomeip中有一个非常重要的组件叫routingmanager,本文主要分析以下routing_manager的工作流程。转载 2023-08-04 21:26:35 · 993 阅读 · 0 评论 -
SOME/IP学习笔记1
举例:上面这个SD报文携带两个entry,第一个entry 负责find service,第二个entry可以offerservice 并携带了一个option ,option指定的是本服务的IP地址和端口号,这样客户在收到报文之后就知道该如何找到这个服务了。Client 可以远程调用 Server 提供的服务,或者订阅 Server 发布的内容,Client 调用服务或者订阅内容之前,需要知道 Server 提供哪些服务,这个过程就是通过服务发现来实现的。原创 2023-08-03 10:09:21 · 1024 阅读 · 0 评论 -
IPV6协议和IPV4协议有什么区别?
IPV6协议是一种网络层的标准协议,是IPV4协议的升级版本。IPV6协议可以提供更多的地址空间,更高的网络性能,更好的安全性和扩展性。IPV6协议也支持新型的应用程序,如对等和移动应用程序。IPV6协议的地址用冒号分隔的十六进制数字表示,比如2001:0db8:85a3:0000:0000:8a2e:0370:7334IPV4协议的地址用点分隔的十进制数字表示,比如192.168.0.1。原创 2023-06-01 11:03:08 · 3557 阅读 · 0 评论 -
SOME/IP通信当服务端和客户端的数量变多,数据量变大的情况下,如何保障数据不丢包,可不可以为一个通信数据排优先级?
如果需要传输非常大的数据块 (> 1400字节),并且在存在错误的情况下没有硬延迟要求时,可以使用TCP;资源限制(Resource Limit):指定通信数据在内存中占用的资源限制,即最多可以缓存多少条消息或多少字节的消息。当服务端和客户端的数量变多,数据量变大的情况下,如何保障数据不丢包,可不可以为一个通信数据排优先级?SOME/IP-TP是一种分段和重组机制,它可以将大于1400字节的数据分成多个小于1400字节的片段,并在接收端重新组合成完整的数据。通信是一种面向服务的传输协议,它可以支持请求。原创 2023-06-01 10:50:01 · 979 阅读 · 0 评论 -
SOME/IP SD的通信行为
亲们,我们曾经有篇文章《SOME/IP有那么难吗?》,详细讲了SOME/IP SD的基本概念、格式等内容。这次我们聊一聊SD的通信行为。经常会有人问:“车载以太网中只使用SOME/IP,不用SD可不可以?”回答这个问题之前我们先看下SD的优点?①上电启动时,车内各ECU的启动电压和启动时间各不相同,ECU通过SD就可以灵活的官宣其Service的可用状态;②车辆变型(可以是同款车型的不同配置,或者是车型沿用)时,可以灵活的适应功能/配置的变化,减少前期的配置工作;转载 2023-05-31 14:52:46 · 1083 阅读 · 0 评论 -
关于SOME/IP的几篇不可错过的好文章
vsomeip——10分钟快速了解vsomeip(vsomeipwiki文档翻译)_Aliven888的博客-CSDN博客_vsomeip。这篇文章是对vsomeip官方wiki文档的一个翻译。属于个人学习开发笔记的一个记录。转载 2022-08-01 10:12:26 · 1062 阅读 · 0 评论 -
SOA协议DDS和SOME/IP的区别
此外,如果用的是OMG没开源的DDS工具,那也没法互操作。OpenDDS 由位于圣路易斯和凤凰城的的Object Computing的 ACE/TAO 团队开发,它和FastDDS具有一定的相似性——两者都是基于RTPS实现的,面向数据的通信框架,遵循的是同一标准。DDS的全称为Data Distribution Service(数据分发服务),是由OMG发布的分布式通信规范,采用发布/订阅模型,提供多种QoS服务质量策略,以保障数据实时、高效、灵活地分发,可满足各种分布式实时通信的应用需求。转载 2023-05-09 19:10:44 · 4453 阅读 · 1 评论 -
4.5 车载通信技术SOME/IP 白皮书
SOME/IP(Scalable service-Oriented MiddlewarE over IP)是指基于 IP 的可扩展的面向服务的中间件。SOME/IP 协议于 2011 年由 BMW 集团的 Dr. Lars Völker 设计,是一种面向服务的车载以太网通信协议,位于 TCP/UDP 之上,兼容当前国际共同探讨的基础软件开发平台。(1) SOME/IP 协议功能介绍。转载 2023-05-09 18:50:26 · 1334 阅读 · 2 评论 -
车载以太网 - SOME/IP简介
SOME/IP (Scalable service-Oriented MiddlewarE over IP) 是车载以太网通信引入的一个概念,位于OSI 7层模型的层4之上。在以CAN总线为主的车载网络中,通信过程是面向信号的(除了诊断通信之外),这是一种根据发送者需求实现的通信过程,当发送者发现信号的值变化了,或者发送周期到了,就会发送信息,而不考虑接收者是否有需求。而SOME/IP则不同,它是在接收方有需求的时候才发送,这种方法的优点在于总线上不会出现过多不必要的数据,从而降低负载。在车载网络中,某转载 2020-09-08 09:05:20 · 15482 阅读 · 2 评论 -
详解SOME/IP协议文档
“ 以下内容来源于AutoSar官网的AUTOSAR_PRS_SOMEIPProtocol文档”详解SOME/IP协议文档-2 - 知乎“ 以下内容来源于AutoSar官网的AUTOSAR_PRS_SOMEIPProtocol文档 ”SOME/IP Payload“ SOME/IP Payload由事件的数据元素或方法的参数组成,大小取决于所使用的传输层协议,对于UDP,payload介于0到1400个字节之间…https://zhuanlan.zhihu.com/p/404570767SOME.转载 2021-12-13 18:21:46 · 7412 阅读 · 2 评论 -
车载以太网SOME/IP概述
https://www.auto-testing.net/news/show-106609.htmlhttps://www.auto-testing.net/news/show-106836.html转载 2020-12-28 16:17:15 · 1268 阅读 · 0 评论 -
关于SOME/IP的理解
关于SOME/IP的理解Original AgingMoon 汽车电子与软件 2 days ago1总体说明如上图所示为标准的网络七层架构,SOME/IP(Scalable service-Oriented MiddlewarE over IP),即“运行于IP之上的可伸缩的面向服务的中间件”。他在系统中其实就是一个中间件的存在,所谓“Middleware中间件”是一种独立的系统软件或服务程序,分布式应用软件可借助Middleware在不同的技术之间共享资源。所谓的分布...转载 2021-01-22 15:42:47 · 4392 阅读 · 0 评论 -
深入浅出理解SOME/IP
SOME/IP,全称为Scalable service-Oriented MiddlewarE over IP,是用于控制消息的汽车中间件解决方案,是一种面向服务的可伸缩的协议。SOME/IP于2011年由BMW设计,2014年纳入AUTOSAR规范。SOME/IP的报文格式如下图所示,由消息头部(Header)和消息体(Payload)组成,Header主要包括以下字段: Message ID,用于唯一标识消息,当消息为Method类型时,由Service ID和Method ID组成,当消转载 2021-05-14 10:35:49 · 14185 阅读 · 0 评论 -
SOME/IP-SD 深入浅出
文章中,我们了解了一条完整的SOME/IP报文应该长什么样子,但这显然是不够的,至少还有以下这几个问题并没有得到明确的解决: Client如何发现服务 当服务不可用时,如何通知Client Client如何订阅事件 这些就是SOME/IP-SD要做的事情了。SOME/IP-SD也是基于SOME/IP的报文,用来实现服务发现和事件订阅机制。SOME/IP-SD消息通过UDP进行传输,报文格式如下图所示:Flags=重新启动标志+单播标志+显示初始数据控制标志,如下图所示:转载 2021-05-14 10:58:01 · 2518 阅读 · 0 评论 -
一网打尽车载以太网之SOME/IP(下)
1 SOA面向服务的通信交互如上图所示,女神去热水澡堂洗澡,想搓背(find服务),于是她付要付搓背钱给澡堂老板,这时澡堂老板知道通过小王和小明的毛遂自荐(offer服务),知道现在澡堂有小王小明都会搓背,由于此时小明正在忙着搓背呢,而小王闲着呢。于是澡堂老板安排小王给女神搓背,给了她一个搓背牌子,女神泡完热水澡,拿着搓背牌子找到小王给她搓背。注意图中有三个角色:2 SOME/IP-SD的主要功能我们在「SOME/IP概述2【SOME/IP的主要中间件功能+SOME/IP报文PDU的封装】」转载 2022-03-01 10:38:12 · 1749 阅读 · 0 评论 -
SOME/IP 消息的布局
前面两篇文章「SOME/IP概述【分层结构及要实现的需求】」、「SOME/IP概述2【SOME/IP的主要中间件功能+SOME/IP报文PDU的封装】 」讲述了SOME/IP的基本概念/需求及架构在以太网的4层模型。这一篇我们研究一下SOME/IP 消息报文的帧格式是什么?我们要按照这个格式才能让发送和接收的双方心领神会,知道对方说了什么?先看代码,大概理解一下:注意 payload[0]可变零长度数组经常以变长结构体的形式。在一个变长结构体中,零长度数组不占用结构体的存储空间,但是我们可以通过使用结转载 2022-06-21 18:11:56 · 720 阅读 · 0 评论 -
关于SOME/IP的理解
1如上图所示为标准的网络七层架构,SOME/IP ( Scalable service-Oriented MiddlewarE over IP),即“运行于IP之上的可伸缩的面向服务的中间件”。他在系统中其实就是一个中间件的存在,所谓“Middleware中间件”是一种独立的系统软件或服务程序,分布式应用软件可借助Middleware在不同的技术之间共享资源。所谓的分布式应用软件,在这里指的就是“服务”;不同的技术之间,在这里指的就是“不同的平台或操作系统,比如Adaptive AUTOSAR系统等。2。转载 2022-09-02 15:03:22 · 734 阅读 · 1 评论