A szállítási szolgálat



Hasonló dokumentumok
Szállítási réteg (L4)

SzIP kompatibilis sávszélesség mérések

TCP ÉS UDP. Médiakommunikációs hálózatok (VIHIM161) évi fóliái alapján készült. Dr. Lencse Gábor

A szállítói réteg (transport layer) szolgáltatásai. Számítógépes Hálózatok Szállítói réteg (transport layer) Multiplexálás a szállítói rétegben

Dr. Wührl Tibor Ph.D. MsC 05 Ea. Szállítási protokollok - Bevezetés

Az Internet működésének alapjai

I. Házi Feladat. internet. Határidő: V. 30.

Adatátviteli rendszerek Mobil IP. Dr. habil Wührl Tibor Óbudai Egyetem, KVK Híradástechnika Intézet

A szállítói réteg (transport layer) szolgáltatásai. Számítógépes Hálózatok Szállítói réteg (transport layer) Multiplexálás a szállítói rétegben

Szállítási réteg (L4)

Számítógépes Hálózatok és Internet Eszközök

32 bit (4 bájt) Destination Port 8 bájt. Source Port. DATA, ha van

32 bit (4 bájt) Destination Port 8 bájt. Source Port. DATA, ha van

Alternatív TCP variánsok vizsgálata nagy sávszélességű, magas késleltetésű kapcsolatokon

Az adott eszköz IP címét viszont az adott hálózat üzemeltetői határozzákmeg.

Számítógépes Hálózatok

KANDÓ KÁLMÁN VILLAMOSMÉRNÖKI KAR HÍRADÁSTECHNIKA INTÉZET. Szállítási réteg vizsgálata Wireshark analizátorral. Dr. Wührl Tibor Dr.

TCP ÉS UDP. Médiakommunikációs hálózatok (VIHIM161) Médiatechnológiák és -kommunikáció szakirány. Dr. Lencse Gábor

Mérési útmutató a Mobil Kommunikáció és Kvantumtechnológiák Laboratórium méréseihez

A TCP/IP modell szállítási rétege

Hibafelismerés: CRC. Számítógépes Hálózatok Polinóm aritmetika modulo 2. Számolás Z 2 -ben

8. Szállítói réteg TCP Tahoe, Reno, AIMD, hatékonyság, fairness. HálózatokII, 2007

4. Hivatkozási modellek

Tartalomjegyzék. Mobil Internet választható tárgy. 4. mérés: Transzport protokollok

Számítógépes Hálózatok

* Rendelje a PPP protokollt az TCP/IP rétegmodell megfelelő rétegéhez. Kapcsolati réteg

SZÁLLÍTÁSI (TRANSPORT, HOST- TO-HOST) PROTOKOLLOK

Számítógépes Hálózatok 2008

Távközlési informatika II.

Tűzfalak működése és összehasonlításuk

Hálózati architektúrák és Protokollok GI 8. Kocsis Gergely

Tartalom. Hálózati kapcsolatok felépítése és tesztelése. Rétegek használata az adatok továbbításának leírására. OSI modell. Az OSI modell rétegei

24. fejezet A szállítási réteg

Számítógépes Hálózatok 2012

8. Szállítói réteg TCP Tahoe, Reno, AIMD, hatékonyság, fairness. HálózatokII, 2006

Hálózati alapismeretek

Hálózati architektúrák és Protokollok GI - 9. Kocsis Gergely

Nagy sebességű TCP. TCP Protokollok

Számítógépes Hálózatok ősz Szállítói réteg TCP, Tahoe, Reno, AIMD, Fairness, hatékonyság

Számítógépes Hálózatok GY 6.hét

Programozható vezérlő rendszerek KOMMUNIKÁCIÓS HÁLÓZATOK 2.

Hálózatterhelés-függő újraküldés DCCP/IP hálózatokban

Számítógépes Hálózatok. 4. gyakorlat

Hálózati architektúrák laborgyakorlat

Számítógép-hálózatok. Gyakorló feladatok a 2. ZH témakörének egyes részeihez

Dr. Wührl Tibor Ph.D. MsC 04 Ea. IP kapcsolás hálózati réteg

Internet Protokoll 6-os verzió. Varga Tamás

Sávszélesség szabályozás kezdőknek és haladóknak. Mátó Péter

Hálózatok Rétegei. Számítógépes Hálózatok és Internet Eszközök. TCP/IP-Rétegmodell. Az Internet rétegei - TCP/IP-rétegek

A szállítói réteg (transport layer) szolgáltatásai. Számítógépes Hálózatok Szállítói réteg (transport layer) Multiplexálás a szállítói rétegben

A szállítói réteg (transport layer) szolgáltatásai. Számítógépes Hálózatok Szállítói réteg (transport layer) Multiplexálás a szállítói rétegben

Project Report (1998)

Számítógép-hálózatok A felsőbb rétegek

AGSMHÁLÓZATA TOVÁBBFEJLESZTÉSE A NAGYOBB

Számítógépes Hálózatok GY 7.hét

20. Tétel 1.0 Internet felépítése, OSI modell, TCP/IP modell szintjenek bemutatása, protokollok Pozsonyi ; Szemenyei

Kommunikáció. 3. előadás

Kiszolgálók üzemeltetése. Iványi Péter

Ethernet/IP címzés - gyakorlat

TRANSMISSION CONTROL PROTOCOL (TCP) bevezetés1


Statikus routing. Hoszt kommunikáció. Router működési vázlata. Hálózatok közötti kommunikáció. (A) Partnerek azonos hálózatban

Az IP hálózati protokoll

Hálózatok II. A hálózati réteg torlódás vezérlése

Hálózati sávszélesség-menedzsment Linux rendszeren. Mátó Péter Zámbó Marcell

Routing IPv4 és IPv6 környezetben. Professzionális hálózati feladatok RouterOS-el

Department of Software Engineering

6.1. A szolgálat minősége ( Quality of Service ) A szolgálatok minőségét az OSI 3 csoportba sorolja: kívánt elfogadható elfogadhatatlan

E Q U I C O M M é r é s t e c h n i k a i K f t. H B u d a p e s t, M á t y á s k i r á l y u T. : F.

A TCP/IP modell hálózati rétege (Network Layer) Protokoll-készlet: a csomagok továbbítása. Legjobb szándékú kézbesítés

Az Ethernet példája. Számítógépes Hálózatok Az Ethernet fizikai rétege. Ethernet Vezetékek

Hibafelismerés: CRC. Számítógépes Hálózatok Polinóm aritmetika modulo 2. Számolás Z 2 -ben

A szállítói réteg (transport layer) szolgáltatásai. Számítógépes Hálózatok Szállítói réteg (transport layer) Multiplexálás a szállítói rétegben

Számítógépes Hálózatok 2011

Miért tanulunk a számítógép hálózatokról? Számítógép hálózatok. Mennyit tudunk már róluk? Internet: Példa. Internet: Az erıforrás megkeresése

Egyszerű simplex protokoll nyugtákkal

Hálózati alapismeretek

Alhálózatok. Bevezetés. IP protokoll. IP címek. IP címre egy gyakorlati példa. Rétegek kommunikáció a hálózatban

Megoldás. Feladat 1. Statikus teszt Specifikáció felülvizsgálat

Rohonczy János: Hálózatok

MOBILITÁS TÁMOGATÁS MAGASABB

Kommunikációs rendszerek programozása. Voice over IP (VoIP)

Hálózati réteg, Internet

Tartalom. Router és routing. A 2. réteg és a 3. réteg működése. Forgalomirányító (router) A forgalomirányító összetevői

VIDEÓ FOLYAM SZELEKTÍV ÚJRAKÜLDÉSE IP HÁLÓZATOKBAN

Gyakorló feladatok a 2. ZH témakörének egyes részeihez. Számítógép-hálózatok. Dr. Lencse Gábor

V2V - routing. Intelligens közlekedési rendszerek. VITMMA10 Okos város MSc mellékspecializáció. Simon Csaba

Számítógépes Hálózatok

Hálózatok. Alapismeretek. A hálózatok célja, építőelemei, alapfogalmak

MACAW. MAC protokoll vezetéknélküli LAN hálózatokhoz. Vaduvur Bharghavan Alan Demers, Scott Shenker, Lixia Zhang

Számítógép hálózatok gyakorlat

IP alapú távközlés. Virtuális magánhálózatok (VPN)

Számítógépes Hálózatok. 5. gyakorlat

Kiszolgálók üzemeltetése. Iványi Péter

[SZÁMÍTÓGÉP-HÁLÓZATOK]

Számítógépes Hálózatok 2011

Hálózatok II. A hálózati réteg funkciói, szervezése

Számítógép-hálózatok zárthelyi feladat. Mik az ISO-OSI hálózati referenciamodell hálózati rétegének főbb feladatai? (1 pont)

GSM azonosítók, hitelesítés és titkosítás a GSM rendszerben, a kommunikáció rétegei, mobil hálózatok fejlődése

Számítógépes hálózatok GY

Átírás:

A szállítási réteg

A szállítási szolgálat Elrejti az alsóbb rétegbeli hibákat Egységes felületet ad az alkalmazásoknak Programozok egy szabványos primitív készletre írhatják az alkalmazásokat» Összekötetés alapú» Összekötetés nélküli

A felső rétegnek nyújtott szolgáltatások

Szállítási szolgálat primitívjei

Szállítási szolgálat primitívjei (2)

Hibakezelés Forgalomszabályozás Sorszámozás Szállítási protokoll

Címzés

Címzés (2)

Kapcsolat felépítés

Kapcsolat felépítés (2)

Összekötetés bontása aszimmetrikus

Összekötetés bontása szimmetrikus A kék hadsereg problémája

Összekötetés bontása szimmetrikus(2)

