FA_IPC_协议网络(VRPN)数据交互三

FA :Formulas and Algorithm, IPC :Inter-Process Communication, VRPN :Virtual Realiy Peripheral Network

VRPN是专门为"虚拟现实"技术适配的网络通信协议(当然适合于进程间通信)。VRPN本身囊括了三层,他们分别为:"会话层"、"表示层"和"应用层",对于1~4层的协议是整体复用的。一般情况下的vrpn通信链路可以表示如下:

层序号 层名称 归属 实现方
7 应用层(Application Layer) vrpn自研 设备抽象、Pub/Sub业务接口
6 表示层(Presentation Layer) vrpn自研 私有二进制序列化、端序处理
5 会话层(Session Layer) vrpn自研 连接握手、会话管理、断线重连
4 传输层(Transport Layer) 复用标准 TCP/UDP
3 网路层(Network Layer) 复用标准 IP
2 链路层(Data Link Layer) 复用标准 以太网/WiFi
1 物理层(Physical Layer) 复用标准 光纤、无线电
复制代码
备注:由于更改了会话层肯定会提升相应的传输效率(稳、快、准);由于涉及的有表示层的修改内容,在数据加密编辑有相应的适配更改;由于涉及的有应用层的适配,那么数据的格式、种类也会有优化。

一、协议层的适配和优化

5 会话层(Session):VRPN 自主实现全链路会话管理

VRPN 自研会话规则,属于会话层实现:

  • 客户端先用 UDP 上报本地端口 → 服务端 TCP 回连握手、版本校验

  • 协商成功后再切换专用 UDP 端口收发实时数据

  • 自动断线重连、设备会话保活、多客户端接入管理、会话销毁

    TCP 只负责初始握手,整套连接流程是 VRPN 在会话层实现

6 表示层(Presentation):VRPN 自定义数据序列化(私有二进制格式)

  • 自研报文头:消息类型、设备 ID、时间戳、数据长度、服务等级(可靠 / 非可靠)
  • 多字节大小端统一(htonl 网络字节序)、四元数 / 坐标结构体二进制打包
  • 无 Protobuf/JSON,全私有二进制编码 = VRPN 自研表示层

7 应用层(Application):设备抽象 + 业务接口(VRPN 核心)

  • 标准化设备类型:Tracker (位姿)、Analog (模拟量)、Button (按键)、力反馈设备四大类 API
  • 发布订阅回调模型:设备上报数据、客户端注册回调接收,应用层 Pub/Sub 逻辑
  • 硬件驱动适配层:对接 Vicon/OptiTrack、数据手套、IMU 等外设,向上统一接口

对于原有的协议中,vrpn做了轻量化的处理,删除、修改了不必要的数据传递指挥、流控、校验和加密等,用于动捕场景清优化设计 。另一方面,VRPN保留了双信道机制。1、TCP信道:会话 + 可靠指令(参数配置、设备启停);2、UDP信道:表示 + 应用, 高频位姿流(100~1000Hz)动捕数据。

二、VRPN通讯代码实例

相关推荐
JIAOZHANZHISHIKU1 小时前
机器人外壳粘接性价比怎么选?3M VHB 胶带与结构胶解决方案
经验分享·机器人·工业胶粘剂·3m胶粘剂
GlobalInfo2 小时前
2026年机器人多指灵巧手市场分析报告——涵盖行业调查、趋势分析与发展前景
大数据·人工智能·microsoft·微服务·机器人
贞明电子2 小时前
工业三色报警灯怎么接入项目系统?开关量与RS485控制应用指南
运维·网络·微信公众平台·贞明电子
明天也要努力学习3 小时前
HTTP 协议的基本格式和 fiddler 的用法
网络协议·http·fiddler
HideF3 小时前
Linux
linux·服务器·网络
万联WANFLOW3 小时前
海外网络故障怎么排查?Cloudflare 三季度断网报告解读与 mtr 实战
运维·网络·故障分析
sbjdhjd3 小时前
网工进阶笔记:H3CSE 园区网全栈技术与协议汇总
网络·笔记·云计算·ssh·网络工程·vlan·aaa
Ruiery5 小时前
Linux 6.6内核内存管理深度解析(十三):slab/slub 分配器
linux·运维·服务器
taktok_ai5 小时前
用 cc-switch 连接 Taktok
网络
丰锋ff7 小时前
压缩命令笔记
linux