iperf3 - Windows Server (-s) mode not supporting multiple UDP streams? [3.17.1] [BUG?] #1780
jeffsponaugle
started this conversation in
General
Replies: 2 comments
-
To add to this: A packet capture from an OSX client to a Windows server. Client command line:
Capture:
|
Beta Was this translation helpful? Give feedback.
0 replies
-
This is a known issue in iperf3 on Windows. See PR #1163 that is supposed to fix this issue and the issues it is referring to. I don't know if and when PR #1163 will be merged into iperf3, but if needed you can use that PR's code. I have now rebased it to the latest master branch (3.17.1+). |
Beta Was this translation helpful? Give feedback.
0 replies
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
-
SHORT: It appears that the windows complied version of iPerf3, running on a windows box in server mode, does not correctly work when trying to do multiple UDP streams. This appears to be unique to the windows version in server mode.
[NOTE - Per the FAQ, iperf3 on Windows is UNSUPPORTED, and some options do not work. It is possible this is one of those 'options that does not work']
Reproduction and Comparison:
On a linux or OSX platform:
execute in one terminal session:
iperf3 -s
in a second terminal, execute:
iperf3 -c localhost
output is as expected.
in a second terminal, execute:
iperf3 -c localhost -P2
output is as expected. ( two TCP connections)
in a second terminal, execute:
iperf3 -c localhost -u
output is as expected. ( single UDP connection, 1.0Mbit bandwidth)
in a second terminal, execute:
iperf3 -c localhost -u -P2
output is as expected. ( two UDP connection, 2.0Mbit bandwidth total).
On a Windows platform (In my case A Windows 11 build, Windows 10 build, and a Server 2016 build)
execute in one command window:
iperf3 -s
in a second command window, execute:
iperf3 -c localhost
output is as expected.
in a second command window, execute:
iperf3 -c localhost -P2
output is as expected. ( two TCP connections)
in a second command window, execute:
iperf3 -c localhost -u
output is as expected. ( single UDP connection, 1.0Mbit bandwidth)
in a second command window, execute:
iperf3 -c localhost -u -P2
output is a hang of the client with the eventual output:
The issue appears to be in the server side windows version, because doing the same client commands from either linux or osx against the windows server version has the same result. It does not appear to be related to using localhost, as it occurs from remote clients against the windows binary in server mode. Running either the server or the client in an administrator command windows makes no difference.
On the Windows side, the firewall is disable on all three machines, and this artifact seems to occur with either local or remote connections. The OSX and Linux versions do not display this behavior in any of my testing, either local, remote, or to each other.
This issue seems to occur with 3.13->3.17, but I have not tested earlier builds. I do not remember seeing this in the past, so it is possible that there could be a Windows related issue, or of course a user (me) related issue. It feels like something blocking UDP, but when running local to local that should not happen.
Beta Was this translation helpful? Give feedback.
All reactions