Forgalomszabályozás és pufferelés (a) Egyforma láncolt pufferek. (b) Változó hosszúságú láncolt pufferek. (c) Egy kör puffer. (d) Dinamikus puffer meghatározás

Nyalábolás (a) Feltöltési multiplexelés. (b) Letöltési multiplexelés.

Összeomlás utáni helyreállítás

UDP User Datagramm Protocol Felhasználói Datagramm Protokoll a) User Datagram Protocol [RFC-768] b) 1980 c) Az UDP sokkal gyorsabb protokoll, mint a TCP protokoll d) Nem megbízható adatátvitel e) Multimédiás alkalmazások esetén jól alkalmazható, ahol a késleltetés a kritikus f) A TCP-vel ellentétben nem ellenőrzi az adatok sértetlen átvitelét ezért nem képes az elveszett vagy sérült csomagok pótlására g) Ezen kívül a fogadás sorrendjét sem garantálja a vételi oldalon. 17

UDP/IP fejléc 18

UDP/IP fejléc a) Source Port A forrásportot azonosítja Válaszolni erre a portra lehet b) Destination Port Célportot azonosítja c) Length A datagram mérete bájtokban A fejléc és a felhasználói adat együtt d) Checksum 16-bit ellenőrzőösszeg A fejléc és a felhasználói adatokra együtt számolandó

UDP ellenőrzőösszeg (checksum) a) Cél: A hibák (pl. sérült bitek) detektálása a továbbított szegmensben b) Küldő: A szegmens tartalmát 16 bites egészek sorozatának tekinti Checksum: a szegmens tartalmának összeadása (1-eskomplemensösszeg) A küldőbeteszi a checksum értékét az UDP checksum mezőjébe c) Fogadó: Kiszámítja a kapott szegmens checksum-ját Ellenőrzi, hogy az megegyezik-e a checksum mező értékével: NO hibát detektál YES nem detektál hibát 20

Ellenőrzőösszeg számítása a) Példa: Ellenőrzőösszeg számítása adjunk össze két 16-bites egészt amikor összeadunk számokat, legnagyobb helyiértékű bitként egy átvitelt kell hozzáadni az eredményhez 21

UDP jellemzők a) Nem kapcsolat orientált b) Nincs hibajavítás c) Nincs nyugtázás d) Tulajdonképpen az IP szint által biztosított szolgáltatásokat nyújtja felfelé e) Használata: ha az adatátvitel sebessége a legfontosabb, minden többi feladatot a felette elhelyezkedő réteg lát el. UDP-t olyan esetekben alkalmazzák, ahol a küldött adatok viszonylag kis részének elvesztése nem okoz működési problémát sőt, esetleg kívánatos is (pl. torlódás esetén), mint pl. a műsorszórás vagy ahol ezen hibák korrigálásáról egy magasabb szintű protokoll gondoskodik 22

UDP jellemzők a) Tipikusan a DNS-ek (Domain Name Server) b) Real-time alkalmazások c) Játékok d) Egy játékban vagy real-time mozgókép/hang átvitel esetén, ha egy csomag rossz, akkor ott legfeljebb döccen egyet, de ez még mindig kisebb baj, mintha az adott pontnál megállna és onnantól elkezdené újra adni a csomagokat e) A szegényesebb szolgáltatásból adódóan sokkal egyszerűbb az UDP fejléc. 23

UDP jellemzők a) Az UDP esetében is felmerül a mobilitásból adódó változó hibaarány Ami időnként a kapcsolat teljes megszakadásához vezet Az forrásnak nincs információja az eldobott és sérült csomagokról b) A nyugtázásra ugyan nem kell várni, de a változó csatornaminőség és a cellaváltások itt is komoly gondot okoznak c) Csomag megsérülésére az ellenőrzőösszeg újraszámításából lehet következtetni, amely az egész csomagot lefedi Egyetlen bithiba a teljes csomag eldobásához vezet 24

TCP Transport Control Protocol Átvitel Vezérlési Protokoll a) Transmission Control Protocol [RFC-793] b) 1981 c) Az egyik leggyakrabban használt transzport protokoll d) szabványt vezetékes hálózatra dolgozták ki, azonban a ma egyre szélesebb körben használt vezeték nélküli hálózatok karakterisztikái jelentősen különböznek vezetékes hálózatok adatátviteli tulajdonságaitól. e) olyan vezetékes összeköttetésekre dolgozták melyeknek a jellemzőik a következők: nagy sávszélesség kis késleltetés kis hibavalószínűség.

TCP jellemzői a) Újraküldés a TCP feladata, hogy adott esetben (pl. egy bizonyos idő lejártával) az egyes csomagokat újra elküldje, mivel lehet, hogy az előző példány elveszett valahol b) Sorrendhelyes átvitel A célállomáson a megérkezett csomagok sorrendje nem biztos, hogy az elküldés sorrendjével megegyezik, ezért a TCP feladata ennek a rendezése is (ha szükséges) c) Csomagduplázódás A TCP a csomagduplázás ellen is védelmet nyújt 26

