0

I have 3 devices as listed below. All of them connect to the same WiFi network to access the Internet. I also have access to both 2.4 GHz and 5 GHz networks.

Devices:

  • iPhone 12 Pro running iOS 16.3
  • Oneplus 5T Running Android 10
  • Dell XPS 13 running Windows 10 (22H2)

The access point is a Netgear WNDR3700V3 in Access Point mode. All 3 devices are currently connected to the 5 GHz network.

On running speed tests using speed.measurementlab.com and speedtest.net, I'm getting the following results:

  • iPhone - Browser Safari - Speed: ~23-24 Mbps
  • Android - Browser Firefox - Speed: ~178 Mbps
  • Dell Laptop - Browser Firefox - Speed: ~180-195 Mbps

A few additional details:

  • All devices are updated for all software and apps (as available).
  • Internet connection speed is 350 Mbps. I'm getting the full promised speed when measured using a wired connection directly to the WAN router (for lack of a better term).
  • The speeds mentioned above were measured within a two-minute window successive to each other. No other devices are currently using any major bandwidth as the rest of the family is asleep.

The questions I want to answer are:

  • Why is the iPhone getting such slow speeds? All 3 devices are around 1 ft of each other and the same distance from the Netgear AP.
  • Can I fix it so that the iPhone is able to get similar speeds to the Android Phone and the Laptop?

Edit: Adding performance measurements using iPerf3 as recommended by @allan Note: I re-ran the tests for updated numbers. Original test result marked with a ** iOS

[ ID] Interval           Transfer     Bitrate
[  5]   0.00-64.12  sec  48.7 MBytes  6.37 Mbits/sec                  receiver **
[  5]   0.00-55.32  sec   146 MBytes  22.1 Mbits/sec                  receiver

Android

[ ID] Interval Transfer Bitrate [ 5] 0.00-6.41 sec 48.1 MBytes 63.0 Mbits/sec receiver ** [ 5] 0.00-10.61 sec 143 MBytes 113 Mbits/sec receiver


Raspberry Pi:

[ ID] Interval Transfer Bitrate Retr [ 5] 0.00-10.00 sec 176 MBytes 148 Mbits/sec receiver** [ 5] 0.00-10.00 sec 186 MBytes 156 Mbits/sec receiver

As requested by @Andra, tests using native apps on Android and iOS (Used the native Speedtest.net/Ookla apps for now):

iOS: Speedtest iOS Screenshot - 1 Speedtest iOS Screenshot - 2

Android: Speedtest Android Screenshot - 1 Speedtest Android Screenshot - 2

AJ.
  • 101
  • It's not advisable to test network speeds with servers outside your network as there can be many factors that influence the results. As it stands, none of your devices give consistent results apart from there being a huge discrepancy between the iPhone and everything else. That said, it could be due to latency on the WAN at the time you tested. – Allan Jan 27 '23 at 21:32
  • Since you have a Windows machine, use iPerf3 (instructions on the link) to measure bandwidth. It's available for iOS, macOS, Windows, Android, and FreeBSD/Linux. Let your Windows machine be the server and test throughput from your iOS and Android devices. Then post the results. – Allan Jan 27 '23 at 21:33
  • @Allan I understand your point but this behaviour is consistent across multiple days and different times of the day. The range is not very different for each device and fairly narrow. – AJ. Jan 28 '23 at 06:48
  • I'm setting up and will test using iperf3. However, if it was a bandwidth issue, why would the non-ios devices give such high bandwidth? I tested all of them within a 2-minute window. While networks can change dramatically, I highly doubt they will change every time I test.

    Edit: Fixed a sentence

    – AJ. Jan 28 '23 at 06:49
  • @Allan I tested between the Windows Laptop and the iPhone 12 Pro. Transferred 50M of Data using the iOS app. The speeds are in fact worse:

    [ ID] Interval Transfer Bandwidth [ 5] 0.00-64.12 sec 0.00 Bytes 0.00 bits/sec sender [ 5] 0.00-64.12 sec 48.7 MBytes 6.37 Mbits/sec receiver

    – AJ. Jan 28 '23 at 07:43
  • Android:

    Android:


    [ ID] Interval Transfer Bandwidth [ 5] 0.00-6.41 sec 0.00 Bytes 0.00 bits/sec sender [ 5] 0.00-6.41 sec 48.1 MBytes 63.0 Mbits/sec receiver

    – AJ. Jan 28 '23 at 07:43
  • From a Raspberry Pi connected to the router via ethernet:

    [ ID] Interval Transfer Bitrate Retr [ 5] 0.00-10.00 sec 177 MBytes 148 Mbits/sec 36 sender [ 5] 0.00-10.00 sec 176 MBytes 148 Mbits/sec receiver

    – AJ. Jan 28 '23 at 07:45
  • The reason for this test is to isolate whether it’s local to you or an external factor. Can you [edit] your question with the results? It’s impossible to read in comments. – Allan Jan 28 '23 at 15:10
  • could you also try some speedtest measuring app? Instead of speedtest measuring page in the browser. – Andra Jan 28 '23 at 17:24

0 Answers0