RTI Routing Service
6.1.2
Contents
1. Introduction
1.1. How To Read This Manual
1.2. Paths Mentioned in Documentation
1.3. Files Mentioned in Documentation
2. Routing Data: Connecting and Scaling Systems
2.1. Routing a
Topic
between two different domains
2.1.1. Define the service configuration element
2.1.2. Specify which domains to join
2.1.3. Define a processing context
2.1.4. Define the data flow
2.2. Routing a group of
Topics
2.3. Using custom QoS Profiles
2.3.1. Defining a QoS Library
2.3.2. Specifying QoS for DDS entities
2.3.3. Applying topic filters to DDS
Inputs
and
Outputs
2.4. Traversing Wide Area Networks
2.4.1. Define a QoS profile that configures the RTI TCP transport
2.4.2. Specify the domains to join and which transport to use
2.4.3. Specify the
Topics
to be routed
2.5. Key Terms
3. Controlling Data: Processing Data Streams
3.1. DynamicData as a Data Representation Model
3.2. Aggregating Data From Different Topics
3.2.1. Develop a Custom
Processor
3.2.2. Create a Shared Library
3.2.3. Define a Configuration with the Aggregating
TopicRoute
3.2.3.1. Configure a plugin library
3.2.3.2. Configure a
Routing Service
with the custom routing paths
3.3. Splitting Data From a single Topic
3.3.1. Custom
Processor
implementation
3.3.2. Define a Configuration with the Splitting
TopicRoute
3.4. Periodic and Delayed Action
3.5. Simple data transformation: introduction to Transformation
3.5.1. Transformations vs Processors
3.6. What stream processing patterns can I perform?
3.7. Key Terms
4. Data Integration: Combining Different Data Domains
4.1. Unified Data Representation
4.2. Integrating a File-Based Domain
4.2.1. Develop a Custom Adapter
4.2.1.1. Implement a StreamReader for Reading Data
4.2.1.2. Implement a StreamWriter for Writing Data
4.2.2. Create a Shared Library
4.2.3. Define a Configuration that Integrates DDS with the File Adapter
4.2.3.1. Configure a Plugin Library
4.2.3.2. Define a Connection Linked to the Adapter
4.2.3.3. Define the Data Flows that Read and Write from Your Adapter
4.3. Discovery Capabilities
4.3.1. Discovery in a File-Based Domain
4.4. Key Terms
5. Remote Administration
5.1. Overview
5.1.1. Enabling Remote Administration
5.1.2. Available Service Resources
5.1.2.1. Example
5.1.3. Resource Object Representations
5.2. API Reference
5.2.1. Remote API Overview
5.2.2. Service
5.2.3. DomainRoute
5.2.4. Connection
5.2.5. Session
5.2.6. AutoRoute
5.2.7. Route
5.2.8. Input/Output
5.3. Example: Configuration Reference
5.4. The Remote Administration Shell
5.4.1. Remote Shell Commands
5.4.2. Command: add_peer
5.4.3. Command: create
5.4.4. Command: delete
5.4.5. Command: disable
5.4.6. Command: enable
5.4.7. Command: get
5.4.8. Command: load
5.4.9. Command: pause
5.4.10. Command: resume
5.4.11. Command: save
5.4.12. Command: shutdown
5.4.13. Command: unload
5.4.14. Command: update
6. Monitoring
6.1. Overview
6.1.1. Enabling Service Monitoring
6.1.2. Monitoring Types
6.2. Monitoring Metrics Reference
6.2.1. Service
6.2.2. DomainRoute
6.2.3. Session
6.2.4. AutoRoute
6.2.5. Route
6.2.6. Input/Output
7. Usage
7.1. Command-Line Executable
7.1.1. Starting Routing Service
7.1.2. Stopping Routing Service
7.1.3. Routing Service Command-Line Parameters
7.2. Routing Service Library
7.2.1. Example
7.3. Operating System Daemon
8. Configuration
8.1. Configuring Routing Service
8.2. XML Tags for Configuring RTI Routing Service
8.2.1. Routing Service Tag
8.2.1.1. Example: Specifying a configuration in XML
8.2.2. Administration
8.2.3. Monitoring
8.2.3.1. Monitoring Configuration Inheritance
8.2.4. Domain Route
8.2.4.1. Example: Mapping between Two DDS Domains
8.2.4.2. Example: Mapping between a DDS Domain and raw Sockets
8.2.5. Session
8.2.6. Route
8.2.7. Input/Output
8.2.7.1. Creation Modes
8.2.7.2. Specifying Types
8.2.7.3. Data Transformation
8.2.8. Auto Route
8.2.9. Plugins
8.3. Enabling Distributed Logger
8.4. Support for Extensible Types
8.4.1. Example: Samples Published by Two Writers of Type A and B, Respectively
8.5. Support for RTI FlatData and Zero Copy Transfer Over Shared Memory
8.5.1. Example: Configuration to enable both FlatData and zero-copy transfer over shared memory
9. Software Development Kit
10. Core Concepts
10.1. Resource Model
10.1.1. Directory
10.1.2. Service
10.1.2.1. Plugin Interaction
10.1.2.2.
Service
States
10.1.3. DomainRoute
10.1.3.1. DomainRoute States
10.1.4. Connection
10.1.4.1. Plugin Interaction
10.1.4.2.
Connection
States
10.1.4.3. Type Registration
10.1.5. Session
10.1.5.1. Plugin Interaction
10.1.5.2.
Session
States
10.1.6. Route
10.1.6.1. Plugin Interaction
10.1.6.2.
Route
States
10.1.7. AutoRoute
10.1.7.1.
AutoRoute
States
10.1.8. Input
10.1.8.1. Plugin Interaction
10.1.8.2.
Input
States
10.1.9. Output
10.1.9.1. Plugin Interaction
10.1.9.2.
Output
States
10.2. Builtin plugins
10.2.1. DDS Adapter
10.2.1.1. DDS AdapterPlugin
10.2.1.2. DDS Connection
10.2.1.3. DDS Session
10.2.1.4. DDS StreamReader
10.2.1.5. DDS StreamWriter
10.2.2. Forwarding Processor
11. Advanced Use Cases
11.1. Propagating Content Filters
11.1.1. Enabling Filter Propagation
11.1.2. Filter Propagation Behavior
11.1.3. Filter Propagation Events
11.1.4. Restrictions
11.2. Topic Query Support
11.2.1. Dispatch Mode
11.2.2. Propagation Mode
11.2.3. Restrictions
12. Common Infrastructure
12.1. Configuring RTI Services
12.1.1. How to Load and Select an XML Configuration
12.1.1.1. Loading from Files
12.1.1.2. Loading from In-Memory Strings
12.1.1.3. Selecting which Configuration to Run
12.1.1.4. Default Files
12.1.1.5. XML Syntax and Validation
12.1.1.6. Listing Available Configurations
12.1.1.7. Configuration Variables
12.1.2. How to Load Default QoS Profiles
12.1.3. How to Set Logging Properties
12.1.3.1. Command-Line Options
12.1.3.2. Service API
12.1.3.3. XML Configuration
12.1.4. How to Run as an Operating System Daemon
12.1.4.1. Linux and macOS Systems
12.1.4.2. Windows Systems
12.1.5. How to use a License File with RTI Services
12.1.6. Key Terms
12.2. Application Resource Model
12.2.1. Example: Simple Resource Model of a Connext DDS Application
12.2.2. Resource Identifiers
12.2.2.1. Escaped Identifiers
12.2.2.2. Example: Resource Identifiers of a Generic Connext DDS Application
12.2.2.3. Example: Resource Identifiers Generated from XML Entity Model
12.3. Remote Administration Platform
12.3.1. Remote Interface
12.3.1.1. Standard Methods
12.3.1.2. Custom Methods
12.3.2. Communication
12.3.2.1. Reply Sequence
12.3.2.2. Example: Controlling services remotely from a Connext DDS Application
12.3.3. Common Operations
12.3.3.1. Create Resource
12.3.3.2. Get Resource
12.3.3.3. Update Resource
12.3.3.4. Set Resource State
12.3.3.5. Get Resource State
12.3.3.6. Delete Resource
12.4. Monitoring Distribution Platform
12.4.1. Distribution Topic Definition
12.4.1.1. Example: Monitoring of Generic Application
12.4.2. DDS Entities
12.4.3. Monitoring Metrics Publication
12.4.3.1. Configuration Distribution Topic
12.4.3.2. Event Distribution Topic
12.4.3.3. Periodic Distribution Topic
12.4.4. Monitoring Metrics Reference
12.4.4.1. Statistic Variable
12.4.4.2. Host Metrics
12.4.4.3. Process Metrics
12.4.4.4. Base Entity Resource Metrics
12.4.4.5. Network Performance Metrics
12.4.4.6. Thread Metrics
12.5. Plugin Management
12.5.1. Shared Library
12.5.1.1. Configuration
12.5.2. Service API
13. Tutorials
13.1. Starting Shapes Demo
13.2. Example: Routing a single specific Topic
13.3. Example: Routing All Data from One Domain to Another
13.4. Example: Changing Data to a Different Topic of Same Type
13.5. Example: Changing Some Values in Data
13.6. Example: Transforming the Data’s Type and Topic with an Assignment Transformation
13.7. Example: Transforming the Data with a Custom Transformation
13.8. Example: Using Remote Administration
13.9. Example: Monitoring
13.10. Example: WAN Connectivity using the TCP transport
13.10.1. Important Considerations
13.11. Example: Using a File Adapter
13.12. Example: Using a Shapes Processor
14. Release Notes
14.1. Supported Platforms
14.2. Compatibility
14.3. What’s New in 6.1.2
14.3.1. New platforms
14.3.1.1. Third-party software upgrades
14.4. What’s Fixed in 6.1.2
14.4.1. Type Containing Typedefs Caused INFO-Level Log Message about Different Type Definitions
14.4.2. Fourth Digit of Product Version not Logged at Startup
14.4.3. Stream-Query Propagation did not Work when Using More than One Session
14.4.4. Samples Published Out of Order from Same Virtual GUID were Dropped
14.4.5. Routing Service Crashed if -maxObjectsPerThread Set Too Small
14.5. Previous Releases
14.5.1. What’s New in 6.1.1
14.5.1.1. New platforms
14.5.1.2. Third-party software upgrades
14.5.2. What’s Fixed in 6.1.1
14.5.2.1. Routing Service Crashed when Running out of Memory
14.5.2.2. Crash when Attempting to Route Builtin Security Logging Topic or Monitoring Library Topics
14.5.2.3. Unbounded Memory Growth when Restarting Routing Service or Creating/Deleting DomainRoutes
14.5.2.4. Missing C++ Header File Caused rti::routing::Logger APIs to not Compile
14.5.2.5. Samples not Routed if Memory Management ‘sample_buffer_trim_to_size’ and ‘sample_buffer_min_size’ Set
14.5.2.6. Using ‘Ctrl+C’ to Shut Down Examples did not Work as Expected
14.5.2.7. Incorrect Content Filtering and ‘RTICdrTypeCodeUtils_type_has_external_members:!get member’ Error
14.5.2.8. Routing Service Remote Shell: Adding to Initial Peers List did not Work, Possible Segmentation Fault
14.5.2.9. Routing Service Crashed when Same ‘-Dname=value’ Pair Provided Twice
14.5.2.10. Crash when Routing Service from LM Bundle did not Find License File
14.5.2.11. Routing Service Crashed when XML Configuration had Duplicate Names
14.5.2.12. Large Per Sample Memory Usage in Routing Service
14.5.2.13. Fixes Related to Vulnerabilities
14.5.3. What’s new in 6.1.0
14.5.3.1. New platforms
14.5.3.2. Removed platforms
14.5.3.3. Improved behavior if –verbosity set above the allowed maximum
14.5.3.4. Service monitoring now reports CPU usage for individual Session threads
14.5.3.5. Extended command-line parameter -verbosity to specify service and DDS verbosity independently
14.5.3.6. New command-line option to save log in a file
14.5.3.7. New message logging API, integrated with service logging system
14.5.3.8. New APIs to get/set DynamicType from/in StreamInfo object
14.5.3.9. Ability to define default values for variables in XML configuration
14.5.3.10. Removed duplicate symbols in rtirsinfrastructure and rtiroutingservice libraries
14.5.3.11. Enhanced logging information for each written sample
14.5.3.12. Register type and content filter tags now consistent with DDS-XML specification
14.5.3.13. Periodic event is now configurable individually per Route
14.5.3.14. Added LoanedSamples::has_infos()
14.5.3.15. New API to get a Route’s name, Route::full_name
14.5.3.16. Increased verbosity for log message “ROUTERDdsConnection_assertType:two different type definitions…”
14.5.3.17. Support for Input Transformation
14.5.3.18. Several improvements in monitoring and administration infrastructure
14.5.3.19. New XML element to wait for acknowledgment
14.5.3.20. Ability to disable data on inputs event within routes/auto routes
14.5.4. What’s fixed in 6.1.0
14.5.4.1. Operations expecting a string URL failed in Java Service-related APIs
14.5.4.2. XML validation failed if allow/deny filter names in AutoRoutes contained whitespaces or new lines
14.5.4.3. Routing Service crashed if monitoring participant creation failed
14.5.4.4. Possible segmentation fault after failure to create Adapter Session, StreamReader, or StreamWriter
14.5.4.5. Assertion failed while reading data from an Input on Windows platform
14.5.4.6. -convertLegacyXml option failed on Windows systems if no output path specified
14.5.4.7. Report of aggregated monitoring statistics contained invalid data
14.5.4.8. Error re-enabling a route that was updated while disabled
14.5.4.9. rtirssh crashed if load command was sent
14.5.4.10. Unexpected “DDS_SqlTypeSupport_deserialize_Union:!deserializing union type” exception
14.5.4.11. Crash when publishing a stream with different type names and using auto-route with monitoring
14.5.4.12. Segmentation fault when attempting to enable a session with a disabled parent domain route
14.5.4.13. QoS Profiles in NDDS_QOS_PROFILES.xml were not loaded
14.5.4.14. Unnecessary network bandwidth for participant announcements generated by Routing Service
14.6. Known Issues
14.6.1. Attempting to route builtin Security Logging topic causes Routing Service crash
15. Copyrights
RTI Routing Service
Docs
»
Index
Index
A
|
C
|
D
|
E
|
F
|
I
|
L
|
O
|
P
|
R
|
S
|
T
|
X
A
Adapter
AutoTopicRoute
C
Configuration name
Configuration variable
D
Data Integration
Data Stream
Discovery Peer
DomainRoute
DynamicData
E
Entity Configuration Name
Entry Point
F
Forwarding Process
I
Info Object
Input
L
Loaned samples
O
Output
P
Periodic action
Processor
Publication Side
R
Resource model
S
Sample
Service API
Session
Shared Library or Module
Shipped executable
Stream Discovery
Stream Processing Patterns
StreamInfo
Subscription Side
T
TopicRoute
Transformation
Transport
X
XML document