TCP jellemzői a) Megbízhatóság az ún. PAR (Positive Acknowledgement with Retransmission) technikával biztosítja. Ez azt jelenti, hogy a célállomás TCP-t megvalósító szoftvere nyugtázza a csomag kézbesítését, miután a hálózati szinttől (az IP-től) megkapta. b) Megbízhatóság és késleltetés A TCP esetében a megbízhatóság azt jelenti, hogy az elküldött csomagok biztosan megérkeznek, de az esetleges újraküldések miatti késleltetésre nincs garancia Valós idejű szolgáltatások esetén ezért nem javasolt a TCP használata 27

TCP jellemzői a) Kapcsolatorientált Kapcsolatkiépítés három-utas kézfogással (sorszám meghatározása) b) Több kapcsolat Egy hoston egyszerre több TCP kapcsolat is élhet, és itt is, mint az UDP-nél, az egyes kapcsolatok külön-külön TCP-porton (TSAPon) vannak c) Full-duplex adatfolyam A TCP-kapcsolatok full-duplexek, vagyis kétirányúak, és az elküldött adatokat a TCP strukturálatlan bytefolyamnak tekinti. MSS: maximálisszegmens méret (maximum segment size) a) Forgalomszabályozás (flow control) A küldő nem terheli túl a fogadót b) Torlódáskezelés (congestion control) 28

TCP fejléc a) Portszám (Source Port, Destination Port) A fontosabb, szélesebb körben használt protokollok egy "mindenki által ismert" sorszámú port-on várnak kapcsolatokra: HTTP: 80 FTP: 20, 21 SSH: 22 SMTP: 25 Telnet: 32 29

TCP fejléc a) Sorszám (Sequence Number) a vevő oldalt arról biztosítja, hogy minden adatot helyes sorrendben kapjon meg, és ne veszítsen el egyet se a datagrammok közül. A TCP nem a datagrammokat, hanem az szegmenseket sorszámozza 3-utas kézfogás b) Nyugta sorszám (Acknowledgement Number) a rendeltetési helyre való megérkezést a vevő egy nyugtával hozza a küldő oldal tudomására Például egy olyan csomag elküldése, amelynek nyugtamezőjében 1500 szerepel, azt jelenti, hogy az 1500-as oktetig bezárólag minden datagramm eljutott a rendeltetési helyre 30

TCP fejléc a) Egybites változók URG: sürgősségi mutató használatát engedélyezi ACK: a nyugta érvényességét jelezi, 0 esetén a szegmens nem tartalmaz nyugtát, figyelmen kívül hagyható a mezeje PSH: késedelem nélküli továbbítás kérése- pufferelés nélkül RST: hoszt összeomlását vagy az összekötés helyreállításának igényét jelzi. SYN: összekötés létesítésére irányul kérés (CR): SYN=1 & ACK=0 elfogadás (CA): SYN=1 & ACK=1 FIN: összeköttetés bontását jelzi a küldőknek nincs több továbbítani való adata 31

TCP fejléc a) Ablak (Window) az összeköttetés alatt forgalomban lévő adatok mennyiségét határozza meg, vagyis a vevő éppen mekkora adatmennyiséget képes még befogadni b) Ellenőrzőösszeg (Checksum) Az adó és a vevő is kiszámolja egy meghatározott algoritmus alapján ha nem egyezik, akkor a datagrammal az átvitel közben valahol valami baj történt és azt a protokoll eldobja. 32

TCP összeköttetés felépítése - A háromfázisú kézfogás A állomás SYN(seq=x) küldése B állomás SYN(seq=y,ack=x+1) fogadása SYN (seq=x) fogadása SYN (seq=y,ack=x+1) küldése ACK(ack=y+1) küldése ACK (ack=y+1) fogadása SYN szinkronjel, ACK Nyugtázás Az x az A, az y pedig a B állomás sorszáma 33

TCP összeköttetés felépítése

TCP összeköttetés-kezelés modellje Állapot Leírás CLOSED LISTEN SYN RCVD SYN SENT ESTABLISHED FIN WAIT 1 FIN WAIT 2 TIMED WAIT CLOSING CLOSE WAUT LAST ACK Nincs aktív vagy függő összeköttetés A szerver egy hívás érkezésére vár Összeköttetés-kérés érkezett, Ack-ra vár Az alkalmazás összeköttetés-létesítést kezdeményezett Normális adatátviteli állapot Az alkalmazás bejelentette, hogy végzett a teendőivel A másik fél beleegyezett az összekötetés bontásába Vár, míg az összes csomag ki nem hal Mind két fél egyszerre próbálta bontani az összeköttetést A másik fél bontást kezdeményezett Vár, míg az összes csomag ki nem hal.

TCP összeköttetés-kezelés modellje (2)

