Technologie sieciowe 2 (TS2) Wykład 2: Maksymalizacja użyteczności sieci dr inż. Andrzej Szwabe Instytut Automatyki i Inżynierii Informatycznej, Wydział Elektryczny Politechniki Poznańskiej e-mail: Andrzej.Szwabe@put.poznan.pl
Plan wykładu Sieć jako współdzielony zasób Quality of Service (QoS) - czym jest, a czym nie jest QoS Obiektywne parametry jakości transmisji QoS (delay, jitter, PLR) Ograniczenia „klasycznych” metod oceny jakości transmisji, powszechnie występujące błędne założenia dotyczące przeznaczenia sieci Efektywna sieć jako system realizujący zadanie NUM Klasyczne ujęcie problemu NUM, funkcje użyteczności Przeznaczenie sieci wielo-usługowej a ograniczenia klasycznego ujęcia problemu NUM, problem wielu stanów równowagi Kompromis pomiędzy NUM a niezależnością warstw modelu komunikacyjnego Dekompozycja podstawowego problemu optymalizacyjnego NUM na pod-problemy i funkcje realizowane przez protokoły różnych warstw Stabilność działania i sposoby zapewniania stabilnego działania sieci we wszystkich warstwach modelu komunikacji Problemy implementacji systemów NUM Wybrane pozycje literaturowe
Sieć jako współdzielony zasób Srinivas Shakkottai, R. Srikant, Network Optimization and Control, Foundations and Trends in Networking, Vol. 2, No. 3 (2007) 271–379, 2008
Przeznaczenie sieci Klasyczna (‘podręcznikowa’) ogólna definicja przeznaczenia sieci: zdalne udostępnianie zasobów (danych i urządzeń) Sieć postrzegana zwyczajowo jako medium o zasobach ograniczonych w warstwie fizycznej (limitem przepustowości), a więc niezależnych od wyższych warstw Przepustowość warstwy fizycznej sieci radiowych istotnie zależna od sposobu działania wyższych warstw (interferencje) Współdzielenie zasobów sieci z komutacją pakietów IP a współdzielenie zasobów sieci z komutacją łączy Dużo większa niezawodność współdzielenia zasobów sieci z komutacją łączy z perspektywy aplikacji typu CBR (Constant Bit Rate) wrażliwych na opóźnienie, np. telefonii, VoIP Sprawdzone, rozwijane od ponad stu lat metody inżynierii ruchu dla sieci z komutacją łączy Dużo większa efektywność pakietowego współdzielenia zasobów sieci postrzegana z perspektywy efektywności realizacji aplikacji sieciowych niewrażliwych lub w niewielkim stopniu wrażliwych na opóźnienia transmisji pakietów w sieci, np. WWW, e-mail Aplikacyjna uniwersalność sieci IP jako motywacja do udoskonalania metod inżynierii ruchu dla sieci pakietowych i metod zapewniania jakości transmisji (szeroko pojętych metod QoS)
Środki współdzielenia zasobów sieci z komutacją pakietów Wykrywanie i zapobieganie kolizjom w podwarstwie MAC warstwy łącza danych Stosowanie przełączania w warstwie drugiej (np. w sieci IEEE 802.3) Zapobieganie natłokowi w sieci IP (congestion control) Sterowanie przepływami przesyłanymi w sieci IP Ograniczanie/kształtowanie szybkości przepływów przesyłanych w sieci IP w węzłach pośredniczących (bramach, ruterach) Węzły działające autonomicznie (przykład: podział przepustowości łącza LAN-WAN pomiędzy klasy ruchu identyfikowane na podstawie protokołów wyższych warstw, np. w celu ograniczenia sumarycznego wolumenu nieadaptacyjnego ruchu UDP) Węzły działające w sposób zintegrowany i współtworzące system zapewniania jakości transmisji (np. zgodny z IntServ lub DiffServ) Sterowanie przepływami przesyłanymi w sieci IP (flow control): działające na zasadzie okna transmisyjnego (window-based, np. TCP) działające na zasadzie sterowania szybkością chwilową przepływu według równania (equation-based, np. TFRC)
Sieci IP z rezerwacją zasobów Współdzielenie zasobów sieci IP jako ‘uogólnienie’ współdzielenia zasobów sieci z komutacją łączy i z komutacją kanałów – sieć IP jako środek realizacji ‘kompromisu’: Techniczne sposoby realizacji ‘wirtualnych kanałów’ w sieci pakietowej: Statycznie ‘zestawiane’ tunele wspierane rezerwacją zasobów kolejek w węzłach pośredniczących transmisji w tunelu (uwaga: zestawienie tunelu lub VPN nie jest równoznaczne z rezerwacją zasobów) Dynamicznie ‘zestawiane’ kanały wspierane rezerwacją zasobów kolejek w węzłach pośredniczących transmisji w tunelu (np. z użyciem protokołu RSVP) Adaptacyjne zarządzanie ‘komutacją’ ‘wirtualnych łączy’ – kontrola dostępu (amission control) Konkluzje ekspertów: Im ‘twardsze’ metody QoS (z większym prawdopodobieństwem zapewniające jakość transmisji) działają w sieci, tym niższa jest efektywność wykorzystania zasobów tej sieci z perspektywy aplikacji w niewielkim stopniu wrażliwych na wahania jakości transmisji. Wraz z rozwojem metod IP QoS zorientowanych na ‘twardy QoS’ (głównie IntServ) sieci w których działają te metody zaczęły się coraz bardziej upodabniać do równolegle ‘odrzucanych’ sieci ATM.
Jakość transmisji w sieci IP
Parametry jakości transmisji na tle innych zagadnień IP QoS Kwestia terminologii zagadnienia jakości transmisji w sieci IP Parametry Quality of Service (QoS) – do pewnego stopnia zestandaryzowane: Opóźnienie Zmienność opóźnienia Procent strat pakietów Klasy Quality of Service (QoS) – umowne, specyficzne dla dostawcy usług Metody Quality of Service (QoS) – metody zapewnienia jakości transmisji na zasadzie aktywnego zarządzania kolejkowaniem (AQM) w warstwie sieci: DiffServ IntServ (bazujące na protokole RSVP)
Obiektywne parametry jakości transmisji w sieci IP (1/2) Opóźnienie (delay) Składniki: opóźnienie przetwarzania, kolejkowania, transmisji, propagacji Zwykle utożsamiane ze średnim opóźnieniem Niska wartość średnia opóźnienia: kluczowa dla VoIP, ważna z perspektywy szybkości działania algorytmu AIMD (w fazie unikania natłoku) realizowanego przez agenta protokołu TCP Zmienność opóźnienia transmisji pakietów - Packet Delay Variation (PDV) (potocznie jitter) Definicja w RFC 3393 Możliwość kompensacji w buforze odbiorczym (play-out buffer) o odpowiedniej długości zmniejszenie tzw. late losses kosztem zwiększenia opóźnienia odtwarzania adaptacyjna długość bufora odbiorczego możliwa do uzyskania w przypadku strumieni VoIP z detekcją aktywności rozmówcy (VAD, tzw. Comfort noise RTP PT) Niska wartość PDV: kluczowa dla VoIP, ważna z perspektywy TCP timeouts
Obiektywne parametry jakości transmisji w sieci IP (2/2) Procent utraconych pakietów - Packet Loss Ratio (PLR) Odporność strumienia zależna od formatu kodowania (zwykle im nowszy format, tym mniejsza, kilkuprocentowa tolerancja dla VoIP) Straty pakietów spowodowane przeciążeniem sieci a straty pakietów w wyniku błędów transmisji w warstwie fizycznej Zgęstkowość (burstiness) strat pakietów (2 parametry modelu Bernouliego w odróżnieniu od pojedynczego PLR) PLR w sieci radiowej a działanie TCP
Zależność pomiędzy PDV a retransmisjami TCP PDV jako czynnik „zwiększający tolerancję” TCP na opóźnienie D. E. Comer, Internetworking with TCP-IP -- Principles, protocols, and architectures (4th ed)
Przykłady szybkości bitowej klas ruchu wrażliwych na opóźnienie Formaty kodowania dźwięku 8 kbit/s – jakość telefoniczna z użyciem tzw. kodeków głosowych (speech codecs) 1411.2 kbit/s – format PCM Compact Disc Digital Audio MPEG-1 Audio Layer 3 32 kbit/s – jakość AM 192 kbit/s – jakość DAB (Digital Audio Broadcasting) 224–320 kbit/s – jakość bliska CD Audio 64 kbit/s - nieliniowe kodowanie PCM µlaw lub A-law stosowane w cyfrowej telefonii stacjonarnej Format MPEG-2 Video 16 kbit/s – minimalna akceptowalna jakość wideotelefonii 128 – 384 kbit/s – typowa jakość strumienia AV transmitowanego w ramach wideokonferencji 1.25 Mbit/s – jakość VCD 5 Mbit/s – jakość DVD 15 Mbit/s – jakość HDTV 36 Mbit/s – jakość HD DVD quality 54 Mbit/s – jakość Blu-ray Disc
Obiektywne parametry jakości transmisji a użyteczność sieci Powszechnie wyrażane niesłuszne/błędne założenia dotyczące przeznaczenia sieci Sieć powinna wszystkim zapewniać tę samą przepustowość. Problemy i pytania: Czy wszystkim przepływom, czy wszystkim użytkownikom/hostom? Czy np. węzeł sieci VPN globalnej korporacji powinien uzyskiwać taką samą przepustowość jak użytkownik domowy? Czy takie parametry jak opóźnienie, jitter, PLR są bez znaczenia? Czy długość ścieżki transmisji jest bez znaczenia? Sieć powinna wszystkim zapewniać parametry jakości transmisji odpowiednią (np. proporcjonalną) do ich potrzeb. Problemy i pytania: Jak dynamicznie (proporcjonalnie) wiązać potrzeby z parametrami? Jak sygnalizować „potrzeby transmisyjne” w sieci rozległej lub sieci MANET? Czy zapewnienie „potrzeb transmisyjnych” w sieci rozległej lub sieci MANET może polegać na rezerwacji zasobów? Czy można awansem przesłać strumień VoIP korzystając z chwilowo dostępnej wysokiej przepustowości sieci? Czy zmiana szybkości o 1 kb/s ma taką samą wartość użytkową w przypadku strumienia VoIP, jak i transmisji w globalnej sieci typu P2P?
Obiektywne parametry jakości transmisji a użyteczność sieci Relacja pomiędzy obiektywnymi parametrami jakości transmisji (abstrahującymi od klasy aplikacji) a subiektywną użytecznością transmisji Próba obiektywizacji subiektywnej jakości użytkowej – tzw. klasy QoS Znaczenie wartości pola DSCP (6 pierwszych bitów pola ToS nagłówka IP) zgodnie z modelem DiffServ Best Effort Best Effort (000000) Premium Express Forwarding (101110) Gold service (L) Class 1, Gold (001010) Gold service (M) Class 1, Silver (001100) Gold service (H) Class 1, Bronze (001110) Silver service (L) Class 2, Gold (010010) Silver service (M) Class 2, Silver (010100) Silver service (H) Class 2, Bronze (010110) Bronze service (L) Class 3, Gold (011010) Bronze service (M) Class 3, Silver (011100) Bronze service (H) Class 3, Bronze (011110) Implikacje ograniczeń „klasycznych” metod oceny i specyfikacji jakości transmisji
Usługi typu IP QoS Komercjalizacja jakości transmisji w sieci IP na przykładzie usług UMTS Klasy UMTS QoS Atrybuty UMTS Bearer Service Traffic class 'conversational', 'streaming', 'interactive', 'background' Maximum bit rate (kbps) Guaranteed bit rate (kbps) Delivery order (y/n) Maximum SDU size (octets) SDU format information (bits) SDU error ratio Residual bit error ratio Delivery of erroneous SDUs (y/n/-) Transfer delay (ms) Traffic handling priority Allocation/Retention Priority Source statistics descriptor ('speech'/'unknown') (SDU = Service Data Unit) Service Level Agreement (SLA), Service Level Specification, kary umowne a optymalizacja wykorzystania zasobów sieci · Traffic class Conversational class Real Time Streaming class Real Time Interactive class Best Effort Background class Best Effort Fundamental characteristics - Preserve time relation (variation) between information entities of the stream - Conversational pattern (stringent and low delay ) - Request response pattern -Preserve payload content -Destination is not expecting the data within a certain time Example of the application voice streaming video web browsing telemetry, emails
Efektywna sieć jako system realizujący zadanie NUM zbiór przepływów trasa przepływu szybkość przepływu
NUM a nieliniowość funkcji użyteczności max (U(x1) + U(x2)) dla x1+x2 <=5 Srinivas Shakkottai, R. Srikant, Network Optimization and Control, Foundations and Trends in Networking, Vol. 2, No. 3 (2007) 271–379, 2008
Klasyczne ujęcie problemu NUM Oznaczenia: zbiór połączeń warstwy łącza danych przepustowość połączenia warstwy łącza danych zbiór przepływów przepływ (jednoznaczny z jego trasą) szybkość przepływu Założenie: funkcja U(x) niemalejąca, ściśle wklęsła Przeznaczenie sieci jako problem optymalizacyjny: przy ograniczeniach: (nieujemna szybkość bitowa przepływów i skończona przepustowość połączeń) Ścisła wklęsłość niemalejącej funkcji U(x) -> unikalne maksimum pochodnej Zbiór ograniczeń jest wypukły (w rozumieniu optymalizacji wypukłej) -> możliwość zastosowania metody mnożników Lagrange’a i twierdzenia KKT Karush-Kuhn-Tucker Srinivas Shakkottai, R. Srikant, Network Optimization and Control, Foundations and Trends in Networking, Vol. 2, No. 3 (2007) 271–379, 2008
Rozwiązanie problemu NUM w klasycznym ujęciu (1/2) Problem klasy NUM można zdefiniować jako: przy ograniczeniach: przy czym funkcja f jest wypukła, funkcje g są wklęsłe, a h – afiniczne. Jeśli istnieje rozwiązanie tego problemu w postaci stałych i spełniających: wówczas x* odpowiada globalnemu maksimum:
Rozwiązanie problemu NUM w klasycznym ujęciu (2/2) Funkcja Lagrange’a ma postać: Problem NUM można sformułować jako problem maksymalizacji użyteczności przy ograniczeniach przepustowości: Rozwiązanie problemu spełnia warunek: Ponadto wprowadza się tzw. funkcję dualną problemu o postaci: Mnożniki Lagrange’a , odpowiadające rozwiązaniu problemu NUM są równocześnie rozwiązaniem problemu dualnego (sterowania przepływami przez minimalizację natłoku)
Ilustracyjny przykład zastosowania metody NUM (1/2) Założenia: przepustowość połączeń 1,3 i 5 równa 2, przepustowość połączeń 2 i 4 równa 1 Problem NUM: (zbieżność U(x) z nowymi odmianami TCP) przy ograniczeniach: Dwa mnożniki Lagrange’a odpowiadają ograniczeniom połączeń L1 i L2 (wiążą szybkość ze wskaźnikami natłoku) Srinivas Shakkottai, R. Srikant, Network Optimization and Control, Foundations and Trends in Networking, Vol. 2, No. 3 (2007) 271–379, 2008
Ilustracyjny przykład zastosowania metody NUM (2/2) Funkcja Lagrange’a: Przypomnienie: Przyjęcie dla każdego r: Wynik: relacja pomiędzy szybkościami a ograniczeniami szybkości Warunki brzegowe jako ograniczenia: Rozwiązanie problemu NUM: Uwagi: Optymalna szybkość przepływu zależy tylko od „lokalnych” mnożników Lagrange’a, tj. „położonych” wzdłuż trasy. Szybkość przepływu jest odwrotnie proporcjonalna do sumy aktualnych „cen” połączeń na trasie.
Maksymalizacja użyteczności sieci a tzw. sprawiedliwy podział zasobów Dwa alternatywne ujęcia znaczenia funkcji użyteczności Wyraz satysfakcji użytkownika Determinant sposobu podziału zasobów sieci Wybrane modele sprawiedliwego podział zasobów (fairness) Proporcjonalnie sprawiedliwy przydział zasobów Funkcja użyteczności: Rozwiązanie problemu NUM: Dowolny inny podział zasobów: Każde zwiększenie przydziału dla dowolnego użytkownika spowoduje zmniejszenie zasobów u innego, przy czym zmiana tego zmniejszenia będzie proporcjonalnie większa niż zmiana zwiększenia. Ważony proporcjonalnie sprawiedliwy przydział zasobów Sprawiedliwy przydział zasobów minimalizujący potencjalne opóźnienie transmisji pliku Rozwiązanie problemu NUM: minimalizacja
Przykłady zastosowań metody NUM TCP-Vegas Przepustowość jako iloraz częstotliwości potwierdzeń i opóźnienia trasy: Problem optymalizacyjny: przy naturalnym ograniczeniu: Wynik: TCP-Vegas jako algorytm zapewniający ważony proporcjonalnie sprawiedliwy przydział zasobów (weighted-proportionally fair) maksymalizujący: FAST TCP modyfikacja TCP-Vegas uzależnienie szybkości zwiększania i zmniejszania wielkości congestion window (parametrów algorytmu AIMD) od różnicy pomiędzy aktualną wielkością okna a wyznaczoną wielkością dla punktu równowagi, tzw. equilibrium (analogia: regulator P w teorii sterowania) Eksperymentalne systemy dla sieci typu wireless multi-hop Microsoft Horizon, Bell Labs wGPD, DiifQ
Kompromis pomiędzy NUM a niezależnością warstw modelu komunikacyjnego
Praktyczna interpretacja teoretycznych warunków NUM Warstwa sieci maksymalizuje przepustowość sieci Dzięki zintegrowanemu rutingowi i schedulingowi Maksymalizacja przepustowości sieci tożsama z maksymalną zdolnością do zachowania stabilności wszystkich kolejek w sieci (tzw. region stabilności tożsamy tzw. regionowi przepustowości) Zerowy „duality gap” Dzięki odpowiedniemu sterowaniu przepływami warstwa transportowa maksymalizuje użyteczność zasobów (przepustowości) udostępnionych przez warstwę sieci Pomimo międzywarstowego zintegrowanego ujęcia problemu optymalizacyjnego (cross-layer optimization approach) finalny wynik teoretyczny umożliwiający (teoretycznie...) „powrót” do modelu niezależności warstwy transportowej od warstw niższych.
Maksymalizacja przepustowości sieci: Max-Weight Scheduling Naturalna propagacja informacji o natłoku do źródeł przepływów Nie rozwiązuje problemu NUM, ale warunkuje redukcję do zera tzw. duality gap modelu NUM ze strony warstwy sieci Potoczne określenie: back-pressure Udane zastosowania praktyczne w konstrukcjach przełączników i systemach sieci MANET
Zastosowanie metody NUM w sieciach typu multi-path Możliwość integracji MWS z funkcją routingu -> maksymalizacja przepustowości sieci umożliwiających równoległą transmisję wieloma ścieżkami, np. w sieciach typu wireless multi-hop Srinivas Shakkottai, R. Srikant, Network Optimization and Control, Foundations and Trends in Networking, Vol. 2, No. 3 (2007) 271–379, 2008
Maksymalizacja przepustowości sieci: dodatkowe ograniczenia MWS Realizacja MWS wiąże się z ograniczeniami przepustowości specyficznymi dla rodzaju sieci, np. międzysieciowych interferencji (wykraczających poza sieć w warstwie drugiej) Srinivas Shakkottai, R. Srikant, Network Optimization and Control, Foundations and Trends in Networking, Vol. 2, No. 3 (2007) 271–379, 2008
Sterowanie szybkością przepływu zgodnie z modelem NUM Algorytm gradientowy typu prymalnego Srinivas Shakkottai, R. Srikant, Network Optimization and Control, Foundations and Trends in Networking, Vol. 2, No. 3 (2007) 271–379, 2008 To jest model uproszczony do tzw. homogenicznego sterowania przepływami
Stabilność sieci a stabilność pętli sterowania szybkością przepływu Dwie skale czasowe i dwa podstawowe aspekty stabilności sieci Stabilność sieci jako odporność na zmiany zbioru obsługiwanych przepływów W sieci rozległej równoczesny zanik wpływu pojedynczego przepływu przy jednoczesnym nasileniu fraktalnego zjawiska tzw. ruchu długoogoniastego (long-tail) Stabilność pętli sterowania szybkością przepływu Teorio-sterowaniowe modele pętli sprzężenia zwrotnego (funkcja potwierdzenia odbioru lub funkcja monitorowania jakości transmisji strumienia AV) – modele transmitancji w dziedzinie zespolonej najczęściej określonej transformatą Laplace’a (S), rzadziej - transformatą Z
Problemy implementacji systemów NUM
Uwarunkowania implementacyjne systemów NUM Heurystyczne podstawy praktycznie niezastępowalnych protokołów sieciowych Brak niektórych funkcji niezbędnych do praktycznej realizacji NUM, np.: Brak funkcji sygnalizacji poziomu wypełnienia kolejek Brak możliwości sterowania kolejkowaniem w warstwie MAC -> problem realizacji MWS -> przybliżone podejścia, np. LQF Przybliżone realizacje NUM Problem pre-routingu -> estymator ścieżki w podejściu Horizon Redukcja nadmiarowości dodatkowej sygnalizacji Piggybacking informacji o poziomie wypełnienia kolejek w pakietach transportujących dane (DiffQ) Potrzeba inżynierii odwrotnej zorientowanej na metodykę NUM Modele funkcji użyteczności dla odmian TCP Potrzeba ścisłej współpracy teoretyków i praktyków – przykład: DANUMS
Ukierunkowana na NUM inżynieria odwrotna protokołu TCP Modele funkcji sterowania szybkością strumienia w czasie dyskretnym: Modele funkcji użyteczności: Steven H. Low. A duality model of TCP and queue management algorithms. IEEE/ACM Trans. on Networking, 11:525–536, 2003.
Ukierunkowana na NUM inżynieria odwrotna protokołu TCP Modele funkcji sterowania szybkością strumienia w czasie dyskretnym: Modele funkcji użyteczności: Bardzo odmienne od -1/xs ? Nie, bo Steven H. Low. A duality model of TCP and queue management algorithms. IEEE/ACM Trans. on Networking, 11:525–536, 2003.
Wybrane pozycje literaturowe Network Optimization and Control, Srinivas Shakkottai, R. Srikant, Foundations and Trends in Networking, Vol. 2, No. 3 (2007) 271–379, 2008 Layering as optimization decomposition: A mathematical theory of network architectures, in Proceedings of the IEEE, Mung Chiang, Steven H. Low, A. Robert Calderbank, John C. Doyle, IEEE, Piscataway, NJ, 2007 Steven H. Low. A duality model of TCP and queue management algorithms. IEEE/ACM Trans. on Networking, 11:525–536, 2003. The Mathematics of Internet Congestion Control, Rayadurgam Srikant, Birkhauser, Boston-Basel-Berlin, 2004 Zalecane samodzielne wyszukiwanie informacji w publikacjach naukowych dostępnych w Internecie (potencjalny temat konsultacji)
Dziękuję za uwagę. Proszę o pytania.