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