Intel Wireless-N 2230 4x faster in Windows 7 than 15.04 (iwlwifi)

Bug #1450755 reported by Aaron Whitehouse
12
This bug affects 2 people
Affects Status Importance Assigned to Milestone
linux (Ubuntu)
Expired
Medium
Unassigned

Bug Description

My Intel wireless card is significantly slower in Ubuntu than it is in Windows 7. Turning off Power Management didn't change anything. I'm using the latest upstream firmware:
iwlwifi 0000:07:00.0: loaded firmware version 18.168.6.1 op_mode iwldvm

According to iperf (with the laptop a couple of feet from the router and the server plugged into it):
== Ubuntu 15.04 ==
[ 4] local 192.168.0.102 port 5001 connected with 192.168.0.3 port 43672
[ ID] Interval Transfer Bandwidth
[ 4] 0.0-10.1 sec 23.2 MBytes 19.3 Mbits/sec

== Windows 7 ==
[ 4] local 192.168.0.102 port 5001 connected with 192.168.0.3 port 49247
[ 4] 0.0-10.1 sec 98.4 MBytes 82.0 Mbits/sec

Transfer rates for previous Ubuntu releases are about the same:
13.10:
[ ID] Interval Transfer Bandwidth
[ 3] 0.0-10.1 sec 22.6 MBytes 18.9 Mbits/sec
14.10
[ ID] Interval Transfer Bandwidth
[ 3] 0.0-10.1 sec 27.8 MBytes 23.1 Mbits/sec

WiFi Router details:
Virgin Media Superhub 2 (Netgear VMDG485)
Boot Code Version PSPU-Boot 1.0.20.1356
Software Version V1.01.29
Hardware Version 3.11

ProblemType: Bug
DistroRelease: Ubuntu 15.04
Package: linux-image-3.19.0-15-generic 3.19.0-15.15
ProcVersionSignature: Ubuntu 3.19.0-15.15-generic 3.19.3
Uname: Linux 3.19.0-15-generic x86_64
ApportVersion: 2.17.2-0ubuntu1
Architecture: amd64
AudioDevicesInUse:
 USER PID ACCESS COMMAND
 /dev/snd/controlC0: aaron 2193 F.... pulseaudio
CurrentDesktop: Unity
Date: Fri May 1 10:37:38 2015
EcryptfsInUse: Yes
InstallationDate: Installed on 2013-04-26 (734 days ago)
InstallationMedia: Ubuntu 13.04 "Raring Ringtail" - Release amd64 (20130424)
MachineType: Dell Inc. Inspiron 5423
ProcFB:
 0 inteldrmfb
 1 radeondrmfb
ProcKernelCmdLine: BOOT_IMAGE=/vmlinuz-3.19.0-15-generic root=UUID=e429a76e-75c0-44b9-90d4-a75ee21d98a2 ro quiet splash vt.handoff=7
RelatedPackageVersions:
 linux-restricted-modules-3.19.0-15-generic N/A
 linux-backports-modules-3.19.0-15-generic N/A
 linux-firmware 1.143
SourcePackage: linux
UpgradeStatus: Upgraded to vivid on 2015-04-25 (5 days ago)
dmi.bios.date: 08/03/2012
dmi.bios.vendor: Dell Inc.
dmi.bios.version: A03
dmi.board.name: 0RMVR3
dmi.board.vendor: Dell Inc.
dmi.board.version: A03
dmi.chassis.type: 8
dmi.chassis.vendor: Dell Inc.
dmi.chassis.version: Not Specified
dmi.modalias: dmi:bvnDellInc.:bvrA03:bd08/03/2012:svnDellInc.:pnInspiron5423:pvrNotSpecified:rvnDellInc.:rn0RMVR3:rvrA03:cvnDellInc.:ct8:cvrNotSpecified:
dmi.product.name: Inspiron 5423
dmi.product.version: Not Specified
dmi.sys.vendor: Dell Inc.

Revision history for this message
Aaron Whitehouse (aaron-whitehouse) wrote :
Revision history for this message
Brad Figg (brad-figg) wrote : Status changed to Confirmed

This change was made by a bot.

