DDS 的关键特性
首先从通信模式的角度来看。很多人习惯将 DDS 与 SOME/IP 进行对比,但实际上两者遵循的是完全不同的通信模式,有不同的应用场景。
DDS 是典型的发布订阅 (Pub-Sub) 通信模型,更像一种面向信号的通信方式。大家熟知的 CAN 总线实际上也是发布订阅模型,只不过 DDS 版的发布订阅要更加灵活。
而客户端服务器模型 (Client-Server),又称 SOA 模型,则是在发布订阅模型基础上的进一步抽象。
在发布订阅模型中,发布者和订阅者交互的是独立的消息 (Message)。但在 SOA 模型里,客户端和服务端交互的数据则赋予了新的语义,如请求消息、响应消息、事件消息等。
表面上 SOA 模型看似更高级,但实际上两种模式并无优劣之分,只是各有适用的场景。
发布订阅模型更适合大量简单的实时数据分发场景,如传感器数据、车辆状态数据的分发。此外,发布端和订阅端也是相对解耦的,双方无需关注对方的位置状态,笔者稍后将详解 DDS 在这方面的优势。
而客户端服务器模型的限制则更多。首先要求数据流向明确,需有一中央节点,其他节点 (客户端) 只与该节点通信,客户端节点之间无直接交互。其次,通信模式是请求-响应式的,如数据库查询、文件服务等。再者,数据和计算资源均集中在服务端。
因此,SOA 通信模型的适用场景是比较有限的。如果数据流不符合该模型,使用 SOA 反而会增加设计和开发的负担。事实上,近年一些 OEM 在第一代车载以太网量产后便急于追求整车 SOA 化,但开发效率未能显著提升,反而增加了不少成本。
————————————————
版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
原文:全面解读DDS和TSN融合技术及其测试方案 (上)软件定义汽车对网络通信技术的影响|DDS的关键特性|DDS的以数据为中心|DDS的平台无关|基于DDS实现的SOA架构
原文链接:https://blog.csdn.net/weixin_51954443/article/details/140946652
- 复制链接
- 举报