[WLANnews] Optimierung der Bandbreitenverteilung/Latenz mit fq_codel

Ruben Kelevra cyrond at gmail.com
Fr Aug 23 06:07:40 CEST 2013


Am 23. August 2013 05:24 schrieb Ruben Kelevra <cyrond at gmail.com>:
> fq_codel müssten wird m.E. in sofern anpassen das es nicht einzelne
> Flows (src, dest, port) betrachtet sondern rein dest beim Senden und
> beim Upload über einen Internetanschluss rein src. So haben alle
> Nutzer, egal wie sie das Internet benutzen die selbe Chance Daten los
> zu werden.
Ich habe vergessen zu erwähnen warum:

Jede Queue verbraucht RAM, wenn auch wenig (64 bytes laut Quellcode),
das umgehen wir indem wir nur die Client-Adressen als einzelnen Flow
betrachten.

Weiterhin ist es dann fairer, denn jemand der mit nem Downloadmanager
eine Datei (mit xx Teildownloads) runter läd wird genauso behandelt
wie jemand der ein Youtubevideo schaut oder jemand der eine Website
aufruft.

Das einzige was ich aus der Queue ausnehmen würde in meinem Vorschlag
ist Netzwerktechnisch notwendiges. Wie ICMP, DNS, DHCP, NTP etc.
(siehe Grafik).


> Ein weiteres Problem dürfte sein, dass die Datenpaketgrößen - soweit
> ich das sehe - keinen Einfluss auf die Verteilung haben. Es geht rein
> um die Datenpakete an sich.
>
> Das heißt bei Echtzeitkommunikation mit 64Byte Paketen ist man sehr im
> Nachteil gegenüber 1,5k Paketen bei einem Download. Hier müsste wohl
> weitere Optimierung betrieben werden.
Streicht das. codel macht deficit round robin! Überträgt also
mindestens 1514 Bytes (MTU 1500 + Ethernet-Overhead) in einem Rutsch,
egal wie groß die Paketgröße ist. Das letzte Paket darf diese größe
überschreiten.

In dem Fall wäre nur ein Download mit 1499 MTU unfair - aber wer macht
das schon. ;)


Ein paar Links:

Ein anschauliches Video über Puffer und qdiscs im Netzwerk:
https://www.youtube.com/watch?v=y5KPryOHwk8

fq_codel Quellcode
http://lxr.free-electrons.com/source/net/sched/sch_fq_codel.c

tc manpage:
http://lartc.org/manpages/tc.txt

tc-fq_code manpage:
http://linuxmanpages.net/manpages/fedora18/man8/tc-fq_codel.8.html

tc-tbf manpage:
http://man.cx/tc-tbf

deficit round robin:
https://en.wikipedia.org/wiki/Deficit_round_robin


LG Ruben


Mehr Informationen über die Mailingliste WLANnews