A tcp session állapotai

A könyvet a UNIX operációs rendszerek családjára szánják, és a szervezet, az ideológia és az architektúra alapelveiről szóló információkat tartalmaznak, amelyek az operációs rendszer különböző verzióit ötvözik.

A könyv: az építészet, a UNIX kernel (I / O, memória és folyamat-menedzsment, valamint a fájl alrendszer), UNIX programozási felület (rendszer hívások és az alapvető könyvtári funkciók), a felhasználói környezet (shell shell, az alapvető parancsok és segédprogramok) és a hálózati támogatás a UNIX-ban (a TCP / IP család protokolljai, a hálózati alrendszer architektúrája, a socket API-k és a TLI).

A felhasználók széles köre számára

Könyv: UNIX operációs rendszer

A TCP munkamenet állapota

Amint már említettük, a TCP protokoll segítségével történő adatátvitel biztosítja az előzetes kapcsolatot vagy a logikai TCP csatorna létrehozását. Ez az előzetes szakasz célja a protokoll megbízhatóságának növelése. Ennek során ez a fázis határozza meg az elején TCP-áramlásokat mindkét irányban, azok jellemzőit (például maximális ablakméret) egyidejűleg lehet kimutatni „omladozó” TCP-csatornán már átviteli ülések rendesen zárva, például miatt vészleállító egyik oldalon. A résztvevők kiválasztják a folyamatok tetszőleges kezdeti sorszámát a "régi" munkamenetekhez tartozó szegmensek feldolgozási valószínűségének csökkentése érdekében. [71]

Kiindulási fázisátvivő munkamenet az úgynevezett „triple handshake” (három-utas kézfogás), amely meglehetősen pontosan tükrözi a cseréjét overhead szegmens a felek között. Ez a folyamat aszimmetrikus - az egyik félnek, az ügyfél kezdeményezi a munkamenetet Start küldő, a másik fél -. Server SYN szegmens [72] Általában ez a szegmens számos iroda, azaz nem tartalmaz hasznos adatokat, a fejléc meghatározza a portszámot és az ügyfél-kiszolgálófolyam kezdeti sorozatszámát. Ha a szerver készen áll az adatok fogadására az ügyfél, hogy létrehoz egy logikai csatorna (elhelyezés megfelelő adatstruktúrák), és a kliens küld egy szegmens a sorszámmal állítva egy kiindulási patak kliens és a szerver zászlók SYN és ACK. megerősítve a SYN szegmens átvételét és kifejezve a szerver adatfogadási hajlandóságát. Végül, és ez a harmadik kézfogás, az ügyfél válaszol egy szegmenssel az ACK zászló készletével. megerősítve a válasz érkezését a szerverről, és ezzel befejezve a TCP csatorna létrehozásának fázisát. A TCP-munkamenet-kapcsolat létrehozásának folyamata a 3. ábrán látható. 6.12.

A tcp session állapotai

Ábra. 6.12. Kapcsolat létrehozása, adatküldés és TCP-munkamenet befejezése

Ezt követően mindkét fél elkezdi továbbítani a TCP szegmenseket, amelyek mindegyike tartalmazza a kapott adatok visszaigazolását és egy új ablakértéket. A megerősített oktetttől kezdve a forrás átirányíthatja a megerősítésre váró várakozást az ablak értékével meghatározott adatok mennyiségével. Ha a feladó egy meghatározott időn belül nem kap visszaigazolást az elküldött adatokról, úgy véli, hogy az adatok elveszettek, és az átvitelük megismétlődik, kezdve az utolsó megerősített oktettel. Mivel az átvitel megbízhatóságát a protokoll garantálja, az elküldött, de nem megerősített alkalmazásadatok esetében a protokoll tárol egy másolatot, amely a visszaigazolás beérkezése után megsemmisül, vagy újra továbbításra kerül, ha nincs. Az ismétlődő adatok megszerzését szintén megerősítik, bár az adatok megsemmisülnek, mivel a duplikációt a nem-nyugtázás okozhatja. Ha az egyik fél rendezetlen adatokat kap, akkor általában a hiányzó egymást követő szegmensek beérkezéséig tárolódik. Természetesen az ilyen rendezetlen adatok beérkezését nem erősítik meg, mivel a visszaigazolást csak a kapott, folyamatos soros sorozathoz kell elküldeni.

A TCP egy szakaszának befejezése több lépésben történik. Bármelyik oldal befejezheti az adatátvitelt úgy, hogy egy szegmenst küld a FIN zászlókészletnek (6.12. Ábra). Egy ilyen szegmens beérkezését a másik fél megerősíti, és megegyezik azzal, hogy elérje a fájl végét, amikor elolvassa. Azonban a másik fél továbbra is továbbadhatja az adatokat, majd ezt követően a FIN szegmens továbbítja a továbbítást. A szegmens megerősítése teljesen elpusztítja a csatornát, és befejezi a munkamenetet. A szekció végének szinkronizálása érdekében a visszaigazolást küldő fél továbbítja az utolsó FIN szegmenst. meg kell tartania a munkamenetet ahhoz, hogy újra tudja erősíteni a munkamenet ismétlődő FIN szegmenseit abban az esetben, ha a másik fél nem fogadta el a nyugtázást.

Az 1. ábrán. A 6.12. Ábra szintén bemutatja a TCP csatorna kommunikációs csomópontjainak állapotát.

Amint az az ábrából látható, a csomópont (szerver vagy kliens) kezdeti állapota ZÁRVA. A kiszolgáló készen áll az ügyfél kezdeményező kérelmének feldolgozására a LISTEN állapotra való átmenet alapján. Mostantól a szerver képes fogadni és feldolgozni a munkamenet-kezdeményező SYN szegmenseket. Ilyen szegmens küldésekor az ügyfél a SYN-SENT állapotba kerül, és várja a szerver válaszát. Amikor a szegmenst megkapja, a kiszolgáló SYN szegmenst küld ACK visszaigazolással és a SYN-RECEIVED állapotba kerül. Az ügyfél jóváhagyása befejezi a kézfogást, és a munkamenet megkezdődik az ESTABLISHED állapotba. Az adatcsere befejezése után az egyik fél (például az ügyfél) a FIN szegmenst továbbítja, és átadja a FIN-WAIT-1 állapotot. Elfogadásával ez a szegmens a másik fél (például egy szerver) ACK-t küld, és bemegy a CLOSE-WAIT, a furat válik simplex - Adatátvitel csak akkor lehetséges, abban az irányban, hogy a szerver a kliens. Amikor az ügyfél megkapja a visszaigazolást, akkor a FIN-WAIT-2 állapotba kerül, amely a FIN szegmens beérkezését megelőzi. A szegmens beérkezését követően a csatorna összeomlik.

Az állapotok dekódolását a táblázat tartalmazza. 6.5.

6.5. Táblázat. A TCP munkamenet állapota

Kapcsolódó cikkek