Using this simple command:
iperf3 -c localhost --time 1 -l 100 --bitrate 100M Then watching the output with:
sudo tcpdump -i lo -B 10000000 tcp port 5201 I would expect to see lots of 100 byte packets coming down the line, but instead I see things like this (flitering out ACK packets, etc):
05:40:18.722627 IP [...]: Flags [P.], seq 12447838:12449238, ack 1, win 64240, options [...], length 1400 05:40:18.722644 IP [...]: Flags [P.], seq 12450738:12450838, ack 1, win 64240, options [...], length 100 05:40:18.722655 IP [...]: Flags [P.], seq 12450838:12452038, ack 1, win 64240, options [...], length 1200 05:40:18.723647 IP [...]: Flags [P.], seq 12452038:12452138, ack 1, win 64240, options [...], length 100 We have two as expected 100 byte packets, but also another two packets where 14 and 12 messages have been batched up. Why is there batching, and is there any way to turn it off on Ubuntu 22.04?
(Note, log abbreviated to fit length on screen without scrolling: the first [...] is localhost.43286 > localhost.5201 and the second is [nop,nop,TS val 838423036 ecr 838423036].)