Szeregowanie pakietów - Katedra Telekomunikacji AGH
Transkrypt
Szeregowanie pakietów - Katedra Telekomunikacji AGH
Szeregowanie pakietów
dr inż. Jerzy Domżał
Akademia Górniczo-Hutnicza w Krakowie, Katedra Telekomunikacji
8 października 2012 r.
dr inż. Jerzy Domżał (AGH)
Gwarantowanie jakości obsługi w Internecie
8 października 2012 r.
1 / 46
Spis treści
1
2
3
4
5
6
7
8
9
10
11
12
Wstęp
Fair Queuing vs FIFO
Round-Robin
Deficit Round-robin
Earliest Due Date
Processor sharing
Bit-round Fair Queuing
Generalized Processor Sharing
Weighted Fair Queuing
Start-time Fair Queuing
Virtual clock
Self-Clocked Fair Queuing
dr inż. Jerzy Domżał (AGH)
Gwarantowanie jakości obsługi w Internecie
8 października 2012 r.
2 / 46
Spis treści
1
2
3
4
5
6
7
8
9
10
11
12
Wstęp
Fair Queuing vs FIFO
Round-Robin
Deficit Round-robin
Earliest Due Date
Processor sharing
Bit-round Fair Queuing
Generalized Processor Sharing
Weighted Fair Queuing
Start-time Fair Queuing
Virtual clock
Self-Clocked Fair Queuing
dr inż. Jerzy Domżał (AGH)
Gwarantowanie jakości obsługi w Internecie
8 października 2012 r.
2 / 46
Spis treści
1
2
3
4
5
6
7
8
9
10
11
12
Wstęp
Fair Queuing vs FIFO
Round-Robin
Deficit Round-robin
Earliest Due Date
Processor sharing
Bit-round Fair Queuing
Generalized Processor Sharing
Weighted Fair Queuing
Start-time Fair Queuing
Virtual clock
Self-Clocked Fair Queuing
dr inż. Jerzy Domżał (AGH)
Gwarantowanie jakości obsługi w Internecie
8 października 2012 r.
2 / 46
Spis treści
1
2
3
4
5
6
7
8
9
10
11
12
Wstęp
Fair Queuing vs FIFO
Round-Robin
Deficit Round-robin
Earliest Due Date
Processor sharing
Bit-round Fair Queuing
Generalized Processor Sharing
Weighted Fair Queuing
Start-time Fair Queuing
Virtual clock
Self-Clocked Fair Queuing
dr inż. Jerzy Domżał (AGH)
Gwarantowanie jakości obsługi w Internecie
8 października 2012 r.
2 / 46
Spis treści
1
2
3
4
5
6
7
8
9
10
11
12
Wstęp
Fair Queuing vs FIFO
Round-Robin
Deficit Round-robin
Earliest Due Date
Processor sharing
Bit-round Fair Queuing
Generalized Processor Sharing
Weighted Fair Queuing
Start-time Fair Queuing
Virtual clock
Self-Clocked Fair Queuing
dr inż. Jerzy Domżał (AGH)
Gwarantowanie jakości obsługi w Internecie
8 października 2012 r.
2 / 46
Spis treści
1
2
3
4
5
6
7
8
9
10
11
12
Wstęp
Fair Queuing vs FIFO
Round-Robin
Deficit Round-robin
Earliest Due Date
Processor sharing
Bit-round Fair Queuing
Generalized Processor Sharing
Weighted Fair Queuing
Start-time Fair Queuing
Virtual clock
Self-Clocked Fair Queuing
dr inż. Jerzy Domżał (AGH)
Gwarantowanie jakości obsługi w Internecie
8 października 2012 r.
2 / 46
Spis treści
1
2
3
4
5
6
7
8
9
10
11
12
Wstęp
Fair Queuing vs FIFO
Round-Robin
Deficit Round-robin
Earliest Due Date
Processor sharing
Bit-round Fair Queuing
Generalized Processor Sharing
Weighted Fair Queuing
Start-time Fair Queuing
Virtual clock
Self-Clocked Fair Queuing
dr inż. Jerzy Domżał (AGH)
Gwarantowanie jakości obsługi w Internecie
8 października 2012 r.
2 / 46
Spis treści
1
2
3
4
5
6
7
8
9
10
11
12
Wstęp
Fair Queuing vs FIFO
Round-Robin
Deficit Round-robin
Earliest Due Date
Processor sharing
Bit-round Fair Queuing
Generalized Processor Sharing
Weighted Fair Queuing
Start-time Fair Queuing
Virtual clock
Self-Clocked Fair Queuing
dr inż. Jerzy Domżał (AGH)
Gwarantowanie jakości obsługi w Internecie
8 października 2012 r.
2 / 46
Spis treści
1
2
3
4
5
6
7
8
9
10
11
12
Wstęp
Fair Queuing vs FIFO
Round-Robin
Deficit Round-robin
Earliest Due Date
Processor sharing
Bit-round Fair Queuing
Generalized Processor Sharing
Weighted Fair Queuing
Start-time Fair Queuing
Virtual clock
Self-Clocked Fair Queuing
dr inż. Jerzy Domżał (AGH)
Gwarantowanie jakości obsługi w Internecie
8 października 2012 r.
2 / 46
Spis treści
1
2
3
4
5
6
7
8
9
10
11
12
Wstęp
Fair Queuing vs FIFO
Round-Robin
Deficit Round-robin
Earliest Due Date
Processor sharing
Bit-round Fair Queuing
Generalized Processor Sharing
Weighted Fair Queuing
Start-time Fair Queuing
Virtual clock
Self-Clocked Fair Queuing
dr inż. Jerzy Domżał (AGH)
Gwarantowanie jakości obsługi w Internecie
8 października 2012 r.
2 / 46
Spis treści
1
2
3
4
5
6
7
8
9
10
11
12
Wstęp
Fair Queuing vs FIFO
Round-Robin
Deficit Round-robin
Earliest Due Date
Processor sharing
Bit-round Fair Queuing
Generalized Processor Sharing
Weighted Fair Queuing
Start-time Fair Queuing
Virtual clock
Self-Clocked Fair Queuing
dr inż. Jerzy Domżał (AGH)
Gwarantowanie jakości obsługi w Internecie
8 października 2012 r.
2 / 46
Spis treści
1
2
3
4
5
6
7
8
9
10
11
12
Wstęp
Fair Queuing vs FIFO
Round-Robin
Deficit Round-robin
Earliest Due Date
Processor sharing
Bit-round Fair Queuing
Generalized Processor Sharing
Weighted Fair Queuing
Start-time Fair Queuing
Virtual clock
Self-Clocked Fair Queuing
dr inż. Jerzy Domżał (AGH)
Gwarantowanie jakości obsługi w Internecie
8 października 2012 r.
2 / 46
Spis treści
1
2
3
4
5
6
7
8
9
10
11
12
Wstęp
Fair Queuing vs FIFO
Round-Robin
Deficit Round-robin
Earliest Due Date
Processor sharing
Bit-round Fair Queuing
Generalized Processor Sharing
Weighted Fair Queuing
Start-time Fair Queuing
Virtual clock
Self-Clocked Fair Queuing
dr inż. Jerzy Domżał (AGH)
Gwarantowanie jakości obsługi w Internecie
8 października 2012 r.
3 / 46
Czym jest szeregowanie pakietów?
Szeregowanie pakietów (ang. packet scheduling) określa:
mechanizm obsługi kolejki w węźle sieciowym, a więc kolejność
w jakiej zakolejkowane pakiety powinny zostać obsłużone
reguły współdzielenia łącza wyjściowego
jeśli użytkownik posiada wysoki priorytet w dostępie do łącza,
to jego pakiety powinny być obsłużone w pierwszej kolejności
jeśli użytkownik nie posiada priorytetu, to jego pakiety
powinny być opóźnione
pakiety uprzywilejowanego użytkownika powinny być
znakowane w bloku sterowania dostępem
Jednym z podstawowym zadań algorytmów szeregowania jest
zapewnienie sprawiedliwego podziału dostępnej przepustowości
oraz ochrona ruchu użytkowników przed niewłaściwym
zachowaniem ze strony ”szkodliwych” użytkowników
dr inż. Jerzy Domżał (AGH)
Gwarantowanie jakości obsługi w Internecie
8 października 2012 r.
4 / 46
Ogólne spojrzenie na problem
Skomplikowane (?) algorytmy szeregowania są wymagane w
celu umożliwienia obsługi ruchu z wysokim priorytetem przy
zachowaniu wymagań gwarantowania jakości obsługi
ruch wymagający obsługi w czasie rzeczywistym jest czuły na
opóźnienia
transmisja danych jest czuła na straty
dr inż. Jerzy Domżał (AGH)
Gwarantowanie jakości obsługi w Internecie
8 października 2012 r.
5 / 46
Klasyfikacja usług
Usługi sieciowe mogą być podzielone na cztery grupy:
best effort — brak wymagań QoS, pakiety obsługiwane są bez
zapewniania jakości obsługi, np. użycie kolejki FIFO
lepsze niż best effort (better than BE) — nie ma gwarancji
obsługi, ale blok szereg. stara się zapewnić wymagany QoS
z gwarantowaną przepustowością (guaranteed throughput) —
każdy przepływ ma zapewnioną odpowiednią szybkość
transmisji niezależnie od zachowania innego ruchu w sieci;
dodatkowo zapewniane są ograniczenia czasowe, jeśli
zastosowany jest mechanizm sterowania dostępem i ruchem
z ograniczonym opóźnieniem i jitterem — gwarantowane jest
górne i dolne opóźnienie dla pakietów; z reguły wymagane jest
deterministyczne sterowanie dostępem oraz kształtowanie
ruchu
dr inż. Jerzy Domżał (AGH)
Gwarantowanie jakości obsługi w Internecie
8 października 2012 r.
6 / 46
Ocena algorytmów szeregowania
Algorytmy szeregowania oceniane są na wiele sposobów:
przedział ograniczeń opóźnień
wykorzystanie zasobów
sprawiedliwość i protekcja
narzut protokołu
koszt obliczeniowy
skuteczność
Implementacja mechanizmów szeregowania z polityką GPS
(Generalized Processor Sharing) jest kluczowa dla
wprowadzenia gwarancji jakości obsługi dla usług
multimedialnych w urządzeniach ATM oraz w ruterach IP
nowej generacji. Celem jest uzyskanie efektywnej i skalowalnej
architektury, która jest w stanie obsłużyć setki tysięcy sesji
dr inż. Jerzy Domżał (AGH)
Gwarantowanie jakości obsługi w Internecie
8 października 2012 r.
7 / 46
Spis treści
1
2
3
4
5
6
7
8
9
10
11
12
Wstęp
Fair Queuing vs FIFO
Round-Robin
Deficit Round-robin
Earliest Due Date
Processor sharing
Bit-round Fair Queuing
Generalized Processor Sharing
Weighted Fair Queuing
Start-time Fair Queuing
Virtual clock
Self-Clocked Fair Queuing
dr inż. Jerzy Domżał (AGH)
Gwarantowanie jakości obsługi w Internecie
8 października 2012 r.
8 / 46
First In First Out
Flow 1
Flow 2
Multiplexed
output
Flow N
Własności:
prostota realizacji
układ szeregowania obsługuje pakiety w kolejności napływania;
odrzucane są pakiety napływające, gdy kolejka jest pełna
Ograniczenia:
brak specjalnego traktowania, brak mechanizmów obsługi
ruchu priorytetowego
problemy z dużymi pakietami
zachłanne połączenia mogą absorbować zasoby na długi czas
dr inż. Jerzy Domżał (AGH)
Gwarantowanie jakości obsługi w Internecie
8 października 2012 r.
9 / 46
FIFO+
FIFO+ jest próbą wprowadzenia obsługi pakietów zgodnie z
mechanizmem FIFO oraz przy zachowaniu zbliżonych
opóźnień w poszczególnych węzłach
w każdym węźle mierzone jest średnie opóźnienie
jeśli opóźnienie pakietu jest różne od średniego opóźnienia dla
przepływu/klasy, to pakiet jest opóźniany/przyspieszany w
węźle
pakiety są więc obsługiwane zgodnie z teoretycznym czasem
przybycia, a nie rzeczywistym
dr inż. Jerzy Domżał (AGH)
Gwarantowanie jakości obsługi w Internecie
8 października 2012 r.
10 / 46
max-min fairness
maksymalizowany jest minimalny przydział zasobów
użytkownikom, których żądania nie są spełnione
FIFO nie zapewnia sprawiedliwego podziału dostępnej
przepustowości, protekcji ani odpowiednio niskiego jittera
dr inż. Jerzy Domżał (AGH)
Gwarantowanie jakości obsługi w Internecie
8 października 2012 r.
11 / 46
FIFO vs FQ
Flow 1
Flow 2
Multiplexed
output
Flow N
FIFO queuing
dr inż. Jerzy Domżał (AGH)
Gwarantowanie jakości obsługi w Internecie
8 października 2012 r.
12 / 46
FIFO vs FQ
Flow 1
Flow 2
Multiplexed
output
Flow N
FIFO queuing
Flow 1
Flow 2
Multiplexed
output
Flow N
Fair Queuing
dr inż. Jerzy Domżał (AGH)
Gwarantowanie jakości obsługi w Internecie
8 października 2012 r.
12 / 46
Spis treści
1
2
3
4
5
6
7
8
9
10
11
12
Wstęp
Fair Queuing vs FIFO
Round-Robin
Deficit Round-robin
Earliest Due Date
Processor sharing
Bit-round Fair Queuing
Generalized Processor Sharing
Weighted Fair Queuing
Start-time Fair Queuing
Virtual clock
Self-Clocked Fair Queuing
dr inż. Jerzy Domżał (AGH)
Gwarantowanie jakości obsługi w Internecie
8 października 2012 r.
13 / 46
Round-Robin
każdy użytkownik ma swoją kolejkę
kolejki poszczególnych użytkowników obsługiwane są
cyklicznie (jedna po drugiej)
”zachłanny” użytkownik przepełni tylko swoją kolejkę nie
psując przy tym jakości obsługi ruchu pozostałych
użytkowników (protekcja jest zapewniana)
sprawiedliwość jest zapewniona, gdy użytkownicy obsługiwani
są z jednakową wagą oraz wysyłają dane w pakietach o
jednakowej długości (jak w ATM)
jeśli użytkownicy mają przydzielone różne wagi, to wagowy
round-robin (weighted round-robin) jest używany do obsługi
ich ruchu (zgodnie z przydzielonymi wagami)
dr inż. Jerzy Domżał (AGH)
Gwarantowanie jakości obsługi w Internecie
8 października 2012 r.
14 / 46
Spis treści
1
2
3
4
5
6
7
8
9
10
11
12
Wstęp
Fair Queuing vs FIFO
Round-Robin
Deficit Round-robin
Earliest Due Date
Processor sharing
Bit-round Fair Queuing
Generalized Processor Sharing
Weighted Fair Queuing
Start-time Fair Queuing
Virtual clock
Self-Clocked Fair Queuing
dr inż. Jerzy Domżał (AGH)
Gwarantowanie jakości obsługi w Internecie
8 października 2012 r.
15 / 46
Deficit Round-Robin
Flow 1
Flow 2
Multiplexed
output
Flow N
dr inż. Jerzy Domżał (AGH)
Gwarantowanie jakości obsługi w Internecie
8 października 2012 r.
16 / 46
Deficit Round-Robin
Flow 1
+Q1
Flow 2
+Q2
-L
-L
-L
Flow N
dr inż. Jerzy Domżał (AGH)
Multiplexed
output
+QN
Gwarantowanie jakości obsługi w Internecie
8 października 2012 r.
16 / 46
Deficit Round-Robin
bardzo sprawiedliwie dzieli dostępną przepustowość
podobnej jakości (jeśli chodzi o sprawiedliwość) rozwiązania
FQ są droższe w implementacji (bardziej złożone)
złożoność obliczeniowa jest równa O(1) (O(log(n)) dla WFQ)
rozwiązanie proste do implementacji w rzeczywistych
urządzeniach
dr inż. Jerzy Domżał (AGH)
Gwarantowanie jakości obsługi w Internecie
8 października 2012 r.
17 / 46
Spis treści
1
2
3
4
5
6
7
8
9
10
11
12
Wstęp
Fair Queuing vs FIFO
Round-Robin
Deficit Round-robin
Earliest Due Date
Processor sharing
Bit-round Fair Queuing
Generalized Processor Sharing
Weighted Fair Queuing
Start-time Fair Queuing
Virtual clock
Self-Clocked Fair Queuing
dr inż. Jerzy Domżał (AGH)
Gwarantowanie jakości obsługi w Internecie
8 października 2012 r.
18 / 46
Earliest Due Date
każdemu pakietowi przyporządkowujemy nieprzekraczalny czas
transmisji
układ szeregujący obsługuje pakiety zgodnie z przypisanymi
czasami
może się zdarzyć, że układ szeregujący nie zdąży obsłużyć
pakietu; wówczas pakiety ulegają opóźnieniu
im nieprzekraczalny czas transmisji jest bliższy czasowi
napłynięcia pakietu, tym pakiety podlegają mniejszemu
opóźnieniu
dr inż. Jerzy Domżał (AGH)
Gwarantowanie jakości obsługi w Internecie
8 października 2012 r.
19 / 46
Delay EDD
Delay EDD stanowi rozszerzenie algorytmu EDD
układ szeregowania rezerwuje przepustowość na poziomie
szczytowej szybkości danej sesji
układ szeregowania ustawia nieprzekraczalny czas transmisji
na wartość, w której pakiet powinien zostać wysłany, by dotarł
do węzła docelowego w czasie odpowiadającym transmisji z
szybkością szczytową – w ten sposób każdy pakiet uzyskuje
ograniczenie opóźnienia niezależne od rezerwacji
przepustowości
zmniejszony uzysk z multipleksacji statystycznej
dr inż. Jerzy Domżał (AGH)
Gwarantowanie jakości obsługi w Internecie
8 października 2012 r.
20 / 46
Jitter EDD I
Jitter EDD stanowi rozszerzenie algorytmu Delay EDD
poprzez wprowadzenie ograniczenia różnicy opóźnień między
dwoma pakietami
w momencie obsługi pakietu w węźle sieciowym (tuż przed
wysłaniem) odpowiednie pole w jego nagłówku ustawiane jest
na wartość będącą różnicą pomiędzy nieprzekraczalnym
czasem transmisji i aktualnym czasem końcowym
w kolejnym węźle pakiet opóźnieny jest o wartość ustawioną w
nagłówku i dopiero po tym czasie podlega szeregowaniu
Jitter EDD eliminuje efekt różnicowania opóźnienia w różnych
węzłach sieciowych, tym samym zapobiega powstawaniu
efektu wybuchowości (obsługi zgęstek ruchu) wewnątrz sieci
dr inż. Jerzy Domżał (AGH)
Gwarantowanie jakości obsługi w Internecie
8 października 2012 r.
21 / 46
Jitter EDD II
jeśli akn i ekn są odpowiednio czasami przybycia pakietu i jego
zaszeregowania dla k-tego pakietu w n-tym węźle, to:
ek0 = ak0
ekn+1 = ekn + dn + ln,n+1
gdzie dn jest granicą opóźnienia w poprzednim węźle, a ln,n+1
jest opóźnieniem propagacji w łączu między węzłami n i n + 1
jeśli pakiet obsłużony jest wcześniej niż przed upływem dn , to
i tak w kolejnym węźle dodawane jest odpowiednie opóźnienie
związane z najdłuższym możliwym czasem opóźnienia
Jitter EDD zapewnia więc sesjom odpowiednią przepustowość,
opóźnienie i jitter
dr inż. Jerzy Domżał (AGH)
Gwarantowanie jakości obsługi w Internecie
8 października 2012 r.
22 / 46
Jitter EDD III
Jitter EDD jest trudny do zaimplementowania – operator musi
znać maksymalne opóźnienie łączy, a sieć musi zapewniać
synchronizację pomiędzy sąsiednimi węzłami
dr inż. Jerzy Domżał (AGH)
Gwarantowanie jakości obsługi w Internecie
8 października 2012 r.
23 / 46
Spis treści
1
2
3
4
5
6
7
8
9
10
11
12
Wstęp
Fair Queuing vs FIFO
Round-Robin
Deficit Round-robin
Earliest Due Date
Processor sharing
Bit-round Fair Queuing
Generalized Processor Sharing
Weighted Fair Queuing
Start-time Fair Queuing
Virtual clock
Self-Clocked Fair Queuing
dr inż. Jerzy Domżał (AGH)
Gwarantowanie jakości obsługi w Internecie
8 października 2012 r.
24 / 46
Processor sharing
obługiwane jest po 1 bicie z każdej kolejki
rozwiązanie realizujące koncepcję round-robin
każda kolejka otrzymuje
1
N
przepustowości łącza
własności:
proste, nieskomplikowane obliczeniowo rozwiązanie
niepraktyczne w implementacji
dr inż. Jerzy Domżał (AGH)
Gwarantowanie jakości obsługi w Internecie
8 października 2012 r.
25 / 46
Spis treści
1
2
3
4
5
6
7
8
9
10
11
12
Wstęp
Fair Queuing vs FIFO
Round-Robin
Deficit Round-robin
Earliest Due Date
Processor sharing
Bit-round Fair Queuing
Generalized Processor Sharing
Weighted Fair Queuing
Start-time Fair Queuing
Virtual clock
Self-Clocked Fair Queuing
dr inż. Jerzy Domżał (AGH)
Gwarantowanie jakości obsługi w Internecie
8 października 2012 r.
26 / 46
Bit-round Fair Queuing
wysyłane są całe pakiety
podstawowa reguła BRFQ: pakiet z najmniejszym wirtualnym
czasem końca transmisji wysyłany jest w pierwszej kolejności
BRFQ stanowi dobrą aproksymację PS
przepustowość i średnie opóźnienie poszczególnych
przepływów odpowiada podziałowi PS
dr inż. Jerzy Domżał (AGH)
Gwarantowanie jakości obsługi w Internecie
8 października 2012 r.
27 / 46
Bit-round Fair Queuing
t
R(t)
0
0
1
1
Queue α
Queue β
Queue γ
2
3
2
4
5
6
3
7
τi
Pi
Si
Fi
Queue α
P1
P2
0
2
3
1
0
3
3
4
Queue β
P1
P2
1
2
1
4
1
2
2
6
Queue γ
P1
3
3
3
5
8
9
4
10
11
5
12 6
dr inż. Jerzy Domżał (AGH)
Gwarantowanie jakości obsługi w Internecie
8 października 2012 r.
28 / 46
Bit-round Fair Queuing
t
R(t)
0
0
1
1
Queue α
Queue β
Queue γ
2
3
2
4
5
6
3
7
τi
Pi
Si
Fi
Queue α
P1
P2
0
2
3
1
0
3
3
4
Queue β
P1
P2
1
2
1
4
1
2
2
6
Queue γ
P1
3
3
3
5
8
9
4
10
11
5
12 6
dr inż. Jerzy Domżał (AGH)
Gwarantowanie jakości obsługi w Internecie
8 października 2012 r.
28 / 46
Fair Queuing and FIFO
Przykład 1: obciążenie równe przepustowości łącza
Flow 1
Flow 2
Flow 3
FIFO
1
2
3
2
1
2
3
2
1
2
3
2
1
2
3
2
FQ
1
2
3
2
1
2
3
2
1
2
3
2
1
2
3
2
BRFQ
2
3
dr inż. Jerzy Domżał (AGH)
1
2
2
3
1
2
2
3
1
Gwarantowanie jakości obsługi w Internecie
2
2
3
1
2
8 października 2012 r.
29 / 46
Fair Queuing and FIFO
Przykład 2: obciążenie przekracza przepustowość łącza
Flow 1
Flow 2
Flow 3
Flow 4
FIFO
1
2
3
4
FQ
1
2
3
4
BRFQ
2
3
dr inż. Jerzy Domżał (AGH)
4
1
2
1
1
2
2
2
3
2
3
4
3
4
4
2
1
1
2
1
2
3
4
2
1
2
3
4
1
2
3
4
2
3
4
1
2
2
3
Gwarantowanie jakości obsługi w Internecie
8 października 2012 r.
29 / 46
Spis treści
1
2
3
4
5
6
7
8
9
10
11
12
Wstęp
Fair Queuing vs FIFO
Round-Robin
Deficit Round-robin
Earliest Due Date
Processor sharing
Bit-round Fair Queuing
Generalized Processor Sharing
Weighted Fair Queuing
Start-time Fair Queuing
Virtual clock
Self-Clocked Fair Queuing
dr inż. Jerzy Domżał (AGH)
Gwarantowanie jakości obsługi w Internecie
8 października 2012 r.
30 / 46
Generalized Processor Sharing
zapewnia max-min fairness
cała przepustowość jest dzielona pomiędzy aktywne sesje
zgodnie w ich wymaganiami na minimalną przepustowość
tylko jedna sesja może być obsługiwana w danej chwili, a
pakiety nie mogą być dzielone na mniejsze jednostki
każdy przepływ ma przydzieloną wagę
wagi określają jak wiele bitów może być wysłanych w ciągu
każdego cyklu
dr inż. Jerzy Domżał (AGH)
Gwarantowanie jakości obsługi w Internecie
8 października 2012 r.
31 / 46
GPS - przykład
t
0
Queue 1
Queue 2
Queue 3
r1=1/6
c1=1
1
2
c1=1/3
c2=2/3
SERVER
r2=1/3
r=1
3
4
r3=1/2
5
1,
6
7
c1(t)=
0<t<=1
1/3, 1<t<=3
1/6, t>3
c1=1/6
c2=1/3
c3=1/2
0,
8
c2(t)=
0<t<=1
2/3, 1<t<=3
1/3, t>3
9
10
0,
c3(t)=
11
0<t<=3
1/2, t>3
12
dr inż. Jerzy Domżał (AGH)
Gwarantowanie jakości obsługi w Internecie
8 października 2012 r.
32 / 46
Spis treści
1
2
3
4
5
6
7
8
9
10
11
12
Wstęp
Fair Queuing vs FIFO
Round-Robin
Deficit Round-robin
Earliest Due Date
Processor sharing
Bit-round Fair Queuing
Generalized Processor Sharing
Weighted Fair Queuing
Start-time Fair Queuing
Virtual clock
Self-Clocked Fair Queuing
dr inż. Jerzy Domżał (AGH)
Gwarantowanie jakości obsługi w Internecie
8 października 2012 r.
33 / 46
PS −→ BRFQ, GPS −→ WFQ
obsługiwane są całe pakiety
przepływy (sesje) mają przydzielone wagi
podstawowa reguła WFQ (BRFQ): pakiet z najmniejszym
wirtualnym czasem końca transmisji jest obsługiwany w
pierwszej kolejności
różnicą jest sposób wyznaczenia wirtualnego czasu końca
transmisji
Fi,0 = 0
Si,k = max {Fi,k−1 , V (ai,k )}
L
Fi,k = Si,k + ri,ki
dr inż. Jerzy Domżał (AGH)
Gwarantowanie jakości obsługi w Internecie
8 października 2012 r.
34 / 46
Weighted Fair Queuing
Przykład 1
Flow 1
Flow 2
Flow 11
FIFO
1
2
3
4
5
6
7
8
9
10
11
1
1
1
1
1
1
1
1
1
1
WFQ
1
1
1
1
1
1
1
1
1
1
2
3
4
5
6
7
8
9
10
11
1
Waga przepływu 1: 0.5
Waga przepływów 2–11: 0.05
dr inż. Jerzy Domżał (AGH)
Gwarantowanie jakości obsługi w Internecie
8 października 2012 r.
35 / 46
Weighted Fair Queuing
Przykład 2
Flow 1
Flow 2
Flow 11
FIFO
1
2
3
4
5
6
7
8
9
10
11
1
1
1
1
1
1
1
1
1
1
WFQ
1
2
1
3
1
4
1
5
1
6
1
7
1
8
1
9
1
10
1
11
1
Waga przepływu 1: 0.5
Waga przepływów 2–11: 0.05
dr inż. Jerzy Domżał (AGH)
Gwarantowanie jakości obsługi w Internecie
8 października 2012 r.
35 / 46
Spis treści
1
2
3
4
5
6
7
8
9
10
11
12
Wstęp
Fair Queuing vs FIFO
Round-Robin
Deficit Round-robin
Earliest Due Date
Processor sharing
Bit-round Fair Queuing
Generalized Processor Sharing
Weighted Fair Queuing
Start-time Fair Queuing
Virtual clock
Self-Clocked Fair Queuing
dr inż. Jerzy Domżał (AGH)
Gwarantowanie jakości obsługi w Internecie
8 października 2012 r.
36 / 46
Start-time Fair Queuing
działa w oparciu implementację kolejki “Push-In, First-Out”
(PIFO)
pakiety szeregowane są w malejącej kolejności znaczników
czasowych (start tag)
Własności SFQ
zapewnia sprawiedliwość
zapewnia małe średnie i maksymalne opóźnienia dla wolnych
przepływów
wydajny obliczeniowo
szczegóły zostaną przedstawione przy okazji omawiania
koncepcji FAN
dr inż. Jerzy Domżał (AGH)
Gwarantowanie jakości obsługi w Internecie
8 października 2012 r.
37 / 46
Start-time Fair Queuing
60
Flows =100
Flows =150
Flows =200
SFQ
WFQ
50
Delay (ms)
40
30
20
10
0
0
0.7
1000
!
"
0.75
0.8
0.85
Average Utilization
0.9
0.95
P. Goyal, H.M. Vin, and H. Cheng. Start-time fair queuing: A scheduling algorithm for
integrated services packet switching networks. In Proceedings of ACM SIGCOMM’96.
&
"
(
+
,
-
+
+
/
1
!
"
&
"
dr inż. Jerzy Domżał (AGH)
e
Gwarantowanie jakości obsługi w Internecie
f
g
h
f
i
j
f
i
8 października 2012 r.
i
f
g
38 / 46
Spis treści
1
2
3
4
5
6
7
8
9
10
11
12
Wstęp
Fair Queuing vs FIFO
Round-Robin
Deficit Round-robin
Earliest Due Date
Processor sharing
Bit-round Fair Queuing
Generalized Processor Sharing
Weighted Fair Queuing
Start-time Fair Queuing
Virtual clock
Self-Clocked Fair Queuing
dr inż. Jerzy Domżał (AGH)
Gwarantowanie jakości obsługi w Internecie
8 października 2012 r.
39 / 46
Virtual clock
układ szeregowania używa funkcji czasu rzeczywistego w celu
aproksymacji funkcji czasu wirtualnego
V VC (t) = t for t ≥ 0
Fi,k = max {Fi,k−1 , ai,k } +
Li,k
ri
wartości znaczników wyliczane są dla każdej sesji niezależnie
od pozostałych
dr inż. Jerzy Domżał (AGH)
Gwarantowanie jakości obsługi w Internecie
8 października 2012 r.
40 / 46
Virtual clock - przykład
V VC (t) = t for t ≥ 0
Fi,k = max {Fi,k−1 , ai,k } +
Li,k
ri
Sesja 1: r1=1/2
F1(t) 2
4
czas 0
1
Sesja 2: r2=1/2
6 --------------------------- 1800
1802 ------- 2000
2 --------------------------- 899
900 --------- 999
F2(t)
902
904 -------------------------- 2000
czas
900 ---------------------------------- 1449
Virtual clock jest niesprawiedliwy
dr inż. Jerzy Domżał (AGH)
Gwarantowanie jakości obsługi w Internecie
8 października 2012 r.
41 / 46
Spis treści
1
2
3
4
5
6
7
8
9
10
11
12
Wstęp
Fair Queuing vs FIFO
Round-Robin
Deficit Round-robin
Earliest Due Date
Processor sharing
Bit-round Fair Queuing
Generalized Processor Sharing
Weighted Fair Queuing
Start-time Fair Queuing
Virtual clock
Self-Clocked Fair Queuing
dr inż. Jerzy Domżał (AGH)
Gwarantowanie jakości obsługi w Internecie
8 października 2012 r.
42 / 46
Virtual clock
układ szeregowania aktywuje funkcję wyznaczania czasu
wirtualnego, gdy pakiet opuszcza węzeł i ustawia wartość
równą czasowi opuszczenia węzła
V VC (t) = Fj,l jeśli l-ty pakiet sesji j-tej jest wysłany w czasie t ≥ 0
L
Fi,k = max {Fi,k−1 , ai,k } + ri,ki
dr inż. Jerzy Domżał (AGH)
Gwarantowanie jakości obsługi w Internecie
8 października 2012 r.
43 / 46
Virtual clock - przykład
V VC (t) = Fj,l for t ≥ 0
Fi,k = max {Fi,k−1 , ai,k } +
Li,k
ri
Sesja 1: r1=1/2
F1(t) 2
4
czas 0
1
Sesja 2: r2=1/2
6 --------------------------- 1800
1802 ------- 2000
2 --------------------------- 899
900 --------- 999
F2(t)
1802 ------- 2000
czas
900 --------- 999
SCFQ jest sprawiedliwy
dr inż. Jerzy Domżał (AGH)
Gwarantowanie jakości obsługi w Internecie
8 października 2012 r.
44 / 46
Podsumowanie; co trzeba zapamiętać?
czym jest szeregowanie pakietów?
po co stosujemy mechanizmy szeregowania pakietów?
FIFO/FQ/RR?
PS −→ BRFQ, GPS −→ WFQ
dr inż. Jerzy Domżał (AGH)
Gwarantowanie jakości obsługi w Internecie
8 października 2012 r.
45 / 46
Dziękuję za uwagę!
Pytania?
http://kt.agh.edu.pl/∼jdomzal/QoS/wyklad 4.pdf
dr inż. Jerzy Domżał (AGH)
Gwarantowanie jakości obsługi w Internecie
8 października 2012 r.
46 / 46