On 06/03/17 13:38, Johannes Berg wrote: > >> Well it certainly attempts to via stuff like carrier sense. But that >> is not fool proof and any time two routers hear a frame and both >> decide to forward it immediately there is a chance that they will >> both sense the air at the same time, decide that it is clear, and >> lose both their forwarded frames due to a collision. How often that >> happens is hard to say but we have observed that exact behavior a few >> years ago with an 802.11 multicast routing protocol and adding jitter >> significantly improved reliability. > > I'm really surprised by this since they both should jitter their > transmissions already between CWmin and CWmax. Is that window somehow really super small for what you're doing? > > johannes > Isn't CWmin and CWmax only used for retries? We recently had the problem that on 5MHz channels probe-responses of APs which can't hear each other (hidden node problem) always collide. See [1] for a trace showing the problem. Yellow is the probe-request (and ack on success), the other colours are 3 APs. Putting probe-responses on their own queue with it's own timing results in [2] and seems to make the problem less worse. However the first frame still always collides, and only subsequent retries have the randomness of cwmin/cwmax added. 5MHz channels make the problem worse since frames are 4 times longer. I'm currently trying to find a way to add some randomness to the initial response, which it seems this patchset attempts to solve as well (different context though). [1] http://may.nu/images/problem.png [2] http://may.nu/images/jittered.png