iperf icon indicating copy to clipboard operation
iperf copied to clipboard

iperf3 not works fine on on Android OS

Open barryjiazuo opened this issue 1 year ago • 6 comments

NOTE: The iperf3 issue tracker is for registering bugs, enhancement requests, or submissions of code. It is not a means for asking questions about building or using iperf3. Those are best directed towards the Discussions section for this project at https://github.com/esnet/iperf/discussions or to the iperf3 mailing list at [email protected]. A list of frequently-asked questions regarding iperf3 can be found at http://software.es.net/iperf/faq.html.

Context

iperf 3.6+ Linux localhost 5.15.78-qki-consolidate-android13-8-g3c0834eba5cc #1 SMP PREEMPT Wed Jul 26 11:17:24 UTC 2023 aarch64 Control connection MSS 1460 Time: Fri, 20 Oct 2023 14:10:56 GMT Connecting to host 10.3.133.254, port 5201 Cookie: osieilioc6n2wmesvr6b4ymxw2sqzihh3sp2 TCP MSS: 1460 (default) iperf3: error - unable to create a new stream: No such file or directory

  • Version of iperf3: iperf 3.6

  • Hardware: CM6125 Android OS

  • Operating system (and distribution, if any): Android OS Android 10 and Android 13.

Please note: iperf3 is supported on Linux, FreeBSD, and macOS. Support may be provided on a best-effort basis to other UNIX-like platforms. We cannot provide support for building and/or running iperf3 on Windows, iOS, or Android.

  • Other relevant information (for example, non-default compilers, libraries, cross-compiling, etc.):

Please fill out one of the "Bug Report" or "Enhancement Request" sections, as appropriate. Note that submissions of bug fixes, new features, etc. should be done as a pull request at https://github.com/esnet/iperf/pulls

Bug Report

PC window as server :iperf3.exe -s

test DUT android device using follow:

kalama:/ # iperf3 -c 10.3.133.254 -i 1 -t 200 -V iperf 3.6+ Linux localhost 5.15.78-qki-consolidate-android13-8-g3c0834eba5cc #1 SMP PREEMPT Wed Jul 26 11:17:24 UTC 2023 aarch64 Control connection MSS 1460 Time: Fri, 20 Oct 2023 14:10:56 GMT Connecting to host 10.3.133.254, port 5201 Cookie: osieilioc6n2wmesvr6b4ymxw2sqzihh3sp2 TCP MSS: 1460 (default) iperf3: error - unable to create a new stream: No such file or directory

  • Expected Behavior get the wifi output speed

  • Actual Behavior show error as follow: iperf3: error - unable to create a new stream: No such file or directory

  • Steps to Reproduce

  • Possible Solutio

Enhancement Request

  • Current behavior

  • Desired behavior

  • Implementation notes

barryjiazuo avatar Nov 20 '24 03:11 barryjiazuo

Dear supporter

would you pls share me some guide on this ? I can not run iperf3 on my Android device? both as client and server.

" unable to create a new stream: No such file or directory " thanks.

barryjiazuo avatar Nov 20 '24 03:11 barryjiazuo

There may be a firewall/NAT issue, but first you should try using a newer (3.17.1) version of iperf3. Android pre-built versions are available at: https://github.com/davidBar-On/android-iperf3.

davidBar-On avatar Nov 20 '24 06:11 davidBar-On

Even though Android is not an officially supported platform, I'm pretty sure we did some changes since the version you're running to improve Android compatibility.

bmah888 avatar Nov 20 '24 19:11 bmah888

I recently faced similar challenges trying to test UDP performance from Android devices.

To solve that, I ended up building a native Android app — CellularLab — that wraps iPerf3 via JNI and gives you full TCP/UDP/bidirectional testing right from your phone. It includes a clean UI, command mode, and even AI log analysis using Gemini.

Here’s a blog I wrote on how I compiled iPerf3 for Android using CMake + JNI: 👉 Compiling iPerf3 in Android – A Practical Guide

Hope this helps others trying to do similar testing on mobile!

CellularLab

Abhi5h3k avatar Jul 06 '25 08:07 Abhi5h3k

To solve that, I ended up building a native Android app — CellularLab — that wraps iPerf3 via JNI and gives you full TCP/UDP/bidirectional testing right from your phone. It includes a clean UI, command mode, and even AI log analysis using Gemini.

@Abhi5h3k, as your implementation should be useful for other Android users, I added a eference to your implementation in my prebuilt android-iperf3 repository (although it doesn't have many followers ..).

davidBar-On avatar Jul 26 '25 15:07 davidBar-On

Thanks a lot for the mention, @davidBar-On 🙏 I'm glad you found the Android implementation helpful, and I appreciate the link to the article in your repo.

Hopefully this makes it easier for others trying to integrate iperf3 into Android apps. Looking forward to any feedback or contributions from the community as it evolve 🙂

Abhi5h3k avatar Jul 26 '25 16:07 Abhi5h3k