软考 系统架构设计师系列知识点之SOME/IP与DDS(2)

接前一篇文章:软考 系统架构设计师系列知识点之SOME/IP与DDS(1)

本文内容参考:

车载以太网 - SOME/IP简介_someip-CSDN博客

https://zhuanlan.zhihu.com/p/369422441

什么是SOME/IP?_someip-CSDN博客

SOME/IP 详解系列(1)—— 概述_some ip-CSDN博客

深入浅出SOME/IP协议:基本概念和原理-CSDN博客

特此致谢!

一、SOME/IP

3. 协议概述

(1)定义与特点

SOME/IP是一种应用层协议,其允许在车辆内部网络中实现高效的服务交换和远程调用。这种协议支持车辆各组件之间的复杂通信需求,特别适用于具有高数据吞吐量的场景

  • 服务导向架构(Service-Oriented Architecture,SOA)

SOME/IP实现了一种服务导向架构,允许车辆的各个电子控制单元(ECUs)以服务提供者服务消费者的身份互动。这种架构使得车辆内部的软件组件可以更加灵活地通信和交互

  • 远程过程调用(Remote Procedure Call,RPC)

通过RPC,SOME/IP支持跨网络的函数或过程调用,实现不同ECU之间的紧密协作。

  • 高度可伸缩性和灵活性(Scalability and Flexibility)

SOME/IP协议的设计考虑到了未来车辆网络可能的扩展,支持从小型车辆到大型车队的不同规模应用。

(2)SOME/IP与传统车载网络协议的比较

SOME/IP与传统车载网络协议(如CAN、LIN等)相比,具有明显的优势,但也存在一些不同的应用场景。通过下面的表格,可以更清楚地看到这些差异:

特性SOME/IP传统车载网络协议
数据传输高吞吐量,适合大数据传输适合小规模数据交换
网络结构服务导向,适应性强较为固定的消息格式和网络结构
扩展性易于扩展和升级扩展性相对有限
应用领域适合复杂、高数据需求的现代车辆系统适用于传统、功能单一的车辆系统

4. 主要功能

SOME/IP主要有以下几个功能:

(1)序列化(Serialization)

SOME/IP协议对序列化的解释为数据在PDU(Protocol Data Units,协议数据单元)中的表示方式。展开来说就是将不同的数据结构转换为可在网络上传输的形式,或者说是数据在网络上传输时的封装和排列规则。发送端将数据以一定的规则进行序列化,接收端将数据以同样的规则进行反序列化,从而得到发送端所发送的实际内容。

这部分定义既包含报文头部也包含载荷数据,不仅定义了头部的格式、各字段的长度及含义,还定义了各种数据类型在有效载荷中的排列规则。发送端和接收端通过这样的规则就能获取数据报头的含义及载荷的内容(具体的报文格式会在接下来的文章中详细介绍,本文仅介绍SOME/IP的基本功能)。下图为SOME/IP支持的基础数据类型和复杂数据类型。

(2)远程过程调用(Remote Procedure Call)

远程过程调用,一般用英文缩写RPC表示,听起来又是个比较晦涩的名词,和其对应的是本地过程调用(LPC,Local Procedure Call)。简单地说,如果需要和其它的控制器或节点进行交互,那么就需要RPC。

通过RPC来请求其它节点上的服务或数据,基于Request/Response的模式来实现(左下图示)客户端发送请求,服务器接受请求并处理,然后返回结果给客户端。在SOME/IP中,除了这种同步调用的方式,还支持异步调用的Fire&Forget(右下图示),客户端发送请求后,无需等待服务器处理请求,可以继续执行其他操作,同时服务器也无需返回处理结果(request-no-return)。相较于Request/Response,Fire&Forget方式对系统性能和资源的要求更低。

(3)服务发现(Service Discovery)

服务发现(Service Discovery,SD)可以认为是SOME/IP协议的核心,其提供了一种可以动态的发现和获取服务状态的机制。

所谓面向服务的通信,首先需要获取网络中都有什么服务,并且需要知道服务的状态和提供方,然后才可以去使用和消费这个服务。通过SOME/IP SD,可以将自身能提供的服务以及服务的状态告诉网络中的其它节点,同时,当想要主动寻找某个服务的时候,也可以通过SOME/IP SD去实现。

(4)发布/订阅(Publish/Subscribe)

