Ticket #2320 (closed defect: wontfix)

Opened 9 years ago

Last modified 21 months ago

icmp ping RTT over wifi plotted over time forms a sawtooth wave

Reported by: lindi Owned by: openmoko-kernel
Priority: normal Milestone:
Component: kernel Version: unspecified
Severity: normal Keywords: wifi latency kernel
Cc: Blocked By:
Blocking: Estimated Completion (week):
HasPatchForReview: no PatchReviewResult:
Reproducible: always

Description

icmp ping over wifi seems to show very peculiar delays that increase by around 10 ms on every attempt and at some point reset back to 20 ms:

$ ping 192.168.2.1
64 bytes from 192.168.2.1: icmp_seq=29 ttl=64 time=20.1 ms
64 bytes from 192.168.2.1: icmp_seq=30 ttl=64 time=40.1 ms
64 bytes from 192.168.2.1: icmp_seq=31 ttl=64 time=60.1 ms
64 bytes from 192.168.2.1: icmp_seq=32 ttl=64 time=80.3 ms
64 bytes from 192.168.2.1: icmp_seq=33 ttl=64 time=90.3 ms
64 bytes from 192.168.2.1: icmp_seq=34 ttl=64 time=110 ms
64 bytes from 192.168.2.1: icmp_seq=35 ttl=64 time=30.1 ms
64 bytes from 192.168.2.1: icmp_seq=36 ttl=64 time=50.1 ms
64 bytes from 192.168.2.1: icmp_seq=37 ttl=64 time=70.1 ms
64 bytes from 192.168.2.1: icmp_seq=38 ttl=64 time=90.2 ms
64 bytes from 192.168.2.1: icmp_seq=39 ttl=64 time=109 ms
64 bytes from 192.168.2.1: icmp_seq=40 ttl=64 time=20.1 ms
64 bytes from 192.168.2.1: icmp_seq=41 ttl=64 time=40.1 ms
64 bytes from 192.168.2.1: icmp_seq=42 ttl=64 time=60.1 ms
64 bytes from 192.168.2.1: icmp_seq=43 ttl=64 time=85.5 ms
64 bytes from 192.168.2.1: icmp_seq=44 ttl=64 time=104 ms
64 bytes from 192.168.2.1: icmp_seq=45 ttl=64 time=115 ms
64 bytes from 192.168.2.1: icmp_seq=46 ttl=64 time=447 ms
64 bytes from 192.168.2.1: icmp_seq=47 ttl=64 time=770 ms
64 bytes from 192.168.2.1: icmp_seq=48 ttl=64 time=380 ms
64 bytes from 192.168.2.1: icmp_seq=49 ttl=64 time=90.2 ms
64 bytes from 192.168.2.1: icmp_seq=50 ttl=64 time=110 ms
64 bytes from 192.168.2.1: icmp_seq=51 ttl=64 time=30.1 ms
64 bytes from 192.168.2.1: icmp_seq=52 ttl=64 time=50.1 ms
64 bytes from 192.168.2.1: icmp_seq=53 ttl=64 time=70.1 ms
64 bytes from 192.168.2.1: icmp_seq=54 ttl=64 time=90.2 ms
64 bytes from 192.168.2.1: icmp_seq=55 ttl=64 time=100 ms
64 bytes from 192.168.2.1: icmp_seq=56 ttl=64 time=21.5 ms
64 bytes from 192.168.2.1: icmp_seq=57 ttl=64 time=40.1 ms
64 bytes from 192.168.2.1: icmp_seq=58 ttl=64 time=60.0 ms
64 bytes from 192.168.2.1: icmp_seq=59 ttl=64 time=80.3 ms
64 bytes from 192.168.2.1: icmp_seq=60 ttl=64 time=100 ms
64 bytes from 192.168.2.1: icmp_seq=61 ttl=64 time=120 ms
64 bytes from 192.168.2.1: icmp_seq=62 ttl=64 time=30.1 ms
64 bytes from 192.168.2.1: icmp_seq=63 ttl=64 time=50.0 ms
64 bytes from 192.168.2.1: icmp_seq=64 ttl=64 time=70.1 ms
64 bytes from 192.168.2.1: icmp_seq=65 ttl=64 time=90.2 ms
64 bytes from 192.168.2.1: icmp_seq=66 ttl=64 time=110 ms
64 bytes from 192.168.2.1: icmp_seq=67 ttl=64 time=30.1 ms
64 bytes from 192.168.2.1: icmp_seq=68 ttl=64 time=50.0 ms
64 bytes from 192.168.2.1: icmp_seq=69 ttl=64 time=60.0 ms
64 bytes from 192.168.2.1: icmp_seq=70 ttl=64 time=80.3 ms
64 bytes from 192.168.2.1: icmp_seq=71 ttl=64 time=100 ms
64 bytes from 192.168.2.1: icmp_seq=72 ttl=64 time=20.1 ms
64 bytes from 192.168.2.1: icmp_seq=73 ttl=64 time=40.1 ms
64 bytes from 192.168.2.1: icmp_seq=74 ttl=64 time=60.1 ms

linux is andy-tracking a3587e4ed77974ad
hardware is gta02v5
tested with two WLAN APs, one is wrt54gl v1.1 running openwrt svn r18459 with b43 driver and the other one is unknown.

Is something buffering the packets?

Since ping measures RTT I used

nc -lp1234 -u | perl -e 'use Time::HiRes?; $| = 1; while (<>) { $l=Time::HiRes::time() - $_; $l*=1000;print "$l\n"; }'
perl -e 'use Time::HiRes?; $| = 1; while (1) { print Time::HiRes::time() . "\n"; sleep(1); }' | nc -u 192.168.0.99 1234

to measure delay from PC to openmoko

12.293959
12.502098
12.347841
11.870050
11.975908
11.922026
12.448931
11.515045
12.295866
11.923933
11.738920
11.603022
11.639023
11.248970
26.214981
11.125946
11.755848
10.733032
11.644983
11.251116
11.290932
11.272812
11.109018
11.723185
11.438990
11.480951
11.324072
11.042976
11.093998
10.823870
14.966869
18.019819

and openmoko to PC

128.469002
129.320871
128.603947
128.538143
128.767979
128.843081
136.215937
133.112204
137.031090
128.907930
128.802073
128.696215
128.594887
129.487049
129.377853
129.401934
129.205000
129.066002
128.966105
128.860008
129.772913
129.657042
137.234938
129.427921
129.323017
129.232895
130.115997
130.011093
130.097162
129.807007
129.707109
129.714024
129.505884

The absolute values mean nothing since the clocks are not entirely in sync. However, we can see here that this test does not show the same variations as we see with ping. What an earth could be going on here? If I ping with shorter interval the delay seems to stick to some value that is different on each attempt:

lindi@ginger:~$ ping -i 0.2 192.168.2.1
PING 192.168.2.1 (192.168.2.1) 56(84) bytes of data.
64 bytes from 192.168.2.1: icmp_seq=1 ttl=64 time=87.4 ms
64 bytes from 192.168.2.1: icmp_seq=2 ttl=64 time=90.2 ms
64 bytes from 192.168.2.1: icmp_seq=3 ttl=64 time=90.1 ms
64 bytes from 192.168.2.1: icmp_seq=4 ttl=64 time=90.1 ms
64 bytes from 192.168.2.1: icmp_seq=5 ttl=64 time=90.1 ms
64 bytes from 192.168.2.1: icmp_seq=6 ttl=64 time=90.1 ms
64 bytes from 192.168.2.1: icmp_seq=7 ttl=64 time=90.3 ms
64 bytes from 192.168.2.1: icmp_seq=8 ttl=64 time=90.1 ms
64 bytes from 192.168.2.1: icmp_seq=9 ttl=64 time=90.0 ms
64 bytes from 192.168.2.1: icmp_seq=10 ttl=64 time=90.1 ms
64 bytes from 192.168.2.1: icmp_seq=11 ttl=64 time=90.1 ms
lindi@ginger:~$ ping -i 0.2 192.168.2.1
PING 192.168.2.1 (192.168.2.1) 56(84) bytes of data.
64 bytes from 192.168.2.1: icmp_seq=1 ttl=64 time=32.1 ms
64 bytes from 192.168.2.1: icmp_seq=2 ttl=64 time=35.4 ms
64 bytes from 192.168.2.1: icmp_seq=3 ttl=64 time=35.3 ms
64 bytes from 192.168.2.1: icmp_seq=4 ttl=64 time=35.3 ms
64 bytes from 192.168.2.1: icmp_seq=5 ttl=64 time=35.3 ms
64 bytes from 192.168.2.1: icmp_seq=6 ttl=64 time=35.3 ms
64 bytes from 192.168.2.1: icmp_seq=7 ttl=64 time=35.3 ms
64 bytes from 192.168.2.1: icmp_seq=8 ttl=64 time=40.1 ms
64 bytes from 192.168.2.1: icmp_seq=9 ttl=64 time=40.1 ms
lindi@ginger:~$ ping -i 0.2 192.168.2.1
PING 192.168.2.1 (192.168.2.1) 56(84) bytes of data.
64 bytes from 192.168.2.1: icmp_seq=1 ttl=64 time=108 ms
64 bytes from 192.168.2.1: icmp_seq=2 ttl=64 time=110 ms
64 bytes from 192.168.2.1: icmp_seq=3 ttl=64 time=110 ms
64 bytes from 192.168.2.1: icmp_seq=4 ttl=64 time=110 ms
64 bytes from 192.168.2.1: icmp_seq=5 ttl=64 time=110 ms
64 bytes from 192.168.2.1: icmp_seq=6 ttl=64 time=110 ms
64 bytes from 192.168.2.1: icmp_seq=7 ttl=64 time=110 ms
64 bytes from 192.168.2.1: icmp_seq=8 ttl=64 time=105 ms
64 bytes from 192.168.2.1: icmp_seq=9 ttl=64 time=110 ms
64 bytes from 192.168.2.1: icmp_seq=10 ttl=64 time=110 ms
64 bytes from 192.168.2.1: icmp_seq=11 ttl=64 time=110 ms
64 bytes from 192.168.2.1: icmp_seq=12 ttl=64 time=110 ms
64 bytes from 192.168.2.1: icmp_seq=13 ttl=64 time=110 ms