Changed in linux (Ubuntu):
status: New → Confirmed
Changed in linux (Ubuntu):
importance: Undecided → Medium
penalvch (penalvch)
tags: added: bios-outdated-a13
Changed in linux (Ubuntu):
status: Confirmed → Incomplete
Revision history for this message
Aaron Whitehouse (aaron-whitehouse) wrote :

Updating the BIOS does not solve the issue (the speed actually reduced slightly).

After updating the BIOS, this is the output:
[ 3] local 192.168.0.3 port 49429 connected with 192.168.0.102 port 5001
[ ID] Interval Transfer Bandwidth
[ 3] 0.0-10.1 sec 21.6 MBytes 18.0 Mbits/sec

$ sudo dmidecode -s bios-version && sudo dmidecode -s bios-release-date
[sudo] password for [...]:
A13
05/18/2013

Changed in linux (Ubuntu):
status: Incomplete → Confirmed
Revision history for this message
penalvch (penalvch) wrote :

Aaron Whitehouse, could you please test the latest upstream kernel available from the very top line at the top of the page (the release names are irrelevant for testing, and please do not test the daily folder) following https://wiki.ubuntu.com/KernelMainlineBuilds ? It will allow additional upstream developers to examine the issue.

If the test did not allow you to test to the issue (ex. you couldn't boot into the OS) please make a comment in your report about this, and continue to test the next most recent kernel version until you can test to the issue. Once you've tested the upstream kernel, please comment on which kernel version specifically you tested. If this bug is fixed in the mainline kernel, please add the following tags by clicking on the yellow circle with a black pencil icon, next to the word Tags, located at the bottom of the report description:
kernel-fixed-upstream
kernel-fixed-upstream-X.Y-rcZ

Where XY and Z are numbers corresponding to the kernel version.

If the mainline kernel does not fix this bug, please add the following tags:
kernel-bug-exists-upstream
kernel-bug-exists-upstream-X.Y-rcZ

Once testing of the upstream kernel is complete, please mark this bug's Status as Confirmed. Please let us know your results.

tags: added: latest-bios-a13
removed: bios-outdated-a13
Changed in linux (Ubuntu):
status: Confirmed → Incomplete
Revision history for this message
Aaron Whitehouse (aaron-whitehouse) wrote :

I have just tested this with the latest upstream kernel:
$ iperf -c 192.168.0.102
------------------------------------------------------------
Client connecting to 192.168.0.102, TCP port 5001
TCP window size: 85.0 KByte (default)
------------------------------------------------------------
[ 3] local 192.168.0.3 port 40963 connected with 192.168.0.102 port 5001
[ ID] Interval Transfer Bandwidth
[ 3] 0.0-10.1 sec 19.5 MBytes 16.2 Mbits/sec

$ uname -r
4.1.0-040100rc3-generic

So it appears that the bug exists upstream.

tags: added: kernel-bug-exists-upstream kernel-bug-exists-upstream-4.1-rc3
Changed in linux (Ubuntu):
status: Incomplete → Confirmed
Revision history for this message
penalvch (penalvch) wrote :

Aaron Whitehouse, could you please provide the full router manufacturer, model, and firmware version?

Changed in linux (Ubuntu):
status: Confirmed → Incomplete
Revision history for this message
Aaron Whitehouse (aaron-whitehouse) wrote :

It's a Virgin Media Superhub 2, which is a Netgear VMDG485:

Information Cable Modem EuroDOCSIS 3.0 Compliant
Serial Number 3BW132UG04977
Boot Code Version PSPU-Boot 1.0.20.1356
Software Version V1.01.29
Hardware Version 3.11

Please let me know if you need anything further.

Changed in linux (Ubuntu):
status: Incomplete → Confirmed
penalvch (penalvch)
Changed in linux (Ubuntu):
status: Confirmed → Incomplete
Revision history for this message
Aaron Whitehouse (aaron-whitehouse) wrote :

I don't think so, no.

It's this:
http://electronics360.globalspec.com/article/3410/netgear-super-hub-2-vmdg485-wireless-router-teardown
which looks quite different to the pictures on the page that you linked to.

Revision history for this message
penalvch (penalvch) wrote :

Aaron Whitehouse, just to clarify, could you please post the results of the following terminal command:
iwconfig

Revision history for this message
Aaron Whitehouse (aaron-whitehouse) wrote :

Updated to latest upstream again.
$ uname -r
4.1.0-040100rc6-generic
================================================
$ iwconfig
virbr0-nic no wireless extensions.

eth0 no wireless extensions.

wlan0 IEEE 802.11bgn ESSID:"VM851079-2G"
          Mode:Managed Frequency:2.462 GHz Access Point: 10:0D:7F:18:C4:80
          Bit Rate=65 Mb/s Tx-Power=16 dBm
          Retry short limit:7 RTS thr:off Fragment thr:off
          Power Management:on
          Link Quality=70/70 Signal level=-30 dBm
          Rx invalid nwid:0 Rx invalid crypt:0 Rx invalid frag:0
          Tx excessive retries:0 Invalid misc:77 Missed beacon:0

virbr0 no wireless extensions.

lo no wireless extensions.
=================================================================
$ iperf -c 192.168.0.102
------------------------------------------------------------
Client connecting to 192.168.0.102, TCP port 5001
TCP window size: 85.0 KByte (default)
------------------------------------------------------------
[ 3] local 192.168.0.3 port 49106 connected with 192.168.0.102 port 5001
[ ID] Interval Transfer Bandwidth
[ 3] 0.0-10.1 sec 23.1 MBytes 19.2 Mbits/sec

=================================================================
Latest router info:

Information Cable Modem EuroDOCSIS 3.0 Compliant
Serial Number 3BW132UG04977
Boot Code Version PSPU-Boot 1.0.20.1356
Software Version V1.01.29
Hardware Version 3.11

Changed in linux (Ubuntu):
status: Incomplete → Confirmed
Revision history for this message
penalvch (penalvch) wrote :

Aaron Whitehouse, if you disable Power Management, does this provide a WORKAROUND?

Changed in linux (Ubuntu):
status: Confirmed → Incomplete
Revision history for this message
Aaron Whitehouse (aaron-whitehouse) wrote :

No, it doesn't seem to.

=========================================================
$ iwconfig
virbr0-nic no wireless extensions.

eth0 no wireless extensions.

wlan0 IEEE 802.11bgn ESSID:"VM851079-2G"
          Mode:Managed Frequency:2.462 GHz Access Point: 10:0D:7F:18:C4:80
          Bit Rate=130 Mb/s Tx-Power=16 dBm
          Retry short limit:7 RTS thr:off Fragment thr:off
          Power Management:on
          Link Quality=70/70 Signal level=-30 dBm
          Rx invalid nwid:0 Rx invalid crypt:0 Rx invalid frag:0
          Tx excessive retries:0 Invalid misc:56 Missed beacon:0

virbr0 no wireless extensions.

lo no wireless extensions.
======================================================
$ iperf -c 192.168.0.102
------------------------------------------------------------
Client connecting to 192.168.0.102, TCP port 5001
TCP window size: 85.0 KByte (default)
------------------------------------------------------------
[ 3] local 192.168.0.3 port 39692 connected with 192.168.0.102 port 5001
[ ID] Interval Transfer Bandwidth
[ 3] 0.0-10.1 sec 21.2 MBytes 17.6 Mbits/sec
========================================================
$ sudo iwconfig wlan0 power off
[sudo] password for :
========================================================
$ iwconfig
virbr0-nic no wireless extensions.

eth0 no wireless extensions.

wlan0 IEEE 802.11bgn ESSID:"VM851079-2G"
          Mode:Managed Frequency:2.462 GHz Access Point: 10:0D:7F:18:C4:80
          Bit Rate=130 Mb/s Tx-Power=16 dBm
          Retry short limit:7 RTS thr:off Fragment thr:off
          Power Management:off
          Link Quality=70/70 Signal level=-30 dBm
          Rx invalid nwid:0 Rx invalid crypt:0 Rx invalid frag:0
          Tx excessive retries:0 Invalid misc:107 Missed beacon:0

virbr0 no wireless extensions.

lo no wireless extensions.
=======================================================
$ iperf -c 192.168.0.102
------------------------------------------------------------
Client connecting to 192.168.0.102, TCP port 5001
TCP window size: 85.0 KByte (default)
------------------------------------------------------------
[ 3] local 192.168.0.3 port 39693 connected with 192.168.0.102 port 5001
[ ID] Interval Transfer Bandwidth
[ 3] 0.0-10.1 sec 13.1 MBytes 10.9 Mbits/sec
================================================
[Tried again immediately afterwards, without changing anything]
$ iperf -c 192.168.0.102
------------------------------------------------------------
Client connecting to 192.168.0.102, TCP port 5001
TCP window size: 85.0 KByte (default)
------------------------------------------------------------
[ 3] local 192.168.0.3 port 39694 connected with 192.168.0.102 port 5001
[ ID] Interval Transfer Bandwidth
[ 3] 0.0-10.1 sec 27.4 MBytes 22.8 Mbits/sec

Changed in linux (Ubuntu):
status: Incomplete → Confirmed
penalvch (penalvch)
description: updated
tags: added: saucy utopic
Revision history for this message
penalvch (penalvch) wrote :

Aaaron Whitehouse, with the latest mainline kernel (4.1-rc6) does switching 802.11 type (ex. N to G or vice versa) change anything?

Changed in linux (Ubuntu):
status: Confirmed → Incomplete
Revision history for this message
Launchpad Janitor (janitor) wrote :

[Expired for linux (Ubuntu) because there has been no activity for 60 days.]

Changed in linux (Ubuntu):
status: Incomplete → Expired
Revision history for this message
Aaron Whitehouse (aaron-whitehouse) wrote :

This issue still persists in 15.10.

$ iperf -s
------------------------------------------------------------
Server listening on TCP port 5001
TCP window size: 85.3 KByte (default)
------------------------------------------------------------
[ 4] local 192.168.0.102 port 5001 connected with 192.168.0.2 port 49287
[ ID] Interval Transfer Bandwidth
[ 4] 0.0-10.0 sec 83.9 MBytes 70.2 Mbits/sec
[ 5] local 192.168.0.102 port 5001 connected with 192.168.0.2 port 49294
[ 5] 0.0-10.0 sec 78.4 MBytes 65.6 Mbits/sec
[ 4] local 192.168.0.102 port 5001 connected with 192.168.0.2 port 49296
[ 4] 0.0-10.0 sec 84.5 MBytes 70.8 Mbits/sec
[ 5] local 192.168.0.102 port 5001 connected with 192.168.0.2 port 55344
[ 5] 0.0-10.0 sec 14.5 MBytes 12.2 Mbits/sec
[ 4] local 192.168.0.102 port 5001 connected with 192.168.0.2 port 55346
[ 4] 0.0-10.2 sec 14.4 MBytes 11.8 Mbits/sec
[ 5] local 192.168.0.102 port 5001 connected with 192.168.0.2 port 55348
[ 5] 0.0-10.2 sec 11.2 MBytes 9.27 Mbits/sec

The first three results are on Windows 7, second three are on Ubuntu 15.10. Same laptop in the same place.

Kernel version is 4.2.0-25-generic

I can install the mainline kernel again to try to help. You asked whether switching 802.11 type made any difference on the mainline kernel - what is the easiest way to switch between these 802.11 types?

Revision history for this message
penalvch (penalvch) wrote :

Aaron Whitehouse, one would do this via the router admin console.

tags: added: wily
Revision history for this message
Aaron Whitehouse (aaron-whitehouse) wrote :

Ah right, thanks Christopher. Sorry, I thought you were meaning on the Ubuntu side. I've now done that (on the latest mainline) and there doesn't seem to be a significant variation.

$ uname -r
4.5.0-040500rc5-generic
Wireless mode was 'Up to 144Mbps (best for wireless range)'
$ iperf -c 192.168.0.102
------------------------------------------------------------
Client connecting to 192.168.0.102, TCP port 5001
TCP window size: 85.0 KByte (default)
------------------------------------------------------------
[ 3] local 192.168.0.2 port 56136 connected with 192.168.0.102 port 5001
[ ID] Interval Transfer Bandwidth
[ 3] 0.0-10.2 sec 20.8 MBytes 17.1 Mbits/sec

Changed to 'Up to 300Mbps (best for wireless performance)'
$ iperf -c 192.168.0.102
------------------------------------------------------------
Client connecting to 192.168.0.102, TCP port 5001
TCP window size: 85.0 KByte (default)
------------------------------------------------------------
[ 3] local 192.168.0.2 port 56200 connected with 192.168.0.102 port 5001
[ ID] Interval Transfer Bandwidth
[ 3] 0.0-10.1 sec 23.9 MBytes 19.8 Mbits/sec

Changed to 'Up to 54Mbps (best for wireless compatibility with older devices)'
$ iperf -c 192.168.0.102
------------------------------------------------------------
Client connecting to 192.168.0.102, TCP port 5001
TCP window size: 85.0 KByte (default)
------------------------------------------------------------
[ 3] local 192.168.0.2 port 56222 connected with 192.168.0.102 port 5001
[ ID] Interval Transfer Bandwidth
[ 3] 0.0-10.0 sec 25.0 MBytes 20.9 Mbits/sec

Revision history for this message
Aaron Whitehouse (aaron-whitehouse) wrote :

For comparison, on Windows 7 (machine in same spot)

Up to 54Mbps
>iperf -c 192.168.0.102
------------------------------------------------------------
Client connecting to 192.168.0.102, TCP port 5001
TCP window size: 63.0 KByte (default)
------------------------------------------------------------
[ 3] local 192.168.0.2 port 49809 connected with 192.168.0.102 port 5001
[ ID] Interval Transfer Bandwidth
[ 3] 0.0-10.1 sec 26.8 MBytes 22.3 Mbits/sec

Changed to Up to 144Mbps

>iperf -c 192.168.0.102
------------------------------------------------------------
Client connecting to 192.168.0.102, TCP port 5001
TCP window size: 63.0 KByte (default)
------------------------------------------------------------
[ 3] local 192.168.0.2 port 49828 connected with 192.168.0.102 port 5001
[ ID] Interval Transfer Bandwidth
[ 3] 0.0-10.0 sec 66.2 MBytes 55.4 Mbits/sec

Changed to Up to 300Mbps

>iperf -c 192.168.0.102
------------------------------------------------------------
Client connecting to 192.168.0.102, TCP port 5001
TCP window size: 63.0 KByte (default)
------------------------------------------------------------
[ 3] local 192.168.0.2 port 49838 connected with 192.168.0.102 port 5001
[ ID] Interval Transfer Bandwidth
[ 3] 0.0-10.0 sec 66.5 MBytes 55.7 Mbits/sec

================================================================

So, in summary:

                                                                                  | Mainline 4.5rc5 | Windows 7 |
Up to 54 Mbps | 20.9 Mbps | 22.3 Mbps |
Up to 144Mbps (best for wireless range) | 17.1 Mbps | 55.4 Mbps |
Up to 300Mbps (best for w/ performance) | 19.8 Mbps | 55.7 Mbps |

================================================================

penalvch (penalvch)
tags: added: kernel-bug-exists-upstream-4.5-rc5
removed: kernel-bug-exists-upstream-4.1-rc3
description: updated
penalvch (penalvch)
description: updated
Revision history for this message
penalvch (penalvch) wrote :

Aaron Whitehouse, I was a little surprised you didn't see a noticeable performance improvement when putting the router in compatibility mode.

Despite this, to confirm it's not just downstepping your speed with the same method, if you put the router in compatibility mode, keep power management off (and going forward on all future test), and then execute the following in Ubuntu does it change anything (a simple yes/no is fine here):
sudo rmmod iwlwifi
sudo modprobe iwlwifi 11n_disable=1

Revision history for this message
Aaron Whitehouse (aaron-whitehouse) wrote :

Thanks Christopher,

Do you want me to do this with the latest mainline kernel, rather than the Ubuntu 15.10 one?

Revision history for this message
penalvch (penalvch) wrote :

Aaron Whitehouse, yes, always test the latest mainline kernel (and mention which version used precisely) in all future tests unless specifically asked otherwise.

To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.