发布和订阅也是由SOME/IP SD实现的。上文中提到,SOME/IP可以实现只在需要的时候才进行数据的发送,这主要归功于发布/订阅的机制。客户端在发现想要使用的服务后,会对服务进行订阅,当满足服务的触发条件时,服务器就会将客户端所需的服务内容发出。发送的方式是单向的事件型通知,对于客户端来说,只需要订阅一次即可。这同样是一个动态的过程,当客户端不需要使用服务的时候,也可以停止订阅该服务。

(5)TP传输协议(Transport Protocol)

SOME/IP-TP是SOME/IP在数据传输层面定义的规则,主要用于解决数据有可能被分片的问题。在网络层,数据都是通过IP协议传输的,由于链路MTU的限制,导致可能会出现IP分片。由于IP分片存在诸多的问题,为了防止IP出现分片的情况,所以设计了SOME/IP-TP,可以简单理解成TP是SOME/IP自己的分片传输机制。

关于SOME/IP更多知识内容的介绍,请看下回。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/652106.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

【VTKExamples::Utilities】第六期 DataAnimation

很高兴在雪易的CSDN遇见你 VTK技术爱好者 QQ:870202403 公众号:VTK忠粉 前言 本文分享VTK样例DataAnimation,并解析接口vtkProgrammableFilter,希望对各位小伙伴有所帮助! 感谢各位小伙伴的点赞+关注,小易会继续努力分享,一起进步! 你的点赞就是我的动力(^U…

1分钟快速掌握JSON格式

文章目录 先说理论代码举例对象型数组型总结 先说理论 下面是JSON的几种简单数据类型: 数据类型描述数字型JavaScript中的双进度浮点类型,通常根据具体情况定义,这里是没有特殊的整形的。字符串型带双引号的Unicode,带反斜杠转义布尔型true…

Raven2掠夺者2渡鸦2角色创建、游戏预下载、账号怎么注册教程

《渡鸦2》(Raven 2)是由韩国开发的一款大型多人在线角色扮演游戏(MMORPG)类型的手游,作为前作《Raven》的续集,继承并发展了其黑暗奇幻世界观,同时在游戏设计和内容上进行了大量创新。游戏预计于…

eNSP华为模拟器-DHCP配置

拓扑图 要求 PC1通过DHCP获取192.168.1.1地址PC2和PC3通过DHCP接口地址池方式获取IP地址配置静态路由使其ping通 配置 配置主机名及接口IP地址 # AR1 <Huawei>sys Enter system view, return user view with CtrlZ. [Huawei]sys AR1 [AR1]int g0/0/0 [AR1-Gigabit…

【StructueEngineering】SYMBOL SCHEDULE

文章目录 标记表列SYMBOL SCHEDULELINES线条COLUMN REFERENCE SYMBOL柱参考标记SECTION REFERENCE SYMBOLS剖面参考标记DETAILREFERENCE SYMBOLS详图参考标记GENERALELEVATIONSYMBOLS一般立面图标记MISCELLANEOUS SYMBOLS杂项标记 STEEL FRAMING SYMBOLS钢结构平面图标记COLUMN…

电机控制系列模块解析(24)—— 飞车转速跟踪

转速跟踪启动&#xff1a;又名顺风&&逆风启动、或者飞车启动、或者启动前转速检测。应用背景见附录。 转速跟踪 也可以理解为 对正在高速运行的电机 进行初始位置辨识。 一、转速跟踪方案 转速跟踪是电机控制中的一项关键技术&#xff0c;尤其在变频驱动、伺服系统等…

浙江大学数据结构MOOC-课后习题-第六讲-图2 Saving James Bond - Easy Version

题目汇总 浙江大学数据结构MOOC-课后习题-拼题A-代码分享-2024 题目描述 测试点 思路分享 ①解题思路概览 我的想法是&#xff0c;先建立一个图&#xff0c;然后再利用DFS或者BFS来遍历判断当前顶点能否跳到岸上去 ②怎么建图&#xff1f; 首先要考虑采用什么数据结构来存储图…

gpt-4o继续迭代考场安排程序 一键生成考场清单

接上两篇gpt-4o考场安排-CSDN博客&#xff0c;考场分层次安排&#xff0c;最终exe版-CSDN博客 当然你也可以只看这一篇。 今天又添加了以下功能&#xff0c;程序见后。 1、自动分页&#xff0c;每个考场打印一页 2、添加了打印试场单页眉 3、添加了页脚 第X页&#xff0c;…

Springboot项目——网页版本五子棋

网页五子棋&#xff1a;本项目简单实现了网页版本的五子棋对战功能&#xff0c;同时会根据用户的天梯分数来匹配&#xff0c;可供多位用户同时提供对战功能。大致可分为三个模块&#xff0c;用户模块&#xff0c;匹配模块&#xff0c;对战模块&#xff0c;下面重点介绍以下三个…

班翠鸟优化算法(PKO)-2024年SCI新算法-公式原理详解与性能测评 Matlab代码免费获取

​ 声明&#xff1a;文章是从本人公众号中复制而来&#xff0c;因此&#xff0c;想最新最快了解各类智能优化算法及其改进的朋友&#xff0c;可关注我的公众号&#xff1a;强盛机器学习&#xff0c;不定期会有很多免费代码分享~ 目录 原理简介 一、初始化阶段 二、栖…

C# 字节数组(byte[])拼接的性能对比测试

将C#中的三种字节数组拼接方式的性能做了一个对比测试&#xff0c;DEMO程序代码如下&#xff1a; using System; using System.Collections.Generic; using System.Diagnostics; using System.Linq; using System.Text; using System.Threading.Tasks;namespace Byte数组拼接测…

typora自动生成标题序号(修改V1.0)

目录 带序号效果图 解决方法 带序号效果图 解决方法 1.进入文件夹&#xff1a;文件–>偏好设置–>外观–>主题–>打开主题文件夹 2.如果没有base.user.css文件&#xff0c;新建一个。如果有直接用记事本打开&#xff0c;把下面代码拷贝进去保存。 /** initiali…

免税商品优选购物商城,基于 SpringBoot+Vue+MySQL 开发的前后端分离的免税商品优选购物商城设计实现

目录 一. 前言 二. 功能模块 2.1. 登录界面 2.2. 管理员功能模块 2.3. 商家功能模块 2.4. 用户前台功能模块 2.5. 用户后台功能模块 三. 部分代码实现 四. 源码下载 一. 前言 随着科学技术的飞速发展&#xff0c;各行各业都在努力与现代先进技术接轨&#xff0c;通过…

前端开发之xlsx-js-style的使用和实例

xlsx-js-style的使用和实例 前言效果图安装xlsx-js-style插件导入插件在创建ws后设置表头 前言 在使用xlsx组件的时候如果需要调整xlsx表的样式可以使用xlsx-js-style来进行设置 效果图 安装xlsx-js-style插件 npm install xlsx-js-style导入插件 该文件参考在xlsx的使用中…

各种情况下的线缆大小选择

开口线鼻子和导线对应大小 开口铜鼻子对应线径大小 变压器容量对应高压侧电流大小 开关电流线缆功率对照表 家庭/工业最常用电线铜线电流承载功率 电工常用名词对应符号 导线面积承载的安全载流量及允许负荷对照表 漏电保护器选择参考表 电动机功率换算电流 电机功…

数据(整型和浮点数)在内存中的存储

目录 1.整型在内存中的存储 大小端字节序存储和字节序判断 1.大小端字节序存储&#xff1a; 2.字节序判断&#xff1a; 2.浮点数在内存中的存储 浮点数存储的过程 浮点数读取的过程 题目解析 1.整型在内存中的存储 我们先要明白&#xff1a; 整数在内存中是以二进制形式…

数据结构(六)队列

文章目录 一、概念二、逻辑结构&#xff1a;线性结构三、存储结构&#xff08;一&#xff09;顺序队列&#xff08;二&#xff09;循环队列1. 结构体定义2. 创建队列&#xff08;1&#xff09;函数定义&#xff08;2&#xff09;注意点&#xff08;3&#xff09;代码实现 3. 入…

SQLI-labs-第二十五关和第二十五a关

目录 第二十五关 1、判断注入点 2、判断数据库 3、判断表名 4、判断字段名 5、获取数据库的数据 第二十五a关 1、判断注入点 2、判断数据库 第二十五关 知识点&#xff1a;绕过and、or过滤 思路&#xff1a; 通过分析源码和页面&#xff0c;我们可以知道对and和or 进…

解决 WooCommerce 的分析报表失效问题

今天明月的一个境外电商客户反应网站的 WooCommerce 分析报表已经十多天没有更新了&#xff0c;明明每天都有订单交易可分析报表里的数据依旧是十多天前的&#xff0c;好像更新完全停滞了似的。明月也及时的查看了后台的所有设置&#xff0c;确认没有任何问题&#xff0c;WooCo…

什么是光栅化?

一、 什么是光栅化? 光栅化作用是将几何数据变换后转换为像素呈现在显示设备上的一个过程。几何数据转换为像素&#xff0c; 本质是坐标变换、几何离散化&#xff0c;如下&#xff1a; 其中包含了坐标变换和几何离散化&#xff1a; 二、光栅化完成了什么 3D中&#xff0c;物…