Change History

comment:1 Changed 9 years ago by lindi

Ping from WLAN AP to openmoko:

64 bytes from 192.168.2.114: seq=126 ttl=64 time=39.549 ms
64 bytes from 192.168.2.114: seq=127 ttl=64 time=267.092 ms
64 bytes from 192.168.2.114: seq=128 ttl=64 time=187.093 ms
64 bytes from 192.168.2.114: seq=129 ttl=64 time=105.514 ms
64 bytes from 192.168.2.114: seq=130 ttl=64 time=332.957 ms
64 bytes from 192.168.2.114: seq=131 ttl=64 time=50.108 ms
64 bytes from 192.168.2.114: seq=132 ttl=64 time=72.653 ms
64 bytes from 192.168.2.114: seq=133 ttl=64 time=99.016 ms
64 bytes from 192.168.2.114: seq=134 ttl=64 time=115.992 ms
64 bytes from 192.168.2.114: seq=135 ttl=64 time=41.259 ms
64 bytes from 192.168.2.114: seq=136 ttl=64 time=168.386 ms
64 bytes from 192.168.2.114: seq=137 ttl=64 time=83.513 ms
64 bytes from 192.168.2.114: seq=138 ttl=64 time=415.499 ms
64 bytes from 192.168.2.114: seq=139 ttl=64 time=32.077 ms
64 bytes from 192.168.2.114: seq=140 ttl=64 time=58.256 ms
64 bytes from 192.168.2.114: seq=141 ttl=64 time=80.228 ms
64 bytes from 192.168.2.114: seq=142 ttl=64 time=101.869 ms
64 bytes from 192.168.2.114: seq=143 ttl=64 time=24.256 ms
64 bytes from 192.168.2.114: seq=144 ttl=64 time=49.201 ms
64 bytes from 192.168.2.114: seq=145 ttl=64 time=72.739 ms
64 bytes from 192.168.2.114: seq=146 ttl=64 time=97.274 ms
64 bytes from 192.168.2.114: seq=147 ttl=64 time=111.870 ms
64 bytes from 192.168.2.114: seq=148 ttl=64 time=31.072 ms
64 bytes from 192.168.2.114: seq=149 ttl=64 time=53.700 ms
64 bytes from 192.168.2.114: seq=150 ttl=64 time=82.951 ms
64 bytes from 192.168.2.114: seq=151 ttl=64 time=411.524 ms
64 bytes from 192.168.2.114: seq=152 ttl=64 time=21.095 ms
64 bytes from 192.168.2.114: seq=153 ttl=64 time=152.479 ms
64 bytes from 192.168.2.114: seq=154 ttl=64 time=74.238 ms

comment:2 Changed 9 years ago by BillK

I would actually expect something like this when running in power saving mode - are you doing so? - try using wmiconfig to set maxperf and run the tests again.

One powersaving technique delays transmission in conjunction with the AP so interactions can exist with the various timing parameters.

BillK

comment:3 Changed 9 years ago by lindi

Ok, thanks! After ./wmiconfig -i eth0 --power maxperf I get

