VSOMEIP ROUTING应用和CLIENT应用之间交互的消息

#define VSOMEIP_ASSIGN_CLIENT                   0x00  // client应用请求分配client_id
#define VSOMEIP_ASSIGN_CLIENT_ACK               0x01  // routing应用返回分配的client_id
#define VSOMEIP_REGISTER_APPLICATION            0x02  // client应用注册someip应用
#define VSOMEIP_DEREGISTER_APPLICATION          0x03  // client应用取消someip应用的注册
#define VSOMEIP_APPLICATION_LOST                0x04  // 未使用(代码中没有找到使用的地方)
#define VSOMEIP_ROUTING_INFO                    0x05  // 如果当前主机内有app发布了serive,instance,则routing通知当前主机内请求了该服务实例的client app,此时消息中的commandid就是VSOMEIP_ROUTING_INFO
#define VSOMEIP_REGISTERED_ACK                  0x06  // 当前主机内有app注册了client_id,routing应用会通知主机内所有app,其中注册了这个client_id的app会回复VSOMEIP_REGISTERED_ACK消息// 具体可以看routing_manager_client中收到routing消息的地方,首先要是routing_info类型的消息,然后里面的command_entry类型未RTE_CLIENT_ADD才会触发client回复这个消息#define VSOMEIP_PING                            0x0E  // routing发送PING消息给client应用,当两个应用先后offer同一个service/instance的时候,routing会通过PING消息判断先offer的client应用是否还活着
#define VSOMEIP_PONG                            0x0F  // client应用以PONG消息回复routing应用的PING消息,告诉routing自己还活着#define VSOMEIP_OFFER_SERVICE                   0x10  // client应用发布service实例
#define VSOMEIP_STOP_OFFER_SERVICE              0x11  // client应用停止分布service实例
#define VSOMEIP_SUBSCRIBE                       0x12  // client应用订阅service实例的事件
#define VSOMEIP_UNSUBSCRIBE                     0x13  // client应用停止订阅service实例的事件
#define VSOMEIP_REQUEST_SERVICE                 0x14  // client应用请求service实例
#define VSOMEIP_RELEASE_SERVICE                 0x15  // client应用释放(停止请求)service实例
#define VSOMEIP_SUBSCRIBE_NACK                  0x16  // 1. client应用回复对其service订阅的NACK消息给routing, routing随后会将订阅NACK消息发给订阅端应用所在主机的routing应用// 2. 订阅端应用所在主机的routing应用收到订阅NACK消息,则通过uds发送VSOMEIP_SUBSCRIBE_NACK类型的消息给订阅应用
#define VSOMEIP_SUBSCRIBE_ACK                   0x17  // 1. client应用回复对其service订阅的ACK消息给routing, routing随后会将订阅ACK消息发给订阅端应用所在主机的routing应用// 2. 订阅端应用所在主机的routing应用收到订阅ACK消息,则通过uds发送VSOMEIP_SUBSCRIBE_ACK类型的消息给订阅应用
#define VSOMEIP_SEND                            0x18  // client应用发送消息的时候(REQUEST/RESPONSE),首先通过VSOMEIP_SEND类型的消息发给routing应用,由routing应用转发给其他主机上的routing应用
#define VSOMEIP_NOTIFY                          0x19  // client应用发送notification消息
#define VSOMEIP_NOTIFY_ONE                      0x1A  // client应用对某一个特定的订阅了事件的远端应用发送notification的消息#define VSOMEIP_REGISTER_EVENT                  0x1B  // 提供someip事件的client应用向routing应用注册事件
#define VSOMEIP_UNREGISTER_EVENT                0x1C  // 提供someip事件的client应用向routing应用取消事件的注册
#define VSOMEIP_ID_RESPONSE                     0x1D  // 未使用(代码中没有找到使用的地方)
#define VSOMEIP_ID_REQUEST                      0x1E  // 未使用(代码中没有找到使用的地方)
#define VSOMEIP_OFFERED_SERVICES_REQUEST        0x1F  // 当client应用通过application::get_offered_services_async接口向routing请求已经收到offer的service信息时,// client应用就会发送VSOMEIP_OFFERED_SERVICES_REQUEST类型的消息给routing应用
#define VSOMEIP_OFFERED_SERVICES_RESPONSE       0x20  // routing应用收到VSOMEIP_OFFERED_SERVICES_REQUEST类型的消息后将本地目前收到offer的所有service信息放到VSOMEIP_OFFERED_SERVICES_RESPONSE类型消息中回复给client应用
#define VSOMEIP_UNSUBSCRIBE_ACK                 0x21  // 提供event的应用从routing应用收到远端应用对该event取消订阅的请求后,将发送VSOMEIP_UNSUBSCRIBE_ACK消息给routing应用,然后再给到远端的routing和订阅该event的client应用
#define VSOMEIP_RESEND_PROVIDED_EVENTS          0x22  // routing应用发给client应用,要求其重新将event注册的消息(VSOMEIP_REGISTER_EVENT)发送一次

 每种消息的格式如下:

vSomeIP command documentation
=============================VSOMEIP_ASSIGN_CLIENT (0x00)Command            00
Version            xx xx
Client             xx xx
Size               xx xx xx xx
Name               xx ... xx        ;#xx = SizeVSOMEIP_ASSIGN_CLIENT_ACK (0x01)Command            01
Version            xx xx
Client             xx xx        
Size               02 00 00 00    
Assigned           xx xxVSOMEIP_REGISTER_APPLICATION (0x02)Command            02
Version            xx xx
Client             xx xx
Size               00 00 00 00VSOMEIP_DEREGISTER_APPLICATION (0x03)Command            03
Version            xx xx
Client             xx xx
Size               00 00 00 00VSOMEIP_APPLICATION_LOST (0x04)<unused>VSOMEIP_ROUTING_INFO (0x05)Command            05
Version            xx xx
Client             xx xx
Size               xx xx xx xx
Entries        SubCommand     xx        ; RIE_ADD_CLIENT (0x0) or RIE_DEL_CLIENT (0x1)Size           xx xx xx xxClient         xx xx[Address]      xx .. xx    ; Size - sizeof(Client) - sizeof(Port)[Port]         xxSubCommand     xx        ; RIE_ADD_SERVICE_INSTANCE (0x2) or RIE_DEL_SERVICE_INSTANCE (0x3)Size           xx xx xx xx    ; Command sizeSize           xx xx xx xx    ; Client info sizeClient         xx xx[Address]      xx .. xx    ; Client info size - sizeof(Client) - sizeof(Port)[Port]         xxSize           xx xx xx xx    ; Services sizeService    xx xxInstance   xx xxMajor      xxMinor      xx xx xx xxVSOMEIP_REGISTERED_ACK (0x06)Command            06
Version            xx xx
Client             xx xx
Size               00 00 00 00VSOMEIP_PING (0x07)Command            07
Version            xx xx
Client             00 00
Size               00 00 00 00VSOMEIP_PONG (0x08)Command            08
Version            xx xx
Client             xx xx
Size               00 00 00 00VSOMEIP_OFFER_SERVICE (0x10)Command            10
Version            xx xx
Client             xx xx
Size               09 00 00 00
Service            xx xx
Instance           xx xx
Major              xx
Minor              xx xx xx xxVSOMEIP_STOP_OFFER_SERVICE (0x11)Command            11
Version            xx xx
Client             xx xx
Size               09 00 00 00
Service            xx xx
Instance           xx xx
Major              xx
Minor              xx xx xx xxVSOMEIP_SUBSCRIBE (0x12)Command            12
Version            xx xx
Client             xx xx
Size               xx xx xx xx
Service            xx xx
Instance           xx xx
Eventgroup         xx xx
Major              xx
Event              xx xx
Pending ID         xx xx
FilterOnChange                xxOnChangeResetsInterval  xxInterval                xx xx xx xx xx xx xx xxIgnore (per entry)Key                 xx xx xx xx xx xx xx xxValue               xxVSOMEIP_UNSUBSCRIBE (0x13)
VSOMEIP_EXPIRE (0x2A)Command            13/2A
Version            xx xx
Client             xx xx
Size               0a 00 00 00
Service            xx xx
Instance           xx xx
Eventgroup         xx xx
Event              xx xx
Pending ID         xx xxVSOMEIP_REQUEST_SERVICE (0x14)Command            14
Version            xx xx
Client             xx xx
Size               xx xx xx xx
EntriesService        xx xxInstance       xx xxMajor          xxMinor          xx xx xx xxVSOMEIP_RELEASE_SERVICE (0x15)Command            15
Version            xx xx
Client             xx xx
Size               04 00 00 00
Service            xx xx
Instance           xx xxVSOMEIP_SUBSCRIBE_NACK (0x16)Command            16
Version            xx xx
Client             xx xx
Size               0c 00 00 00
Service            xx xx
Instance           xx xx
Eventgroup         xx xx
Subscriber         xx xx
Event              xx xx
ID                 xx xxVSOMEIP_SUBSCRIBE_ACK (0x17)Command            17
Version            xx xx
Client             xx xx
Size               0c 00 00 00
Service            xx xx
Instance           xx xx
Eventgroup         xx xx
Subscriber         xx xx
Event              xx xx
ID                 xx xxVSOMEIP_SEND (0x18)
VSOMEIP_NOTIFY (0x19)
VSOMEIP_NOTIFY_ONE (0x1A)Command            18|19|1a
Version            xx xx
Client             xx xx
Size               xx xx xx xx
Instance           xx xx
Reliable           xx        ; UDP (00) or TCP (01)
Status             xx        ; CRC of E2E - protected messages
Destination        xx xx     ; Client ID of the receiver
Payload            xx ... xxVSOMEIP_REGISTER_EVENT (0x1B)Command            1b
Version            xx xx
Client             xx xx
Size               xx xx xx xx    ; 10 + #eventgroups * 2
EntriesService            xx xxInstance           xx xxNotifier           xx xxType               xx    ; ET_EVENT (00), ET_SELECTIVE_EVENT(01) or ET_FIELD(02)Provided           xx    ; False (00) or True (01)Reliability        xx    ; UDP (00) or TCP (01)IsCyclic           xxNum Eventgroups    xx xxEntriesEventgroup     xx xxVSOMEIP_UNREGISTER_EVENT (0x1C)Command            1c
Version            xx xx
Client             xx xx
Size               07 00 00 00
Service            xx xx
Instance           xx xx
Notifier           xx xx
Provided           xxVSOMEIP_ID_RESPONSE (0x1D)<unused>VSOMEIP_ID_REQUEST (0x1E)<unused>VSOMEIP_OFFERED_SERVICES_REQUEST (0x1F)Command            1f
Version            xx xx
Client             xx xx
Size               01 00 00 00
OfferType          xx (00 = LOCAL, 01 = REMOTE, 02 = ALL)VSOMEIP_OFFERED_SERVICES_RESPONSE (0x20)Command            20
Version            xx xx
Client             xx xx
Size               xx xx xx xx 
OfferedServicesSubcommand     xx    (00 = ADD CLIENT, 01 = ADD SERVICE INSTANCE, 02 = DELETE SERVICE INSTANCE, 03 = DELETE CLIENT)Size           xx xx xx xxServiceInstancesService    xx xxInstance   xx xxMajor      xx xxMinor      xx xxVSOMEIP_UNSUBSCRIBE_ACK (0x21)Command            21
Version            xx xx
Client             xx xx
Size               08 00 00 00
Service            xx xx
Instance           xx xx
Eventgroup         xx xx
Id                 xx xx            VSOMEIP_RESEND_PROVIDED_EVENTS (0x22)Command            22
Version            xx xx
Client             xx xx
Size               04 00 00 00
PendingOfferId     xx xx xx xxVSOMEIP_UPDATE_SECURITY_POLICY (0x23)
VSOMEIP_UPDATE_SECURITY_POLICY_INT (0x29)Command            23/29
Version            xx xx
Client             xx xx
Size               xx xx xx xx
UpdateId           xx xx xx xx
Policy             xx ... xx        VSOMEIP_UPDATE_SECURITY_POLICY_RESPONSE (0x24)Command            24
Version            xx xx
Client             xx xx
Size               04 00 00 00
UpdateId           xx xx xx xxVSOMEIP_REMOVE_SECURITY_POLICY (0x25)Command            25
Version            xx xx
Client             xx xx
Size               0c 00 00 00
UpdateId           xx xx xx xx
Uid                xx xx xx xx
Gid                xx xx xx xxVSOMEIP_REMOVE_SECURITY_POLICY_RESPONSE    (0x26)Command            26
Version            xx xx
Client             xx xx
Size               04 00 00 00
UpdateId           xx xx xx xxVSOMEIP_UPDATE_SECURITY_CREDENTIALS (0x27)Command            27
Version            xx xx
Client             xx xx
Size               xx xx xx xx
CredentialsUid            xx xx xx xxGid            xx xx xx xxVSOMEIP_DISTRIBUTE_SECURITY_POLICIES (0x28)Command            28
Version            xx xx
Client             xx xx xx xx
Size               xx xx xx xx
PoliciesCount      xx xx xx xx
PoliciesSize           xx xx xx xxData           xx ... xxVSOMEIP_SUSPEND (0x30)Command            30
Version            xx xx
Size               xx xx xx xx

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

