[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: Throughput riddle

On Fri, 18 Mar 2016 18:01:58 -0700
David Christensen <dpchrist@holgerdanske.com> wrote:

> On 03/18/2016 09:48 AM, Celejar wrote:
> > Hi,
> >
> > I'm trying to understand the throughput across the different links of
> > my little home network, and am perplexed by the measured wireless
> > throughput.
> >
> > The three main devices I'm interested in:
> >
> > Router: Buffalo WZR-HP-G300NH running OpenWrt (Chaos Calmer 15.05).
> > Gigabit WAN and LAN, 802.11bgn wireless.
> >
> > https://wiki.openwrt.org/toh/buffalo/wzr-hp-g300h
> >
> > Laptop: Thinkpad T61 running Jessie 8.3. Gigabit ethernet, 802.11abgn
> > wireless.
> >
> > NAS: Seagate GoFlex Net [STAK100] runninng Debian Jessie 8.3.
> >
> > https://archlinuxarm.org/platforms/armv5/seagate-goflex-net
> >
> > All throughput measurements taken with iperf (run three times and using
> > the median result), unless specified otherwise. These first results are
> > with the laptop connected to the router via cat5:
> >
> > Laptop - NAS:		~874 Mbps.
> I use category 5E cables for Gigabit.  Category 5 and category 6 cables 
> were not reliable for me.

Thanks - but as I indicated, 874 Mbps is close enough to the
theoretical maximum that I don't think it would be worth it to me to
start replacing cables. In real world usage, the difference for my
applications would probably be minimal.

> Perhaps the NAS has an automatic crossover feature on it's Gigabit port. 
>   If you do a computer-cable-computer test, you will want a (category 
> 5E) crossover cable.

If they weren't doing crossover, wouldn't I be doing a lot worse, or


> What happens if you connect two Gigabit computers through the router and 
> run iperf between the computers?

Don't have another suitable computer that I can easily use to do this.

> What happens if you connect one Gigabit computer and one 802.11n 
> computer through the router and run iperf between the computers?
> What happens if you connect two 802.11n computer through the router and 
> run iperf between the computers?


> > Here's the part that baffles me - these are with the laptop connected
> > to the router wirelessly:
> >
> > Laptop - router:	~11.8 Mbps
> >
> > These numbers actually exhibit significant variance, but they're
> > generally at least this much, and at most about 15-20 Mbps.
> >
> > Laptop - NAS:		~14.7 Mbps
> >
> > Once again, these numbers vary widely, but are in line with the laptop
> > - router numbers.
> Troubleshooting WiFi is tough.  Location and orientation of antennas is 
> critical.  Understand that radio waves with a frequency of 2.4 GHz have 
> a wavelength of ~12 cm.  One-quarter wavelength (~1 inch) can change 
> everything.  You typically have little control over other WiFi devices 
> or other sources of RF interference.  All matter in the universe absorbs 
> and re-radiates energy in curious ways, causing constructive/ 
> destructive interference patterns throughout space.  So, Murphy's Law is 
> certain to strike.
> Try repositioning the router. You want the antennas up high, radiating 
> horizontally (e.g. stick antennas oriented vertically), and far from all 
> other conductive materials -- metal-frame or masonry walls, electrical 
> wiring, metallic pipes, metallic ducts, HVAC grilles, metal-film 
> windows, metal window screens, televisions, other appliances, etc.. 
> Beware of items concealed inside wood-frame walls.  Beware of metallic 
> drywall corner bead.
> Test the laptop in several locations.  Near-field radiation is more 
> complex than far-field, so use a wired connection if the laptop anywhere 
> near the router.  A wired Gigabit connection is going to perform better 
> than 802.11n even under the best conditions, so consider running 
> category 5E cable to other usage locations.  Adjust the router and 
> laptop radios for minimum power that gives reliable service.

Thanks much for these suggestions. I know the basic issues (e.g., I
have a DECT 6.0 cordless phone operating in the vicinity, although that
apparently operates at 1.9 GHz and I don't know how much intereference
that will cause with 2.4 GHz wifi), but I'm mainly puzzled by why the
numbers are so much lower than the speedtest ones, as below.

> > But here's the kicker: Ookla's speedtest (run on the laptop with
> > speedtest-cli) shows 29.01/5.89 (d/u), and this is fairly consistent.
> > I'm paying Comcast for 25/5, and they apparently provision at
> > 31.25/6.25, so I'm getting quite close to the theoretical max, even
> > when the laptop is connected to the router wirelessly. Additionally,
> > various Android phones also get close to the Comcast provisioned max
> > when connecting wirelessly to the router.
> >
> > So the wireless link can apparently push at least 30 Mbps or so, so why
> > are my local wireless throughput numbers so much lower?
> >
> > I was originally using one of the common 1/6/11 channels, and I switched
> > to 3 since I saw a lot of other stations on those channels. This may
> > have resulted in some improvement, but I'm still stuck locally as
> > above. What's the explanation for this - how can I possibly be getting
> > much better throughput to servers tens of miles away than to my local
> > stations? Does iperf somehow work fundamentally differently from
> > speedtest? If so, which is a better representation of actual throughput?
> It's not clear if you are doing an apples-to-apples comparison.  Perhaps 
> iperf isn't measuring what you think it is.

That's exactly what I'm asking: what is iperf measuring, and why is it
so much lower than the speedtest throughput? My understanding is that
it simply measures straight-up TCP (or UPD, if desired) throughput.
Even allowing for protocol overhead at the various network stack
layers, the deviation shouldn't be that great.

> None of your devices are running the firmware or OS the manufacturer 
> intended for it.  Perhaps you should revert the router and/or NAS, and 
> test again.

1) The current situation is acceptable, and I'd rather run what I'm
running at my current speeds than revert to the manufacturers'
firmwares and OSs.

2) Intellectual curiosity is primarily what's driving me to understand
my numbers.

3) If there's really something wrong with the OSS code, I should be
filing bugs.


Reply to: