RTI TCP Transport  Version 5.3.1
 All Data Structures Functions Variables Typedefs Enumerations Enumerator Groups Pages
Configure TCP Transport with Property QoS Policy

Predefined properties that can be used to configure the TCP Transport plugin through the Property QoS Policy of the DomainParticipant.

More...

Predefined properties that can be used to configure the TCP Transport plugin through the Property QoS Policy of the DomainParticipant.

Properties for Registering the TCP Transport
Property Name Description Required?
dds.transport.load_plugins Comma-separated strings indicating the prefix names of all plugins that will be loaded by RTI Connext. Up to 8 plugins may be specified. For example, "dds.transport.TCPv4.tcp1".
In the following examples, <TCP_prefix> indicates the string that is used as a prefix in the property names for all the settings that are related to this TCP transport plugin. <TCP_prefix> must begin with "dds.transport." (such as "dds.transport.TCPv4.tcp1").
YES
<TCP_prefix>.library Must set to "nddstransporttcp".
The library "libnddstransporttcp.so" (Unix) or "nddstransporttcp.dll" (Windows) needs to be in the path during run time for use by RTI Connext (in the LD_LIBRARY_PATH environment variable on UNIX-based systems, or in PATH for Windows systems).
YES
<TCP_prefix>.create_function Must be set to "NDDS_Transport_TCPv4_create" . YES
<TCP_prefix>.aliases

Used to register the transport plugin returned by NDDS_Transport_TCPv4_create (as specified by <TCP_prefix>.create_function) to the DomainParticipant.

Refer to aliases_in parameter in NDDS_Transport_Support_register_transport for details.

Aliases should be specified as comma-separated strings, with each comma delimiting an alias. If it is not specified, <TCP_prefix> is used as the default alias for the plugin.

NO
<TCP_prefix>.parent.classid Must be set to one of the following values:
  • NDDS_TRANSPORT_CLASSID_TCPV4_LAN for TCP communication within a LAN.
  • NDDS_TRANSPORT_CLASSID_TCPV4_WAN for TCP communication across LANs and firewalls.
Default: NDDS_TRANSPORT_CLASSID_TCPV4_LAN
NO
<TCP_prefix>.parent.gather_send_buffer_count_max See NDDS_Transport_Property_t::gather_send_buffer_count_max

Default: 128
NO
<TCP_prefix>.parent.message_size_max See NDDS_Transport_Property_t::message_size_max

Default: 9216
NO
<TCP_prefix>.parent.allow_interfaces See NDDS_Transport_Property_t::allow_interfaces_list and NDDS_Transport_Property_t::allow_interfaces_list_length.

Interfaces should be specified as comma-separated strings, with each comma delimiting an interface. For example, "127.0.0.1,eth0"

Default: All available interfaces are used.
NO
<TCP_prefix>.parent.deny_interfaces See NDDS_Transport_Property_t::deny_interfaces_list and NDDS_Transport_Property_t::deny_interfaces_list_length.

Interfaces should be specified as comma-separated strings, with each comma delimiting an interface. For example, "127.0.0.1,eth0"

Default: No interfaces are denied.
NO
<TCP_prefix>.send_socket_buffer_size See NDDS_Transport_TCPv4_Property_t::send_socket_buffer_size

Default: -1 (setsockopt() (or equivalent) will not be called to size the send buffer of the socket)
NO
<TCP_prefix>.recv_socket_buffer_size See NDDS_Transport_TCPv4_Property_t::recv_socket_buffer_size

Default: -1 (setsockopt() (or equivalent) will not be called to size the send buffer of the socket)
NO
<TCP_prefix>.ignore_loopback_interface See NDDS_Transport_TCPv4_Property_t::ignore_loopback_interface

Default: 1
NO
<TCP_prefix>.ignore_nonrunning_interfaces [DEPRECATED] See NDDS_Transport_TCPv4_Property_t::ignore_nonrunning_interfaces

Default: 1
NO
<TCP_prefix>.transport_priority_mask See NDDS_Transport_TCPv4_Property_t::transport_priority_mask

Default: 0
NO
<TCP_prefix>.transport_priority_mapping_low See NDDS_Transport_TCPv4_Property_t::transport_priority_mapping_low

Default: 0
NO
<TCP_prefix>.transport_priority_mapping_high See NDDS_Transport_TCPv4_Property_t::transport_priority_mapping_high

