lab Integrált szolgáltatási modell Távközlési és Médiainformatikai Tanszék Budapesti Műszaki és Gazdaságtudományi Egyetem Bevezetés QoS szolgáltatási architektúrák Integrált szolgáltatás (Integrated Services) Megkülönböztetett szolgáltatás (Differentiated Services) Elemek osztályozók, forgalomformázók, ütemezők, várakozási sor menedzsment beengedés szabályozók (forgalom leírás) torlódás-védelem, terhelés-megosztás útválasztás, szolgáltatás minőségi útválasztás (Quality of Service Routing) 2 1
A probléma megfogalmazása Szolgáltatás minőségre érzékeny alkalmazások hang az IP felett (pl. IP telefónia), multimédia az IP felett (pl. interaktív televízió), elosztott valós idejű alkalmazások (pl. elosztott játékok), elosztott szolgáltatások (pl. VPN), stb Probléma A legjobb szándékú (best-effort) szolgáltatás esetében Minden csomag egységes kezelése Megoldás hálózati torlódások feloldása, elkerülése hálózati erőforrások hatékony elosztása megnöveli a hálózatok kihasználtságát hatékony erőforrás használat 3 Egy megoldás: Integrált szolgáltatási modell IntServ - Integrated Services Szolgáltatási modell Többszörös szolgáltatási osztályok Folyam szintű szolgáltatásminőség biztosítás Protokoll támogatás Explicit erőforrás menedzsment IP szinten 4 2
Egy megoldás: Integrált szolgáltatási modell Architektúrális tulajdonságok Folyamonkénti állapotinformációk tárolása az útválasztókban Jelzésrendszer támogatás, felépítése jelzési protokoll segítségével Beengedés szabályozás kontroll Erőforrás foglaló protokoll Kiszolgáló támogatás Csomagosztályozók Forgalom formázók Ütemezők 5 Erőforrás foglaló protokoll Feladata Folyamok azonosítása Állapotinformációk nyilvántartása folyamonként, kimeneti interfészekhez 6 3
Erőforrás foglaló protokoll Csoportosítása Foglalás iránya szerint Előre foglaló protokollok az erőforrás foglalás iránya az adatfolyam irányával megegyező Visszafelé foglaló protokollok az erőforrás foglalás iránya az adatfolyam irányával ellentétes Az állapotok életciklusa szerint Szilárd állapotok (hard states) Rugalmas állapotok (soft states) Útvonal megőrzés Útvonal megőrző (route pinning) Dinamikusan változó útvonalak 7 Integrált szolgáltatású hálózat Integrated Services networks Végpontok közötti szolgáltatás Folyamonkénti nyilvántartás Minden folyam állandó útvonalat használ folyamonkénti útválasztás 8 4
IS példa I. Beengedés szabályozás Sávszélesség és késleltetés garancia folyamonként Állapotinformációk mentése küldő fogadó 9 IS példa II. Erőforrás foglalás Minden csomópontban lefoglalódik a szükséges erőforrás Állapotinformációk mentése küldő fogadó 10 5
IS példa III. - Adatfolyam Csomagok továbbítása a folyam állapotának megfelelően küldő fogadó 11 IS csomóponti modell szabályzási sík útválasztási üzenetek útválasztás beengedés szabályzás erőforrás menedzsment erőforrás menedzsment üzenetek adat sík útválasztási tábla folyamonkénti QoS tábla csomagok be csomagok ki kimeneti port választás osztályozás ütemezés 12 6
IS adatfolyam modell Folyamonkénti állapotinformáció Forgalom leírás Garancia leírás Folyamonkénti csomagkezelés Folyamonkénti szolgáltatás minőség garancia routing útválasztás traffic classification forgalom osztályozás traffic shaping forgalom formázás packet buffer marking management csomag jelölés queuing, scheduling puffer sorban állás, menedzsment ütemezés 13 IS szolgáltatási osztályok IS service classes Szolgáltatási szerződés megállapodás a kommunikáló felhasználó és a hálózat között végpontok közötti tartományokon belüli, stb. Alapvető szolgáltatások legjobb szándékú (best effort) rugalmas elvárású felhasználások rugalmas valós idejű szolgáltatások (soft real-time services) toleráns felhasználások szigorú valós idejű szolgáltatások (hard real-time services) valós idejű felhasználások 14 7
Garantált szolgáltatások Guaranteed Services Szolgáltatási szerződés végfelhasználó a hálózatnak: a megadott forgalomnál nem küld többet a hálózatba hálózat a végfelhasználónak: felső korlát a folyam minden csomagja késleltetésére a szerződött forgalom feletti csomagokat átsorolja a legjobb szándékú szolgáltatási osztályba Algoritmikus támogatás Szabályozási sík A beengedés szabályozás a legrosszabb esetre számol Adat sík Folyamonkénti osztályozás és ütemezés a hálózati csomópontokban 15 Szabályozott terhelési szolgáltatások Controlled Load Service Szolgáltatási szerződés végfelhasználó a hálózatnak: a megadott forgalomnál nem küld többet a hálózatba hálózat a végfelhasználónak: szolgáltatás hasonló lesz, mint egy terheletlen hálózatban legjobb szándékú átvitel esetében a szerződött forgalom feletti csomagokat átsorolja a legjobb szándékú szolgáltatási osztályba Algoritmikus támogatás Szabályozási sík a beengedés szabályozás mérés alapú aggregátumok alapján dönt Adat sík aggregátumok ütemezése 16 8
Az RSVP feladata az IS architektúrában Resource Reservation Protocol Jelzésrendszer a folyamonkénti állapotok felépítéséhez Erőforrás foglalási kérések szállítása Állapotinformációk összegyűjtése a hálózati csomópontoktól a végfelhasználóknak Minden egyes csomópontban kapcsolattartás a beengedés szabályzó és a policy modullal folyam állapot nyilvántartás, vagy hibajelentés küldése a végfelhasználónak 17 Az RSVP tervezési szempontjai RSVP Resource reservation Protocol Támogatja az IP csoportos folyamirányítást (IP multicast) Fogadó által kezdeményezett erőforrás-foglalás Különféle foglalási stílusok Rugalmas állapot (soft-state) nyilvántartás Az erőforrás-foglalás és az útválasztás szétválasztása 18 9
Az RSVP foglalási modellje Szimplex: Folyamokhoz egy irányban végez erőforrás foglalást unicast: Egy küldő és egy fogadó között multicast: Egy küldő és több fogadó között Visszafelé foglaló protokoll: Az adatfolyam fogadója indítja az erőforrás foglalást Az RSVP rugalmas állapotokat (soft states) épít fel dinamikusan támogatva a fogadók csoportját, vagy az útvonalat Az RSVP nem útválasztó protokoll. Működése viszont függ az útválasztó protokoll működésétől, ami a jelzési és adat üzeneteket továbbítja. Az RSVP felépítése teljesen független az útválasztó, beengedési protokolltól és az ütemezéstől. Átlátszó működést szolgáltat olyan tartományok számára amelyek nem támogatják az RSVP-t. 19 PATH K N1 N2 N3 F A foglalás menete RESV aszimmetrikus útvonalválasztás: F N3 N4 N5 N1 K az előző csomópontok tárolása: F N3 N2 N1 K N2 N1 N3 K F N5 N4 20 10
Az üzenet tartalma PATH üzenet SessionId: folyam azonosítása (cél IP cím, protokoll azonosító, cél IP port azonosító) Timeout value: az állapotok fenntartásának ideje Previous hop address: előző csomópont IP címe Sender template: a küldő azonosítása (IP cím és port azonosító) Sender TSpec: forgalom szabályzás használja AdSpec: az adatfolyam tulajdonságait írja le Útvonalválasztókban PATH állapot tárolása A küldő és a Flowspec tárolása, ha az F-flag be van kapcsolva. Új link hozzáadása a multicast fához. 21 RESV üzenet Az üzenet tartalma Flow spec Leírja az integrált szolgáltatási modell szerinti szolgáltatási szerződést Szolgáltatási osztály Rspec paraméter: az elvárt szolgáltatás leírása (pl. sávszélesség, késleltetés, jitter) Tspec paraméter: az adatfolyamot írja le (pl. token bucket leírók) Ezeket a paramétereket az integrált szolgáltatási modell határozza meg függetlenül az RSVP-től. Filter spec A folyam leíráson felül az adatfolyamot írja le, amelyikre vonatkozik a szerződött szolgáltatás Az útvonalválasztókban RESV állapot tárolása, miután mind a beengedés, mind a policy szabályozás engedélyezte a foglalást A RESV üzenet továbbítása 22 11
IntServ és az Internet Integrated Services megvalósítása esetén adatfolyamonként kell a hálózatbeli forgalmakat nyilvántartani, hogy a szigorú követelmények minden útválasztóban teljesülhessenek Ilyen mechanizmus megvalósítása kisebb hálózatokban lehetséges csak Adatfolyamok száma miatt Internet méretű hálózati megvalósításra nem alkalmas 23 lab Differenciált szolgáltatási modell Távközlési és Médiainformatikai Tanszék Budapesti Műszaki és Gazdaságtudományi Egyetem 12
A probléma megfogalmazása Szolgáltatás minőségre érzékeny alkalmazások hang az IP felett (pl. IP telefónia), multimédia az IP felett (pl. interaktív televízió), elosztott valós idejű alkalmazások (pl. elosztott játékok), elosztott szolgáltatások (pl. VPN), stb Probléma A legjobb szándékú (Best-Effort) szolgáltatás nem tudja kielégíteni az elvárásokat Az integrált szolgáltatású architektúra teljesíti az elvárásokat, de túlságosan összetett (minden kapcsolatot nyilvántart) nem kiterjeszthető (a felhasználószám növekedésével nem korlátos a hálózati erőforrások kihasználtsága) Megoldás Differenciált szolgáltatások minőség nyújtás folyamok csoportjának 25 Elvárások az architektúrával szemben Tartományokon értelmezett Az útválasztóknak egyszerűeknek kell maradniuk Az intelligens döntések a tartományok szélén A belső csomópontokban jól specifikált, egyszerű működés Ne legyen végpontok közötti jelzésrendszer (end2end) A meglévő alkalmazásokkal együtt kell működnie Szolgáltatás minőség biztosítása folyamok osztályának Rugalmas szolgáltatás biztosítás A szolgáltatási építőelemektől való függetlenség 26 13
Differenciált szolgáltatási modell Kétféle hálózati csomópont definiál az a modell Határ csomópont (Edge router) Folyam formázás, és folyam policy osztályonként (traffic shaping, traffic policing) Minden rajta áthaladó csomagot az osztályának megfelelően jelöl meg (packet marking) Belső csomópont (Core router) A csomagokat osztályuknak megfelelően kezeli Szolgáltatók (ISP) által definiált szolgáltatások Szolgáltató és felhasználó szerződése a kívánt szolgáltatás elérésére (SLA Service Level Agreement) Felhasználó lehet egy ügyfél egy tartomány és akár egy másik ISP is 27 Differenciált szolgáltatások architektúrája Bemeneti útválasztó (ingress router) Policy és forgalom formázás DSCP beállítása a DS mezőben (Differentiated Service Code Point) Belső útválasztók (core router) Csomóponti viselkedés (PHB - Per Hop Behavior) megvalósítása Csomagok kiszolgálása a DSCP alapján belső csomópont bemeneti (ingress) úv. határ csomópont DS-1 kimeneti (egress) úv. bemeneti (ingress) úv. DS-2 kimeneti (egress) úv. SLA1 DSCP SLA2 DSCP SLA3 PHB 28 14
IP fejlécben a DS mező 0 5 6 7 DS mező ver. hlen TOS length identification flags fragment offset ttl protocol header checksum source address destination address data A differenciált szolgáltatások az első 6 bitet használja a TOS (Type of Service) mezőből A megmaradt kettőt az ECN (Explicit Congestion Notification) algoritmus használja 29 DS szolgáltatási osztályok Szolgáltatási szint szerződés (SLA) megállapodás két tartomány határán Alapvető szolgáltatások legjobb szándékú (best effort) rugalmas elvárású felhasználások biztosított szolgáltatások (assured services) gyorsított szolgáltatások (expedited/premium services) 30 15
Szolgáltatási szint szerződések (SLAs) Szolgáltatási szint specifikáció (SLS Service Level Specification) A DS tartomány által nyújtott szolgáltatás abszolút/relatív vesztés abszolút/relatív késleltetés abszolút/relatív átvitel (throughput) Forgalomi körülmény specifikáció (TCS Traffic Conditioning Specification) forgalom profil napszak helyszín (forrás és célonként) felhasználás forgalom leírás (pl. lyukas vödör) 31 Gyorsított szolgáltatások Virtuális csatorna létrehozása az osztályhoz tartozó folyamok számára Szolgáltatási szerződés végfelhasználó: a megadott forgalomnál nem küld többet a hálózatba hálózat: nem lesz csomagvesztés és alacsony lesz a késleltetés Algoritmikus támogatás Szabályozási sík: beengedés szabályozás Adat sík: abszolút prioritásos ütemező 32 16
Biztosított szolgáltatások Megkülönböztetés csomagvesztési precedencia alapján alcsoportok létrehozása felhasználói profil definiálása (lyukas vödör) Szolgáltatási szerződés végfelhasználó: a megadott forgalomnál nem küld többet a hálózatba hálózat: alacsonyabb vesztés, mint a legjobb szándékú átvitelnél, torlódás esetén, a legjobb szándékú folyamok csomagjait dobja el Algoritmikus támogatás Adat sík: WRR + RED ütemezés 33 Forgalom kondicionálás Osztályozó (classifier) DSCP és egyéb mezők alapján MF (Multi Field): DS határ csomópontokban DSCP, IP cím, Port szám BA (Behavior Aggregate) DB belső csomópontokban DS mező alapján mérő osztályozó jelölő formázó 34 17
Forgalom kondicionálás mérő Mérő (meter) méri a forgalmat Jelölő (marker) prioritást állít, DS mezőt állít stb. Formázó (shaper) felhasználói profilra formáz Megvalósítás A-bit: (assured), biztosított szolgáltatás P-bit: (premium), gyorsított szolgáltatás osztályozó jelölő formázó 35 Forgalom kondicionálás: mérés, jelölés Biztosított (assured) szolgáltatásoknál alkalmazzák A profilnak megfelelő forgalomra Minden csomagban az A-bit beállítása Profilon kívüli forgalom A-bit törlése (best-effort) biztosított folyam r bps b bit mérés felhasználói profil (tocken bucket) +A bit -A bit profilnak megfelelő folyam profilon kívüli folyam 36 18
Forgalom kondicionálás: mérés, jelölés, formázás Gyorsított (premium/expedited) szolgáltatásoknál A profilnak megfelelő forgalomra Minden csomagban a P-bit beállítása Profilon kívüli forgalomra Forgalom késleltetése, tároló túltelítése esetén eldobása r bps b bit felhasználói profil (tocken bucket) gyorsított folyam mérés +Pbit profilnak megfelelő folyam 37 Tartományok szabályzása Minden tartományhoz egy BB (Bandwidth Broker) tartozik Általában a határcsomópontokban végez erőforrás allokálást A BB felelős a tartományon belüli beengedés szabályzásért Nem egyszerű a megvalósítása A teljes tartomány állapota alapján kell döntenie Egyszerű meghibásodási lehetőség Még kutatási téma! 38 19
QoS architektúrák összehasonlítása Szolgáltatás Szolgáltatási terület Bonyolultság (complexity) Legjobb szándékú átvitel Kapcsolattartás Nincs elkülönítés Nincs garancia Végpontok között Nincs felépítés Differenciált szolgáltatás Kapcsolattartás Elkülönítés csoportokra Garancia csoportokra Tartományon belül Hosszú idejű kapcsolat felépítés Integrált szolgáltatás Kapcsolattartás Folyamonkénti elkülönítés Folyamonkénti garancia Végpontok között Folyamonkénti kapcsolat felépítés Kiterjeszthetősé g (scalability) Remek Kiterjeszthető Nem kiterjeszthető 39 DiffServ és az Internet Differentiated Services implementációjában a routerek a csomagokat flag-ek alapján kezelik, megvalósítva ezzel állapotmentes hálózati architekúrát Ilyen mecahnizmussal kezelhetővé válik adatfolyamok milliói, mely ezt az architektúrát alkalmassá teszi nagykiterjedésű hálózatokban (pl. Internet) való alkalmazásra 40 20
lab Multi-Protocol Label Switching Távközlési és Médiainformatikai Tanszék Budapesti Műszaki és Gazdaságtudományi Egyetem Mi az MPLS? Útválasztó (routing) protokoll kapcsolatok létrehozásához Új protokoll, mely címkéket használ Szeparált útválasztás és csomagtovábbítás 42 21
Fogalmak Útválasztás - routing Információk kezelése annak érdekében, hogy az IP csomagok megtalálják útjukat a forrás és a cél között Csomagtovábbítás - Forwarding IP csomagok továbbítása egy bejövő interfészről a kimenőre az útválasztó információk alapján De! Routing = Routing + Forwarding 43 Fogalmak 2 IP fejléc - header IP csomagba helyezett információ, mely alapján a routerek képesek dönteni a csomag továbításáról Címke - Label Rövid, rögzített formájú számérték, amely IP csomaghoz rendelt és a csomag továbbítására használatos 44 22
IP fejléc vs címke 0 8 16 31 VERS HLEN Service Type Total Length Identification Flags Fragment Offset TTL Protocol Header Checksum Source IP Address Destination IP Address Options Padding D a t a D a t a... D a t a 0 7 Label Label Label CoS S TTL 45 Modellezési koncepciók Label Switching Router (LSR) Címkekapcsolású router Label Edge Router (LER) (IP fejléc címke konverzió) Connection less vs Connection oriented Kapcsolatmentes kapcsolat orientált Multi-point-to-point tree 46 23
Multipoint to Point Tree #216 #14 #99 #963 #311 #311 #311 #963 #612 #5 #14 #99 #311 #462 47 Terminológiák LDP: Label Distribution Protocol LSP: Label Switched Path FEC: Forwarding Equivalence Class LSR: Label Switching Router edge LSR: Label Switching Router LER képességgel ATM-LSR: LSR 2 vagy több ATM interfésszel, cellatovábbítás végzés 48 24
Equivalence Class-ok továbbítása LER LSP LSR LSR LER IP1 IP1 #L1 IP1 #L2 IP1 #L3 IP1 IP2 IP2 #L1 IP2 #L2 IP2 #L3 Packets are destined for different address prefixes, but can be mapped to common path FEC = Forwarding Equivalence Class = csomagok azon része, melyek a routerekben azonosan kezeltek A FEC koncepcióval nagymértékben nő a flexibilitás és a skálázhatóság Konvencionális routing esetében, a csomagokat minden csomópontban hozzárendelik a megfelel FEC-hez (pl. L3 look-up), Az MPLS-ben ez csak a határcsomópontban történik meg egyszer IP2 49 Label Switched Path címkekapcsolású útvonal #216 #14 #99 #963 #311 #311 #311 #963 #14 #612 #462 #5 #99 #311 50 25
Miért jó az MPLS? IP Traffic Engineering Constraint-based Routing Virtual Private Networks Felügyelhető tunelezési mechanizmus Voice/Video on IP Késleltetés ingadozás + QoS megszorítások IP on glass 51 26