2011-03-19 18:22:52

by Richard Kettlewell

[permalink] [raw]
Subject: Re: Bug#618930: High network latency with ralink usb wireless device

(see also bugs.debian.org/618930 though AFAIK everything important is
reproduced in this message.)

On 19/03/2011 17:30, Ben Hutchings wrote:
> Sorry, no. Please report this upstream to
> [email protected] and cc the bug address.

I have a TP-Link TL-WN321G USB wireless adapter, which is a badged
Ralink RT2070. Under Debian's 2.6.32 this worked smoothly with
rt2870sta. On upgrading to Debian's 2.6.38, however, only rt2800usb was
available and with that I found that ping latency is around 600ms.

== Under 2.6.32, with rt2870sta ==

richard@violeer:~$ uname -a
Linux violeer 2.6.32-5-686 #1 SMP Wed Jan 12 04:01:41 UTC 2011 i686
GNU/Linux
richard@violeer:~$ iwconfig
lo no wireless extensions.

eth0 no wireless extensions.

wlan0 Ralink STA ESSID:"wlan.anjou.terraraq.org.uk"
Nickname:"RT2870STA"
Mode:Managed Frequency=2.442 GHz Access Point:
00:0F:CB:A0:0C:70
Bit Rate=54 Mb/s
RTS thr:off Fragment thr:off
Link Quality=100/100 Signal level:-45 dBm Noise level:-83 dBm
Rx invalid nwid:0 Rx invalid crypt:0 Rx invalid frag:0
Tx excessive retries:0 Invalid misc:0 Missed beacon:0

richard@sfere:~$ ping -qc10 violeer
PING violeer.wlan.anjou.terraraq.org.uk (172.31.59.138) 56(84) bytes of
data.

--- violeer.wlan.anjou.terraraq.org.uk ping statistics ---
10 packets transmitted, 10 received, 0% packet loss, time 9013ms
rtt min/avg/max/mdev = 0.973/1.094/1.490/0.141 ms

== Under 2.6.38, with rt2800usb ==

richard@violeer:~$ uname -a
Linux violeer 2.6.38-1-686 #1 SMP Wed Mar 16 17:37:47 UTC 2011 i686
GNU/Linux
richard@violeer:~$ iwconfig
lo no wireless extensions.

eth0 no wireless extensions.

wlan0 IEEE 802.11bg ESSID:"wlan.anjou.terraraq.org.uk"
Mode:Managed Frequency:2.442 GHz Access Point:
00:0F:CB:A0:0C:70
Bit Rate=18 Mb/s Tx-Power=20 dBm
Retry long limit:7 RTS thr:off Fragment thr:off
Power Management:on
Link Quality=67/70 Signal level=-43 dBm
Rx invalid nwid:0 Rx invalid crypt:0 Rx invalid frag:0
Tx excessive retries:2 Invalid misc:6 Missed beacon:0


richard@sfere:~$ ping -qc10 violeer
PING violeer.wlan.anjou.terraraq.org.uk (172.31.59.138) 56(84) bytes of
data.

--- violeer.wlan.anjou.terraraq.org.uk ping statistics ---
10 packets transmitted, 10 received, 0% packet loss, time 9006ms
rtt min/avg/max/mdev = 509.111/603.472/630.232/47.090 ms

== lsusb output ==

