udp-l4s start up needs improvements
A means to measure network responsiveness and throughput
Brought to you by:
rjmcmahon
The udp-l4s test needs at least two impovements around startup
Hi Bob,
I was asked to check out l4s-udp so we can incorporate it in our testing.
First run on the L4S queue looked OK. Out of curiosity, is it expected to break on non-L4S queue as it did below? If so, why?
Thanks,
Ram
[root@l4s-rx iperf2-code]# iperf -s -u -i 1
------------------------------------------------------------
Server listening on UDP port 5001
UDP buffer size: 208 KByte (default)
------------------------------------------------------------
[ 1] local 192.168.100.100 port 5001 connected with 192.168.100.1 port 39063 (l4s)
[ ID] Interval Transfer Bandwidth Jitter Lost/Total Datagrams
[ 1] 0.00-1.00 sec 13.8 KBytes 113 Kbits/sec 0.081 ms 0/82 (0%)
[ 1] 1.00-2.00 sec 2.13 KBytes 17.5 Kbits/sec 0.058 ms 0/14 (0%)
[ 1] 0.00-2.18 sec 17.3 KBytes 65.3 Kbits/sec 0.057 ms 0/97 (0%)
[ 3] WARNING: ack of last datagram failed.
^C[root@l4s-rx iperf2-code]# iperf -v
iperf version 2.2.n (16 March 2025) pthreads
[root@l4s-rx iperf2-code]#
and:
[root@l4s-tx iperf2-code]# iperf -c 192.168.100.100 -u --udp-l4s -i 1 -b 1M -t 10
------------------------------------------------------------
Client connecting to 192.168.100.100, UDP L4S port 5001
Sending 1470 byte datagrams, IPG target: 0.00 us (kalman adjust)
UDP buffer size: 208 KByte (default)
------------------------------------------------------------
[ 1] local 192.168.10.10 port 39063 connected with 192.168.100.100 port 5001 (l4s)
[ ID] Interval Transfer Bandwidth
[ 1] 0.00-1.00 sec 13.8 KBytes 113 Kbits/sec
[ 1] 1.00-2.00 sec 2.13 KBytes 17.5 Kbits/sec
[ 1] 0.00-2.18 sec 17.3 KBytes 65.3 Kbits/sec
[ 1] Sent 98 datagrams
[ 1] Server Report:
[ ID] Interval Transfer Bandwidth Jitter Lost/Total Datagrams
[ 1] 0.00-0.00 sec 96.0 MBytes -nan bits/sec 0.000 ms 4294966296/0 (0%)
[root@l4s-tx iperf2-code]# iperf -v
iperf version 2.2.n (16 March 2025) pthreads
Hi Bob,
I now hit this issue occasionally, even in loop-back.
I'm currently unable to pinpoint the root-cause or recreate consistently, but I did notice that in the cases that succeeded the throughput was high from the first second.
Here is an example of loopback that worked once and failed three times:
[root@l4s-tx ram_tx]# iperf -s -u &
[1] 148493
[root@l4s-tx ram_tx]# ------------------------------------------------------------
Server listening on UDP port 5001
UDP buffer size: 208 KByte (default)
------------------------------------------------------------
iperf -c 127.0.0.1 -u -i 1 --udp-l4s
------------------------------------------------------------
Client connecting to 127.0.0.1, UDP L4S port 5001
Sending 1470 byte datagrams, IPG target: 0.00 us (kalman adjust)
UDP buffer size: 208 KByte (default)
------------------------------------------------------------
[ 1] local 127.0.0.1 port 59857 connected with 127.0.0.1 port 5001 (l4s)
[ 1] local 127.0.0.1 port 5001 connected with 127.0.0.1 port 59857 (l4s)
[ ID] Interval Transfer Bandwidth
[ 1] 0.00-1.00 sec 128 KBytes 1.05 Mbits/sec
[ 1] 1.00-2.00 sec 129 KBytes 1.06 Mbits/sec
[ 1] 2.00-3.00 sec 129 KBytes 1.06 Mbits/sec
[ 1] 3.00-4.00 sec 129 KBytes 1.06 Mbits/sec
[ 1] 4.00-5.00 sec 129 KBytes 1.06 Mbits/sec
[ 1] 5.00-6.00 sec 129 KBytes 1.06 Mbits/sec
[ 1] 6.00-7.00 sec 129 KBytes 1.06 Mbits/sec
[ 1] 7.00-8.00 sec 129 KBytes 1.06 Mbits/sec
[ 1] 8.00-9.00 sec 129 KBytes 1.06 Mbits/sec
[ ID] Interval Transfer Bandwidth Jitter Lost/Total Datagrams
[ 1] 9.00-10.00 sec 129 KBytes 1.06 Mbits/sec
[ 1] 0.00-10.00 sec 1.26 MBytes 1.06 Mbits/sec 0.007 ms 0/903 (0%)
[ 1] 0.00-10.00 sec 1.26 MBytes 1.06 Mbits/sec
[ 1] Sent 904 datagrams
[ 1] Server Report:
[ ID] Interval Transfer Bandwidth Jitter Lost/Total Datagrams
[ 1] 0.00-0.00 sec 0.000 Bytes -nan bits/sec 0.000 ms 4294966296/0 (0%)
[root@l4s-tx ram_tx]# iperf -c 127.0.0.1 -u -i 1 --udp-l4s
------------------------------------------------------------
Client connecting to 127.0.0.1, UDP L4S port 5001
Sending 1470 byte datagrams, IPG target: 0.00 us (kalman adjust)
UDP buffer size: 208 KByte (default)
------------------------------------------------------------
[ 1] local 127.0.0.1 port 53914 connected with 127.0.0.1 port 5001 (l4s)
[ 2] local 127.0.0.1 port 5001 connected with 127.0.0.1 port 53914 (l4s)
[ ID] Interval Transfer Bandwidth
[ 1] 0.00-1.00 sec 13.8 KBytes 113 Kbits/sec
[ ID] Interval Transfer Bandwidth Jitter Lost/Total Datagrams
[ 1] 1.00-2.00 sec 2.13 KBytes 17.5 Kbits/sec
[ 2] 0.00-2.17 sec 17.3 KBytes 65.3 Kbits/sec 0.008 ms 0/97 (0%)
[ 1] 0.00-2.17 sec 17.3 KBytes 65.3 Kbits/sec
[ 1] Sent 98 datagrams
[ 1] Server Report:
[ ID] Interval Transfer Bandwidth Jitter Lost/Total Datagrams
[ 1] 0.00-0.00 sec 96.0 MBytes -nan bits/sec 0.000 ms 4294966296/0 (0%)
[root@l4s-tx ram_tx]# iperf -c 127.0.0.1 -u -i 1 --udp-l4s
------------------------------------------------------------
Client connecting to 127.0.0.1, UDP L4S port 5001
Sending 1470 byte datagrams, IPG target: 0.00 us (kalman adjust)
UDP buffer size: 208 KByte (default)
------------------------------------------------------------
[ 1] local 127.0.0.1 port 42187 connected with 127.0.0.1 port 5001 (l4s)
[ 3] local 127.0.0.1 port 5001 connected with 127.0.0.1 port 42187 (l4s)
[ ID] Interval Transfer Bandwidth
[ 1] 0.00-1.00 sec 13.8 KBytes 113 Kbits/sec
[ ID] Interval Transfer Bandwidth Jitter Lost/Total Datagrams
[ 1] 1.00-2.00 sec 2.13 KBytes 17.5 Kbits/sec
[ 3] 0.00-2.17 sec 17.3 KBytes 65.3 Kbits/sec 0.007 ms 0/97 (0%)
[ 1] 0.00-2.17 sec 17.3 KBytes 65.3 Kbits/sec
[ 1] Sent 98 datagrams
[ 1] Server Report:
[ ID] Interval Transfer Bandwidth Jitter Lost/Total Datagrams
[ 1] 0.00-0.00 sec 96.0 MBytes -nan bits/sec 0.000 ms 4294966296/0 (0%)
[root@l4s-tx ram_tx]# iperf -c 127.0.0.1 -u -i 1 --udp-l4s
------------------------------------------------------------
Client connecting to 127.0.0.1, UDP L4S port 5001
Sending 1470 byte datagrams, IPG target: 0.00 us (kalman adjust)
UDP buffer size: 208 KByte (default)
------------------------------------------------------------
[ 1] local 127.0.0.1 port 40749 connected with 127.0.0.1 port 5001 (l4s)
[ 4] local 127.0.0.1 port 5001 connected with 127.0.0.1 port 40749 (l4s)
[ ID] Interval Transfer Bandwidth
[ 1] 0.00-1.00 sec 13.8 KBytes 113 Kbits/sec
[ 1] 1.00-2.00 sec 2.13 KBytes 17.5 Kbits/sec
[ ID] Interval Transfer Bandwidth Jitter Lost/Total Datagrams
[ 4] 0.00-2.17 sec 17.3 KBytes 65.3 Kbits/sec 0.009 ms 0/97 (0%)
[ 1] 0.00-2.17 sec 17.3 KBytes 65.3 Kbits/sec
[ 1] Sent 98 datagrams
[ 1] Server Report:
[ ID] Interval Transfer Bandwidth Jitter Lost/Total Datagrams
[ 1] 0.00-0.00 sec 96.0 MBytes -nan bits/sec 0.000 ms 4294966296/0 (0%)
[root@l4s-tx ram_tx]#