TCP forgalomszabályozás a) Cél, hogy a küldő ne terhelje túl a fogadót A küldő nem akarja túltölteni a vevő-puffert azzal, hogy túl sokat, túl gyorsan küld b) Átviteli sebesség korlátjai A vevő kapacitása A hálózat kapacitása c) Adó oldali csomagok típusai Elküldött nyugtázott Elküldött még nem nyugtázott Még nem elküldött elküldhető Még nem elküldött még nem küldhető el 37

TCP forgalomszabályozás a) Vevő oldali csomagok típusai Megérkezett (nyugtázott) Nem érkezett meg, de megérkezhet (képes fogadni) Nem érkezhet meg (nem képes fogadni) a) A küldő ne árassza el a vevőt Visszacsatolás (nyugtázás, window) Működése a) A fogadó megadja a szegmensben a puffer szabad helyének nagyságát(vagyis a RcvWindow méretét) b) A küldő korlátozza a nem nyugtázott adatok mennyiségét a RcvWindow-ra Biztosítja, hogy a fogadó puffer nem csordulhat túl 38

TCP átviteli politika

TCP átviteli politika(2)

TCP - Torlódásszabályozás Torlódás: Ha egyes hálózatrészek túltelítődnek akkor a csomagok mozgatása lehetetlenné válhat. A várakozási sorok, amelyeknek ezeket a csomagokat be kellene fogadniuk, állandóan tele vannak. A torlódás a csomaghálózatokban olyan állapot, amelyben a hálózat teljesítménye valamilyen módon lecsökken, mert a hálózatban az áthaladó csomagok száma túlságosan nagy. A teljesítménycsökkenés jelentkezhet oly módon hogy a hálózat átbocsátóképessége (throughput) lecsökkent, anélkül, hogy a hálózat terhelését csökkentenénk a hálózaton áthaladó csomagok késleltetése megnőtt. 41

A torlódás okai és következményei Példa a) Két küldő, két fogadó b) Egy router, végtelen puffer c) Nincs újraküldés d) Torlódáskor nagy késleltetés e) Maximális elérhetőátvitel 42

TCP torlódás kezelése

Torlódásvezérlési megközelítések End-end torlódásvezérlés a) Nincs egyértelmű (explicit) visszacsatolás a hálózatból b) A torlódás a végberendezésben érzékelt veszteségben, késleltetésben jelenik meg c) Ezt a megközelítést használja a TCP Hálózat által támogatott torlódásvezérlés a) A routerek nyújtanak visszacsatolást a végberendezéseknek b) Egyetlen bit jelzi a torlódást(sna, DEC bit, TCP/IP ECN, ATM) c) Egyértelmű sebesség megadás a küldőnek, amellyel küldhet 44

TCP - Torlódásszabályozás a) Megközelítés:növeljük addig az átviteli sebességet (ablakméretet), a használható sávszélesség kipróbálásával, amíg veszteség nem történik b) Csomagvesztés után a TCP megfelezi a hálózatba küldött csomagjainak számát c) Majd ismét növeli a küldési sebességét a következő ütközésig, vagyis csomagvesztésig d) Ennek megvalósítására az algoritmus használ egy torlódási ablak változót (congestion window - cwnd) 45

TCP - Torlódásszabályozás a) A csomagvesztés után a TCP óvatosabbá válik Additívnövelés (AI) növeljük a cwnd-t 1MSS-sel minden RTT alatt, amíg csomagvesztést nem detektálunk Multiplikatív csökkentés (MD) csökkentsük a cwnd-t a felére csomagveszteség detektálásakor 46

TCP - Torlódásszabályozás Slow Start a) Amikor az összeköttetés létrejön, növeljük a sebességet exponenciálisan az első csomagvesztési eseményig cwnd duplázása minden RTT-ben cwnd növelése által minden kapott ACK-re a) Amikor a cwnd értéke elérte a timeout előtti értékének a felét (threshold) az exponenciális sebességnövelés helyett lineáris növelés 47

TCP torlódás kezelése lassú kezdés

TCP Időzítés kezelése

TCP variánsok a) Változtatás a protokoll torlódásszabályozási mechanizmusában TCP Tahoe TCP Reno későbbi változatok alapját képezik TCP New Reno TCP SACK (Selective Acknowledgement) TCP Vegas TCP BIC (Binary Increase Congestion Control) TCP CUBIC TCP Westwood TCP Hybla Scalable TCP HighSpeed TCP H-TCP TCP Veno TCP-LP (Low Priority) 50

TCP vezeték nélküli környezetben a) A TCP nem képes különbséget tenni a csomag sérülése miatti csomagvesztés és a torlódás miatti vesztés között. b) Így minden csomagvesztés ugyanazt az adó részéről történő torlódás elkerülési választ vonja maga után, ami az adó átküldési sebességének a csökkenését okozza még akkor is, ha a hálózatban nincs torlódás c) A vezeték nélküli átvitel miatt bithibák jelentkeznek, amik csomagvesztésben nyilvánulnak meg. d) A TCP vezetékes környezetre optimalizált, így a csomagvesztést torlódásként értelmezi és csökkenti az átviteli sebességet. 51