从零开始认识大语言模型(LLM)

“AI小美好——聚焦科技、商业、职场。前沿资讯&#xff0c;实用干货&#xff0c;邂逅更美好的自己&#xff01;” 在当今数字化时代&#xff0c;语言不仅是人类交流的工具&#xff0c;更是信息传递的核心。随着人工智能技术的飞速发展&#xff0c;大语言模型逐渐走进了我们的…

安装OpenJDK21(linux、macos)

文章目录 安装OpenJDK21java21linux下安装配置mac下安装 安装OpenJDK21 java21 封神&#xff01;Java 21正式发布了&#xff0c;迎来了史诗级新特性&#xff0c;堪称版本最强&#xff01;&#xff01;&#xff01; 视频链接&#xff1a;https://www.bilibili.com/video/BV1E8…

基于Java的自助多张图片合成拼接实战

目录 前言 一、图片合成需求描述 二、图片合成设计与实现 1、编程语言 2、基础数据准备 3、图片合成流程 4、图片合成实现 三、总结 前言 在当今数字化时代&#xff0c;图像处理技术在各个领域都发挥着至关重要的作用。从社交媒体到电子商务&#xff0c;从在线教育到虚拟…

计算机网络结课设计:通过思科Cisco进行中小型校园网搭建

上学期计算机网络课程的结课设计是使用思科模拟器搭建一个中小型校园网&#xff0c;当时花了几天时间查阅相关博客总算是做出来了&#xff0c;在验收后一直没管&#xff0c;在寒假想起来了简单分享一下&#xff0c;希望可以给有需求的小伙伴一些帮助 目录 一、设计要求 二、…