64 bytes from 192.168.2.1: icmp_seq=219 ttl=64 time=7.45 ms
64 bytes from 192.168.2.1: icmp_seq=220 ttl=64 time=15.2 ms
64 bytes from 192.168.2.1: icmp_seq=221 ttl=64 time=5.51 ms
64 bytes from 192.168.2.1: icmp_seq=222 ttl=64 time=5.48 ms
64 bytes from 192.168.2.1: icmp_seq=223 ttl=64 time=15.3 ms
64 bytes from 192.168.2.1: icmp_seq=224 ttl=64 time=10.2 ms
64 bytes from 192.168.2.1: icmp_seq=225 ttl=64 time=10.0 ms
64 bytes from 192.168.2.1: icmp_seq=226 ttl=64 time=11.3 ms
64 bytes from 192.168.2.1: icmp_seq=227 ttl=64 time=10.2 ms
64 bytes from 192.168.2.1: icmp_seq=228 ttl=64 time=15.3 ms
64 bytes from 192.168.2.1: icmp_seq=229 ttl=64 time=6.90 ms
64 bytes from 192.168.2.1: icmp_seq=230 ttl=64 time=14.7 ms
64 bytes from 192.168.2.1: icmp_seq=231 ttl=64 time=15.3 ms
64 bytes from 192.168.2.1: icmp_seq=232 ttl=64 time=10.2 ms
64 bytes from 192.168.2.1: icmp_seq=233 ttl=64 time=15.4 ms
64 bytes from 192.168.2.1: icmp_seq=234 ttl=64 time=10.1 ms
64 bytes from 192.168.2.1: icmp_seq=235 ttl=64 time=10.2 ms
64 bytes from 192.168.2.1: icmp_seq=236 ttl=64 time=10.2 ms
64 bytes from 192.168.2.1: icmp_seq=237 ttl=64 time=9.91 ms
64 bytes from 192.168.2.1: icmp_seq=238 ttl=64 time=10.1 ms
64 bytes from 192.168.2.1: icmp_seq=239 ttl=64 time=10.0 ms
64 bytes from 192.168.2.1: icmp_seq=240 ttl=64 time=10.2 ms
64 bytes from 192.168.2.1: icmp_seq=241 ttl=64 time=10.2 ms
64 bytes from 192.168.2.1: icmp_seq=242 ttl=64 time=6.56 ms
64 bytes from 192.168.2.1: icmp_seq=243 ttl=64 time=17.0 ms
64 bytes from 192.168.2.1: icmp_seq=244 ttl=64 time=14.1 ms
64 bytes from 192.168.2.1: icmp_seq=245 ttl=64 time=15.4 ms
64 bytes from 192.168.2.1: icmp_seq=246 ttl=64 time=10.2 ms

comment:4 Changed 9 years ago by BillK

I should have posted a link as well as its a standard - basic explanation here:
"http://features.techworld.com/mobile-wireless/4103/a-guide-to-wi-fi-power-save-technologies/"

Contrary to article, powersaving can be quite large (as it is in the moko). Downside is not only the effects you noticed, but inability to connect to some AP's, poor performance in general, poor(er) sensitivity in low signal conditions and "odd things happening with the link :)"

Usually first thing I check when a laptop does not work well over wifi, as it seems to often be the cause of the trouble.

BillK


comment:5 Changed 9 years ago by joerg

  • Status changed from new to closed
  • Resolution set to wontfix

closing, as it seems to be no bug according to billK

comment:6 Changed 9 years ago by lindi

Shouldn't resolution be INVALID since this was not a bug? wontfix would make people think this was a bug but it just won't be fixed. (Or is invalid not available as an option in trac?)

comment:7 Changed 21 months ago by Kennescoma