TCP vezeték nélküli környezetben a) A TCP zajos csatornán indokolatlanul csökkentheti az adatátviteli sebességét b) Cellaváltás (az RTT hirtelen megnő), adatforgalom leáll Gyors lassú cella: megfelelő működés Lassú gyors cella: lassan növeli a sebességet 52

TCP vezeték nélküli környezetben a) A handoverek gyakoriságának növekedésével, erősen csökken az átviteli sebesség. a) Percenkénti négy handover esetén szinte használhatatlanok az alkalmazások b) Az RTT (Round Trip Time) jelentősen ingadozhat Felesleges újraküldés történhet 53

TCP vezeték nélküli környezetben a) Kapcsolat megszakadásának okai: Cellaváltás esetén a kapcsolat megszakad, új kapcsolat felépítésére van szükség A jelerősség lecsökken (fading hatások) b) Változó sebességű csatorna A felhasználók száma változik a cellán belül c) Multimédiás és késleltetésre érzékeny alkalmazások esetén a TCP nem ajánlott 54

TCP vezeték nélküli környezetben a) A TCP hibáinak kiküszöbölésére nehézkes, hiszen minden Internethez csatlakoztatott gépen van egy példány Ezeknek együtt kell működniük Lényegi változtatás így nem oldható meg b) A módosított TCP változatoknak kompatibilisnek kell maradniuk c) Megoldási javaslatok: Indirect TCP (I-TCP) Snooping TCP Mobile TCP (M-TCP) egyéb 55

Indirect TCP (I-TCP) a) Az I-TCP részekre bontja a kapcsolatot A kapcsolat vezetékes részében nincs változtatás A vezeték nélküli szakaszon a mobil terminálokra optimalizált TCP A TCP kapcsolatot két szakaszra bontja (pl. a távoli domain gateway-énél, vagy az idegen ügynöknél Mobile IPv4) Nincs többé valódi end-to-end kommunikáció A vezetékes részen található hoszt nem vesz észre semmit mobile host MSR (Mobility Source Router/ Base Station) wired Internet wireless TCP standard TCP 56

Indirect TCP (I-TCP) a) Előnyök A fix hálózati részben nincs szükség változtatásra A vezeték nélküli csatorna átviteli hibái nem terjednek tovább a vezetékes hálózatba Hatékonyabb alkalmazkodás a mobil szakaszhoz, különböző MTU, mobil csatornára optimalizált TCP változat alkalmazása Az elveszett csomagok nagyon gyors újraküldése a mobil szakaszon b) Hátrányok Elveszítjük az end-to-end koncepciót A Mobility Source Router/ Base Station a legérzékenyebb pont a hálózatban Nagyobb késleltetés a csomagok bufferelése és továbbküldése miatt az MSRnél 57

Snoop TCP a) A TCP transzparens kiegészítése a Snoop Agent-ben b) A Snoop Agent az access point-ban vagy a távoli ügynökben van telepítve c) A mobil hosztnak szánt üzenetek bufferelése d) Local retransmission: a vezeték nélküli szakaszon történt csomagvesztés esetén azonnali újraküldés (mindkét irányban) e) A Snoop Agent a rajta áthaladó ACK üzeneteket figyeli, és szűri a duplikált nyugtákat f) A módosított TCP-re (Snoop TCP) az ügynökben, valamint a mobil hosztnál van szükség local retransmission Snoop Agent wired Internet correspondent host mobile host snooping of ACKs buffering of data end-to-end TCP connection 58

Snoop TCP Adatátvitel a mobil hoszt irányban A Snoop Agent addig buffereli az adatokat, amíg a mobil hoszt nyugtáját nem érkezik meg, vagy csomagvesztés történik (duplikált ACK-ot érzékel, vagy lejár az időzítő) Nyugta esetén törli a buffert Újraküld, ha csomagvesztést detektál Gyors újraküldés, ami a fix hálózat számára nem látható Adatátvitel a fix hoszt irányban A Snoop Agent csomagvesztést észlel a sorszámok alapján, miután azonnal NACK üzenetet küld a mobil hosztnak A mobil hoszt így relatív kis késleltetéssel újra tudja küldeni az elveszett csomagot 59

Snoop TCP a) Előnyök: Megmarad az end-to-end koncepció Nincs szükség a TCP változtatására a a fix hoszt-nál A mobil hoszt is képes eredeti TCP változattal működni, de a hatékonyság, miatt érdemes módosított TCP-t használni Handover esetén nem változik a Snoop Agent, ezért csomagvesztés sincs ez miatt b) Hátrányok A csatornahibák miatti csomagvesztés nincs eléggé megkülönböztetve TCP változtatásra van szükség a mobil hosztnál is, hogy kezelje a NACK-t Titkosított adatátvitel esetén a Snoop TCP nem működik Nem tud monitorozni 60

