---
# System prepended metadata

title: Data Distribution Services(DDS)
tags: [internet, IOT]

---

# Data Distribution Services(DDS)
1. DDS是以data-centric為概念，並由Object Management Group(OMG)組織定義的通訊標準(middleware協定、api 標準)
2. 目的能達到Machine to Machine（M2M）、資料交換、即時及可靠的協定，利用 publish–subscribe pattern 方式收發資料，也就是說publisher會不定期透過topic發送資料，而subscriber會從有興趣的一個或多個topic收資料
3. 優點：不用與傳統的server-client的架構一樣，需先建好連線才能傳輸資料，也不用管接收用戶過多的問題。
![](https://i.imgur.com/ZemrXnu.png)
* 以數據為中心的本質的DDS知道其存儲的數據並控制如何共享該數據。
* 使用傳統以message-centric的middleware必須編寫發送消息的程式;若使用data-centric的middleware編寫程式，只要指定如何以及何時共享數據，就能共享數據值。
* 不需管理所有應用程式(自已寫的程式)的複雜性，透過DDS可以直接實現控制、管理、安全的數據共享。
![](https://i.imgur.com/uLIj3Ax.png)
* DDS Middleware讓應用程式和作業系統能交換訊息，這與不同的程式語言所提供API的概念相同。

###### DDS standard : [this](https://www.dds-foundation.org/omg-dds-standard/)

#### DDS VENDOR list


| company  | DDS name |country(Headquarters)|
| -------- | -------- | -------- |
|ADLINK Technology Ltd|Vortex OpenSplice|Taiwan
|Real-Time Innovations|Connext DDS|North America
|OCI|OpenDDS|America
|Twin Oaks Computing|CoreDX DDS|America

---

### ADLINK : Vortex OpenSplice DDS
![](https://i.imgur.com/3alEe65.jpg)
* 快、具擴展性和可靠的Open Source之一
* Single-process / Standalone deployment
* DDSI2: 已實現與其他DDS的互通性
* 豐富的QoS策略，用於控制效率和容錯能力
* DDS Community Edition 是有全部功能的open source
* Vortex OpenSplice commercial 版本有30天的評估期
###### tags: [The Vortex OpenSplice Deployment Guide](http://download.prismtech.com/docs/Vortex/html/ospl/DeploymentGuide/index.html)


# difference DDS implementations
能直接替換不同的DDS，ROS官網提供adlink及RTI的更換方式，如下圖

![](https://i.imgur.com/E1DfWtW.png)

* OCI 的openDDS官網目前沒有看到commercial版本
    * 若可大量佈署，是否也可直接更換如上？

# use DDS or not
* 需實驗有及沒有用DDS（ex:UDP or 其他的通訊方式）在多台同時通訊的差別
    * 比較項目：time delay and packet loss ratio

###### tags: `internet` `IOT`



