FlemmingFrandsen
01-25-2009, 07:16 AM
I've been looking into how the traffic shaping is implemented on AirOS, and I've found that it's simply a single htb that uses the default queue discipline:
XS5.ar2313.v3.2.2.4003.081114.1725# tc -s -d class show dev ath0
class htb 1: root prio 0 quantum 13107 rate 1Mbit ceil 1Mbit burst 2.84082Kb/8 mpu 0b cburst 2.84082Kb/8 mpu 0b level 0
Sent 1371965 bytes 9538 pkts (dropped 0, overlimits 0)
rate 1.75781Kbit 1pps
lended: 9538 borrowed: 0 giants: 0
tokens: 17488 ctokens: 17488
XS5.ar2313.v3.2.2.4003.081114.1725# tc -s -d qdisc show dev ath0
qdisc htb 1: r2q 10 default 0 direct_packets_stat 0 ver 3.16
Sent 1380275 bytes 9601 pkts (dropped 0, overlimits 13)
I'd like to suggest that the qdisc is changed to sfq, as it's much nicer when the limit is reached by one bandwidth hogging connection, because with sfq all the packets that are dropped will be from the hog and not from all the other low-bandwidth connections.
XS5.ar2313.v3.2.2.4003.081114.1725# tc -s -d class show dev ath0
class htb 1: root prio 0 quantum 13107 rate 1Mbit ceil 1Mbit burst 2.84082Kb/8 mpu 0b cburst 2.84082Kb/8 mpu 0b level 0
Sent 1371965 bytes 9538 pkts (dropped 0, overlimits 0)
rate 1.75781Kbit 1pps
lended: 9538 borrowed: 0 giants: 0
tokens: 17488 ctokens: 17488
XS5.ar2313.v3.2.2.4003.081114.1725# tc -s -d qdisc show dev ath0
qdisc htb 1: r2q 10 default 0 direct_packets_stat 0 ver 3.16
Sent 1380275 bytes 9601 pkts (dropped 0, overlimits 13)
I'd like to suggest that the qdisc is changed to sfq, as it's much nicer when the limit is reached by one bandwidth hogging connection, because with sfq all the packets that are dropped will be from the hog and not from all the other low-bandwidth connections.