===== OMG: RPC Over DDS (DDS-RPC) =====
[[ddsf:public:guidebook:06_append:01_family_of_standards:start| return to the DDS Family of Standards ]]
Data sheet for RPC Over DDS (DDS-RPC)
| Title | RPC Over DDS |
| Acronym | DDS-RPC |
| Version | 1.0 |
| OMG Document Number | formal/17-04-01 |
| Release Date | April 2017 |
| About Specification | [[https://www.omg.org/spec/DDS-RPC/]] |
| Document | [[https://www.omg.org/spec/DDS-RPC/1.0/PDF]]|
: **Note**: The following is an excerpt from the actual document. It is provided here as a convenience and is not authoritative. Refer to the original document as the authoritative reference.
==== Scope ====
://[[ddsf:public:guidebook:06_append:glossary:d:data_distribution_service_dds|The Data Distribution Service]] is widely used for [[ddsf:public:guidebook:06_append:glossary:d:data_centric]] publish/subscribe communication in real-time distributed systems. Large distributed systems often need more than one style of communication. For instance, data distribution works great for one-to-many dissemination of information. However, certain other styles of communication namely request/reply and remote method invocation are cumbersome to express using the basic building blocks of DDS. Using two or more [[ddsf:public:guidebook:06_append:glossary:m:midware|middleware]] frameworks is often not practical due to complexity, cost, and maintenance overhead reasons. As a consequence, developing a standard mechanism for request/reply style bidirectional communication on top of DDS is highly desirable for [[ddsf:public:guidebook:06_append:glossary:p:portability|portability]] and [[ddsf:public:guidebook:06_append:glossary:i:interoperability|interoperability]]. Such facility would allow commands to be naturally represented as remote method invocations. This presents a solution to this problem.//
: //This specification defines a [[dido:public:ra:xapend.stds:tech:ietf:1831]] framework using the basic building blocks of DDS, such as topics, types, DataReaders, and DataWriters to provide request/reply [[ddsf:public:guidebook:06_append:glossary:s:semantics|semantics]]. It defines distributed services, described using a service interface, which serves as a shareable contract between service provider and a service consumer. It supports synchronous and asynchronous method invocation. Despite its similarity, it is not intended to be a replacement for [[ddsf:public:guidebook:06_append:glossary:c:corba|CORBA]].//
/**=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-
/* To add a discussion page to this page, comment out the line that says
~~DISCUSSION:off~~
*/
~~DISCUSSION:on|Outstanding Issues~~
~~DISCUSSION:off~~