Using_iPerf_for_Android====

Overview

iPerf is a network testing tool than can be used to measure the performance of a network. In order to use iPerf, you need two systems connected by a network. One system runs the iPerf server, and the other runs the iPerf client.

There is a good [http://kb.pert.geant.net/PERTKB/IperfTool overview of iPerf here], which I recommend reading before you proceed.

Test Configuration

For Android devices, high-speed data connectivity is typically through Wifi. In order to benchmark the performance of the Wifi link, a test setup can be configured as follows:

|PC|←-100Mbit/S Ethernet–>|Wifi Access Point| «< WLAN »> |Android Device| 192.168.0.1 192.168.0.169

In this test setup, |PC| is a rather old Pentium 3 machine running NetBSD, the machine's IP address is 192.168.0.1. It is connected to a LAN port an old Linksys 11n Access Point via 100Mbit/S wired Ethernet. I used this setup to test three different Android phones. Each phone is simultaneously associated to the Access Point, and located in a room adjacent to the Access Point. For each test run, iPerf for Android is started in Server Mode on the phone. To do this, enter ”-s” in the text input box marked iPerf command line arguments and press the button marked “off.” When pressed, this button will turn green, and the text will change to “on” to indicate that iPerf is running on the phone. Note the “Device IP address” on the phone and run the iPerf client on the PC using the IP address of the phone. Note in this test, I do a “tradeoff” (-r) test to measure both Tx and Rx throughput.

Test Results

T-Mobile G1

This is an example run using iPerf for Android in Server (-s) mode on the T-Mobile G1. This output was taken from the [http://www.netbsd.org NetBSD] machine, and corresponds to the output from the iPerf for Android in the image above:

 netbsd$ iperf -c 192.168.0.170 -r
 ------------------------------------------------------------
 Server listening on TCP port 5001
 TCP window size: 32.0 KByte (default)
 ------------------------------------------------------------
 ------------------------------------------------------------
 Client connecting to 192.168.0.170, TCP port 5001
 TCP window size: 32.5 KByte (default)
 ------------------------------------------------------------
 [  5] local 192.168.0.1 port 65509 connected with 192.168.0.170 port 5001
 [  5]  0.0-10.0 sec  9.62 MBytes  8.07 Mbits/sec
 [  4] local 192.168.0.1 port 5001 connected with 192.168.0.170 port 39183
 [  4]  0.0-10.0 sec  8.83 MBytes  7.38 Mbits/sec

Motorola Droid

This is an example run using iPerf for Android in Server (-s) mode on the [http://www.motorola.com/droid Motorola Droid]:

 netbsd$ iperf -c 192.168.0.169 -r
 ------------------------------------------------------------
 Server listening on TCP port 5001
 TCP window size: 32.0 KByte (default)
 ------------------------------------------------------------
 ------------------------------------------------------------
 Client connecting to 192.168.0.169, TCP port 5001
 TCP window size: 32.5 KByte (default)
 ------------------------------------------------------------
 [  5] local 192.168.0.1 port 65513 connected with 192.168.0.169 port 5001
 [  5]  0.0-10.0 sec  20.4 MBytes  17.1 Mbits/sec
 [  4] local 192.168.0.1 port 5001 connected with 192.168.0.169 port 38235
 [  4]  0.0-10.1 sec  21.6 MBytes  18.0 Mbits/sec

Google Nexus One

This is an example run using iPerf for Android in Server (-s) mode on the [http://www.google.com/phone Google Nexus One]:

 netbsd$ iperf -c 192.168.0.136 -r
 ------------------------------------------------------------
 Server listening on TCP port 5001
 TCP window size: 32.0 KByte (default)
 ------------------------------------------------------------
 ------------------------------------------------------------
 Client connecting to 192.168.0.136, TCP port 5001
 TCP window size: 32.5 KByte (default)
 ------------------------------------------------------------
 [  5] local 192.168.0.1 port 65512 connected with 192.168.0.136 port 5001
 [  5]  0.0-10.0 sec  26.5 MBytes  22.2 Mbits/sec
 [  4] local 192.168.0.1 port 5001 connected with 192.168.0.136 port 37926
 [  4]  0.0-10.0 sec  25.7 MBytes  21.4 Mbits/sec

[[HTC Incredible with 802.11n]]

This is an example run using iPerf for Android in Server (-s) mode on the [http://phones.verizonwireless.com/htc/incredible/ HTC Incredible]:

 netbsd$ iperf -c 192.168.0.79 -r
 ------------------------------------------------------------
 Server listening on TCP port 5001
 TCP window size: 32.0 KByte (default)
 ------------------------------------------------------------
 ------------------------------------------------------------
 Client connecting to 192.168.0.79, TCP port 5001
 TCP window size: 32.5 KByte (default)
 ------------------------------------------------------------
 [  5] local 192.168.0.1 port 65530 connected with 192.168.0.79 port 5001
 [  5]  0.0-10.0 sec  29.5 MBytes  24.7 Mbits/sec
 [  4] local 192.168.0.1 port 5001 connected with 192.168.0.79 port 56169
 [  4]  0.0-10.0 sec  33.0 MBytes  27.6 Mbits/sec

Disclaimer

The test results above were not conducted in a controlled environment, and represent only one iPerf run per Android device. These examples are meant to illustrate the use of iPerf for Android and not meant to be benchmarks. That being said, you can see that the Wifi performance of the Droid and Nexus One is much better than on the original G1 phone. If you have questions or comments about iPerf for Android, see the iPerf Contact Page.

using_iperf_for_android.txt · Last modified: 2013/03/28 22:02 by 216.31.219.19
 
Except where otherwise noted, content on this wiki is licensed under the following license: CC Attribution 3.0 Unported
Recent changes RSS feed Donate Powered by PHP Valid XHTML 1.0 Valid CSS Driven by DokuWiki