Mobile TCP (M-TCP) a) A kapcsolat gyakori megszakadásának kezelése a cél b) Az I-TCP-hez hasonlóan az M-TCP is kettéosztja a kapcsolatot (Supervisory Host, SH) Nem kell módosítani a TCP-t a fix hoszt és az SH között Az SH és a mobil hoszt között optimalizált TCP c) Supervisory Host Nincs bufferelés és újraküldés Az összes csomagot figyeli, és ha kapcsolatbontást érzékel: A küldő ablakot 0-r állítja A küldő sürgősségi módba kapcsol A régi vagy az új SH újra növelni kezdi az ablakméretet d) Előnyök Kezeli a kapcsolatbontást Nincs bufferelés késleltetés e) Hátrányok A vezeték nélküli csatornahiba továbbterjed a vezetékes hálózatba Vezeték nélküli linkhez idomított TCP 61

Fast retransmit/fast recovery Gyors újraküldés/helyreállítás a) A handover gyakran csomagvesztést okoz A TCP ezt rosszul kezeli, mivel a slow-start mechanizmust indítja b) Kényszerített gyors újraküldés Amint a mobil hoszt regisztrálta magát az új hálózatban, duplikált nyugtát küld Ezzel kényszeríti a másik hosztot a fast retransmit (gyors újraküldés) módra Ráadásul a TCP az eredeti ablakmérettel folytatja a kommunikációt, nem pedig a slow-start mechanizmus indításával c) Előnyök Kis módosításokra van szükség Jelentős hatékonyságnövekedés d) Hátrányok Az IP és a TCP együttműködésére van szükség (új regisztráció történt) 62

Transmission/time-out freezing Küldés/időzítő zárolás a) A kapcsolat hosszabb időre is megszakadhat A csomagtovábbítás nem lehetséges Az időzítő lejárta után a TCP bontja a kapcsolatot b) TCP zárolás A MAC réteg gyakran előre tudja jelezni a szakadásokat a kommunikációban A MAC réteg így információt nyújthat a TCP-nek a várható kapcsolatvesztésről A TCP leállítja a küldést, de nem tekinti túlterheltnek a hálózatot A MAC réteg jelzi, ha ismét van kapcsolat Ismét az eredeti sebességgel folytathatja a küldést c) Előnyök A módszer független a csomagtípusoktól, és a TCP mechanizmusoktól (ACK, sorszámok) IPSec esetén is működik d) Hátrányok TCP módosításra van szükség A módszer a MAC réteg információira alapoz 63

SCTP Stream Control Transmission Protocol RFC-2960 2000 A Linux kernel része a 2.6.x verziókban Megbízható Hibamentes Duplikáció-mentes Nem sorrendhelyes/vagy sorrendhelyes (beállítható) Több folyam kezelése egy kapcsolaton belül Multihoming Több IP-cím Torlódásszabályozás Slow start MTU (Maximum Transfer Unit) felderítés 64

SCTP motivációk a) A TCP, UDP nem elégíti ki az összes alkalmazás igényeit b) Fejlődését leginkább az IP telefónia és az ott alkalmazott jelzésrendszer indította c) A TCP-hez hasonlóan megbízható és full-duplex kapcsolatot alkalmaz d) A TCP-vel és UDP-vel ellentétben olyan opciókat is nyújt, amelyek a multimédiás alkalmazások esetén jelent előnyt e) TCP-hez hasonló torlódáskezelő algoritmust használ f) Azonos hosztok közötti folyamok összefogása g) Kapcsolatfelépítés: 4-utas kézfogás h) Kapcsolatbontás: 3-utas kézfogás 65

SCTP fejléc 66

SCTP fejléc a) Csomag formátum A TCP-vel ellentétben, az SCTP üzenet-orientált adattovábbítást nyújt b) Common header forrás és cél portszám ellenörző rész Checksum c) Chunk header Chunk hossz Típus (14 különböző chunk típus) speciális flag-ek DATA chunk INIT chunk INIT ACK chunk SACK chunk HEARTBEAT chunk HEARTBEAT ACK chunk ABORT chunk SHUTDOWN chunk SHUTDOWN ACK chunk ERROR chunk COOKIE ECHO chunk COOKIE ACK chunk ECNE chunk CWR chunk SHUTDOWN COMPLETE chunk 67

SCTP kapcsolatfelépítés SCTP Host A Host B Host A Host B SYN FIN SYN, ACK ACK of FIN ACK FIN ACK of FIN TCP 2007.12.20 Mobil Internet előadás BME-HIT 68

SCTP adatátvitel a) Selective Acknowledgement kumulatív nyugta nyugta az utolsó hibátlanul fogadott TSN-re (Transmission Sequence Number) max. 500 ms időközönként (állítható) 69

