Does WDS 1/2 your speed

Discussion in 'General Discussion' started by HennieM, Dec 17, 2007.

  1. HennieM

    HennieM Network Guru Member

    A frequent discussion topic entails the influence of WDS on wireless speed. I thought I'd do a little experiment to gain some insight on this.

    I connected:
    1. WRT54GL dd-wrt (AP+WDS) to 100Mbps wiredPC
    2. WRT54GL Tomato (AP+WDS)
    3. WRT54GL Tomato (AP+WDS)
    4. WRT54GL Tomato (AP+WDS)

    1 Was linked to 2, 2 to 3, and 3 to 4, so e.g. 1-3 could not happen. All signals, including the client signal when connected to a particular AP, were at ca. -60dBm, SNR about 35, channel 13. Burst mode ON on all APs and clients. No other devices on the network.

    All devices could "see" each other at better than -80 dBm in one of the layouts.
    In another layout, 1 and 4 could not see each other (at least on a wireless survey).
    This DID NOT make a significant difference. If any, when 1 and 4 could not see each other, the copy took about 2% to 3% longer.

    Setup i)
    I connected with an IWL4965AG wireless client to each of the 4 APs IN TURN, measuring the time to copy a ~ 47MB file from wirelessClient (clientA OR clientB OR clientC OR clientD) to wiredPC, and wiredPC to wirelessClient. I did the copy 3 or more times in each direction.

    Setup ii)
    I connected the IWL4965 wireless PC to another wireless PC with a WUSB54GS USB adapter (on a USB 2.0 port). [The WUSB54GS PC is actually the same PC as wiredPC, just connected via wireless]. The same file copy as in (i).

    Setup iii)
    The 2 wireless clients in (ii) connected to the same WDS+AP (using only the AP part). The same file copy as in (i).

    The 2 client PCs used manage a copy speed of over 55Mbps when wired to each other, so the influence of the disk overheads etc. would be minimal.
    The wireless to wiredPC and wireless from wiredPC times were pretty close (within 10% of one another), so I used an average "copy time" to calculate the speed.

                       |                  |                  |                  |
                    wireless           wireless           wireless           wireless
                       |                  |                  |                  |
                     clientA           clientB            clientC            clientD
    Note that WDS+AP1 is not "repeating" in the above setup.

    This is what I found:
    Setup i)
    wiredPC -- clientA: time 16s, speed 23.8Mbps - over 0 repeating APs: full speed
    wiredPC -- clientB: time 30s, speed 12.7Mbps - over 1 repeating AP: ca. 1/2 speed
    wiredPC -- clientC: time 45s, speed 8.4Mbps - over 2 repeating APs: ca. 1/3 speed
    wiredPC -- clientD: time 60s, speed 6.4Mbps - over 3 repeating APs: ca. 1/4 speed

    Setup ii)
    clientB -- clientD: time 60s, speed 6.4Mbps - over 3 repeating APs: ca. 1/4 speed

    Setup iii)
    clientB -- clientB1: time 30s, speed 12.7Mbps - over 1 repeating AP: ca. 1/2 speed

    Some notes:
    Better signals - better than ca. -60dBm between APs and between client and AP - made no difference.
    No difference if the client was located between APs, or at the far end of an AP. As mentioned above, it also made no difference if the far APs could see each other.

    I guess a general formula would be:
    speed-to-wired after WDS+AP x would be slightly better than (1/[x + 1])
    x = number of WDS repeating APs

    or even more general:
    speed over repeating AP = 1/[x + 1] full speed
    x = number of ANY single radio repeating APs

    no matter if repeating as WDS or just 2 clients connected to the same AP.

    When turning WDS+AP1 into just AP1, the copy speed to/from clientA goes to around 25Mbps. I guess that's the influence of the WDS overhead on the AP.

    When copying from wirelessClient to wiredClient, the copy is slightly faster. My copy program sometimes indicated speeds of over 80Mbps when starting the copy, followed by 3Mbps toward the end of the copy, making an overall (over the full 47MB) speed difference of 10% or less relative to the wiredClient to wirelessClient copy. This is probably some buffering coupled with burst mode taking place?

    With several clients connected somewhere in a WDS chain, talking at the same time, the speed drop could get interesting...
  2. RonWessels

    RonWessels Network Guru Member

    [ Pointed out typos - deleted ].

    Thanks for injecting actual facts into the WDS speed speculation.

    Given that all devices could hear each other, I'm a little surprised that you did as well as 1/3 speed to clientC.

    I don't think your general formula is applicable once your WDS string has devices out of range of each other. If you think about the message transmission pipeline, I can't see how the state of something out of your radio range (ie. whether the previous packet is still in transit) is relevant to your current situation (ie. whether you can send the next packet along). Assuming, of course, that your TCP transmit window is large enough so that the additional latency of the link is not a factor in the throughput.
  3. HennieM

    HennieM Network Guru Member

    Thanks for the heads up on the typos - corrected.

    You might be right that "out of sight, out of mind" would hold. However, when is one device out of sight from another? IMO, it rather works like this:

    A node would ask all the devices directly connected - this node's first tier - "can I Tx?". If none of the directly connected devices is "busy" at the time, the node would fire away. If a 2nd tier device is talking to a 3rd tier device at the same time, and the 2nd/3rd tier can hear the original node, the Tx from the original node would probably be seen as noise, and this might necessitate (or not) a re-Tx between 2nd and 3rd tier.

    However, if a 1st tier device is busy Txing to a 2nd tier device, it would tell the original node that it's busy. Similarly, when the 2nd tier device is Txing, it will tell the 1st tier and 3rd tier "I'm busy". At the same time, the 1st tier tells the original node "even though I have a Rx opportunity, my Rx buffer is full, I can't Rx right now".

    There's thus always one more device to wait for as a packet propagates down the WDS chain, which IMO creates the speed drop. Out of sight would minimize the re-Tx, but the speed drop would always be there. However, the speed drop would eventually approach 1/x, not 1/(x +1). Bigger Rx/Tx buffers, would probably minimize the delays, and up the speed, but any buffer, however big, would get full at some stage if there's enough data flowing.

    Does that make sense? I think I have confused myself now. Maybe you should do your timing thing again?
  4. HennieM

    HennieM Network Guru Member

    Updated post #1 for 4 WDS+AP, and 2 more tests.
  1. This site uses cookies to help personalise content, tailor your experience and to keep you logged in if you register.
    By continuing to use this site, you are consenting to our use of cookies.
    Dismiss Notice