
🛠️UDPの仕様と実装とDDSはパブリッシュサブスクライブの規格 DCPS DDS-XRCE DDS-XTypes DDS-RPCはアーキテクチャ DLRLはレイヤ
ユーザーデータグラムプロトコル(UDP)は、相互接続されたコンピュータネットワーク環境において、パケットスイッチ型コンピュータ通信のデータグラムモードを利用可能にするために定義されている。このプロトコルは下層プロトコルとして Internet Protocol (IP) [1] が使用されていることを前提としている。
このプロトコルは、アプリケーションプログラムが最小限のプロトコルメカニズムによって別のプログラムにメッセージを送信する手段を提供する。このプロトコルはトランザクション指向である。配送も重複の防止も保証されない。順序付けされた信頼できるストリーム通信を必要とするアプリケーションは、Transmission Control Protocol (TCP) [2] を使用するべきである。
リアルタイムシステムのためのデータ配信サービス(DDS)は、OMG(Object Management Group)のマシン・ツー・マシン(ミドルウェアや接続フレームワークとも呼ばれる)規格で、パブリッシュ・サブスクライブのパターンを用いて、信頼性とパフォーマンスが高く、相互運用性のある、リアルタイムで拡張性のあるデータ交換を可能にすることを目的としています。
DDSは、航空宇宙・防衛、航空管制、自律走行車、医療機器、ロボット、発電、シミュレーション・テスト、スマートグリッド管理、輸送システムなど、リアルタイムのデータ交換が必要なアプリケーションのニーズに対応しています。
DDSの仕様では、2つのレベルのインターフェイスが記述されている。
下位のデータセントリック・パブリッシュ・サブスクライブ(DCPS)レベルは、適切な情報を適切な受信者に効率的に配信することを目的としています。
オプションの上位データローカル再構築レイヤー(DLRL)は、アプリケーションレイヤへのDDSの簡単な統合を可能にします。
DDS for Lightweight CCM (dds4ccm) は、ビジネスロジックを非機能的なプロパティから分離するアーキテクチャパターンを提供する。2012年の拡張でストリームのサポートが追加された[16] A Java 5 Language PSM for DDSは、DDSのPlatform Specific Model (PSM) と呼ばれるJava 5言語バインディングを定義した。これは DDS 仕様のうち Data-Centric Publish-Subscribe (DCPS) 部分のみを規定したもので、さらに DDS-XTypes と DDS-CCM によって導入された DDS API も包含している。
Extensible and Dynamic Topic Types for DDS (DDS-XTypes) は、トピックが特定のデータ構造で定義される、データ中心のパブリッシュ・サブスクライブ通信のサポートを提供しました。拡張性を持たせるために、DDS のトピックはコンパイル前に定義されたデータ型を使用し、DDS のグローバルデータ空間全体で使用されます。このモデルは、静的な型チェックが有効な場合に望ましい。 19] 統一モデリング言語(UML)プロファイルは、分析および設計モデリングの一部となるDDSドメインとトピックを指定した。 20] この仕様は、XMLやOMG IDLなどの他の言語で最初に型を記述することなく、オブジェクトを発行および購読する方法も定義した。 21] 2014年にインターフェース定義言語(IDL)がCommon Object Request Broker Architecture (CORBA) 仕様3章から独立して指定された。この IDL 3.5 は CORBA 3 仕様と互換性があるが、CORBA から独立して進化することを可能にする独自の仕様として抽出された[
その他のプロトコルとして、以下のものが挙げられる。DDS-XRCE (DDS for eXtremely Resource Constrained Environments)は、マイコンのような限られたリソースのデバイスとDDSネットワーク間の通信を可能にする仕様のプロトコルである。DDSドメイン内の中間サービスを介したトピックの発行と購読を可能にする[23]。また、DDS-RPC(RPC Over DDS)は遠隔手続き呼び出しを定義する。これらは双方向のリクエスト/リプライ通信を提供し、分散サービスを決定するもので、サービスインタフェースを用いて詳細に記述されている。また、同期と非同期の両方のメソッド呼び出しをサポートしている[24]。[24]2015年のDDSバージョン1.4から、オプションのDLRL層は別の仕様に移された
ROS(Robot Operating System)は、ロボットシステムを構築するためのオープンソースのフレームワークとツール群であり、主に2つのタイプがある。ROSは、PythonとXMLを使用したオリジナルの研究バージョンと、DDSを接続フレームワークとして使用したパフォーマンス強化バージョンの2種類があります。
DDS規格に基づくConnext®は、世界中のあらゆる産業において、複雑かつ重要なコンピュータシステムの基礎となっています。インダストリアル・インターネット・コンソーシアムなどのグループは、分散型および自律型システムの接続プラットフォームとしてDDSの利点を活用しています。
RTI Shapes Demo(Shapes)は、パブリッシュ・サブスクライブ・メッセージング、データセントリシティ、QoSなどの基本的なDDSコンセプトと一部の高度なDDSコンセプトについて学ぶために使用することができるツールです。Shapesは、プログラミングを必要としないスタンドアロンのグラフィカルなアプリケーションです。開発者、学生、ビジネスプロフェッショナルなど、誰でもShapesを使ってDDSを学習することができます。
いいなと思ったら応援しよう!
