On 15.12.2009 22:58 you wrote: > I don't see how this makes sense. Are you saying if we have multiple > interfaces you must restrict the slot_time, ack_timeout and CTS timeout all > to the same values for all of them? If you have multiple interfaces, they must be all on the same channel and you can't do anything with it. It's the with slot time: it's a parameter of the CSMA/CA method for medium sharing. When stations use a different value of slot time, collisions will happen more likely. It doesn't matter they are connected to different BSS, there's just one shared medium. There is no such problem with ACK timeout, but there is still another one: you can have packets coming from multiple interfaces in hardware queue. And you can't change the register value before sending each one, because the hardware sends them on their own terms and just reports it's done via an interrupt. So effectively the ACK timeout has to be the same as well. > I'd say expose it through debugfs first then instead of adding proper APIs > for userspace. If the country IE is the way to pass this information alog > to STAs there would be no need to tweak this on the user end. If you're an > AP though you are likely going to want to change this though so I see, for > example hostapd wanting to set this through nl80211. It also seems > reasonable for IBSS but IBSS won't send country IEs unless I guess we use > wpa_supplicant and somehow leverage the IE generation from hostapd. The problem is, I don't know any hardware that really sends the coverage class. There's a lot of hardware that allows setting only the ACK timeout, like all the Ubiquity devices, Ovislink 5000 and so on. So the client connecting to these devices will need to specify the coverage class manually. When the coverage class is sent in beacons, it should take precedence over the user-specified value, I'm not against that. It's just not relevant now, until there's a hardware that sends it or until the hostap part is done. And I said I want to do that, just not in this series, it's already problematic enough... And about the debugfs: originaly I thought i would just implement a simple debugfs API for setting ACK/CTS timeout and slot time. However, Johannes Berg recommended me to do this coverage class thing and I didn't envision how much trouble it's gonna be... Lukas Turek
Attachment:
signature.asc
Description: This is a digitally signed message part.