Spring 2000CS 4611 Megbízható Byte-Folyam Szolgáltatás (Transmission Control Protocol TCP) Vázlat Kapcsolatlétrehozás és bontás Csúszó Ablak Hibajavító.

Slides:



Advertisements
Hasonló előadás
4. alkalom – Hálózat Kezelés
Advertisements

Hálózati és Internet ismeretek
HÁLÓZAT SOAP Hagyományos WCF/ASMX webszervizek.
Hálózati ismeretek 5 Hálózati, szállítási és alkalmazási réteg
Számítógépes hálózatok
TCP (Transmission Controll Protokoll)
Virtuális méréstechnika Hálózati kommunikáció 1 Mingesz Róbert V
Bevezetés a VoIP technológiába
IPSec.
Rétegzett hálózati architektúrák
Hálózatok.
1. Szállítási (transzport) réteg
Csatlakozás BRAIN rádiós hozzáférési rendszerhez mozgó ad-hoc hálózaton keresztül Konzulensek: Vajda Lóránt Török Attila Simon Csaba Távközlési és Telematikai.
Sávszélesség és adatátvitel
Egy skálázható architectúra fair sávszélesség elosztás közelítésére nagysebességű hálózatokon.
Számítógépes hálózatok GY
Transzport protokollok funkciói
Sándor Laki (C) Számítógépes hálózatok I. 1 Számítógépes hálózatok 6.gyakorlat Adatkapcsolati réteg MAC alréteg, ALOHA, CSMA Laki Sándor
A hálózati réteg 6. fejezet. Forgalomirányítás A forgalomirányítási algoritmus (routing algorithm) a hálózati réteg szoftverének azon része, amely azért.
A TCP/IP cím.
Hálózatkezelés, java.net Elek Tibor
Hálózati réteg Csányi Zoltán, A hálózati réteg feladatai Forgalomirányítás Torlódásvezérlés Hálózatközi együttműködés.
Számítógépes Hálózatok GY 2. Gyakorlat Réteg modellek, alapfogalmak 2/23/2012Számítógépes hálózatok GY1.
Számítógépes Hálózatok GY
Számítógépes Hálózatok GY
Spring 2000CS 4611 Vázlat Kódolás Keretképzés Hibafelismerés „Csúszó Ablak” Algoritmus (hibajavítás) Pont-Pont kapcsolódások (Links)
TCP Speed Mérésvezetők: Takács György Tihanyi Attila Előírt Laboratórium I., 2006, PPKE-ITK Készítette: Benyovszky Máté Bohó András.
SOAP alapismeretek A SOAP egy egyszerű XML alapú protokoll, ami lehetővé teszi, hogy az alkalmazások információt cseréljenek a HTTP-én keresztül. Forrás:
SUN Network File System (NFS)
A protokollok határozzák meg a kapcsolattartás módját.
1 Többszörös címek D osztályú IP címek
Létező hálózatok Kapcsolat-orientált csomagkapcsolt adathálózat: X.25.
Szállítási réteg Fejezet Szállítási réteg Computer Networking: A Top Down Approach 4 th edition. Jim Kurose, Keith Ross Addison-Wesley, July 2007.
UDP protokollok User datagram protocol- Felhasználói datagrammprotokoll.
TCP protokoll Torlódáskezelés.
Hálózati Bombermen Belicza András Konzulens: Rajacsics Tamás BME-AAIT.
DDoS támadások veszélyei és az ellenük való védekezés lehetséges módszerei Gyányi Sándor.
Hálózati architektúrák
Tóth Gergely, február BME-MIT Miniszimpózium, Általános célú biztonságos anonimitási architektúra Tóth Gergely Konzulensek: Hornák Zoltán.
Hálózati alapismeretek
Miért is jók a rétegek?  Ha alkalmazást készítünk, nem akarunk IP csomagok küldésével bajlódni Ethernet keretekkel foglalkozni Implementálni megbízható.
Gyakorlat 3. Számítógép hálózatok I.
Supervizor By Potter’s team SWENG 1Szarka Gábor & Tóth Gergely Béla.
Spring 2000CS 4611 Osztott elérésű hálózatok Vázlat Busz (Ethernet) Token ring (FDDI) Vezeték nélküli (802.11)
Spring 2000CS 4611 Hálózat Hálózatokból (Internetworking) Vázlat Legjobbra Törekvés Szolgáltatás Modell (Best Effort Service) Globális Címzési Séma.
Spring 2002CS 4611 Bevezetés Vázlat: Statisztikus multiplexelés Folyamatok közötti kommunikáció Hálózati architektúra A működés mértékszámai A megvalósítás.
Bifrost Anonim kommunikációs rendszer. Bevezetés Egyre több szolgáltatás jelenik meg az interneten, melyek megkövetelik az anonimitiást, pl.: Egészségügyi.
Rétegmodellek 1 Rendelje az alábbi hálózati fogalmakat a TCP/IP modell négy rétegéhez és a hibrid modell öt rétegéhez! Röviden indokolja döntését. ,
Spring 2000CS 4611 Megosztott Elérésű Hálózatok Vázlat Bus (Ethernet) (vonal topológia) Token ring (FDDI) (vezérjeles gyűrű) Wireless (802.11) (vezeték.
TCP jellemzői 1/3 „A TCP egy kapcsolatorientált megbízható szolgáltatás kétirányú bájt-folyamokhoz.” KAPCSOLATORIENTÁLT Két résztvevő, ahol egy résztvevőt.
Mérés és adatgyűjtés laboratóriumi gyakorlat Hálózati kommunikáció 1 Makan Gergely, Mingesz Róbert, Nagy Tamás V
Spring 2000CS 4611 Hálózatok hálózata Váztal „Legjobb szándék” Szolgáltatási Modell Globális Címzés.
Számítógép- hálózatok
Spring 2000CS 4611 Protokoll Implementáció elelmei Vázlat Szolgáltatási Interfész Folyamat Modell Közös Szubrutinok Példa Protokoll.
Számítógépes Hálózatok
Számítógépes hálózatok
Spring 2000CS 4611 Kapcsolás és továbbítás Vázlat „Tárol és továbbít” kapcsolók Hidak és kiterjesztett LAN-ok Cella-kapcsolás (ATM) Feldarabolás és összerakás.
Spring 2000CS 4611 Bevezetés Vázlat Statisztikus multiplexelés Folyamatok közötti kommunikáció Hálózati architektúra Működési karakterisztikák.
Almási Béla - NAT 1 Network Address Translation -NAT.
A szállítási réteg az OSI modell 4. rétege. Feladata megbízható adatátvitel megvalósítása két hoszt között. Ezt úgy kell megoldani, hogy az független.
A TCP/IP protokoll. Az ARPANET eredeti protokollja: Network Control Protocol. 1974: Vinton G. Cerf és Robert E. Kahn: új protokollstruktúra fejlesztése.
Hálózatos programok készítése
5.3. Torlódásvédelem Azt hihetnénk, hogy ha a vonalak és csomópontok kapacitása elegendő az adatforgalom lebonyolításához, akkor a szabad információáramlás.
HTE előadás BME TMIT I. 210 Az internet szolgáltatás mérése az NMHH gyakorlatában – a szolgáltatásminőség EU-s dimenziója Előadók: Torma Zsolt (NMHH)
ATM Asynchronous Transfer Mode
1 Többszörös címek D osztályú IP címek
Hálózatkezelés Java-ban
Számítógépes Hálózatok
Válasz a hálózatra, biztonságra, meg mindenre: 7
1 Többszörös címek D osztályú IP címek
Előadás másolata:

Spring 2000CS 4611 Megbízható Byte-Folyam Szolgáltatás (Transmission Control Protocol TCP) Vázlat Kapcsolatlétrehozás és bontás Csúszó Ablak Hibajavító Illesztése Folyamatvezérlés (Folw Control) Adaptív Időzítő (Timeout)

Spring 2000CS 4612 Vég-Vég (End-to-End) Protokollok Az alap hálózat „legjobb szándék” szolgáltatást nyújt –üzenetek elveszhetnek –üzenetek érkezési sorrendje felcserélődhet –üzenetek több példányban is érkezhetnek –az üzenetek hossza korlátozott –az átvitel késleltetése akármilyen nagy is lehet A vég-vég szolgáltatással kapcsolatos igények –garantált üzenettovábbítás –sorrendtartó átvitel –üzenet legfeljebb egy másolatának célba juttatása –valósítsa meg tetszőleges hosszúságú üzenet átvitelét –szinkronizáció támogatása –tegye lehetővé a fogadó számára, hogy vezérelje a küldő itenzitását (flow control) –támogasson több alkalmazást hosztonként

Spring 2000CS 4613 Egyszerű Demultiplexelő (UDP) Megbízhatatlan sorrendet tévesztehtő datagram szolgáltatás Hoszt-hoszt adatátvitelt többszörösít vég-vég szintre Nincs forgalomvezérlés (flow control) Végpontot port azonosít a hoszton belül –Szerver oldalon: jól ismert portok –Lásd: /etc/services( Unix) Fej formátuma Opcionális kontrollösszeg –psuedo header + UDP header + data SrcPort DstPort Checksum Length Data 01631

Spring 2000CS 4614 TCP Áttekintése Kapcsolat-orientált Byte-folyam –alk. byteokat ír –TCP szegmenseket szállít –alk. byteokat olvas Application process Write bytes TCP Send buffer Segment Transmit segments Application process Read bytes TCP Receive buffer … …… Full duplex forgalomvezérlés: a fogadó megakadályozza, hogy a küldő elárassza a fogadót torlódásvezérlés: megakadályozza a küldőt, hogy elárassza a hálózatot

Spring 2000CS 4615 Adatkapcsolat (p2p) és Szállítás összevetése Potenciálisan több különböző hosztot kapcsol össze –kifejezett kapcsolat-felépítés és -bontás fázis szükséges Potenciálisan különlbözőek az RTT értékek –adaptív időzítő szükséges az újraküldéseknél Potenciálisan hosszú késleltetés is lehet a hálózatban –nagyon régi csomagok érkezésére is fel kell készülni Potenciálisan a fogadó pontok kapacitása különböző –alkalmazkodni kell a különböző kapacitású végpontokhoz Potenciálisan különböző a hálózat átviteli kapacitása –fel kell készülni a hálózati torlódásokra

Spring 2000CS 4616 Szegmens Formátuma

Spring 2000CS 4617 Szegmens Formátuma (folyt.) Valamely kapcsolatot a küvetkező 4-es azonosítja: –(SrcPort, SrcIPAddr, DsrPort, DstIPAddr) Csúszó ablak + forgalomvezérlés –acknowledgment, SequenceNum, AdvertisedWinow Flagek –SYN, FIN, RESET, PUSH, URG, ACK Kontroll összeg –pseudo header + TCP header + data Sender Data(SequenceNum) Acknowledgment + AdvertisedWindow Receiver

Spring 2000CS 4618 Kapcsolatkialakítás és bontás Aktív résztvevő (kliens) Passzív résztvevő (szerver) SYN, SequenceNum = x SYN + ACK, SequenceNum = y, ACK, Acknowledgment = y + 1 Acknowledgment = x + 1

Spring 2000CS 4619 Állapotátmeneti Diagram CLOSED LISTEN SYN_RCVDSYN_SENT ESTABLISHED CLOSE_WAIT LAST_ACKCLOSING TIME_WAIT FIN_WAIT_2 FIN_WAIT_1 Passive openClose Send/SYN SYN/SYN + ACK SYN + ACK/ACK SYN/SYN + ACK ACK Close/FIN FIN/ACKClose/FIN FIN/ACK ACK + FIN/ACK Timeout after two segment lifetimes FIN/ACK ACK Close/FIN Close CLOSED Active open/SYN

Spring 2000CS Módosított Csúszó Ablak Küldő oldal –LastByteAcked < = LastByteSent –LastByteSent < = LastByteWritten –tárolja a byteokat LastByteAcked és LastByteWritten között Sending application LastByteWritten TCP LastByteSentLastByteAcked Receiving application LastByteRead TCP LastByteRcvdNextByteExpected Fogadó oldal –LastByteRead < NextByteExpected –NextByteExpected < = LastByteRcvd +1 –tárolja a byteokat NextByteRead és LastByteRcvd között

Spring 2000CS Forgalomvezérlés Küldő buffer mérete: MaxSendBuffer Fogadó buffer mérete: MaxRcvBuffer Fogadó oldalon –LastByteRcvd - LastByteRead < = MaxRcvBuffer –AdvertisedWindow = MaxRcvBuffer - ( LastByteRcvd - NextByteRead ) Küldő oldalon –LastByteSent - LastByteAcked < = AdvertisedWindow –EffectiveWindow = AdvertisedWindow - ( LastByteSent - LastByteAcked ) –LastByteWritten - LastByteAcked < = MaxSendBuffer –block sender if ( LastByteWritten - LastByteAcked ) + y > MaxSenderBuffer Mindig küld ACK válaszul az érkező adat szegmensre Kitart (persist) ha AdvertisedWindow = 0

Spring 2000CS Körbefutás elleni védelem 32-bit SequenceNum SávszélességKörbefutási idő T1 (1.5 Mbps)6.4 hours Ethernet (10 Mbps)57 minutes T3 (45 Mbps)13 minutes FDDI (100 Mbps)6 minutes STS-3 (155 Mbps)4 minutes STS-12 (622 Mbps)55 seconds STS-24 (1.2 Gbps)28 seconds

Spring 2000CS Tartsuk telítetten a vonalat (Keeping the Pipe Full) 16-bit AdvertisedWindow SávszélességDelay x Bandwidth Szorzat T1 (1.5 Mbps)18KB Ethernet (10 Mbps)122KB T3 (45 Mbps)549KB FDDI (100 Mbps)1.2MB STS-3 (155 Mbps)1.8MB STS-12 (622 Mbps)7.4MB STS-24 (1.2 Gbps)14.8MB

Spring 2000CS TCP Kiterjesztések Megvalósítás: header opciókban Tároljuk az elhagyás pillanatát (timestamp) a kimenő szegmensekben Azonosítók terének kiterjesztése a 32-bit timestamp-pel (PAWS) Advertised window eltolása

Spring 2000CS Adaptív Újraküldés (Eredeti Algoritmus) Mérjük a SampleRTT minden szegmend/ ACK párra Számítsuk a súlyozott átlagos RTT-t –EstRTT =  x EstimatedRTT +  x SampleRTT –ahol  +  = 1  0.8 és 0.9 közötti érték  0.1 és 0.2 közötti érték Állítsuk be az időzítőt az EstRTT függvényében: –TimeOut = 2 x EstRTT

Spring 2000CS Karn/Partridge Algoritmus Ne vegyük figyelembe RTT-t újraküldéskor Duplázzuk meg a timeout-ot minden újraküldéskor SenderReceiver Original transmission ACK SampleR TT Retransmission SenderReceiver Original transmission ACK SampleR TT Retransmission

Spring 2000CS Jacobson/ Karels Algoritmus Az átlagos RTT új számítása Diff = sampleRTT - EstRTT EstRTT = EstRTT + ( 8 x Diff) Dev = Dev + 8 ( |Diff| - Dev) –ahol 8 factor 0 és 1 között Vegyük figyelembe a varianciát (DEV) ha beállítjuk a timeout értéket TimeOut =  x EstRTT +  x Dev –ahol  = 1 és  = 4 Megjegyzés –az algoritmus az időmérés pontosságától függ (500ms on Unix) –a pontos timeout mechanizmus fontos a torlódásvezérléshez (később)