1. TCP kézfogási protokoll
A TCP/IP protokollban a TCP protokoll megbízható kapcsolati szolgáltatásokat nyújt háromirányú kézfogással a kapcsolat létrehozásához.
Első kézfogás: Kapcsolat létrehozásakor az ügyfél egy syn csomagot (syn=j) küld a szervernek, majd belép a SYN_SEND állapotba, várva a szerver megerősítését.
A második kézfogás: Amikor a szerver megkapja a SYN csomagot, meg kell erősítenie az ügyfél SYN-jét (ack=j+1), és küldenie kell egy SYN csomagot (syn=k), azaz SYN+ACK csomagot, ekkor a szerver belép a SYN_RECV állapotba.
Harmadik kézfogás: Az ügyfél megkapja a szervertől a SYN+ACK csomagot, majd elküldi a megerősítő csomagot ACK (ack=k+1) a szervernek.
Három kézfogás után az ügyfél és a szerver elkezdi az adatok átvitelét, és néhány fontos fogalma van a fent említett folyamatban:
Csatlakoztatatlan sor: A háromirányú kézfogás protokollban a szerver egy nem csatlakoztatott sorban áll, amely megnyit egy bejegyzést minden kliens SYN csomagjához (syn=j), amely jelzi, hogy a szerver megkapta a SYN csomagot, és megerősíti az ügyfélnek, várva az ügyfél megerősítő csomagját. Az ezekkel a bejegyzésekkel azonosított kapcsolat Syn_RECV állapotban van a szerveren, és amikor a szerver kap egy megerősítő csomagot az ügyféltől, a bejegyzés törlődik, és a szerver belép a BEVEZETETT állapotba. Backlog paraméter: A maximális számú összekötetlen sorszámot jelzi.
SYN-ACK újraküldési idők Ha a szerver elküldi a SYN-ACK csomagot, de nem kapja meg az ügyfél megerősítő csomagot, a szerver végrehajtja az első újraküldést, vár egy ideig anélkül, hogy megkapja az ügyfél megerősítő csomagját, majd a második újraküldést hajtja végre. Fontos megjegyezni, hogy minden újraindításra vonatkozó várakozási idő nem feltétlenül ugyanaz.
Félig kapcsolódási túlélési idő: a félig kapcsolódási sorban lévő bejegyzés maximális élettartamát jelenti, vagyis a maximális idő, amely a szolgáltatás SYN csomag megkapásától kezdve a csomag érvénytelenségének megerősítéséig terjedő idő, és az időérték az összes újraküldési kérelmek maximális várakozási idejének összege. Néha félig összekapcsolt túlélési időnek is hívjuk, SYN_RECV túlélési időnek.
|