This shows you the differences between two versions of the page.
| Both sides previous revision Previous revision Next revision | Previous revision | ||
|
dido:public:ra:xapend:xapend.a_glossary:r:rtps [2021/06/23 10:16] char |
dido:public:ra:xapend:xapend.a_glossary:r:rtps [2021/10/04 13:40] (current) 50.19.247.197 ↷ Links adapted because of a move operation |
||
|---|---|---|---|
| Line 1: | Line 1: | ||
| ===== Real-time Publish-Subscribe (RTPS) ===== | ===== Real-time Publish-Subscribe (RTPS) ===== | ||
| - | [[dido:public:ra:xapend:xapend.a_glossary| Return to Glossary ]] | + | [[dido:public:ra:xapend:xapend.a_glossary:start| Return to Glossary ]] |
| **Real-time Publish-Subscribe (RTPS)** [[dido:public:ra:xapend:xapend.a_glossary:w:wireprotocol]] defines a set of requirements for a wire protocol suitable for the [[dido:public:ra:xapend:xapend.a_glossary:d:dds]]. Primary considerations in the design of the RTPS wire protocol are: [[dido:public:ra:xapend:xapend.a_glossary:p:performance|performance]], configurability (tuning quality-of-service), [[dido:public:ra:xapend:xapend.a_glossary:f:faulttolerance|fault-tolerance]] (no single points of failure), extensibility (support new transports), plug-and-play connectivity (automatic discovery), [[dido:public:ra:xapend:xapend.a_glossary:m:modularity|modularity]], [[dido:public:ra:xapend:xapend.a_glossary:s:scalable|scalability]], and [[dido:public:ra:xapend:xapend.a_glossary:t:typesafe|type safety]]. | **Real-time Publish-Subscribe (RTPS)** [[dido:public:ra:xapend:xapend.a_glossary:w:wireprotocol]] defines a set of requirements for a wire protocol suitable for the [[dido:public:ra:xapend:xapend.a_glossary:d:dds]]. Primary considerations in the design of the RTPS wire protocol are: [[dido:public:ra:xapend:xapend.a_glossary:p:performance|performance]], configurability (tuning quality-of-service), [[dido:public:ra:xapend:xapend.a_glossary:f:faulttolerance|fault-tolerance]] (no single points of failure), extensibility (support new transports), plug-and-play connectivity (automatic discovery), [[dido:public:ra:xapend:xapend.a_glossary:m:modularity|modularity]], [[dido:public:ra:xapend:xapend.a_glossary:s:scalable|scalability]], and [[dido:public:ra:xapend:xapend.a_glossary:t:typesafe|type safety]]. | ||
| - | |||
| - | RTPS imposes very little requirements on the underlying transport: a connectionless service capable of sending packets [[dido:public:ra:xapend:xapend.a_glossary:b:besteffort|best-effort]] is sufficient. A connection-oriented protocol can be used but is not required. The mechanisms of the underlying protocol map to the generalized notions of the RTPS [[dido:public:ra:xapend:xapend.a_glossary:p:pim]]. | ||
| - | |||
| - | The original [[dido:public:ra:xapend:xapend.b_stds:tech:omg:dds_rtps| DDSI-RTPS]] specification defined a [[dido:public:ra:xapend:xapend.a_glossary:p:psm]] built upon the [[dido:public:ra:xapend:xapend.a_glossary:u:udp]] because of its simplicity, universal [[dido:public:ra:xapend:xapend.a_glossary:a:availability|availability]], best-effort and connectionless capabilities, predictable behavior, scalability, and [[dido:public:ra:xapend:xapend.a_glossary:m:multicast|multicast]] support. | ||
| - | |||
| - | However, some DDS systems would benefit from an RTPS PSM built upon the [[dido:public:ra:xapend:xapend.a_glossary:t:tcp]]. Among other scenarios, a TCP PSM would be better suited for communication through firewalls, where often UDP traffic is filtered; could leverage existing TCP-based [[dido:public:ra:xapend:xapend.a_glossary:l:loadbal|load-balancing]] infrastructure; and would allow DDS to be deployed in some applications where governance mandates TCP exclusively. Therefore, the [[dido:public:ra:xapend:xapend.a_glossary:g:goal|goal]] of this [[dido:public:ra:xapend:xapend.a_glossary:r:rfp]] is to meet the requirements set forth by the RTPS PIM with minimum possible overhead using TCP. | ||
| Source: [[https://www.omg.org/spec/DDSI-RTPS/2.3/Beta1/PDF | Real-time Publish-Subscribe (RTPS) ]] | Source: [[https://www.omg.org/spec/DDSI-RTPS/2.3/Beta1/PDF | Real-time Publish-Subscribe (RTPS) ]] | ||