1.1.2.3. RTI Real-Time WAN Transport¶
Real-Time WAN Transport is a transport that enables secure, scalable, and high-performance communication over wide area networks (WANs), including public networks. It can be used to extend Connext DDS capabilities to WAN environments. Real-Time WAN Transport uses UDPv4 as the underlying IP transport-layer protocol to better anticipate and adapt to the challenges of diverse network conditions, device mobility, and the dynamic nature of WAN system architectures. For more information, see RTI Real-Time WAN Transport, in the RTI Connext DDS Core Libraries User’s Manual.
In the UDPv4_WAN section, you can find the latency and throughput that we can achieve when using Real-Time WAN Transport locally in a 1-to-1 scenario in a local area network. The tests below show how these numbers compare with the already existing UDPv4 transport. Notice that the performance is similar for both latency and throughput.
Unkeyed, Reliable, RWT vs UDPv4 over 10Gbps Network, C++98¶
The graph below shows the one-way latency without load between a Publisher and a Subscriber running in two Linux nodes connected locally in a 10Gbps network.
Test Hardware
The following hardware was used to perform these tests:
Linux Nodes
Processor: Intel® Xeon® E-2186G 3.8GHz, 12M cache, 6C/12T, turbo (95W)
RAM: 16GB 2666MT/s DDR4 ECC UDIMM
NIC 1: Intel X550 Dual Port 10GbE BASE-T Adapter, PCIe Full Height
NIC 2: Intel Ethernet I350 Dual Port 1GbE BASE-T Adapter, PCIe Low Profile
OS: Ubuntu 18.04 -- gcc (Ubuntu 7.5.0-3ubuntu1~18.04) 7.5.0
Switch
Dell Networking S4048T-ON, 48x 10GBASE-T and 6x 40GbE QSFP+ ports, IO to PSU air, 2x AC PSU, OS9
The graph below shows the expected throughput behavior when performing a 1-1 communication between two Linux nodes in a 10Gbps network.
Note
By default, RTI Perftest enables batching when performing a Maximum Throughput test. The batching feature allows sending more than one data sample per RTPS packet, improving network performance for small data sizes. See the RTI Connext DDS Core Libraries User’s Manual for more information on batching.
The batch maximum size is set by RTI Perftest to be 8192 bytes; after 8192 bytes, batching is not enabled.
Test Hardware
The following hardware was used to perform these tests:
Linux Nodes
Processor: Intel® Xeon® E-2186G 3.8GHz, 12M cache, 6C/12T, turbo (95W)
RAM: 16GB 2666MT/s DDR4 ECC UDIMM
NIC 1: Intel X550 Dual Port 10GbE BASE-T Adapter, PCIe Full Height
NIC 2: Intel Ethernet I350 Dual Port 1GbE BASE-T Adapter, PCIe Low Profile
OS: Ubuntu 18.04 -- gcc (Ubuntu 7.5.0-3ubuntu1~18.04) 7.5.0
Switch
Dell Networking S4048T-ON, 48x 10GBASE-T and 6x 40GbE QSFP+ ports, IO to PSU air, 2x AC PSU, OS9
However, the Real-Time WAN Transport is not typically used for communication over a local area network. The following test was set between a Linux virtual machine from Amazon Web Services (AWS) in the servers located in Europe (Paris), eu-west-3 and a physical Linux node in RTI headquarters in Sunnyvale, California, US.
The test compares the performance of the Real-Time WAN Transport and the TCP Transport also available with Connext DDS.
Unkeyed, Reliable, RWT vs TCP over WAN (Europe to US), C++98¶
The graph below shows the one-way latency without load between a Publisher and a Subscriber running between two nodes. The publisher node is a virtual machine hosted by AWS located in Europe (Paris), eu-west-3, the subscriber node is located at RTI headquarters in Sunnyvale, California.
Detailed Statistics
The following tables contain the raw numbers presented by RTI Perftest. These numbers are the exact output with no further processing.
RWT
Sample Size (Bytes) |
Avg (μs) |
Std (μs) |
Min (μs) |
Max (μs) |
50% (μs) |
90% (μs) |
99% (μs) |
99.99% (μs) |
99.9999% (μs) |
---|---|---|---|---|---|---|---|---|---|
32 |
73076 |
47.2 |
73010 |
73651 |
73070 |
73101 |
73175 |
73651 |
73651 |
64 |
73089 |
164.0 |
73015 |
75224 |
73069 |
73101 |
73207 |
75224 |
75224 |
128 |
73085 |
42.3 |
72996 |
73571 |
73080 |
73112 |
73159 |
73571 |
73571 |
256 |
73091 |
20.3 |
73017 |
73143 |
73090 |
73120 |
73136 |
73143 |
73143 |
512 |
73144 |
123.2 |
73090 |
74106 |
73124 |
73153 |
73914 |
74106 |
74106 |
1024 |
73190 |
32.9 |
73112 |
73512 |
73187 |
73215 |
73239 |
73512 |
73512 |
8192 |
73562 |
113.1 |
73473 |
74944 |
73542 |
73605 |
73801 |
74944 |
74944 |
63000 |
72575 |
299.8 |
72359 |
75679 |
72525 |
72660 |
73353 |
75679 |
75679 |
TCP
Sample Size (Bytes) |
Avg (μs) |
Std (μs) |
Min (μs) |
Max (μs) |
50% (μs) |
90% (μs) |
99% (μs) |
99.99% (μs) |
99.9999% (μs) |
---|---|---|---|---|---|---|---|---|---|
32 |
84274 |
3702.7 |
70629 |
113898 |
84022 |
86225 |
110399 |
113898 |
113898 |
64 |
84585 |
4652.7 |
70866 |
113960 |
84068 |
86279 |
111978 |
113960 |
113960 |
128 |
85632 |
7582.2 |
70574 |
112153 |
84113 |
86548 |
112153 |
112153 |
112153 |
256 |
87209 |
11954.4 |
71027 |
111413 |
84189 |
102103 |
104820 |
111413 |
111413 |
512 |
84871 |
18530.1 |
70801 |
115744 |
84871 |
111838 |
115662 |
115744 |
115744 |
1024 |
108049 |
6351.9 |
71271 |
120726 |
108049 |
115556 |
116775 |
120726 |
120726 |
8192 |
108557 |
5648.0 |
70852 |
118075 |
108557 |
113005 |
116872 |
118075 |
118075 |
63000 |
118161 |
29605.1 |
98075 |
438836 |
115361 |
116945 |
180988 |
438836 |
438836 |
Test Hardware
The following hardware was used to perform these tests:
Local Node
Processor: Intel Core i7 CPU 3.33 GHz, 12M cache, Number of cores: 6 (12 threads)
RAM: 12GB DDR3
NIC 1: Intel I350 Gigabit NIC
OS: CentOS Linux release 7 gcc 4.8.2
Location: United States of America, California
AWS Machine
Kind: Ubuntu Server 20.04 LTS (HVM), SSD Volume Type
Processor: Intel(R) Xeon(R) CPU E5-2676 v3 @ 2.40GHz (1 core)
RAM: 1GB
Location: Europe (Paris), eu-west-3
The graph below shows the expected throughput behavior when performing a 1-1 communication between two nodes. The publisher node (less powerful) is a virtual machine hosted by AWS located in Europe (Paris), eu-west-3, the subscriber node (more powerful) is located at RTI headquarters in Sunnyvale, California.
Note
By default, RTI Perftest enables batching when performing a Maximum Throughput test. The batching feature allows sending more than one data sample per RTPS packet, improving network performance for small data sizes. See the RTI Connext DDS Core Libraries User’s Manual for more information on batching.
The batch maximum size is set by RTI Perftest to be 8192 bytes; after 8192 bytes, batching is not enabled.
Detailed Statistics
The following tables contain the raw numbers presented by RTI Perftest. These numbers are the exact output with no further processing.
RWT
Sample Size (Bytes) |
Total Samples |
Avg Samples/s |
Avg Mbps |
Lost Samples |
Lost Samples (%) |
---|---|---|---|---|---|
32 |
2603777 |
86779 |
22.2 |
0 |
0.00 |
64 |
1252481 |
41636 |
21.3 |
0 |
0.00 |
128 |
644097 |
21463 |
22.0 |
0 |
0.00 |
256 |
321409 |
10692 |
21.9 |
0 |
0.00 |
512 |
160225 |
5328 |
21.8 |
0 |
0.00 |
1024 |
79793 |
2658 |
21.8 |
0 |
0.00 |
8192 |
9951 |
330 |
21.7 |
0 |
0.00 |
63000 |
1625 |
78 |
20.8 |
0 |
0.00 |
TCP
Sample Size (Bytes) |
Total Samples |
Avg Samples/s |
Avg Mbps |
Lost Samples |
Lost Samples (%) |
---|---|---|---|---|---|
32 |
669952 |
22274 |
5.7 |
0 |
0.00 |
64 |
374912 |
12449 |
6.4 |
0 |
0.00 |
128 |
197632 |
6575 |
6.7 |
0 |
0.00 |
256 |
102016 |
3387 |
6.9 |
0 |
0.00 |
1024 |
20704 |
689 |
5.6 |
0 |
0.00 |
8192 |
3305 |
109 |
7.2 |
0 |
0.00 |
63000 |
434 |
14 |
7.3 |
0 |
0.00 |
Test Hardware
The following hardware was used to perform these tests:
Local Node
Processor: Intel Core i7 CPU 3.33 GHz, 12M cache, Number of cores: 6 (12 threads)
RAM: 12GB DDR3
NIC 1: Intel I350 Gigabit NIC
OS: CentOS Linux release 7 gcc 4.8.2
Location: United States of America, California
AWS Machine
Kind: Ubuntu Server 20.04 LTS (HVM), SSD Volume Type
Processor: Intel(R) Xeon(R) CPU E5-2676 v3 @ 2.40GHz (1 core)
RAM: 1GB
Location: Europe (Paris), eu-west-3