== Byte Queue Limits ==

Pakete sind unterschiedlich groß. Queuelängen lieber nach Bytes abmessen.

<pre>
for f in /sys/class/net/wlan0/queues/tx-*/byte_queue_limits/limit_max; do
	echo "3000" > $f
done

# Unklar ob das was bringt:
ip l s wlan0 qlen 0
</pre>

== CoDeL by default ==

Das Netzwerk ist so schnell wie dein Adapter:
<pre>
tc qdisc add dev wlan0 root fq_codel
</pre>

== CoDeL mit Shaping ==

Du hast keine Kontrolle über den (puffernden) Engpass (Router/Modem):
<pre>
IF_WAN=ppp0
UP_RATE=8700

tc qdisc del dev $IF_WAN root    2> /dev/null > /dev/null
tc qdisc add dev $IF_WAN root       handle  1   hfsc default 1
 
tc class add dev $IF_WAN parent 1:  classid 1:1  hfsc sc rate ${UP_RATE}kbit ul rate ${UP_RATE}kbit
tc qdisc add dev $IF_WAN parent 1:1 handle 11: fq_codel
tc filter add dev $IF_WAN parent 11: handle 11 protocol all flow hash keys nfct-src,nfct-dst,proto,nfct-proto-src,nfct-proto-dst divisor 1024
</pre>

; Grundlage: [http://wiki.openwrt.org/doc/howto/packet.scheduler/packet.scheduler.example4 OpenWRT: Example4: HFSC + FQ_CODEL + FLOW classifier;]
: [[Benutzer:Astro|Astro]] hat mit diesem simplen Regelsatz gute Erfahrungen (bei wenigen Flows).

In einem Mehrbenutzerinnen-Netzwerk will man die Flows vermutlich nur nach nfct-src hashen. Damit wäre es dann fair zwischen Hosts, nicht Ports.

== Weblinks ==
* [http://wiki.openwrt.org/doc/howto/packet.scheduler/packet.scheduler OpenWrt Wiki » Documentation » HOWTOs » Network Traffic Control]
* [http://wiki.openwrt.org/doc/uci/qos OpenWrt Wiki » Documentation » The UCI System » Quality of Service (qos-scripts) configuration]

[[Kategorie:Infrastruktur]]
