You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
iperf 3.17.1 (cJSON 1.7.15)
Linux testbed-1 6.11.11 #1 SMP Thu Dec 12 17:55:41 UTC 2024 armv7l
Optional features available: CPU affinity setting, IPv6 flow label, TCP congestion algorithm setting, sendfile / zerocopy, socket pacing, authentication, bind to device, support IPv4 don't fragment, POSIX threads
Hardware:
armv7l GNU/Linux
Operating system (and distribution, if any):
Linux (Buildroot)
Bug Report
Expected Behavior
Should be possible to run an iperf3 test in UDP on a IPv6 address.
Actual Behavior
$ iperf3 -c fe80::aabb:ccff:fedd:eeff%wifi0 -u -b 30M -V
iperf 3.17.1
Linux testbed-1 6.11.11 #1 SMP Thu Dec 12 17:55:41 UTC 2024 armv7l
Control connection MSS 1428
Setting UDP block size to 1428
Time: Fri, 13 Dec 2024 14:09:13 UTC
Connecting to host fe80::aabb:ccff:fedd:eeff%wifi0, port 5201
Cookie: zqym5vfwatgl5kei56tgxsz34s7dn72mcl6a
Target Bitrate: 30000000
iperf3: error - unable to read from stream socket: Resource temporarily unavailable
Steps to Reproduce
Get Ipv6 of target host (here, for the wifi0 interface):
$ ip -6 a show wifi0
5: wifi0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue state UP group default qlen 1000
inet6 fe80::aabb:ccff:fedd:eeff/64 scope link proto kernel_ll
valid_lft forever preferred_lft forever
Run an iperf3 server in the target host: iperf3 -s
From the client host, try to start an UDP iperf3 test using the IPv6 of the target host (and the client output network interface, here, it is also wifi0) :
$ iperf3 -c fe80::aabb:ccff:fedd:eeff%wifi0 -u -b 30M -V
iperf 3.17.1
Linux testbed-1 6.11.11 #1 SMP Thu Dec 12 17:55:41 UTC 2024 armv7l
Control connection MSS 1428
Setting UDP block size to 1428
Time: Fri, 13 Dec 2024 14:09:13 UTC
Connecting to host fe80::aabb:ccff:fedd:eeff%wifi0, port 5201
Cookie: zqym5vfwatgl5kei56tgxsz34s7dn72mcl6a
Target Bitrate: 30000000
iperf3: error - unable to read from stream socket: Resource temporarily unavailable
Possible Solution
It works if the test is done using an IPv4 address of the target host or in TCP. It is the combination of UDP and IPv6 that fails to work.
The text was updated successfully, but these errors were encountered:
"Resource temporarily unavailable (EAGAIN)" usually means that the read should be retried. I created a branch in my private iperf3 fork that changes the one try rcv() with Nread() that does such retries..
Can you build iperf3 for the Client from this branch, run the client using this version and see if the problem is fixed? (If you don't know how to build iperf3 from the branch, I can send you instructions.) If it is not fixed, please run the Client using --debug=3 and send the output for further analysis.
Context
Hardware:
armv7l GNU/Linux
Operating system (and distribution, if any):
Linux (Buildroot)
Bug Report
Expected Behavior
Should be possible to run an iperf3 test in UDP on a IPv6 address.
Actual Behavior
iperf3 -s
It works if the test is done using an IPv4 address of the target host or in TCP. It is the combination of UDP and IPv6 that fails to work.
The text was updated successfully, but these errors were encountered: