Category Development: all Software Engineering, code related stuff

Maximum Network throughput

iperf3 is a nice tool to test you LAN connection.
With gigabit you cannot expect 128 MBytes (1B = 8b) because of overhead, that increases a lot with smaller packets.
For Low-latency, we use very small packets. The IEEE standard has a minimum size of 64B:

 6B Destination MAC
 6B Source MAC
 2B Protocol Type
46B Payload
 2B CRC

plus 8B preamble and 12B inter-frame gap equals 84B „wire time“.

Rate / Frame size = frames per second
1000Mbps / (84B*8b) = frames/s
1,000,000,000b / 672b = 1,488,000 frames/s
frames/s * frame size = throughput
1,488,000fps * 64B*8b = 761Mbps
# remove preamble and gap
1,488,000fps * 8B*8b = 95Mbps
1,488,000fps * 12B*8b = 143Mbps
761-95-143 = 65MBps

With big packets(MTU=1518) it’s much more efficient:

1000Mbps / (1538B*8b) = 81,274 fps
81,274fps * 1518B*8b = 986Mbps
# subtract preamble and gap
986 - 5 - 7 = 974Mbps = 121 MBps

Real-world measurements will be several MB smaller.

The intricacies of the networking card, operating system and interrupt handling might result in 300-400Mbps in iperf3. Run at least 10 threads in parallel to saturate a gigabit link:

iperf3 -c 192.168.1.1 -P10

Quic and HTML/3 Standards released by IEEE in 2021-05

How to do UDP in fast and secure - Implemented by Chromium and Firefox, others to follow.

rfc8999

QUIC is a connection-oriented protocol between two endpoints. Those endpoints exchange UDP datagrams. These UDP datagrams contain QUIC packets. QUIC endpoints use QUIC packets to establish a QUIC connection, which is shared protocol state between those endpoints.

rfc9000

This document defines the core of the QUIC transport protocol. QUIC provides applications with flow-controlled streams for structured communication, low-latency connection establishment, and network path migration. QUIC includes security measures that ensure confidentiality, integrity, and availability in a range of deployment circumstances.

rfc9001
Add TLS

rfc9002
loss detection and congestion control

Intel GMA

In 2020 Intel Labs announced Multi-access Traffic Management at the Edge (intel.com), a seamless multipath solution for use cases with

  • packet loss: 10^-12
  • latency <1ms

It uses the ETSI MEC API

Multipath Bonding

The major player is LiveU ($1000 + 450/y service) with their LRT protocol

Competitors are