Bus 001 Device 002: ID 148f:2070 Ralink Technology, Corp. RT2070
Wireless Adapter
Device Descriptor:
bLength 18
bDescriptorType 1
bcdUSB 2.00
bDeviceClass 0 (Defined at Interface level)
bDeviceSubClass 0
bDeviceProtocol 0
bMaxPacketSize0 64
idVendor 0x148f Ralink Technology, Corp.
idProduct 0x2070 RT2070 Wireless Adapter
bcdDevice 1.01
iManufacturer 1 Ralink
iProduct 2 802.11 g WLAN
iSerial 3 1.0
bNumConfigurations 1
Configuration Descriptor:
bLength 9
bDescriptorType 2
wTotalLength 67
bNumInterfaces 1
bConfigurationValue 1
iConfiguration 0
bmAttributes 0x80
(Bus Powered)
MaxPower 450mA
Interface Descriptor:
bLength 9
bDescriptorType 4
bInterfaceNumber 0
bAlternateSetting 0
bNumEndpoints 7
bInterfaceClass 255 Vendor Specific Class
bInterfaceSubClass 255 Vendor Specific Subclass
bInterfaceProtocol 255 Vendor Specific Protocol
iInterface 5 1.0
Endpoint Descriptor:
bLength 7
bDescriptorType 5
bEndpointAddress 0x81 EP 1 IN
bmAttributes 2
Transfer Type Bulk
Synch Type None
Usage Type Data
wMaxPacketSize 0x0200 1x 512 bytes
bInterval 0
Endpoint Descriptor:
bLength 7
bDescriptorType 5
bEndpointAddress 0x01 EP 1 OUT
bmAttributes 2
Transfer Type Bulk
Synch Type None
Usage Type Data
wMaxPacketSize 0x0200 1x 512 bytes
bInterval 0
Endpoint Descriptor:
bLength 7
bDescriptorType 5
bEndpointAddress 0x02 EP 2 OUT
bmAttributes 2
Transfer Type Bulk
Synch Type None
Usage Type Data
wMaxPacketSize 0x0200 1x 512 bytes
bInterval 0
Endpoint Descriptor:
bLength 7
bDescriptorType 5
bEndpointAddress 0x03 EP 3 OUT
bmAttributes 2
Transfer Type Bulk
Synch Type None
Usage Type Data
wMaxPacketSize 0x0200 1x 512 bytes
bInterval 0
Endpoint Descriptor:
bLength 7
bDescriptorType 5
bEndpointAddress 0x04 EP 4 OUT
bmAttributes 2
Transfer Type Bulk
Synch Type None
Usage Type Data
wMaxPacketSize 0x0200 1x 512 bytes
bInterval 0
Endpoint Descriptor:
bLength 7
bDescriptorType 5
bEndpointAddress 0x05 EP 5 OUT
bmAttributes 2
Transfer Type Bulk
Synch Type None
Usage Type Data
wMaxPacketSize 0x0200 1x 512 bytes
bInterval 0
Endpoint Descriptor:
bLength 7
bDescriptorType 5
bEndpointAddress 0x06 EP 6 OUT
bmAttributes 2
Transfer Type Bulk
Synch Type None
Usage Type Data
wMaxPacketSize 0x0200 1x 512 bytes
bInterval 0

== dmesg output ==

root@violeer:~# dmesg|grep -E rt2\|wlan
[ 12.344624] Registered led device: rt2800usb-phy0::radio
[ 12.344653] Registered led device: rt2800usb-phy0::assoc
[ 12.344679] Registered led device: rt2800usb-phy0::quality
[ 12.346539] usbcore: registered new interface driver rt2800usb
[ 14.895564] ADDRCONF(NETDEV_UP): wlan0: link is not ready
[ 18.829895] wlan0: authenticate with 00:0f:cb:a0:0c:70 (try 1)
[ 18.831281] wlan0: authenticated
[ 20.432339] wlan0: associate with 00:0f:cb:a0:0c:70 (try 1)
[ 20.434597] wlan0: RX AssocResp from 00:0f:cb:a0:0c:70 (capab=0x431
status=0 aid=2)
[ 20.434601] wlan0: associated
[ 20.442967] ADDRCONF(NETDEV_CHANGE): wlan0: link becomes ready


2011-03-20 09:12:41

by Richard Kettlewell

[permalink] [raw]
Subject: Re: Bug#618930: High network latency with ralink usb wireless device

On 19/03/2011 22:31, Johannes Stezenbach wrote:

> I sent a patch to disable power save by default, but then work started
> to fix it instead, but then stalled. Seems like 2.6.38 shipped with
> broken power save enabled by default. Plese read the discussion
> following my RFC patch:
> http://rt2x00.serialmonkey.com/pipermail/users_rt2x00.serialmonkey.com/2011-January/thread.html#3017
>
> You can test if power saving causes your issue by disabling
> it with "iwconfig wlan0 power off".

That does the trick - thanks!

richard@sfere:~$ ssh violeer uname -a
Linux violeer 2.6.38-1-686 #1 SMP Wed Mar 16 17:37:47 UTC 2011 i686
GNU/Linux
richard@sfere:~$ ping -qc10 violeer
PING violeer.wlan.anjou.terraraq.org.uk (172.31.59.138) 56(84) bytes of
data.

--- violeer.wlan.anjou.terraraq.org.uk ping statistics ---
10 packets transmitted, 10 received, 0% packet loss, time 9016ms
rtt min/avg/max/mdev = 0.919/0.981/1.089/0.057 ms
richard@sfere:~$

ttfn/rjk

2011-03-19 22:32:03

by Johannes Stezenbach

[permalink] [raw]
Subject: Re: Bug#618930: High network latency with ralink usb wireless device

On Sat, Mar 19, 2011 at 05:49:04PM +0000, Richard Kettlewell wrote:
> (see also bugs.debian.org/618930
...
> I have a TP-Link TL-WN321G USB wireless adapter, which is a badged
> Ralink RT2070. Under Debian's 2.6.32 this worked smoothly with
> rt2870sta. On upgrading to Debian's 2.6.38, however, only rt2800usb
> was available and with that I found that ping latency is around
> 600ms.
...
> Power Management:on

I sent a patch to disable power save by default, but then work started
to fix it instead, but then stalled. Seems like 2.6.38 shipped with
broken power save enabled by default. Plese read the discussion
following my RFC patch:
http://rt2x00.serialmonkey.com/pipermail/users_rt2x00.serialmonkey.com/2011-January/thread.html#3017

You can test if power saving causes your issue by disabling
it with "iwconfig wlan0 power off".

Johannes

2011-03-19 23:32:34

by Walter Goldens

[permalink] [raw]
Subject: Re: Bug#618930: High network latency with ralink usb wireless device


>
> I sent a patch to disable power save by default, but then
> work started
> to fix it instead, but then stalled.? Seems like
> 2.6.38 shipped with
> broken power save enabled by default.? Plese read the
> discussion
> following my RFC patch:
> http://rt2x00.serialmonkey.com/pipermail/users_rt2x00.serialmonkey.com/2011-January/thread.html#3017
>
> You can test if power saving causes your issue by
> disabling
> it with "iwconfig wlan0 power off".
>

Hi Johannes

Does this patch touches on lost and duplicate packets with rt3070 USB as well?

Walter




2012-04-24 05:21:13

by Jonathan Nieder

[permalink] [raw]
Subject: Re: High network latency with ralink usb wireless device

Hi Ben,

About a year ago, Richard Kettlewell wrote[1]:
> On 19/03/2011 22:31, Johannes Stezenbach wrote:

>> I sent a patch to disable power save by default, but then work started
>> to fix it instead, but then stalled. Seems like 2.6.38 shipped with
>> broken power save enabled by default. Plese read the discussion
>> following my RFC patch:
>> http://rt2x00.serialmonkey.com/pipermail/users_rt2x00.serialmonkey.com/2011-January/thread.html#3017
>>
>> You can test if power saving causes your issue by disabling
>> it with "iwconfig wlan0 power off".
>
> That does the trick - thanks!

Therefore ever since version 2.6.38-2, Debian kernels have had
powersaving disabled on rt2800usb devices.

I think we should revisit this in light of

v3.0-rc2~7^2~16^2~190 rt2x00: Add autowake support for USB hardware
(2011-04-30)

though I wouldn't be surprised if testing ends up revealing some
followup patches introduced after v3.2 to be needed for it to work
well. What do you think?

Thanks,
Jonathan

[1] http://bugs.debian.org/618930