2.3.2. RTI Recording Service

The following tests have been performed by executing the RTI Perftest C++98 benchmark application between two nodes and RTI Recording Service in a third node, all of them connected to a switch via Ethernet. The communication has been restricted to a single interface, and the transport has been set to UDPv4 multicast for the three applications.

In this test, we take advantage of multicast and the reliable RELIABIITY QoS to measure the maximum throughput at which Recording Service is able to store samples. The scenario consists of an RTI Perftest Publisher and Subscriber performing a Maximum Throughput test via UDPv4 multicast. Then, a Recording Service instance records the Throughput topic. The principles on which we base this test are the following:

  • Since the communication is multicast, samples are only being sent once to the two Subscribers by the Publisher side.

  • Since the protocol uses strict reliability, all the samples need to be acknowledged by the Recording Service Subscriber as well as by the RTI Perftest Subscriber to be able to continue the communication.

  • Since Recording Service needs to store the data, it will always be slower than the RTI Perftest Subscriber.

Based on these principles, we can conclude that the received throughput seen by the Subscriber application will be the maximum throughput at which the Recording Service application is able to process and store the data. Therefore, the measures obtained by THE Subscriber can be labeled as the Recording Service received Maximum Throughput.

Find the results for these tests below.

2.3.2.1. Unkeyed, UDPv4 1Gbps Network

The graph below shows the expected throughput behavior when performing a throughput test between an RTI Perftest Publisher and Subscriber, with Recording Service recording the Throughput topic.

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

This table contains the raw numbers presented by RTI Perftest. These numbers are the exact output with no further processing.

Sample Size (Bytes)

Total Samples

Avg Samples/s

Avg Mbps

Lost Samples

Lost Samples (%)

32

31245313

520751

133.3

0

0.00

64

24183297

402975

206.3

0

0.00

256

21848065

364101

745.7

0

0.00

1024

16040809

267281

2189.6

0

0.00

4096

9791359

163185

5347.3

0

0.00

63000

1056967

17610

8875.9

0

0.00


Test Hardware

The following hardware was used to perform these tests:

Linux Nodes

Dell R340 Servers (13 Units)
Processor: Intel Xeon E-2278G (3.4-5GHz, 8c/16t, 16MB cache, 2 memory channels @2666MHz)
RAM: 4x 16GB 2666MHz DIMM (64GB RAM)
HD: 480GB SATA SSD
NIC 1: Intel 710 dual port 10Gbps SFP
OS: Ubuntu 20.04 -- gcc 9.3.0

Switch

Dell 2048 -- 10Gbps switch (10Gbps and 1Gbps interfaces)

2.3.2.2. Keyed, UDPv4 1Gbps Network

The graph below shows the expected throughput behavior when performing a throughput test between an RTI Perftest Publisher and Subscriber, with Recording Service recording the Throughput topic.

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

This table contains the raw numbers presented by RTI Perftest. These numbers are the exact output with no further processing.

Sample Size (Bytes)

Total Samples

Avg Samples/s

Avg Mbps

Lost Samples

Lost Samples (%)

32

33100289

551663

141.2

0

0.00

64

24749952

412493

211.2

0

0.00

256

22171393

369466

756.7

0

0.00

1024

16436640

273943

2244.1

0

0.00

4096

9759094

162651

5329.8

0

0.00

63000

1056253

17604

8872.4

0

0.00


Test Hardware

The following hardware was used to perform these tests:

Linux Nodes

Dell R340 Servers (13 Units)
Processor: Intel Xeon E-2278G (3.4-5GHz, 8c/16t, 16MB cache, 2 memory channels @2666MHz)
RAM: 4x 16GB 2666MHz DIMM (64GB RAM)
HD: 480GB SATA SSD
NIC 1: Intel 710 dual port 10Gbps SFP
OS: Ubuntu 20.04 -- gcc 9.3.0

Switch

Dell 2048 -- 10Gbps switch (10Gbps and 1Gbps interfaces)