3. Compatibility
Below is basic compatibility information for this release.
Note
For backward-compatibility information between this and previous releases, see the Migration Guide on the RTI Community Portal.
3.1. Wire Protocol Compatibility
Connext communicates over the wire using the formal Real-Time Publish-Subscribe (RTPS) protocol. RTPS has been developed from the ground up with performance, interoperability and extensibility in mind. The RTPS protocol is an international standard managed by the OMG. The RTPS protocol has built-in extensibility mechanisms that enable new revisions to introduce new message types, extend the existing messages, or extend the Quality of Service settings in the product—without breaking interoperability.
RTPS 1.0 was introduced in 2001. The currently supported version is OMG Real-Time Publish-Subscribe (RTPS) specification, version 2.5, although some features are not supported. Unsupported features currently are FilteredCountFlag in GAP Submessage, HeartbeatFrag Submessage, and ALIVE_FILTERED instance state. RTI plans to maintain interoperability between middleware versions based on RTPS 2.1. For more details, see Table 3.1 RTPS Versions.
Table 3.1 RTPS Versions shows RTPS versions supported for each Connext release. In general, RTPS 2.1 and higher versions are interoperable, unless noted otherwise. RTPS 2.0 and RTPS 1.2 are incompatible with current (4.2e and later) versions of Connext.
Although RTPS 2.1 and higher versions are generally interoperable, there may be specific wire protocol interoperability issues between Connext releases. These issues are documented in the “Wire Protocol” section for your release, in the Migration Guide on the RTI Community Portal (https://community.rti.com/documentation). Wire protocol issues between 5.3.1 and previous releases are documented in the Core Libraries Release Notes for release 5.3.1.
Connext Release |
RTPS Standard Version [1] |
RTPS Protocol Version [2] |
---|---|---|
Connext 7.1.0 and above |
2.5 (partial support) |
2.5 |
Connext 6 and 7.0.0 |
2.3 (partial support) |
2.3 |
Connext 5.2 and 5.3 |
2.2 |
2.1 |
Connext 4.5f - 5.1 |
2.1 |
2.1 |
Data Distribution Service 4.2e - 4.5e |
2.1 |
2.1 |
Data Distribution Service 4.2c |
2.0 |
2.0 |
Data Distribution Service 4.2b and lower |
1.2 |
1.2 |
Footnotes
3.2. Code and Configuration Compatibility
The Connext core uses an API that is an extension of the OMG Data Distribution Service (DDS) standard API, version 1.4. RTI strives to maintain API compatibility between versions, but will conform to changes in the OMG DDS standard.
The Connext core primarily consists of a library and a set of header files. In most cases, upgrading simply requires you to recompile your source using the new header files and link the new libraries. In some cases, minor modifications to your application code might be required; any such changes are noted in the Migration Guide on the RTI Community Portal (https://community.rti.com/documentation). The Migration Guide also indicates whether and how to regenerate code.
3.3. Extensible Types Compatibility
This release of Connext includes partial support for the OMG ‘Extensible and Dynamic Topic Types for DDS’ specification, version 1.3 (DDS-XTypes) from the Object Management Group (OMG). This support allows systems to define data types in a more flexible way, and to evolve data types over time without giving up portability, interoperability, or the expressiveness of the DDS type system.
For information related to compatibility issues associated with the Extensible Types support, see the Migration Guide on the RTI Community Portal (https://community.rti.com/documentation). See also the RTI Connext Core Libraries Extensible Types Guide for a full list of the supported and unsupported extensible types features.