Zarzadzanie zajetoscia bufora
Transkrypt
Zarzadzanie zajetoscia bufora
Zarządzanie zajętością bufora dr inż. Jerzy Domżał Akademia Górniczo-Hutnicza w Krakowie, Katedra Telekomunikacji 15 października 2012 r. dr inż. Jerzy Domżał (AGH) Gwarantowanie jakości obsługi w Internecie 15 październikaa 2012 r. 1 / 23 Spis treści 1 Sterowanie zajętością bufora 2 Algorytmy sterowania zajętością bufora 3 FAN – wstęp dr inż. Jerzy Domżał (AGH) Gwarantowanie jakości obsługi w Internecie 15 październikaa 2012 r. 2 / 23 Spis treści 1 Sterowanie zajętością bufora 2 Algorytmy sterowania zajętością bufora 3 FAN – wstęp dr inż. Jerzy Domżał (AGH) Gwarantowanie jakości obsługi w Internecie 15 październikaa 2012 r. 2 / 23 Spis treści 1 Sterowanie zajętością bufora 2 Algorytmy sterowania zajętością bufora 3 FAN – wstęp dr inż. Jerzy Domżał (AGH) Gwarantowanie jakości obsługi w Internecie 15 październikaa 2012 r. 2 / 23 Spis treści 1 Sterowanie zajętością bufora 2 Algorytmy sterowania zajętością bufora 3 FAN – wstęp dr inż. Jerzy Domżał (AGH) Gwarantowanie jakości obsługi w Internecie 15 październikaa 2012 r. 3 / 23 Wstęp Zarządzanie zajętością bufora to strategia podejmowania decyzji kiedy i w jaki sposób usuwać pakiety z kolejek w sytuacji wystąpienia natłoku Kolejki nie mogą być zbyt krótkie (częste odrzucanie pakietów) ani zbyt długie (opóźnienia) Wybór właściwego pakietu do odrzucenia w sytuacji natłoku decyduje o jakości obsługi ruchu i stabilności sieci dr inż. Jerzy Domżał (AGH) Gwarantowanie jakości obsługi w Internecie 15 październikaa 2012 r. 4 / 23 Spis treści 1 Sterowanie zajętością bufora 2 Algorytmy sterowania zajętością bufora 3 FAN – wstęp dr inż. Jerzy Domżał (AGH) Gwarantowanie jakości obsługi w Internecie 15 październikaa 2012 r. 5 / 23 Tail Drop Tradycyjna technika zarządzania zajętością bufora Ustawiana jest maksymalna długość kolejki (w pakietach) Pakiety przyjmowane są dopóki zajętość kolejki nie osiągnie maksymalnego progu Wadą tego rozwiązania jest możliwość transmisji w łączu przez jeden lub kilka przepływów, które uniemożliwiają innym przepływom umieszczenie pakietów w kolejce Niekorzystne jest również utrzymywanie zajętości bufora na maksymalnym poziomie przez długi czas dr inż. Jerzy Domżał (AGH) Gwarantowanie jakości obsługi w Internecie 15 październikaa 2012 r. 6 / 23 Drop on Full Random drop on full – losowo odrzucany jest pakiet z kolejki, gdy jest ona pełna i pojawia się nowy pakiet Drop front on full – usuwamy pakiet z czoła kolejki, gdy jest ona pełna i pojawia się nowy pakiet Oba rozwiązania zapobiegają monopolizacji kolejki, ale nie przeciwdziałają jej ciągłemu zapełnieniu dr inż. Jerzy Domżał (AGH) Gwarantowanie jakości obsługi w Internecie 15 październikaa 2012 r. 7 / 23 RED (Random Early Detection) Najbardziej popularne rozwiązanie sterowania zajętością bufora w sieciach z transmisją TCP Pakiety docierające do rutera usuwane są losowo z prawdopodobieństwem, które wzrasta wraz ze średnią zajętością kolejki Algorytm zapewnia: obługę przepływów o różnej długości, utrzymanie niewielkiej średniej zajętości kolejki oraz krótkich opóźnień, sprawiedliwy dostęp do zasobów, odpowiednią przepływność dla każdego typu ruchu Algorytm wymaga odpowiedniej konfiguracji w celu osiągnięcia założonych efektów – zły dobór parametrów może skutkować niewłaściwymi parametrami transmisji w natłoku dr inż. Jerzy Domżał (AGH) Gwarantowanie jakości obsługi w Internecie 15 październikaa 2012 r. 8 / 23 RED (Random Early Detection) Zakłada się istnienie dwóch progów minth oraz maxth Gdy zajętość bufora jest poniżej minth , to pakiety przyjmujemy Gdy zajętość bufora jest powyżej minth a poniżej maxth , to pakiety przyjmujemy z prawdopodobieństwem zmieniającym się stosownie do zajętości bufora Gdy zajętość bufora jest powyżej maxth , to pakiety są odrzucane dr inż. Jerzy Domżał (AGH) Gwarantowanie jakości obsługi w Internecie 15 październikaa 2012 r. 9 / 23 LQD (Longest Queue Drop) Zaprojektowany do zastosowania w sieciach z przepływami o tych samych wagach Długość kolejki jest proporcjonalna do długości przepływu Wykazuje lepsze właściwości niż FCFS przy zastosowaniu z mechanizmami FQ Współpraca LQD i FQ ma lepsze właściwości niż RED z FQ Zaletą zastosowania kombinacji FQ oraz LQD jest separacja przepływów. Jeśli natłok spowodowany jest przez jeden przepływ, to tylko ten przepływ ponosi tego konsekwencje (usuwanie pakietów) Kombinacja FQ oraz LQD zapewnia brak usuwania pakietów oraz nieiwelkie opóźnienia dla przepływów transmistujących z szybkością mniejszą niż C/n (C – przepustowość łącza, n – liczba przepływów) dr inż. Jerzy Domżał (AGH) Gwarantowanie jakości obsługi w Internecie 15 październikaa 2012 r. 10 / 23 DRND (Dynamic Soft Partitioning with Random Dropping) Niewielka modyfikacja algorytmu LQD Pakiety usuwane są z najdłuższych kolejek, podobnie jak w LQD Pakiety wybierane są losowo spośród najdłuższych kolejek, co pozwala na usuwanie pakietów z więcej niż jednej kolejki w dłuższym przedziale czasowym dr inż. Jerzy Domżał (AGH) Gwarantowanie jakości obsługi w Internecie 15 październikaa 2012 r. 11 / 23 ALQD (Approximated Longest Queue Drop) Złożoność obliczeniowa algorytmu LQD jest dość duża, ponieważ wymagane jest ciągłe monitorowanie zajętości kolejek Pozwala na łatwiejsze obliczenia, gdyż znacznik najdłuższej kolejki i jej długość zapisywana jest w rejestrze Algorytm nie musi wyszukiwać najdłuższej kolejki Każde zdarzenie w kolejce (np. przyjmowanie lub odrzucanie pakietów) uruchamia mechanizm porównujący długość kolejki z wartością zapisaną w rejestrze W razie konieczności wartości zapisane w rejestrze są uaktualniane dr inż. Jerzy Domżał (AGH) Gwarantowanie jakości obsługi w Internecie 15 październikaa 2012 r. 12 / 23 Spis treści 1 Sterowanie zajętością bufora 2 Algorytmy sterowania zajętością bufora 3 FAN – wstęp dr inż. Jerzy Domżał (AGH) Gwarantowanie jakości obsługi w Internecie 15 październikaa 2012 r. 13 / 23 Sieci zorientowane na przepływy (FAN) Nowa koncepcja stworzona w celu zapewniania transmisji danych z gwarantowaną jakością obsługi Dwa rodzaje przepływów: Strumieniowe (z priorytetem) Elastyczne Skryta klasyfikacja przepływów (sieci neutralne) Proste reguły obsługi przepływów — w ruterach przechowywane są minimalne informacje o przepływach, ważne tylko przez określony czas dr inż. Jerzy Domżał (AGH) Gwarantowanie jakości obsługi w Internecie 15 październikaa 2012 r. 14 / 23 Ruter wzajemnie zabezpieczany Lista chronionych przepływów Protected flow list Szybkość sprawiedliwa, Obciążenie ruchem priorytetowym Fair rate, Priority load Pakiety napływające Sterowanie dostępem Admission control Ruter IP Szeregowanie IP router PFQ scheduling Pakiety nadawane Ruter wzajemnie zabezpieczany Cross-protect router dr inż. Jerzy Domżał (AGH) Gwarantowanie jakości obsługi w Internecie 15 październikaa 2012 r. 15 / 23 Ruter wzajemnie zabezpieczany Mechanizm wzajemnego zabezpieczania rutera polega na zapewnieniu odpowiedniej (skalowalnej) transmisji w łączu wyjściowym Sprawiedliwe szeregowanie pakietów odpowiadające założonemu w FAN obsługiwaniu 2 klas przepływów nakłada na blok szeregujący wymagania, które rosną wraz ze wzrostem równocześnie obsługiwanych przepływów Sterowanie dostępem przepływów do rutera bez znajomości a-priori ich parametrów wymaga informacji o zajętości łącza Rozmiar listy przepływów chronionych jest ograniczany dzięki sterowaniu dostępem Decyzje dotyczące odrzucenia pakietu na wejściu podejmowane są na podstawie stanu łącza obserwowanego w bloku szeregowania dr inż. Jerzy Domżał (AGH) Gwarantowanie jakości obsługi w Internecie 15 październikaa 2012 r. 16 / 23 Funkcjonalność rutera FAN Blok szeregowania pakietów Podstawowe wymagania: Przeciwdziałanie przeciążeniom oraz reakcja na powstały natłok Zapewnienie priorytetyzowania przepływów Nie zapewnia skalowalności — stąd m.in. potrzeba zastosowania bloku sterowania dostępem Pakiety są kolejkowane i wybierane do wysłania zgodnie z algorytmem szeregowania: Priority Fair Queuing (PFQ) Priority Deficit Round Robin (PDRR) Okresowo mierzone są wartości dwóch parametrów: fair rate: maksymalna przepływność przepływów (realizowana lub możliwa do zrealizowania) priority load: współczynnik reprezentujący szybkość przychodzących pakietów priorytetowych w odniesieniu do przepustowości łącza dr inż. Jerzy Domżał (AGH) Gwarantowanie jakości obsługi w Internecie 15 październikaa 2012 r. 17 / 23 Priority Fair Queuing – PFQ Priority Fair Queuing: Opracowany w oparciu o SFQ (Start-time Fair Queuing) Dodatkową zaletą w stosunku do SFQ jest możliwość transmisji ruchu z priorytetem Skrycie nadaje wysoki priorytet pakietom przepływów, których szybkość transmisji jest mniejsza od fair rate Parametry fair rate oraz priority load mierzone są okresowo, przy czym w pierwszym przypadku okres to setki milisekund, a w drugim kilka milisekund Wykorzystuje kolejkę PIFO dr inż. Jerzy Domżał (AGH) Gwarantowanie jakości obsługi w Internecie 15 październikaa 2012 r. 18 / 23 Priority Fair Queuing Obsługa pakietu Jeśli kolejka nie jest przepełniona i przepływ odpowiadający przychodzącemu pakietowi jest aktywny, to uaktualnia się listę PFL Jeśli przepływu nie ma na liście, to jego identyfikator jest do niej wpisywany, a pierwszy pakiet obsługiwany jest z priorytetem Pakiety obsługiwane są z priorytetem jeśli ilość danych umieszczonych w kolejce odpowiadająca ich przepływowi jest mniejsza niż MTU Gdy pakiety opuszczają kolejkę, podejmowane są pewne czynności: jeśli kolejka jest pusta, z listy przepływów aktywnych usuwane są wszystkie identyfikatory, jeśli kolejka jest niepusta, uaktualniane są parametry dla obsłużonego przepływu dr inż. Jerzy Domżał (AGH) Gwarantowanie jakości obsługi w Internecie 15 październikaa 2012 r. 19 / 23 Priority Deficit Round Robin – PDRR Opracowany w oparciu o algorytm DRR (Deficit Round Robin) Dodatkową zaletą w stosunku do DRR jest możliwość transmisji ruchu z priorytetem Pozwala na rozróżnianie przepływów w oparciu o szybkość transmisji Pakiety przepływów o szybkości mniejszej niż fair rate transmitowane są z wysokim priorytetem z użyciem priorytetowej kolejki dr inż. Jerzy Domżał (AGH) Gwarantowanie jakości obsługi w Internecie 15 październikaa 2012 r. 20 / 23 Priority Deficit Round Robin Obsługa pakietu Gdy pakiet p dociera do bloku szeregowania i bufor jest pełny, to musi być usunięty, Jeśli bufor nie jest pełny i p nie należy do aktywnego przepływu, to pakiet umieszczany jest na końcu kolejki priorytetowej, a identyfikator jego przepływu dodawany jest do AFL (Active Flow List) ByteCount(i) to wskaźnik ilości bajtów w kolejce priorytetowej dla przepływu i Pakiety otrzymują wysoki priorytet, gdy ByteCount(i) ≤ Qi (kwant przepływu); w przeciwym przypadku pakiety umieszczane są na końcu przewidzianych dla nich kolejek Takie podejście zapewnia, że przepływy transmitujące z szybkością mniejszą niż kwant na cykl utrzymują niewielkie opóźnienia dr inż. Jerzy Domżał (AGH) Gwarantowanie jakości obsługi w Internecie 15 październikaa 2012 r. 21 / 23 Mechanizm usuwania pakietów w sieciach FAN W FAN stosuje się rozwiązanie PFQ z LQD lub PDRR z LQD Jest jednak możliwe opracowanie algorytmu posiadającego zalety wcześniej wskazanych rozwiązań: izolację przepływów (LQD) losowe wybieranie kolejki (spośród najdłuższych) (DRDN) niską złożoność obliczeniową (ALQD) dr inż. Jerzy Domżał (AGH) Gwarantowanie jakości obsługi w Internecie 15 październikaa 2012 r. 22 / 23 Dziękuję za uwagę! Pytania? http://kt.agh.edu.pl/∼jdomzal/QoS/wyklad 5.pdf dr inż. Jerzy Domżał (AGH) Gwarantowanie jakości obsługi w Internecie 15 październikaa 2012 r. 23 / 23