Configuration
During startup, each Participant loads a configuration file named jrtps.properties from the classpath. If this file is not found, default values are used. Following configuration describes the defaults used.
# --- RTPS configuration parameters
rtps.traffic.port-config = PB=7400, DG=250, PG=2, d0=0, d1=10, d2=1, d3=11
rtps.writer.push-mode = true
rtps.writer.heartbeat-period = 5000
rtps.writer.nack-response-delay = 200
rtps.writer.nack-suppression-duration = 0
rtps.reader.heartbeat-response-delay = 500
rtps.reader.heartbeat-suppression-duration = 0
rtps.spdp.resend-data-period = 30000
# --- jRTPS configuration parameters -----------------
jrtps.thread-pool.core-size = 10
jrtps.message-queue.size = 10
jrtps.buffer-size = 16384
jrtps.publish-builtin-data = false
jrtps.prefer-multicast = true
jrtps.listener-uris = udp://239.255.0.1,udp://localhost
jrtps.discovery.listener-uris = udp://239.255.0.1,udp://localhost
jrtps.discovery.announce-uris = udp://239.255.0.1
# --- uDDS configuration parameters ------------------
udds.collections.coherent=false
udds.sedp-delay = 0
udds.entity-listener-history = false
# --- uDDS security configuration --------------------
udds.security.authentication = none
udds.security.no-op.shared-secret = <NO_DEFAULT>
udds.security.rtps-protection = none
udds.security.jks.keystore = <NO_DEFAULT>
udds.security.jks.keystore.password = <NO_DEFAULT>
udds.security.jks.ca = <NO_DEFAULT>
udds.security.jks.principal = <NO_DEFAULT>
udds.security.jks.principal.password = <NO_DEFAULT>
RTPS specific configuration
- rtps.traffic.port-config A comma separated list of name=value pairs. A name must be one of PB, DG, PG, d0, d1, d2 or d3. They are used with port number expression specified in RTPS specification ch. 9.6.1.1 and ch. 9.6.1.2.
- rtps.writer.push-mode This configuration parameter affects how writer communicates changes to readers. If push-mode is false, writer will announce new data to readers by sending a Heartbeat message. If set to true, writer will send the changes to all matched readers directly.
- rtps.writer.heartbeat-period This configuration parameter tells how often writer will advertise the changes it has by sending a Heartbeat message. Note, that Heartbeats will be sent regardless of push-mode
- rtps.writer.nack-response-delay When writer receives a AckNack message, it will wait nack-response-delay before it considers how to respond to reader.
- rtps.writer.nack-suppression-duration This parameter let's writer discard reception of AckNack message, if it arrives 'too soon'.
- rtps.reader.heartbeat-response-delay Reader waits this amount of time before reacting on writers Heartbeat message.
- rtps.reader.heartbeat-suppression-duration This parameter allows reader to discard reception Heartbeat messages that arrive 'too soon'.
- rtps.spdp.resend-data-period Period, that SPDP writer(Participant) uses to announce its presence on the network.
jRTPS specific configuration
- jrtps.thread-pool.core-size jRTPS uses ScheduledThreadPoolExecutor for its thread management. This parameter tells the number of threads in the pool.
- jrtps.message-queue.size During reception, each UDP datagram received is placed into this queue. If the queue becomes full, receiver will block
- jrtps.buffer-size Size of the buffer used. This is the maximum size of the UDP packet. During sending, if an overflow occurs only submessages that were successfully written to buffer will get actually sent. This overflow is detected and if it occured during sending of Data, a Heartbeat message will be sent
- jrtps.publish-builtin-data Determines whether or not to publish data for builtin entities. This defaults to false, since builtin readers already know this data.
- jrtps.prefer-multicast A remote entity may advertise both unicast address and multicast address. This flag tells which one to prefer. Note, that if remote entity advertises only one or the other, this flag has no effect.
- jrtps.listener-uris A comma separated list of URIs that will be used to start listeners for user traffic. If port number is omitted, it will be calculated using the port number expression defined in RTPS spec (I.e. use rtps.traffic.port-config).
- jrtps.discovery.listener-uris A comma separated list of URIs, that will be used to start listeners for discovery.
- jrtps.discovery.announce-uris A comma separated list of URIs, that will be used to announce presence of participant. In other words, SPDP writer will write its messages periodically to these URIs
uDDS specific configuration
- udds.collections.coherent This parameter tells whether or not uDDS data writers write collections coherently or not. By writing Collections coherently, means that all the samples delivered to subscribed readers will see changes in one single 'transaction'. I.e. samples does not get fragmented during transmission.
- udds.sedp-delay During discovery, when a ParticipantMessage (SPDP) is received, local participant will first send a ParticipantMessage (SPDP) to remote participant to make sure it knows about us, then waits udds.sedp-delay before starting to announce local endpoints (SEDP).
- udds.entity-listener-history When adding an EntityListener to Participant, this configuration parameter tells if historical knowledge of known Participants, readers and writers should be delivered to EntityListener.
uDDS security configuration