Multistreaming a) Rendkívül fontos tulajdonsága az SCTP-nek, hogy egy kapcsolaton belül képes több adatfolyamot továbbítani b) Míg a TCP-ben ehhez külön kapcsolatokra van szükség c) A független adatfolyamok külön chunk-okban kerülnek továbbításra, de egy csomagon belül d) Jó felhasználási lehetőség pl. a vezérlő és felhasználói adatok szétválasztása TCP esetében meg kell várni, hogy a felhasználói adat továbbítódjon és csak utána érkezik a nagyobb prioritású vezérlő adat e) Az SCTP párhuzamossá teszi a folyamok továbbítását, így csökkentve a késleltetést is f) A független folyamokra, különböző tulajdonságokat állíthatunk be, mint pl. a sorrendhelyesség 70

Multistreaming 71

Multihoming a) Egy multihome hoszt azzal a tulajdonsággal rendelkezik, hogy több interfészen érhető el, azaz több IP címe is van b) Az SCTP képest tehát egy összeköttetés adatait több interfészen küldeni és fogadni c) Jelenleg ez az egyetlen transzport protokoll, amely erre képes Ha az elsődleges címen nem lehet elérni, akkor átvált a másik címre 72

SCTP összehasonlítás A szolgáltatások és jellemző tulajdonságok áttekintése SCTP TCP UDP Full-duplex adatátvitel igen igen igen Kapcsolat orientált igen igen nem Megbízható adatátvitel igen igen nem Megbízhatatlan adatátvitel igen nem igen Részlegesen megbízható adatátvitel igen nem nem Sorrendhelyes átvitel igen igen nem Nem sorrendhelyes átvitel igen nem igen Flow- és Congestion Control igen igen nem ECN támogatás igen igen nem Szelektív nyugtázás igen igen nem Üzenethatárok védelme igen nem igen Fragmentálás igen igen nem Multistreaming igen nem nem Multihoming igen nem nem SYN flooding támadás elleni védelem igen nem n/a Half-closed kapcsolat nem igen n/a 73

Mobile SCTP (msctp) a) Az SCTP protokollt arra tervezték, hogy a TCP-t és esetleg még az UDP-t is leváltsa b) Hasonlít a TCP-re, de jóval többre képes annál, például multi-streaming és multihoming támogatása c) A multi-homing az az új tulajdonság, ami miatt az SCTP alkalmas lehet mobilitás kezelésére, méghozzá úgy, hogy nincs szükség agent-re d) A mobilitás úgy van megvalósítva, hogy a végpont úgy változtassa meg az IP címét, hogy közben a végpont-végpont kapcsolat nem szakad meg ennek dinamikusan kell történnie e) Egy asszociáció felépítése során a kommunikáló felek kicserélik egymással a lehetséges transzport címeiket (IP és port párosok) 74

Mobile SCTP (msctp) a) Az ADDIP-vel kiegészített SCTP-t mobile SCTP-nek (msctp) nevezik b) ADDIP (Dynamic Address Reconfiguration) kiegészítés az SCTP-hez lehetővé teszi, hogy hozzáadjunk, elvegyünk és megváltoztassunk IP címeket (MN Mobile Node) egy aktív kapcsolat alatt Események: ADD; DELETE; CHANGE A CN-t (Correspondent Node) is értesíteni kell a változásról SCTP ASCONF (Address Configuration Change) chunk (MN CN) SCTP ASCONF-ACK chunk (CN MN) 75

msctp handover Cellaváltás (Access Router A Access Router B ) a) Új IP cím kérése a B router-től DHCPv6 vagy IPv6 Stateless auto-configuration b) A MN hozzáadja az új IP címet az SCTP kapcsolathoz a CN-nek küldött SCTP ASCONF Chunk üzenet segítségével a CN ASCONF-ACK chunk üzenettel nyugtázza az új IP cím hozzáadását c) A MN elsődleges IP címét az új IP címre állítja Az IP cím változtatás függhet pl. a rádiós jel erősségétől d) A MN törli a régi IP címet SCTP ASCONF Chunk üzenet küldésével a CN-nek e) A fenti lépések ismétlődnek, akárhányszor cellaváltás történik 76

msctp handover a) Az IP cím megváltoztatása azonban újabb problémákhoz vezethet: A MN egy SCTP kapcsolatot kezdeményez a CN-dal. Egy kis idő elteltével MN úgy dönt, hogy átmegy A hálózatból B hálózatba. Az új hálózatban a MN új IP címet kap. Ezt az új IP-t a MN hozzáfőzi a már meglévő asszociációhoz és erről a CN t is értesíti. MN ezek után az új IP címet jelöli meg elsődleges IP címnek és a régi IP címet törli az asszociációból. Ha fordítva történik az egész és a CN akar kapcsolatot kiépíteni a MN-al, akkor nem működik az eljárás, hiszen a CN-nek nincsen tudomása arról, hogy a MN-nak mi az aktuális elérhetősége. Ezért szükség van valamiféle Home Agentre. Az asszociáció felépülése után azonban már az msctp veszi át az irányítást. 77

msctp/mipv6: kapcsolatfelépítés 78