Keyboard shortcuts

Press ← or → to navigate between chapters

Press S or / to search in the book

Press ? to show this help

Press Esc to hide this help

Quickstart

In a few minutes you will know how much traffic a network path can carry, in Mbps. You need udpstp installed on two hosts, one at each end of the path.

Choose two hosts

Run the Server at the far end of the path you want to measure, and the Client where you want to test from. Both hosts need UDP connectivity. Testing on one machine checks the setup but doesn’t measure a network path.

Choose a MaxHops value slightly above the number of routers between the hosts. The examples below use 12.

Share a key

Tests are authenticated by default. Generate a random Shared Key.

openssl rand -hex 32

On Windows, use the PowerShell command instead. Save the following as keys.toml on both hosts, replacing the placeholder with that same key.

[[key]]
admin_key_name = "first-test"
key_id = 1
key_hex = "replace-with-64-hexadecimal-digits"

Keep the file private. On Linux and macOS, run this on both hosts.

chmod 600 keys.toml

On Windows, set the key file’s permissions before continuing. Keys stay in the file, never on the command line.

Start the Server

Allow inbound UDP ports 24601 and 49152–65535 at the Server. Open the firewall covers other setups. On Windows, follow these steps before starting it.

Start the Server as an ordinary account.

udpstp server --key-file keys.toml --max-hops 12

The Server keeps running in the foreground. Its first log lines include the addresses it listens on.

2026-11-10T17:44:40.702489Z INFO listening on 0.0.0.0:24601 event="Listening"
  | address=0.0.0.0:24601
2026-11-10T17:44:40.702493Z INFO listening on [::]:24601 event="Listening"
  | address=[::]:24601

Run your first Test

On the Client host, replace server.example.net with your Server’s name or address.

udpstp client --key-file keys.toml --max-hops 12 server.example.net

This runs a 10-second Downstream Test, in which the Server sends the traffic. The Client prints a row for each second, then the result under Final metrics. Your figure depends on your path.

Final metrics
  Maximum IP-Layer Capacity: 9713.89 Mbps (Sub-Interval 10)

Add --direction upstream to measure the other direction. Understanding the results explains every line and warning.

If the Client prints no answer from the Server instead, check the address, the firewall and the key, as Troubleshooting describes. On Windows, the Client normally needs no inbound firewall rule. A Server needs its own rule, added by an administrator.

Keep exploring