No Precription Synthroid 125mcg Daily <a href=http://kama1.xyz/generic-kamagra-buy.php>Generic Kamagra Buy</a> Dutasteride Canada Venta Cialis Farmacias <a href=http://viag1.xyz/generic-viagra.php>Generic Viagra</a> Viagra E Sordita Propecia Folcres Generico <a href=http://kama1.xyz/online-generic-kamagra.php>Online Generic Kamagra</a> Propecia Con Receta Online Comprar Cialis Andorra Precio <a href=http://viag1.xyz/generic-viagra.php>Generic Viagra</a> Acheter Priligy 30mg Vente Viagra Livraison Gratuite <a href=http://cial5mg.xyz/cialis-5mg.php>Cialis 5mg</a> Concepto De Propecia Medsindia <a href=http://kama1.xyz/kamagra-cheap-online.php>Kamagra Cheap Online</a> Walmart Prescription Drug Plan isotretinoin in us mastercard accepted <a href=http://zol1.xyz/zoloft.php>Zoloft</a> Cialis Dosage Forum Viagara Samples Overnight <a href=http://accutane.ccrpdc.com/buy-acutane.php>Buy Acutane</a> Buy Tretinoin Cream 0.025 Best Prices Cialis <a href=http://viag1.xyz/low-price-viagra.php>Low Price Viagra</a> Levitra 10 Mg Schmelztabletten Generic Cheap Dutasteride 0.5mg Baldness C.O.D. <a href=http://cial5mg.xyz/where-to-buy-cialis.php>Where To Buy Cialis</a> Does Amoxicillin Cause Leg Cramps Discount Tadalafil 20mg <a href=http://kama1.xyz/kamagra-soft-tablets.php>Kamagra Soft Tablets</a> Cialis Y Levitra Overnight Secure Dutasteride Medicine With Free Shipping <a href=http://cial1.xyz/cialis-prices.php>Cialis Prices</a> Viagra Generico Acquista Effective Propecia Doses <a href=http://zol1.xyz/zoloft-prices.php>Zoloft Prices</a> Viagra En France Prix Free Shipping Provera Meprate Irregular Periods In Internet Shop <a href=http://cial5mg.xyz/cialis-buy-online.php>Cialis Buy Online</a> Xenical Online Kaufen Ohne Rezept Priligy Posologie <a href=http://zol1.xyz/generic-zoloft-online.php>Generic Zoloft Online</a> Buy Now Amoxicilina No Script Needed Propecia Buy Uk Hair Follicles <a href=http://viag1.xyz/compra-viagra-online.php>Compra Viagra Online</a> Kamagra 100mg Saint Rezeptfrei Cialis <a href=http://viag1.xyz/buy-real-viagra-online.php>Buy Real Viagra Online</a> Zithromax Heart Buy Clomiphene Citrate Canada <a href=http://viag1.xyz/viagra-sample.php>Viagra Sample</a> Cialis 5 Mg Prescrizione Medica Candian Rx <a href=http://zol1.xyz/how-to-buy-zoloft.php>How To Buy Zoloft</a> Keflex For Mrsa Infections Prix Du Levitra 10 Mgf <a href=http://kama1.xyz/online-pharmacy-kamagra.php>Online Pharmacy Kamagra</a> Azitromicin Order Dapoxetina Serotonina <a href=http://zol1.xyz/zoloft-online-prices.php>Zoloft Online Prices</a> Colchicine Ordering Buy Metformin No Persciption <a href=http://viagra.ccrpdc.com/generic-sildenafil.php>Generic Sildenafil</a> Cosa E Il Cialis Zithromax 750 Mg <a href=http://cial5mg.xyz/cheap-cialis-online.php>Cheap Cialis Online</a> Does Amoxicillin Treat Uti Fast Ship Cnaadian Viagra <a href=http://cial1.xyz/can-i-buy-cialis-online.php>Can I Buy Cialis Online</a> Cialis Venta Farmacias Belgium Viagra <a href=http://kama1.xyz/buy-kamagra.php>Buy Kamagra</a> Rx Pharmacy Fedex Shipping Clobetasol Mastercard Low Price <a href=http://kama1.xyz/order-kamagra-online.php>Order Kamagra Online</a> Amoxil Bd Official Kamagra Uk <a href=http://kama1.xyz/kamagra.php>Kamagra</a> Can Amoxicillin Mix With Milk Cialis 50mg <a href=http://cial5mg.xyz/purchase-cheap-cialis.php>Purchase Cheap Cialis</a> Propecia No Conecta Buy Doxycycline Online Legit <a href=http://viag1.xyz/cheap-viagra-tablets.php>Cheap Viagra Tablets</a> Keflex Clotrimazole Cream And T Keflex Swime Flu <a href=http://cial5mg.xyz/prices-cialis.php>Prices Cialis</a> Clomid Association Propecia Gestacion <a href=http://zol1.xyz/zoloft-on-line.php>Zoloft On Line</a> Amoxicillin Differs From Ampicillin Propecia Substitutes Prescription <a href=http://antabuse.ccrpdc.com/buying-antabuse-online.php>Buying Antabuse Online</a> Pilules Cialis En Generique Ou Les Commander Discount Progesterone By Money Order Tablet <a href=http://kama1.xyz/kamagra-cheap.php>Kamagra Cheap</a> Online Acticin Buy Now Cephalexin Respiratory Pet Rats <a href=http://priligy.ccrpdc.com/buy-pills-priligy-online.php>Buy Pills Priligy Online</a> Cheap Viagra Pills For Sale Package Insert Amoxicillin Teva Pharaceuticals <a href=http://cial1.xyz/cialis-prices.php>Cialis Prices</a> Cialis Or Viagra Viagra And Cialis Non Perscription <a href=http://kama1.xyz/generic-kamagra-online.php>Generic Kamagra Online</a> Orlistat Generique Xenical

Note: See TracTickets for help on using tickets.