Default: 0xFF
NO
<TCP_prefix>.server_socket_backlog See NDDS_Transport_TCPv4_Property_t::server_socket_backlog

Default: 5
NO
<TCP_prefix>.public_address

See NDDS_Transport_TCPv4_Property_t::public_address

Public IP address and port (WAN address and port) associated with the transport instantiation. The address and port are separated with a colon.

For example: 10.10.9.10:4567

This field is used only when parent.classid is set to NDDS_TRANSPORT_CLASSID_TCPV4_WAN.

The public address and port are necessary to support communication over WAN that involves Network Address Translators (NATs).

Typically, the address is the public address of the IP router that provides access to the WAN. The port is the IP router port that is used to reach the private server_bind_port inside the LAN from the outside.

This value is expressed as a string in the form: ip[:port], where ip represents the IPv4 address and port is the external port number of the router. Note that host names are not allowed in the public_address because they may resolve to an internet address that is not what you want (i.e., 'localhost' may map to your local IP or to 127.0.0.1).

Note: If you are using an asymmetric configuration, public_address does not have to be set for the non-public peer.

YES (For WAN classid); see Note at left.
<TCP_prefix>.server_bind_port See NDDS_Transport_TCPv4_Property_t::server_bind_port

Default: 7400
NO
<TCP_prefix>.read_buffer_allocation.initial_count See NDDS_Transport_TCPv4_Property_t::read_buffer_allocation

Default: 2
NO
<TCP_prefix>.read_buffer_allocation.max_count See NDDS_Transport_TCPv4_Property_t::read_buffer_allocation

Default: -1 (unlimited)
NO
<TCP_prefix>.read_buffer_allocation.incremental_count See NDDS_Transport_TCPv4_Property_t::read_buffer_allocation

Default: -1 (number of buffers will keep doubling on each allocation until it reaches max_count)
NO
<TCP_prefix>.write_buffer_allocation.initial_count See NDDS_Transport_TCPv4_Property_t::write_buffer_allocation

Default: 4
NO
<TCP_prefix>.write_buffer_allocation.max_count See NDDS_Transport_TCPv4_Property_t::write_buffer_allocation

Default: 1000
NO
<TCP_prefix>.write_buffer_allocation.incremental_count See NDDS_Transport_TCPv4_Property_t::write_buffer_allocation

Default: 10
NO
<TCP_prefix>.control_buffer_allocation.initial_count See NDDS_Transport_TCPv4_Property_t::control_buffer_allocation

Default: 2
NO
<TCP_prefix>.control_buffer_allocation.max_count See NDDS_Transport_TCPv4_Property_t::control_buffer_allocation

Default: -1 (unlimited)
NO
<TCP_prefix>.control_buffer_allocation.incremental_count See NDDS_Transport_TCPv4_Property_t::control_buffer_allocation

Default: -1 (number of buffers will keep doubling on each allocation until it reaches max_count)
NO
<TCP_prefix>.control_message_allocation.initial_count See NDDS_Transport_TCPv4_Property_t::control_message_allocation

Default: 2
NO
<TCP_prefix>.control_message_allocation.max_count See NDDS_Transport_TCPv4_Property_t::control_message_allocation

Default: -1 (unlimited)
NO
<TCP_prefix>.control_message_allocation.incremental_count See NDDS_Transport_TCPv4_Property_t::control_message_allocation

Default: -1 (number of buffers will keep doubling on each allocation until it reaches max_count)
NO
<TCP_prefix>.control_attribute_allocation.initial_count See NDDS_Transport_TCPv4_Property_t::control_attribute_allocation

Default: 2
NO
<TCP_prefix>.control_attribute_allocation.max_count See NDDS_Transport_TCPv4_Property_t::control_attribute_allocation

Default: -1 (unlimited)
NO
<TCP_prefix>.control_attribute_allocation.incremental_count See NDDS_Transport_TCPv4_Property_t::control_attribute_allocation

Default: -1 (number of buffers will keep doubling on each allocation until it reaches max_count)
NO
<TCP_prefix>.force_asynchronous_send See NDDS_Transport_TCPv4_Property_t::force_asynchronous_send

Default: 0
NO
<TCP_prefix>.max_packet_size See NDDS_Transport_TCPv4_Property_t::max_packet_size

