Part 8 of this series took a closer look at the downlink performance of two Windows 11 based machines over Starlink. This episode now takes a closer look at the uplink.
Before I go on, let’s set expectations: As was shown in part 5 and 6, there is a significant difference in uplink performance on Linux machines depending on which TCP congestion avoidance algorithm is used. With the default TCP Cubic algorithm, throughput was around 5 Mbps, whereas TCP BBR pushed uplink throughput to 30 Mbps.
So here’s how uplink throughput looks like on Windows with the default TCP parameters:
The Wireshark throughput graph above shows a 30 seconds iPerf3 single TCP uplink transmission. Like on Linux with the standard TCP cubic algorithm, the throughput on Windows 11 is a meager 5 Mbps. And again like on Linux, this is caused by a significant number of missing packets and the resulting retransmissions indicated by the red dots / horizontal lines in the Wireshark tcptrace sequence graph:
Both graphs look remarkably similar to the Linux equivalent with TCP Cubic. On Linux, changing from TCP Cubic to TCP BBR significantly increased uplink throughput. This of course immediately raises the question if the TCP stack can be tweaked in Windows 11 as well? To be continued…