Klasowe / H-FSC / Szczegóły implementacji
H-FSC – Szczegóły implementacji
Ten rozdział będzie jeszcze rozwinięty. Narazie jest to zalążek.
Implementacja[1] H-FSC w Linuksie została przeportowana w 2003 z altq przez Patricka McHardy.
W kodzie odnaleźć można, że:
-
Dodane zostało (przez Olega Cherevko) górne ograniczenie przepustowości dla każdej klasy (upper-limit – ul).
Jest to dodatkowa krzywa którą określa się dla klasy oddzielnym parametrem.
Jeśli odpowiedni do wysłania kolejnego pakietu czas przekracza krzywą ul, to klasa ta nie jest obsługiwana.
-
Krzywe wewnętrznie reprezentowane są za pomocą 6 wartości (w tym 3 nadmiarowych):
- Dwa nachylenia oraz punkt przegięcia określony na osi X (czasu)
- Nadmiarowe dwie odwrotności nachyleń oraz punkt przegięcia określony na osi Y (bitów)
-
Każda klasa przechowuje (w ramach swojej struktury) w oddzielnych drzewach czerwono-czarnych listę dzieci posortowaną względem:
- czasu wirtualnego
- czasu odpowiedniego (maksimum z czasu swojego oraz najwcześniejszego dziecka)
c.d.n.