Default: -1 (OS default value)
NO
<TCP_prefix>.enable_keep_alive See NDDS_Transport_TCPv4_Property_t::enable_keep_alive

Default: 0
NO
<TCP_prefix>.keep_alive_time See NDDS_Transport_TCPv4_Property_t::keep_alive_time

Default: -1 (OS default value)
NO
<TCP_prefix>.keep_alive_interval See NDDS_Transport_TCPv4_Property_t::keep_alive_interval

Default: -1 (OS default value)
NO
<TCP_prefix>.keep_alive_retry_count See NDDS_Transport_TCPv4_Property_t::keep_alive_retry_count

Default: -1 (OS default value)
NO
<TCP_prefix>.disable_nagle See NDDS_Transport_TCPv4_Property_t::disable_nagle

Default: 0
NO
<TCP_prefix>.logging_verbosity_bitmap See NDDS_Transport_TCPv4_Property_t::logging_verbosity_bitmap

Default: -1 (do not change default verbosity)
NO
<TCP_prefix>.outstanding_connection_cookies See NDDS_Transport_TCPv4_Property_t::outstanding_connection_cookies

Default: 100
NO
<TCP_prefix>.outstanding_connection_cookies_life_span See NDDS_Transport_TCPv4_Property_t::outstanding_connection_cookies_life_span

Default: -1, which means an unlimited amount of time (effectively disabling the feature)
NO
<TCP_prefix>.send_max_wait_sec See NDDS_Transport_TCPv4_Property_t::send_max_wait_sec

Default: 3 seconds
NO
<TCP_prefix>.socket_monitoring_kind

See NDDS_Transport_TCPv4_Property_t::socket_monitoring_kind

Possible values:

  • SELECT
  • WINDOWS_IOCP
  • WINDOWS_WAITFORMULTIPLEOBJECT

Default: SELECT

NO
<TCP_prefix>.windows_iocp.thread_pool_size See NDDS_Transport_TCPv4_Property_t::windows_iocp_settings

Default: 2
NO
<TCP_prefix>.windows_iocp.concurrency_value See NDDS_Transport_TCPv4_Property_t::windows_iocp_settings

Default: 1
NO
<TCP_prefix>.disable_interface_tracking See NDDS_Transport_TCPv4_Property_t::disable_interface_tracking

Default: 0
NO
<TCP_prefix>.interface_poll_period See NDDS_Transport_TCPv4_Property_t::interface_poll_period

Default: 0
NO
<TCP_prefix>.tls.verify.ca_file See RTITLS_Verification::ca_file

Default: NULL
NO
<TCP_prefix>.tls.verify.ca_path See RTITLS_Verification::ca_path

Default: NULL
NO
<TCP_prefix>.tls.verify.verify_depth See RTITLS_Verification::verify_depth

Default: -1 (no limit)
NO
<TCP_prefix>.tls.verify.crl_file See RTITLS_Verification::crl_file

Default: NULL
NO
<TCP_prefix>.tls.cipher.cipher_list See RTITLS_Ciphers::cipher_list

Default: NULL
NO
<TCP_prefix>.tls.cipher.dh_param_files See RTITLS_Ciphers::dh_param_files

Default: NULL
NO
<TCP_prefix>.tls.cipher.engine_id See RTITLS_Ciphers::engine_id

Default: NULL
NO
<TCP_prefix>.tls.identity.certificate_chain See RTITLS_Identity::certificate_chain

Default: NULL
NO
<TCP_prefix>.tls.identity.certificate_chain_file See RTITLS_Identity::certificate_chain_file

Default: NULL
NO
<TCP_prefix>.tls.identity.private_key_password See RTITLS_Identity::private_key_password

Default: NULL (no password)
NO
<TCP_prefix>.tls.identity.private_key See RTITLS_Identity::private_key

Default: NULL
NO
<TCP_prefix>.tls.identity.private_key_file See RTITLS_Identity::private_key_file

Default: NULL
NO
<TCP_prefix>.tls.identity.rsa_private_key See RTITLS_Identity::rsa_private_key

Default: NULL
NO
<TCP_prefix>.tls.identity.rsa_private_key_file See RTITLS_Identity::rsa_private_key_file

Default: NULL

NO


RTI TCP Transport Version 5.3.1 Copyright © Mon Feb 19 2018 Real-Time Innovations, Inc