在npm上传属于自己的包

最近在整理代码&#xff0c;上传到npm方便使用&#xff0c;所以学习了如何在npm发布一个包&#xff0c;整理写成一篇文章和大家一起交流。 1、注册npm账号 npm | Home 2、确保是登录状态 &#xff08;在包目录下&#xff0c;终端执行 npm login) 按enter键自动打开页面&…

物联网(IoT)详解

物联网&#xff08;IoT&#xff09;详解 1. IoT定义简介2. IoT工作原理3. IoT关键技术4. 物联网与互联网区别5. IoT使用场景6. 开源物联网平台7. 参考资料 1. IoT定义简介 首先第一个问题&#xff0c;什么是物联网&#xff08;IoT&#xff09;? 物联网&#xff08;英文&#…

idea项目列表不出现,展示loading

2025年02月08 11:23:36 星期六 发生在webstorm中&#xff0c;跟其他idea类似 原因是将 ignore 插件升级到 4.5.5 版本 https://github.com/JetBrains/idea-gitignore/pull/933 解决方案&#xff1a;将ignore版本将为 4.5.4 我是将 4.5.5 降低为 4.5.4 正常显示文件夹了。

【Vue】在Vue3中使用Echarts的示例 两种方法

文章目录 方法一template渲染部分js部分方法一实现效果 方法二template部分js or ts部分方法二实现效果 贴个地址~ Apache ECharts官网地址 Apache ECharts示例地址 官网有的时候示例显示不出来&#xff0c;属于正常现象&#xff0c;多进几次就行 开始使用前&#xff0c;记得先…

Ollama 简单 好用 好玩

简介 Ollama https://github.com/ollama/ollama/ 是一个基于 Go 语言 的 本地大语言模型运行框架&#xff0c;专注于本地化运行大型语言模型&#xff08;LLM&#xff09;的开源工具。 类 Docker 产品&#xff08;支持 list,pull,push,run 等命令&#xff09;&#xff0c;更好玩…

