Search Linux Wireless

Re: [PATCH 4/4] ath5k: Implement mac80211 callback set_coverage

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

 



On 7.12.2009 10:48 you wrote:
> ACKTimeout is:  aSIFSTime + aSlotTime + aPHY-RX-START-Delay
802.11a uses SIFS of 16 µs and 9 µs slot time, that's 25 µs in total. However, 
the athctrl calculation uses 21 µs ACK timeout for zero distance. And I know 
the result is correct, as we are using it on 70 links with distances varying 
between 100m and 8km.

I don't say the standard is wrong, just that the hardware might start counting 
at a different moment than the standard assumes.

> Of course, the distance settting code in iw probably also needs
> changing, as it needs to accomodate for aAirPropagationTime being the
> round trip time, not one-way.
Well, according to my interpretation the aAirPropagationTime is the one-way 
delay. I think it makes sense when we consider the reason the slots are used 
in CSMA/CA:

Station waits a random number of slots. If no other station was transmitting 
at the beginning of a previous slot, the station starts its own transmit. So 
the slot time has to be at least the time needed to switch the radio from RX 
to TX plus the one-way propagation delay, so that every other station can 
hear the medium is busy on time.


Anyway, I think there's only one sure way to determine the correct base ACK 
timeout for different modes: experiment. It's easy to detect that the ACK 
timeout is too low - packetloss grows dramatically.

The main observation is this: ACK timeout does not depend on slot time!
In retrospect it makes sense: station waits only SIFS before sending ACK, not 
a single slot.

The measured values of minimum slot times (with AR5212 and AR5414) are these:

802.11a: 21 µs
802.11b: 27 µs
802.11g: 19 µs

I can't give much explanation, the difference of 6 µs between 11a and 11b 
might be the difference of SIFS (16µs vs. 10µs). 11g uses 10 µs SIFS too, but 
with additional 6 µs "signal extension", maybe that's why the value is closer 
to 11a than 11b. It's all just guessing, though.

So I propose to use 21 µs in 802.11a mode and 27 µs in 802.11b/g mode (as 
there might be some 802.11b clients and 6µs won't make much difference).
What do you think?

Lukas Turek

Attachment: signature.asc
Description: This is a digitally signed message part.


[Index of Archives]     [Linux Host AP]     [ATH6KL]     [Linux Bluetooth]     [Linux Netdev]     [Kernel Newbies]     [Linux Kernel]     [IDE]     [Security]     [Git]     [Netfilter]     [Bugtraq]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Linux ATA RAID]     [Samba]     [Device Mapper]
  Powered by Linux