So after my experiments [1] yesterday with the wndr3700v2 hardware[2], I came away <br>even more convinced that the wireless world and the wired worlds should<br>not be bridged together.<br><br>All the AQMs out there assume that it takes the same period of time to deliver a packet consisting of X bytes to the next hop. Wired more or less does that.<br>
<br>Wireless breaks that assumption. It wasn't so bad, back in the early days of 802.11b - 802.11b ran as fast as 11Mbit, and multicast, at 2... for a ratio of 5.5x1. <br><br>11g came around, and runs at 54Mbit, and - (if you don't run in mixed mode, still supporting B), you can multicast at 6Mbit. But nearly everyone does still run mixed mode, so multicast is stuck at 2... for a ratio of 26x1.... instead of a mere 9x1.<br>
<br>Soo... 11n has come around, and I shudder to think of what packet rate ratio of "normal" vs "multicast packets" do to the assumptions of the rest of the stack.<br><br>So with just a little multicast going through your wireless network, any assumptions the higher level portions of the stack might make are invalid. HTB? hah, uses fixed buckets... RED? a single multicast packet is a monster packet, how's it supposed to find it in the swamp?<br>
<br>Worse, most multicast packets are statistically rare and needed for the network to actually continue to function.<br clear="all"><br>In my last 2 months of travel, I have seen multicast packets, such as ARP, DHCP, MDNS, and now babel, all failing far, far, far more often than is desirable. I have seen DHCP fail completely for hours at a time, I've seen ARP take dozens of queries to resolve. <br>
<br>Nextly, It is trivial to trigger the symptoms of bufferbloat, with a multicast stream.<br><br>Perhaps eBDP can handle multicast well, but certainly AQMs are going to have headaches that are difficult to solve at ratios between normal and multicast packets this poor.<br>
<br>Lastly, most home router vendors bridge wired and wireless together, sort of like jamming together "jet engines and a vw bugs",  and I finally broke them apart [3], to try and look at them separately - as even the switch is displaying 100+ms of buffering when I slam it with 4 simultaneous iperf streams [4]<br>
<br>1: <a href="https://lists.bufferbloat.net/pipermail/bloat-devel/2011-May/000156.html">https://lists.bufferbloat.net/pipermail/bloat-devel/2011-May/000156.html</a><br>2: <a href="http://www.bufferbloat.net/projects/bismark/wiki/Capetown">http://www.bufferbloat.net/projects/bismark/wiki/Capetown</a><br>
3: <a href="http://www.bufferbloat.net/issues/186">http://www.bufferbloat.net/issues/186</a><br>4: <a href="http://www.bufferbloat.net/projects/bismark-testbed/wiki/Experiment_-_QoS">http://www.bufferbloat.net/projects/bismark-testbed/wiki/Experiment_-_QoS</a><br>
<br>-- <br>Dave Täht<br>SKYPE: davetaht<br>US Tel: 1-239-829-5608<br><a href="http://the-edge.blogspot.com" target="_blank">http://the-edge.blogspot.com</a> <br>