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 Wstęp 2 Fair Queuing vs FIFO 3 Round-Robin 4 Deficit Round-robin 5 Earliest Due Date 6 Processor sharing 7 Bit-round Fair Queuing 8 Generalized Processor Sharing 9 Weighted Fair Queuing 10 Start-time Fair Queuing 11 Virtual clock 12 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 Wstęp 2 Fair Queuing vs FIFO 3 Round-Robin 4 Deficit Round-robin 5 Earliest Due Date 6 Processor sharing 7 Bit-round Fair Queuing 8 Generalized Processor Sharing 9 Weighted Fair Queuing 10 Start-time Fair Queuing 11 Virtual clock 12 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 Wstęp 2 Fair Queuing vs FIFO 3 Round-Robin 4 Deficit Round-robin 5 Earliest Due Date 6 Processor sharing 7 Bit-round Fair Queuing 8 Generalized Processor Sharing 9 Weighted Fair Queuing 10 Start-time Fair Queuing 11 Virtual clock 12 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 Wstęp 2 Fair Queuing vs FIFO 3 Round-Robin 4 Deficit Round-robin 5 Earliest Due Date 6 Processor sharing 7 Bit-round Fair Queuing 8 Generalized Processor Sharing 9 Weighted Fair Queuing 10 Start-time Fair Queuing 11 Virtual clock 12 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 Wstęp 2 Fair Queuing vs FIFO 3 Round-Robin 4 Deficit Round-robin 5 Earliest Due Date 6 Processor sharing 7 Bit-round Fair Queuing 8 Generalized Processor Sharing 9 Weighted Fair Queuing 10 Start-time Fair Queuing 11 Virtual clock 12 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 Wstęp 2 Fair Queuing vs FIFO 3 Round-Robin 4 Deficit Round-robin 5 Earliest Due Date 6 Processor sharing 7 Bit-round Fair Queuing 8 Generalized Processor Sharing 9 Weighted Fair Queuing 10 Start-time Fair Queuing 11 Virtual clock 12 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 Wstęp 2 Fair Queuing vs FIFO 3 Round-Robin 4 Deficit Round-robin 5 Earliest Due Date 6 Processor sharing 7 Bit-round Fair Queuing 8 Generalized Processor Sharing 9 Weighted Fair Queuing 10 Start-time Fair Queuing 11 Virtual clock 12 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 Wstęp 2 Fair Queuing vs FIFO 3 Round-Robin 4 Deficit Round-robin 5 Earliest Due Date 6 Processor sharing 7 Bit-round Fair Queuing 8 Generalized Processor Sharing 9 Weighted Fair Queuing 10 Start-time Fair Queuing 11 Virtual clock 12 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 Wstęp 2 Fair Queuing vs FIFO 3 Round-Robin 4 Deficit Round-robin 5 Earliest Due Date 6 Processor sharing 7 Bit-round Fair Queuing 8 Generalized Processor Sharing 9 Weighted Fair Queuing 10 Start-time Fair Queuing 11 Virtual clock 12 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 Wstęp 2 Fair Queuing vs FIFO 3 Round-Robin 4 Deficit Round-robin 5 Earliest Due Date 6 Processor sharing 7 Bit-round Fair Queuing 8 Generalized Processor Sharing 9 Weighted Fair Queuing 10 Start-time Fair Queuing 11 Virtual clock 12 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 Wstęp 2 Fair Queuing vs FIFO 3 Round-Robin 4 Deficit Round-robin 5 Earliest Due Date 6 Processor sharing 7 Bit-round Fair Queuing 8 Generalized Processor Sharing 9 Weighted Fair Queuing 10 Start-time Fair Queuing 11 Virtual clock 12 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 Wstęp 2 Fair Queuing vs FIFO 3 Round-Robin 4 Deficit Round-robin 5 Earliest Due Date 6 Processor sharing 7 Bit-round Fair Queuing 8 Generalized Processor Sharing 9 Weighted Fair Queuing 10 Start-time Fair Queuing 11 Virtual clock 12 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 Wstęp 2 Fair Queuing vs FIFO 3 Round-Robin 4 Deficit Round-robin 5 Earliest Due Date 6 Processor sharing 7 Bit-round Fair Queuing 8 Generalized Processor Sharing 9 Weighted Fair Queuing 10 Start-time Fair Queuing 11 Virtual clock 12 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 Wstęp 2 Fair Queuing vs FIFO 3 Round-Robin 4 Deficit Round-robin 5 Earliest Due Date 6 Processor sharing 7 Bit-round Fair Queuing 8 Generalized Processor Sharing 9 Weighted Fair Queuing 10 Start-time Fair Queuing 11 Virtual clock 12 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 Flow 1 FIFO queuing 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 Wstęp 2 Fair Queuing vs FIFO 3 Round-Robin 4 Deficit Round-robin 5 Earliest Due Date 6 Processor sharing 7 Bit-round Fair Queuing 8 Generalized Processor Sharing 9 Weighted Fair Queuing 10 Start-time Fair Queuing 11 Virtual clock 12 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 Wstęp 2 Fair Queuing vs FIFO 3 Round-Robin 4 Deficit Round-robin 5 Earliest Due Date 6 Processor sharing 7 Bit-round Fair Queuing 8 Generalized Processor Sharing 9 Weighted Fair Queuing 10 Start-time Fair Queuing 11 Virtual clock 12 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 +Q 1 Flow 2 +Q 2 -L -L -L Multiplexed output Flow N +Q N dr inż. Jerzy Domżał (AGH) 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 Wstęp 2 Fair Queuing vs FIFO 3 Round-Robin 4 Deficit Round-robin 5 Earliest Due Date 6 Processor sharing 7 Bit-round Fair Queuing 8 Generalized Processor Sharing 9 Weighted Fair Queuing 10 Start-time Fair Queuing 11 Virtual clock 12 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 ak n i en k są odpowiednio czasami przybycia pakietu i jego zaszeregowania dla k-tego pakietu w n-tym węźle, to: ek 0 = a0 k ek n+1 = ek n + d n + l n,n+1 gdzie d n jest granicą opóźnienia w poprzednim węźle, a l n,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 d n, 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 Wstęp 2 Fair Queuing vs FIFO 3 Round-Robin 4 Deficit Round-robin 5 Earliest Due Date 6 Processor sharing 7 Bit-round Fair Queuing 8 Generalized Processor Sharing 9 Weighted Fair Queuing 10 Start-time Fair Queuing 11 Virtual clock 12 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 Wstęp 2 Fair Queuing vs FIFO 3 Round-Robin 4 Deficit Round-robin 5 Earliest Due Date 6 Processor sharing 7 Bit-round Fair Queuing 8 Generalized Processor Sharing 9 Weighted Fair Queuing 10 Start-time Fair Queuing 11 Virtual clock 12 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) Queue α Queue β Queue γ 0 0 1 1 2 3 4 5 6 7 8 9 10 11 2 3 4 5 Queue α Queue β Queue γ P1 P2 P1 P2 P1 τ i 0 2 1 2 3 P i 3 1 1 4 3 S i 0 3 1 2 3 F i 3 4 2 6 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) Queue α Queue β Queue γ 0 0 1 1 2 3 4 5 6 7 8 9 10 11 2 3 4 5 Queue α Queue β Queue γ P1 P2 P1 P2 P1 τ i 0 2 1 2 3 P i 3 1 1 4 3 S i 0 3 1 2 3 F i 3 4 2 6 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 FQ BRFQ 1 2 3 2 1 2 3 2 1 2 3 2 1 2 3 2 1 2 3 2 1 2 3 2 1 2 3 2 1 2 3 2 2 3 1 2 2 3 1 2 2 3 1 2 2 3 1 2 dr inż. Jerzy Domżał (AGH) Gwarantowanie jakości obsługi w Internecie 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 FQ BRFQ 1 2 3 4 2 1 2 3 4 2 1 2 3 4 2 1 1 2 3 4 1 2 3 4 1 2 3 4 1 2 3 4 2 3 4 1 2 2 3 4 1 2 2 3 4 1 2 2 3 dr inż. Jerzy Domżał (AGH) Gwarantowanie jakości obsługi w Internecie 8 października 2012 r. 29 / 46
Spis treści 1 Wstęp 2 Fair Queuing vs FIFO 3 Round-Robin 4 Deficit Round-robin 5 Earliest Due Date 6 Processor sharing 7 Bit-round Fair Queuing 8 Generalized Processor Sharing 9 Weighted Fair Queuing 10 Start-time Fair Queuing 11 Virtual clock 12 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 Queue 1 Queue 2 Queue 3 0 c1=1 r1=1/6 1 2 c1=1/3 c2=2/3 r2=1/3 SERVER r=1 3 4 r3=1/2 5 6 7 c1=1/6 c2=1/3 c3=1/2 c1(t)= 1, 0<t<=1 1/3, 1<t<=3 1/6, t>3 8 9 c2(t)= 0, 0<t<=1 2/3, 1<t<=3 1/3, t>3 10 11 c3(t)= 0, 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 Wstęp 2 Fair Queuing vs FIFO 3 Round-Robin 4 Deficit Round-robin 5 Earliest Due Date 6 Processor sharing 7 Bit-round Fair Queuing 8 Generalized Processor Sharing 9 Weighted Fair Queuing 10 Start-time Fair Queuing 11 Virtual clock 12 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 F i,0 = 0 S i,k = max{f i,k 1, V (a i,k )} F i,k = S i,k + L i,k r i 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 WFQ 1 2 3 4 5 6 7 8 9 10 11 1 1 1 1 1 1 1 1 1 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 1 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 WFQ 1 2 3 4 5 6 7 8 9 10 11 1 1 1 1 1 1 1 1 1 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 1 dr inż. Jerzy Domżał (AGH) Gwarantowanie jakości obsługi w Internecie 8 października 2012 r. 35 / 46
Spis treści 1 Wstęp 2 Fair Queuing vs FIFO 3 Round-Robin 4 Deficit Round-robin 5 Earliest Due Date 6 Processor sharing 7 Bit-round Fair Queuing 8 Generalized Processor Sharing 9 Weighted Fair Queuing 10 Start-time Fair Queuing 11 Virtual clock 12 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 Flows =100 Flows =150 Flows =200 60 50 SFQ WFQ 40 Delay (ms) 30 20 10 0 1000 0.7 0.75 0.8 0.85 0.9 0.95 Average Utilization Ù õ Ž ù 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. Ð 2 Ó Ò 2 1 Ö 2 Ô Ö Ö Ó dr inż. Jerzy Domżał (AGH) Gwarantowanie jakości obsługi w Internecie 8 października 2012 r. 38 / 46
Spis treści 1 Wstęp 2 Fair Queuing vs FIFO 3 Round-Robin 4 Deficit Round-robin 5 Earliest Due Date 6 Processor sharing 7 Bit-round Fair Queuing 8 Generalized Processor Sharing 9 Weighted Fair Queuing 10 Start-time Fair Queuing 11 Virtual clock 12 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 F i,k = max{f i,k 1, a i,k } + L i,k r i 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 F i,k = max{f i,k 1, a i,k } + L i,k r i Sesja 1: r1=1/2 F1(t) 2 4 6 --------------------------- 1800 1802 ------- 2000 czas 0 1 2 --------------------------- 899 Sesja 2: r2=1/2 F2(t) 900 --------- 999 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 Wstęp 2 Fair Queuing vs FIFO 3 Round-Robin 4 Deficit Round-robin 5 Earliest Due Date 6 Processor sharing 7 Bit-round Fair Queuing 8 Generalized Processor Sharing 9 Weighted Fair Queuing 10 Start-time Fair Queuing 11 Virtual clock 12 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) = F j,l jeśli l-ty pakiet sesji j-tej jest wysłany w czasie t 0 F i,k = max{f i,k 1, a i,k } + L i,k r i 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) = F j,l for t 0 F i,k = max{f i,k 1, a i,k } + L i,k r i Sesja 1: r1=1/2 F1(t) 2 4 6 --------------------------- 1800 1802 ------- 2000 czas 0 1 2 --------------------------- 899 Sesja 2: r2=1/2 F2(t) 900 --------- 999 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