5. A hálózati réteg - Feladata a csomag eljutatása a célig (az adatkapcsolási réteg csak egyik hosztól a másikig viszi a csomagot) - Ismernie kell a kommunikációs alhálózatot: - útkeresés - torlódások elkerülése - különböző hálózatok közötti átmenet 5.1. A hálózati réteg tervezési kérdései 5.1.1. Tárol és továbbít típusú csomagkapcsolás - A router tárol és továbbít típusú csomagkapcsolást valósít meg A hálózati réteg protokolljának környezete 5.1.2. Szállítási rétegnek nyújtott szolgáltatás - a szolgálatok függetlenek, kell legyenek az alhálózattól - takarnia kell az alhálózatok számát, típusát és topológiáját - a szállítási réteg rendelkezésére bocsátott hálózati címeknek egységes rendszert kell alkotniuk 5.1.3. Összeköttetés nélküli szolgálat (internet) - hibajavítás a felsőbb rétegekben - mindegyik csomag tartalmazza az IP címet - sorrendi kezelésre nincs szükség - forgalom-szabályzás sem kell (Elárasztás) Megvalósítása: - a csomagok egyenként, egymástól függetlenül kerülnek továbbításra (datagramok DG ) 58
- a szállítási réteg feldarabolja az üzenetet a hálózati réteg által meghatározott maximális csomagnagyságra - valamilyen 2 pontos protokoll segítségével (pl. PPP, vagy más protokoll, amelyet az adatkapcsolati rétegben említettünk) - az alhálózat minden routerének van egy táblázata, amely megmondja, merre kell küldeni a csomagot. - A táblázatokat forgalomirányító algoritmusok tartják karban. Forgalomirányítás datagram alhálózatban 5.1.4. Összeköttetés alapú szolgáltatás (ATM) - Minőség biztosítása (fontos főleg hang és képi információk átvitele esetében) Megvalósítása: - az adatok nem kerülnek továbbításra, amíg ki nem épül a kapcsolat Virtuális áramkör - a kapcsolat felépítésekor kiválasztunk egy utat és nem kell minden csomagnál újra utat keresni - mindegyik csomag tartalmaz egy azonosítót, ami megmondja, hogy melyik áramkörhöz tartozik - a router képes kell legyen megváltoztatni a kimenő csomagok azonosítóját 59
Forgalomirányítás Virtuális áramkör alhálózatban Összehasonlítás: Virtuális Áramkör - kis csomagnál a teljes cím csak áramköri számokat tartalmaz - időigényes a kapcsolat kiépítése - könnyű a minőségbiztosítás - összeomlik a kapcsolat, ha egy router meghibásodik - a torlódásvédelem könnyű, mert előre le van foglalva az erőforrás Datagram - kis csomagnál a teljes cím nagy (nagy sávszélesség igény) - időigényes a forgalomirányítás - nehéz a minőségbiztosítás - az adatforgalom nem áll le egyetlen router meghibásodása esetén - nehéz a torlódásvédelem - lehetővé teszik az alhálózat terhelésének a kiegyenlítésé 5.2. Forgalomirányító algoritmusok - egy hálózati software azon részét, amely azért a döntésért felel, hogy egy bejövő csomag melyik kimeneten távozzon, forgalomirányító algoritmusnak nevezzük - a hálózati réteg feladata: a célig eljuttatni a csomagokat - az összeköttetés nélküli szolgáltatásnál minden egyes csomag esetében alkalmaznak ilyen algoritmusokat - az összeköttetés alapú szolgáltatásnál pedig az új áramkör kiépítésekor viszonyforgalomirányítás történik (session routing) - továbbítás: 60
o választható útvonalról való döntés (táblázatok alapján kiválasztja a kimenetet) o forgalomirányítás (módosítja a táblázatokat): helyesség, egyszerűség, robosztusság (rendszerszintű hibáktól mentes; ha minden elromlik, megváltozhat a topológia, de a csomagot kell tudja továbbítani), stabilitás, optimalitás (késleltetés, sávszélesség, ugrások számát csökkenteni), igazságosság, Hatékonyság Konfliktus az igazságosság és az optimalitás közt - nem adaptív algoritmusok: statikus forgalomirányítás (offline számítják ki az utakat és induláskor betöltik a routerekbe) - adaptív algoritmusok: úgy választják a forgalomirányítási döntéseket, hogy ezek tükrözzék a topológiai- és a forgalmi változásokat 5.2.1. Az optimalitási elv - Ha A-tól C be vezető legrövidebb út átvisz a B-n akkor a B-től C-be vezető út is optimális - minden forrásból egy célba tartó útvonalak egy nyelőfát alkotnak; a routerek célja ezen nyelőfák kinyelése - a nyelőfában nincsenek hurkok minden csomag véges, korlátos számú ugráson belül kézbesítésre kerül - a topológia változhat a routerek elromlanak megjavulnak, információ szerzésének mikéntje 5.2.2. Legrövidebb útvonal alapú forgalomirányítás: - súlyozott élű gráf statikus forgalomirányítás (távolság, ugrások száma, sávszélesség, késleltetés) - óránként próbafutással lehet mérni az élek költségét (Dijkstra) 61
- egy csomópontot akkor teszek véglegessé, amikor az összes környezetét ismerem - mindig a legrövidebb utat teszem véglegessé - mindegy, hogy a célból indulok vagy a forrásból Az első üt lépés az A-tól D felé vezető legrövidebb út kiszámításában. A nyilak a munka csomópontot jelzik. 5.2.3. Elárasztás (floading) - statikus forgalomirányítás nem veszi figyelembe a hálózat terhelését - minden kimenő vonalon kiküldöm a csomagot, kivétel képez a bejövő vonal - csomagok számának csökkentése ugrásszámláló - a router sorszámozza a csomagokat, és ha egy visszaérkezik, nem küldi ki még egyszer (forrásonként külön sorszámozza) - még használ egy plusz számlálót, k-t, k-ig minden sorszám előfordul nincs szükség a k alatti sorszámokra - szelektív elárasztás nem minden irányba küldik szét a csomagokat 62
5.2.4. Távolság (rektor) alapú forgalomirányítás dinamikus - minden routernek egy táblázatot kell karbantartania (vektort) amelyben minden célhoz szerepel a legrövidebb út - a vektort a körülötte levő routerektől kapott vektorokból állítja össze - táv hoppok száma, késleltetés, sorba álló csomagok száma lehet a mérték - T milliszekundumként kiküldi a szomszédjainak (a) Egy hálózat. (b) J-hez érkező késleltetési vektorok A, I, H, K felől, és J új forgalomirányító táblázta A végtelenig számolás problémája - a jó hír gyorsan terjed, de nagyon lassan a rossz - soha nincs egyiknek sem rosszabb értéke, mint +1 a szomszédjaihoz viszonyítva - nem tudom, ha rajta vagyok-e azon az úton, amelyikhez viszonyítja a legrövidebb utat A végtelenig számolás problémája 63
5.2.5. Kapcsolatállapotú forgalomirányítás Táv-mérési sorban állás+ sávszélesség 1. Felkutatni a szomszédjait és megtudni a hálózati címeket 2. Megmérni a késleltetéseket minden szomszédjáig 3. Összeállítani egy csomagot, amely tartalmazza az aktuális információkat 4. Elküldeni az összes routernek 5. Kiszámítani az összes többi routerhez vezető legrövidebb utat Dijkstra algoritmussal Szomszédok megismerése - router indulásakor az első feladata, hogy megtudja kik a szomszédjai - speciális csomag HELLO routerek válaszolnak (egy globális azonosító, hogy el tudja dönteni, melyek azok a csomagok amelyek ugyan attól a routertől jön) - LAN ok úgy vannak kezelve, mint egy speciális csomópont A vonal költségek mérése (a) Kilenc Router és egy LAN. (b) Az (a) gráf modellje - késleltetés meghat. a szomszédok fele - ECHO azonnal vissza kell küldeni, idő/2 a késleltetés - Terhelés beszámítolása ECHO csomag időmérésben bekerül a sorban állás is - Ellenérv a terhelés beszámítolása miatt mindig változik a legjobb út jobb ha sávszélességet használjuk a legjobb úthoz és terhelés megosztást A kapcsolatállapot csomagok összeállítása - periodikusan van összeállítva - akkor, amikor egy állapot megváltozik Azonosító Sorszám Kor, érték Szomszédok és távolságok 64
(a) Egy alhálózat. (b) Ezen alhálózat kapcsolatállapot csomagjai A kapcsolatállapot csomagok szétosztása - az algoritmus legkényesebb része - ahogy a routerek megkapják az információt használni is kezdik a routerek más-más topológiát látnak elérhetetlenség, hurkok, inkonzisztenciák - elárasztást használunk a csomagok szétosztására hogy az árasztást kézbe tartsák mindegyik csomag tartalmaz egy sorszámot - routerek jegyzik a látott forrás, sorszám párost és minden másodpéldányt eldobnak - ha a sorszám kisebb mint, amit eddig a router látott, szintén eldobják(elavult) - sorszám átfordul (túlcsordulás) zűrzavar 32 bit átfordulás 137 év - router összeomlik 0-tól kezdi a számozást - bithiba miatt egy nagyon magas sorszám összes többit eldobja - megoldás a KOR a routerben visszafele számlálnak a KOR-tól 0 a csomagot attól a routertől eldobják - robusztusság a csomagokat nem dolgozzák azonnal fel ha jön egy csomag, akkor az újabbat dolgozzák fel vagy ha egy azonos sorszámú érkezik be akkor azt eldobják - az állapot csomagokat nyugtázzák Az új útvonalak kiszámítása Az 5.13. ábra B routerének csomag-puffere - minden útvonal kétszer szerepel átlagoljuk az eredményeket (oda-vissza) mind a 2 routertől - Dijkstra- algoritmussal kiszámítjuk a topológiát (lokálisan) - Hardver, szoftver problémák router azt állítja, hogy olyan vonala van, ami nincs, vagy nem szól arról a vonalról, ami van. 65
- Memória probléma/ kifogy a memóriából/, rosszul számolja ki a gráfot - 100.000 csomópontoknál ezeknek nagy a valószínűsége trükk próbáljak korlátozni a kort, amikor bekövetkezik - IS-IS (Intermediate System Intermediat System ) - OSPF (Open Shortest Path Firet) 5.2.6. Hierarchikus forgalomirányítás - hálózat méretével arányosan nőnek a routerek forgalomirányító táblázata nő a szükséges sávszélesség, az állapotjelentésekhez routereket tartományokra osztjuk és szintekre - minden router ismeri a saját tartományát + más tartományok fele, de nem ismeri a többi tartomány belső szerkezetét - szintek optimális száma ln N, ahol N a routerek száma - Hátránya: az út nem mindig az optimális 5.2.7. Adatszóró forgalomirányítás Hierarchikus forgalomirányítás - egy csomag mindenhova történő egyidejű elküldését adatszórásnak nevezzük - mindenkinek külön csomag (sávpazarló)+ forrás a célcímek listájával - elárasztás (túl sok csomagot generál) - több célú forgalomirányítás bit térkép a cél címekkel egy csomópont megnézi, hogy a cél címek között van-e olyan, amelyiknek az optimális útja rajta 66
keresztül vezet megfelelő kimenetekre megfelelő címek társaságában továbbküldi 1 csomag viszi a többit (1 változat) - feszítőfa (spanning tree) csomagot minden feszítőfához tartozó vonalra kimásolja kivéve amin érkezett (kapcsolatállapot esetén jó (van fa) távolság vektor esetén nincs fa) - vissza irányú továbbítás - ha azon a vonalon jön amelyiken szokott az adatszórás forráshoz küldeni minden kimenő vonalra - másképp eldobja 5.2.8. Többes küldés forgalomirányítás - csoportok kialakítása (nem a router feladata) - routerek kell tudjanak hosztok hova tartozásáról 1) minden csoportnak egy fát kell kiépíteni nagyon sok fa információját kell a routereken tárolni 2) mag. alapú. fa mindig 1 routernek kell küldeni a csomagot aki ismeri a fát 5.2.9. Forgalomirányítás mozgó hosztok esetében - Stabil gépek - Vándorló hosztok egyik helyről a másikra - fizikailag kapcsolódik hozzá mozgó hoszt állandó kapcsolat Csomagok irányítása mozgó hosztok száma - bejelentkezik az idegen ügynökhöz lakcím + biztonsági információkat küld - idegen ügynök megkeresi a hazait 67
- hazai ügynök ellenőrzi az információkat - idegen ügynök megkapja a nyugtát regisztrálja a felhasználót - csomagot a hazai ügynök átirányítja az idegen ügynökhöz hazai ügynök utasítja az adót, hogy az aktuális címre küldje 5.3. Torlódásvédelmi algoritmusok - Minden hálózat rendelkezik egy maximális kapacitással, amelyet a routerek közötti kapcsolatok sávszélessége, a routerek puffer mérete és a számítási kapacitása határoz meg. Abban az esetben, ha a hálózat egy csomópontjában akár rövidebb időintervallumra is akkora mennyiségű adat érkezik, hogy az a szolgálat minőségének a romlásához vezet akkor torlódásról beszélünk. Ebben az esetben nagyszámú csomag kerül eldobásra, - Ideális esetben túl sok csomag van az alhálózatban a teljesítő képesség visszaesik = torlódás (congestion) - normál eset csomagok száma az alhálózat kapacitásán belül van mindegyik kézbesítésre kerül kivétel a hibás csomagok - túl nagy forgalom nagyszámú csomagot kell eldobni az alhálózat összeomlik - Torlódás okai: - több bejövő vonalról 1 kimenő vonalra - sor képződik memória hiány (több memória nem oldja meg, lejár az időzítő+1 csomag kerül a hálózatba) - lassú processzor - kicsi a vonal sávszélessége - torlódás öngerjesztő torlódás csomag eldobódik előző router újraküldi még nagyobb torlódás Forgalomszabályozás torlódás védelem - FSZ: két pont közötti forgalmat szabályozza - TV: hoszt+ router viselkedésének szabályozása + minden más tényezőt, amely leronthatja az alhálózat szállítási képességeit 68
Pl.: - Fsz 1 Mbps vevőnek 1000 Mbps adó - Tv 50 100Mbps vevő 1 routeren 80-100 Mbs összekeveredés oka lassíts üzenet 5.3.1. Torlódásvédelmi alapelvei (szabályozás elmélet) - Nyílthurok (nincs visszajelzés) - Olyan szabályok, amelyek megelőzik a torlódást - nem veszik figyelembe, hogy van-e vagy nincs torlódás - üzembe helyezéskor döntik el milyen algoritmust használnak (tervezési kérdés) - Zárthurok (van visszacsatolás) 1. Figyelem a rendszert, hogy észrevegyem hol és mikor fog torlódás bekövetkezni - torlódás mérése: eldobott csomagok aránya általános csomagok késleltetés általános sávhosszak - ha mind a három növekedik súlyosbodó torlódásnak nevezik 2. Továbbadni az információt, azokra a helyekre ahol be lehet avatkozni: - Csomag küldése a forráshoz (amúgy is terhelt a hálózat) - Minden csomagban 1 bitet fenntartani ilyen célra - Próba csomagok kiküldése a routerek által 3. Módosítani a rendszer működését, hogy helyrehozzuk a problémát - időléptéket gondosan beállítani túl gyors reagálás ingadozás, és az algoritmus nem stabil túl lassú nincs haszna - implicit visszajelzéses helyi megfigyelésekből következteti ki a torlódás helyét(pl. Nyugta visszaérkezési szükséges) - explicit visszajelzéses csomag forráshoz - - Torlódás = pillanatnyilag a terhelés nagyobb, mint az erőforrások - Két megoldás: 1. Növelem az erőforrásokat: - Sávszélesség növelése + telefonvonal - Több útvonalat használok nem csak az optimálisat. - tartalék routerek üzembe helyezése 2. Torlódás csökkentése - Megtagadom a szolgáltatást néhány felhasználótól. - Kényszerítem a felhasználókat, hogy igényeiket előre látható módon alakítsák 69
5.3.2. Torlódásmegelőző módszerek (nyílt hurok) - Adatkapcsolati: o Újraadási politika az időzítő beállítása az újraadáskor o Sorrenden kívül érkezett csomagok tárolása vagy n visszalépés szelektív ismétlés o Nyugtázási politika: külön vagy ráültetjük a visszafele menő csomagokra o Forgalomszabályozás kisméretű csúszó ablak - Hálózati réteg: o Virtuális áramkör vagy datagram o Csomag sorba állítási és kiszolgálási politika: bemenő kimenő sorok prioritási vagy körbeforgás alapú kiszolgálása o Csomag eldobási politika o Forgalomirányítási algoritmus o Csomag élettartam menedzselés (ha túl hosszú sokáig akadály, ha túl rövid nem ér el a célba) - Szállítási réteg: o Újraadási politika (nehezebben mérhető az idő) o Sorrenden kívüli csomagok o Nyugtázási politika o Forgalomszabályozási politika o Időzítési politika 5.3.3. Torlódásvédelem virtuális áramkör alapú alhálózatokban Belépés ellenőrzése (admision control) - ha van torlódás, nem építünk fel több áramkört (durva de egyszerű megvalósítás) - úgy alakítunk ki áramköröket, hogy elkerülje a problémás területeket - erőforrások előre való lefoglalása (szolgáltatás mennyiségének és minőségének biztosítása) erőforrás pazarlás - állandóan alkalmazni vagy csak torlódáskor 5.3.4. Torlódásvédelem datagram típusú hálózatokban Router figyeli a vonalait, és a következő algoritmus alapján számolja ki a vonal terhelését. u új = au régi + (1 a)f u - a vonal kihasználtságát jelzi [0,1] a felejtési együttható f - periódus {0,1} Abban az esetben, ha az u egy küszöbérték felé emelkedik, a router egy figyelmeztető állapotba megy át. Figyelmeztető bit (kerülő úton figyelmezteti a forrást a lassításra) - A csomagok nyugtájának a fejlécében egy bitet átállít, és ezáltal értesíti a forrást a lassításra 70
- Csak akkor növelheti a forrás az adatsebességet, ha az útvonalon egyetlen router sincsen figyelmeztető állapotban Lefojtó csomagok (a router küldi vissza a forrásnak megadva a cél hosztot is) - Nem generálódik több lefojtó csomag - A forrás csökkenti x%-al a célnak küldendő csomagok forgalmát (pl. ablak méret, csomagok számának a csökkentése) - A forrás csak időszakosan ellenőrzi az újabb lefojtó csomag jelenlétét (holtidő) - Az algoritmusnak több fajtája létezik (pl. több küszöbszint alkalmazása annak függvényében, hogy a terheltségi szintet jelezze) - Léteznek olyan változatok is amikor a puffer kihasználtságot méri az algoritmus a vonalkihasználtság helyett. Lépésről lépésre ható lefojtó csomagok (a) Egy lefojtó csomag, amely csak a forrásnál van hatással. (b) Egy lefojtó csomag, amely minden olyan csomópontra hatással van, amelyen áthalad 71
- Nagy távolságnál nagy a holtidő ezalatt a torlódás tovább fokozódik - Visszafele a lefojtó csomagok hatnak az újában lévő routerekre is, amelyek a forgalom egy részét pufferelik, és csak lassabban engedik tovább 5.3.5. Terhelés eltávolítása Azokban az esetekben, amikor az előző módszerek már nem hatásosak a csomagokat eldobom - Bor politika - az új csomagokat dobom el pl. állomány átvitel. - Tej politika a régi csomagokat dobom el pl. videó folyam átvitel - Magasabb intelligencia szint az adó támogatása is szükséges - Alapja, hogy egyes csomagok fontosabbak pl. sűrített videó átvitel egyes csomagok teljes képkeretet tartalmaznak, míg mások csak a teljes képkerethez viszonyított változásokat. - Hogy kordában lehessen, tartani a fontos csomagok számát ezeknek az átvitele többe kerül. - Virtuális áramkör esetében lehetséges többet küldeni de a lefoglalt sávszélesség fölött nem garantált az adatok átvitele célja a kapacitás jobb kihasználtsága Véletlen korai detektálás implicit visszacsatolás - A torlódás veszély észlelésének a pillanatában kezelem a helyzetet és nem várom meg hogy bekövetkezzen. - Mielőtt a puffer teljesen telítődne, eldobok véletlenszerűen csomagokat (ha sorhossz meghalad egy küszöbértéket) - Egyes szállítási protokollok (pl. TCP vezetékes protokollok nagy a vonal megbízhatósága) úgy reagálnak a csomagveszteségre, hogy csökkentik a forgalmat. - Abban az esetben is hatékony, ha a router nem tudja megmondani melyik forrás okozza a torlódást. - Megoldja azt a problémát is, hogy a lefojtó csomag tovább terhelje az amúgy is terhelt hálózatot. 5.3.6. Dzsitterszabályozás - Hang és kép átvitelekor fontos, hogy a képek vagy hang csomagok egyenletesen érkezzenek - A csomagok megérkezési idejének a szórását (ingadózása) dzsitternek nevezzük - Dzsitter szabályozásának egyik módja, hogy az adatot a routerek tárolják a pufferben és úgy küldik tovább hogy a megfelelő időpontba érkezzenek - A szabályzás másik módja, ha a vevő oldalon pufferelik az adatot videó anyag vizualizálása - Videokonferencia vagy telekonferencia esetében ez nem alkalmazható 72
(a) Nagy dzsitter. (b) Kis dzsitter 5.4. A szolgálat minősége (Quality of Service) Multimédiás vagy valós idejű alkalmazások esetén a hálózat teljesítő képességének a mérésére és szabályzására az ad hoc mértékek nem elegendők. 5.4.1. Követelmények Egy forrásból egy adott célpont felé tartó csomagok áramát folyamnak (flow) nevezzük. A szolgálat minőségét folyamok igényeinek paraméterei együttesen határozzák meg: - Megbízhatóság - Késleltetés - Dzsitter - Sávszélesség Pl. különböző alkalmazások igényei: állomány átvitel, VoIP stb. Az ATM hálózatok a folyamok QoS igényei alapján következő négy csoportba sorolják a folyamokat: 1. Állandó bitsebesség (pl. telefónia) 2. Valós idejű, változó bitsebesség (pl. tömörített videokonferencia) 3. Nem valós idejű, változó bitsebesség (pl. filmet nézni az Interneten keresztül) 4. Rendelkezésre álló bitsebesség (pl. állományátvitel). 5.4.2. Jó szolgálatminőséget biztosító megoldások Önmagában egyetlen technika sem nyújt optimális módon hatékony megbízható szolgálat minőséget. 73
Túlméretezés: - Az erőforrások túlméretezése, hogy biztosítva legyen a szolgáltatás minősége nagyon költséges - Hosszabb időintervallum alatt elvégzett ismételt mérések alapján meg lehet állapítani az erőforrások optimális méretezését, amely elégséges a szolgálatminőség biztosítására. Pufferelés - Adatfolyamok kézbesítés előtt pufferelhetők a vételi oldalon. - Nincs hatással a megbízhatóságra vagy a sávszélességre. - Késleltetést növeli, viszont elsimítja a dzsittert (hang és kép esetén ez okozza a legnagyobb problémát). Forgalomformálás A kimenő adatfolyam egyenletessé tétele puffereléssel - Ha az adás szabálytalan ütemű, torlódást idézhet elő a hálózatban főleg olyan esetekben, amikor több folyamatot kezelnek egyszerre (filmekben való ugrálás stb.) - Vannak esetek, amikor a pufferelés nem alkalmazható pl. videokonferencia. - Forgalomformálásnak nevezzük, amikor a kiszolgáló és nem az ügyfél oldalán tesszük egyenletessé a forgalmat. - Forgalomformálás az adás átlag sebességét szabályozza ezzel ellentétben a csúszóablak az egyszerre útón levő adatok mennyiségét szabályozza. - Kapcsolat kiépítésekor a felhasználó és az alhálózat megegyeznek egy forgalommintázatban ezt nevezzük szolgáltatás szintű megállapodásnak. - Mindaddig, amíg a küldő fél nem haladja meg, a szerződtettet értékeket az alhálózat vállalja, hogy időben le is szálltja azokat. - A forgalom figyelését forgalmi rendfenntartásnak nevezzük ezt virtuális áramkörben könnyű megvalósítani datagram esteében viszont nehéz. A lyukas vödör algoritmus - Célja, hogy a hosztok a hálózatba egyenletesen küldjék a csomagokat (bájtokat) és ne löketszerűen ezzel is csökkentve a torlódások kialakulását. - Addig teszem a csomagokat a vödörbe (véges sorba) ameddig az megtelik, ha túlcsordul akkor a többit eldobom. 74
- A vederből egy lyukon keresztül folyamatosan és egyenletesen folyik ki a csomag (ameddig van benne) a véges sorból a hálózati interfész vagy az operációs rendszer időintervallumonként vesz ki egy csomagot. - Csomagot használunk, ha a csomag mérete konstans pl. ATM, és bájtokat, ha változó a csomagméret. Annyi csomagot veszek ki, ameddig belefér az előre meghatározott bájtmennyiségbe. Vezérjeles vödör algoritmus 75
- A vezérjeles vödör algoritmus esetében nincsen adatvesztés és a kimeneten megengedett kisebb gyorsulások, amikor adatlöket érkezik. - A lyukas vödör vezérjeleket tartalmaz. Meghatározott időközönként vezérjelet teszünk a vederbe. Ha a veder túlcsordul, akkor a vezérjelek eldobódnak. - Csomagot csak akkor küldhetek, amikor van vezérjel a vödörbe és annyit amennyi vezérjel van a vödörben. - Lehetséges a két algoritmus kombinálása is Erőforrás lefoglalás - Nehéz a forgalomszabályozást megvalósítani, ha mindegyik csomag más-más úton jut el a célig. A forgalom szabályozásához szükséges hogy minden csomag úgyanazt az utat kövesse virtuális áramkör féle kapcsolat létrehozása. - Az útvonal mentén erőforrásokat foglalunk le: - Sávszélesség nem foglaljuk túl a kimeneti vonalat - Puffer terület lefoglalunk egy bizonyos területet néhány forgalom számára - Processzor idő csomagok feldolgozás ennek a lefoglalása a legbonyolultabb Belépés engedélyezése - Szükséges az erőforrás lefoglaláshoz, hogy az érintett routerekkel megegyezzünk az igényekről és ebből mit tudnak biztosítani - Általában nem tudják pontos meghatározni a szükséges erőforrásigényeket (puffer, processzoridő) az alkalmazások - Léteznek változtatható igények (30fps helyett 25fps) - Engedélyezési paraméterek halmozását folyam meghatározásnak nevezzük - A forrás állítja elő a folyam meghatározást majd végighalad az forrás cél úton és egyezkedik a routerekkel az igények csak csökkenhetnek az egyezkedés folyamán. - Folyam paraméterek: - Vezérjeles vödör sebessége - Vezérjeles vödör mérete - Adatsebesség csúcsértéke (nem haladhatja túl a forrás) - Minimális csomag méret - Maximális csomag méret - Paraméterek minél pontosabban vannak meghatározva annál jobb Arányos útvonalválasztás - nem egy útvonalat használunk, hanem többet így jobban tudom biztosítani a szolgálatminőséget Csomagütemezés - A routerek több folyamatot kezelnek egyidejűleg egy jól meghatározott ütemezési politika nélkül egy folyamat kisajátíthatja nagy részét amíg a többiek nem vagy csak alig fognak működni. 76
- Egy lehetőség, ha beérkezés sorrendjében küldjük tovább a csomagokat, de ebben az esetben az agresszív adó kedvezményezett lesz. - Egyenlő esélyű sorbaállás ebben az esetben külön várakozó sort rendelünk minden egyes forrásnak és körforgásos alapon minden egyes sorból egyszerre csak egy csomagot veszek ki a nagyobb csomagok előnyben vannak - Bájtonkénti körforgást szimulálja és a csomag véget érés pillanatában küldi el - Súlyozott egyenlő esélyű sorbaállás esetében n bájtot küldünk óraütésenként. Az n súlyzó minden egyes folyam sajátja. 5.4.3. Integrált szolgáltatások - Előközvetítésű multimédia szolgáltatások megvalósítása folyamat alapú algoritmusokkal vagy integrált szolgáltatásokkal valósítható meg. - Olyan feltételek mellett, hogy a szolgáltatást igénybevevő hosztok, dinamikusan változtathatják a nézet műsort (adatszórás) nem működik jól az előre lefoglalt csatorna, mert költséges a sok virtuális áramkört kezelni - Integrált szolgáltatások esetében a felhasználókhoz csoport címeket rendelünk - Az adó kiépíti a fát - Ha a vevő jobb vételt akar, akkor visszalépéses alapon lefoglalja az erőforrásokat - A közös területeken ahol már le volt foglalva a szükséges sávszélesség ott azt használja 5.4.4. Differenciált szolgáltatások - Előre meghatározott szolgálat minőség osztályokat kínál a routerek egy csoportja. Ez az architektúra differenciált szolgáltatások néven vált ismerté - Differenciált szolgáltatásokat egy adminisztratív körzet alá tartozó routerek egy csoportja kínálja, határozza meg az osztályokat és a továbbítási szabályokat - Ügyfél feliratkozik a differenciált szolgáltatásra, amely a szolgáltatás típusa mezőben jelenik meg - A routerek a szolgáltatás minőségét az osztályok számára biztosítják - Mindegyik osztálynak más ára van 77
Gyorsított továbbítás - Külön puffer - Súlyozott egyenlő esélyű sorbaállással kerül kiküldésre Biztosított továbbítás - 4 prioritási osztály - 3 kategória a torlódáskor az eldobás valószínűsége - Az osztályozást a feladó oldalán végezzük el - Jelölő IP fejrészben meghatározza az osztályokat a szolgáltatás típusa mezőben - Formázó selejtezés az adatforgalmat megfelelő formára hozza lyukas vödör algoritmussal 5.4.5. Címkekapcsolás MLPS (multiprotocoll label switching) többprotokollos címkekapcsolás - Hasonlít a virtuális áramkörre - IP és ATM csomagok esetében is alkalmas - Routertől routerig alkalmazzuk - Hozzáad egy címkét a csomaghoz - Címke meghatározza, hogy merre kell továbbküldeni - Több folyamnak is lehet ugyan az a címkéje 78
- A QoS meghatározza a szolgálat osztályát - S hierarchikus osztályoknál alkalmazzák és több egymásra halmozott címkére utal - TTL a csomag élettartamára utal 5.5. Hálózatok összekapcsolása - Gazdasági okok szervezési kérdések miatt a hálózatok típusa nagyon sok féle 5.5.1. Hálózatok közötti különbségek: Szolgáltatások Protokollok Csomagméret Címzés Hibakezelés Forgalomszabályozás Torlódás 5.5.2. Hálózatok összekapcsolása: Hubok jel szintjén azonos hálózatokat Hidak kapcsolók - kisebb protokoll átalakítások ismerik már a MAC címeket Routerek csomagformátum, protokoll multi-protokoll routerek Átjárok szállítási rétegben 5.5.3. Egymásután kapcsolt virtuális áramkörök - Átjárótól (multi-protokoll routerektől) átjárókig épül ki - Fontos mindegyik alhálózatnak azonos szolgáltatása legyen pl megbízható kézbesítés 79
5.5.4. Összekötetés nélküli hálózatok kapcsolása - Csomagot küldök és lesz valahogy minden csomag a saját útját járja - Legnagyobb probléma a címzés és a protokollok közötti különbségek 5.5.5. Alagút típusú átvitel 80
- Az együttműködés leegyszerűsítése céljából alkalmazzák - IP csomagot elhelyezzük egy WAN csomag adatmezejében, amikor eléri a cél hálózatot kilépés pontján kicsomagolják és küldik tovább. 5.5.6. Forgalomirányítás összekapcsolt hálózatokban - Hasonló az egyedülálló hálózatokhoz - 2 szintű forgalomirányítási algoritmus: Belső átjáró protokoll Külső átjáró protokoll - Mivel mindegyik összekapcsolt hálózat független (Autonomus Systems) autonóm rendszereknek is nevezik 5.5.7. Darabokra tördelés - Minden hálózat megszab valamilyen Maximális csomagméretet - 84 bájt ATM, 65565 bájt IP - A maximális csomagméretet befolyásolják a következők: Hardware Operációs rendszer minden puffer 512 bájtos Protokoll fejrészében a bitek száma Igazodás valamilyen szabványhoz Újraküldés minimális szintre való csökkentése Ne foglalhassa le a csatornát túl sokáig - Megoldás a csomagok darabolása (fragments) feldarabolom a csomagot, amikor egy ilyen hálózatba bemegyek és összerakom, amikor elhagyom a hálózatot Csak a célnál rakom össze a darabokat ha az egyik darab elvesztődik, akkor újra küldöm az egész csomagot vagy csak a darabot standard méretre való darabolás, amelyik mindegyik hálón átmegy 81
5.6. Hálózati réteg az Interneten 1. Lényeg, hogy működjön 2. Maradjon az egyszerűnél a funkciókat csak egyszer megvalósítani 3. Válasz egyértelműen (válassza a jót) 4. Használd ki a modularitást 5. Számíts heterogén környezetre 6. Kerüld a statikus opciókat, paramétereket 7. Amit tervezel, az legyen jó nem muszáj tökéletes legyen 8. Légy szigorú a küldésnél elnéző a fogadásnál 9. Gondolj a skálázhatóságra 10. Mérlegeld a teljesítmény és a költségeket - Internet Autonom rendszerek összességének tekinthető - Az internetet az IP (hálózatközi) protokoll tartja össze - Feladata, hogy optimálisan szállítsa a datagaramokat a forrásgéptől a célgépig 5.6.1. IP protokoll - Verzió tartalmazza a protokoll verzióját pl. IPv4 vagy IPv6 - IHL megadja 32 bites szavakban a fejrész hosszát - Szolgáltatás típusa mezőt arra használták, hogy segítségével a router meg tudja határozni, hogy az adott csomag milyen szolgáltatás osztályba sorolja. - Régebb ez a 6 bites mező a következőket tartalmazta: 3 bites precedencia mező amely a prioritásnak felel meg és 3 jelzőbit a Delay - Késleltetés, Troughput Átbocsájtás, Reliability - megbízhatóság - Teljes hossz mező megadja a csomag teljes hosszát, ami 65535 - Azonosítás melyik datagramhoz melyik darab tartozik - 1 kihasználatlan bit - DF ne darabold a datagramot ne daraboljak fel, mert a cél képtelen összeilleszteni - MF még vannak darabok, ha 0 akkor ez az utolsó darab 82
- Darabeltolás mindegyik darab 8 bájt (8 Bájt az elemi darabméret) többszörösének kell lennie megközelítőleg 8200 darab 13 biten tárolva - Fejrész ellenőrző 1 komplemenssel adjuk össze az eredmény 0 kell legyen ha nincs hiba - Opciók ha vannak: Biztonság általában a routerek nem veszik figyelembe Szigorú forrás általi forgalomirányítás Laza forrás általi forgalomirányítás Útvonal feljegyzése Időbélyeg Minden router fűzze hozzá az időbélyegét és az IP címét - algoritmus hiba keresése 5.6.2. IP címek: - Egyediek - egy hálózati interfészre utalnak Osztályos címzés - ICANN Internet Corporation for Asigned Names and Numbers - Az 1, 0 speciális értékek 83
Alhálózatok - C osztályú címek sokszor nem elég egy cégnek - B osztályú címek esetében, ha a céghez több épület tartozik nem elég a 4 ismétlő távolság - Már nincs elég új cím így újat nehezen adnak - Belső felhasználó szempontjából több részre osztjuk a címet: hálózati és hoszt részre. A határt az alhálózati maszk adja meg - Az alhálózatokra való osztást bevezetés miatt módosítják a forgalomirányító táblázatokat. CIDR Osztálynélküli körzetek közötti forgalomirányítás - Maradék IP címeket változó méretű blokkokban osztják ki - Minden bejegyzést egy 32 bites maszkkal társítják Célcím és maszk arra megy, amerre a leghosszabban talál Csoportos bejegyzés több cím azonos kimeneten a legkisebb maszk marad NAT (Network Adress Tarnslation) - Kevés az IP cím dinamikus kiosztás - ipv6 - Nincs IP fejrészében kihasználatlan mező - TCP, UDP nem használja ki a port mezőt szállítási réteg fejléce - Forrás portmezőt kicseréli egy másikkal és tart egy bejegyzés - Összekötetés nélküli kapcsolatból összekötetés alapút csinál - Protokoll rétegződés megsértése - Más protokollt is használunk - TCP fejrész módosulása - IP cím előfordulhat az adatban is - Késlelteti a valódi megoldást 84