Support parallel UDP streams under Windows and Cygwin#1163
Open
davidBar-On wants to merge 1 commit intoesnet:masterfrom
Open
Support parallel UDP streams under Windows and Cygwin#1163davidBar-On wants to merge 1 commit intoesnet:masterfrom
davidBar-On wants to merge 1 commit intoesnet:masterfrom
Conversation
022772d to
52a4703
Compare
52a4703 to
962c4c1
Compare
coolshou
added a commit
to coolshou/iperf
that referenced
this pull request
Jan 17, 2025
…net#1163) Fix under windows the receiver will have [-1] issue on output throughput at stdout at lase few second
|
If the merge conflicts are resolved, is there something preventing this from merging otherwise? I would love to use iperf to test bidirectional udp on windows and this would allow for that, in theory. |
229f454 to
6555dd5
Compare
Contributor
Author
As Windows is not officially supported by iperf3, I don't know if and when the iperf3 team will merge this PR. In any case, I have rebased the changes to the latest iperf3 master branch (3.19.1+), including conflicts resolution, so you may build from this branch. |
6555dd5 to
45595e1
Compare
45595e1 to
1274aba
Compare
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Version of iperf3 (or development branch, such as
masteror3.1-STABLE) to which this pull request applies:3.10
Issues fixed (if any):
iperf3 UDP test functionality depends on SO_REUSEADDR implementation #472, iperf3 -c 127.0.0.1 -i1 -t 9999 -b50M -u -p5003 -d -P2 -V failed #1161, For udp traffic, if send is ubuntu and receive is windows, -P, --parallel will lead iperf error #2026
Brief description of code changes (suitable for use as a commit message):
Suggested change to allow UDP parallel streams under Windows (and Cygwin). The change is based on the approach suggested by @rossro, as described in this #472 comment.
The change adds an option to the Windows Server's
-pparameter that defines the number of ports available starting with the defined port :-p <port>/[<num of ports]E.g
-p 5201/2specifies that ports 5201 and 5202 can be used for the UDP streams.UPDATE (16-Apr-2023):
Updated to be fully backward compatible, including between Windows and other OS (including rebase to 3.13). This is by adding a
UDP_CONNECT_REPLY_NEXT_PORTfrom a Windows server, to indicate that a different port should be used for the next UDP stream. The only combination that does not work is a Windows Server with older client version when multi UDP streams are used. However, this did not work anyway (just the error condition is changed).