储能系统-系统架构

已更新系列文章包括104、61850、modbus 、单片机等&#xff0c;欢迎关注 IEC61850实现方案和测试-1-CSDN博客 快速了解104协议-CSDN博客 104调试工具2_104协议调试工具-CSDN博客 1 电池储能系统&#xff08;BESS&#xff09; 架构 电池储能系统主要包括、电池、pcs、本地控制…

百度高德地图坐标转换

百度地图和高德地图的侧重点不太一样。同样一个地名&#xff0c;在百度地图网站上搜索到的地点可能是商业网点&#xff0c;在高德地图网站上搜索到的地点可能是自然行政地点。 高德地图api 在高德地图中&#xff0c;搜索地名&#xff0c;如“乱石头川”&#xff0c;该地名会出…

网络安全溯源 思路 网络安全原理

网络安全背景 网络就是实现不同主机之间的通讯。网络出现之初利用TCP/IP协议簇的相关协议概念&#xff0c;已经满足了互连两台主机之间可以进行通讯的目的&#xff0c;虽然看似简简单单几句话&#xff0c;就描述了网络概念与网络出现的目的&#xff0c;但是为了真正实现两台主机…

QTreeView和QTableView单元格添加超链接

QTreeView和QTableView单元格添加超链接的方法类似,本文仅以QTreeView为例。 在QTableView仿Excel表头排序和筛选中已经实现了超链接的添加,但是需要借助delegate,这里介绍一种更简单的方式,无需借助delegate。 一.效果 二.实现 QHTreeView.h #ifndef QHTREEVIEW_H #def…

2025年日祭

本文将同步发表于洛谷&#xff08;暂无法访问&#xff09;、CSDN 与 Github 个人博客&#xff08;暂未发布&#xff09; 本蒟自2025.2.8开始半停课。 以下是题目格式&#xff1a; [题目OJ 题号] [来源&#xff08;选填&#xff09;] 名称 …… 题号 - 名称 题目&#xff1a;……

迅为RK3568开发板篇OpenHarmony实操HDF驱动配置LED-编译源码

重新编译 Openharmony4.1 源码&#xff0c;如下所示&#xff1a; ./build.sh --product-name rk3568 --ccache 或者单独编译部件 ./build.sh --product-name rk3568 --build-target demos --ccache 编译之后&#xff0c;在源码 out/rk3568/topeet 目录下生成编译产物&#xff0…

跨越边界,大模型如何助推科技与社会的完美结合?

点击蓝字 关注我们 AI TIME欢迎每一位AI爱好者的加入&#xff01; 概述 2024年&#xff0c;大模型技术已成为人工智能领域的焦点。这不仅仅是一项技术进步&#xff0c;更是一次可能深刻影响社会发展方方面面的变革。大模型的交叉能否推动技术与社会的真正融合&#xff1f;2025年…

数据仓库和商务智能:洞察数据,驱动决策

在数据管理的众多领域中&#xff0c;数据仓库和商务智能&#xff08;BI&#xff09;是将数据转化为洞察力、支持决策制定的关键环节。它们通过整合、存储和分析数据&#xff0c;帮助组织更好地理解业务运营&#xff0c;预测市场趋势&#xff0c;从而制定出更明智的战略。今天&a…

C++---命名空间

目录 c语言中的问题命名空间的定义注意事项第一点&#xff1a;同名命名空间第二点&#xff1a;命名空间中的全局变量与局部变量 命名空间的使用第一种使用方法第二种使用方法第三种使用方法 注意事项第一点&#xff1a;没有名字的命名空间第二点&#xff1a;局部优先原则第三点…

【UI设计】可视化大屏原型设计

文章目录 一、墨刀中的几个可视化大屏框架原型 一、墨刀中的几个可视化大屏框架原型

【推理llm论文精度】DeepSeek-R1:强化学习驱动LLM推理能力飞跃

最近deepseek R1模型大火&#xff0c;正好复习一下他家的技惊四座的论文https://arxiv.org/pdf/2501.12948 近年来&#xff0c;大型语言模型&#xff08;LLM&#xff09;在推理能力上取得了显著进展&#xff0c;但如何进一步有效提升仍然是研究热点。DeepSeek-AI发布了 DeepS…