TCP (Transmission Control Protocol) är ett överföringsprotokoll som säkerställer dataöverföring på ett ordnat och säkert sätt. Den skickar och tar emot datapaketen i samma ordning. TCP är en fyra lager protokoll jämfört med OSI (Open System Interconnection Model), som är en sju lager överföringsprocessen. Det rekommenderas att överföra data från högnivåprotokoll på grund av dess integritet och säkerhet mellan servern och klienten.
TCP behöver ett 4-vägs handslag för att avslutas. För att upprätta en anslutning behöver TCP ett 3-vägs handslag. Så här kommer vi att diskutera den detaljerade processen för TCP för att bygga en 3-vägs handslag för anslutning och en 4-vägs handslag för att avsluta . Här kommer vi att diskutera följande:
Vad är TCP?
Lager av TCP
TCP-anslutning (ett 3-vägs handslag)
TCP-uppsägning (ett 4-vägs handslag)
Låt oss börja.
Vad är TCP?
TCP är ett anslutningsorienterat protokoll, vilket innebär att det först upprättar förbindelsen mellan sändare och mottagare i form av en handslag . Efter att båda anslutningarna har verifierats börjar den sända paket. Det gör överföringsprocessen felfri och säkerställer leveransen av data. Det är en viktig del av kommunikationsprotokollen som används för att koppla ihop nätverksenheter på internet. Hela internetsystemet är beroende av detta nätverk.
försök fånga i java
TCP är ett av de vanligaste protokollen som säkerställer början till slut leverans. Det garanterar säkerheten och integriteten för de data som överförs. Det upprättar alltid en säker förbindelse mellan avsändaren och mottagaren. Sändaren är server , och mottagaren är känd som klient . Vi kan också säga att dataöverföringen sker mellan servern och klienten. Därför används TCP i de flesta högnivåprotokoll, som t.ex FTP (Filöverföringsprotokoll) , HTTP (Hyper Text Transfer Protocol) , och SMTP (Simple Mai Transfer Protocol) .
Lager av TCP
Data delas sedan upp i paket, tilldelas adressen, sänds, dirigeras och tas emot vid destinationen. Överföringsprocessen består av fyra lager, applikationslager, transportlager, internetlager och datalänkslager. De applikationslager utför en funktion som liknar de tre översta lagren (applikation, presentation och session) i OSI-modell och kontrollera användargränssnittsspecifikationer. Användaren interagerar med applikationslagret i TCP-modellen, såsom meddelande- och e-postsystem. De transportlager ger en tillförlitlig och felfri dataanslutning. Den delar upp data som tas emot från applikationslagret i paket, vilket hjälper till att skapa en ordnad sekvens. De internetlager kontrollerar routningen av paket och säkerställer leveransen av ett paket till destinationen. Datalänklagret utför en funktion som liknar de två nedre lagren (datalänk och fysisk) i OSI-modellen. Den ansvarar för att överföra data mellan applikationer eller enheter i nätverket.
Innan du går vidare mot TCP-avslutningen är det viktigt att förstå konceptet med TCP-anslutning. Det kommer att hjälpa oss att bättre förstå uppsägningsprocessen.
TCP-anslutning (ett 3-vägs handslag)
Handskakning hänvisar till processen för att upprätta en anslutning mellan klienten och servern. Handslag definieras helt enkelt som processen för att upprätta en kommunikationslänk. För att överföra ett paket behöver TCP en trevägshandskakning innan den börjar skicka data. Den tillförlitliga kommunikationen i TCP kallas HANDLA OM (Positiv bekräftelse återsändning). När en avsändare skickar data till mottagaren kräver det en positiv bekräftelse från mottagaren som bekräftar ankomsten av data. Om bekräftelsen inte har nått avsändaren måste den skicka den informationen igen. Den positiva bekräftelsen från mottagaren upprättar en framgångsrik anslutning.
Här är servern servern och klienten är mottagaren. Diagrammet ovan visar 3 steg för framgångsrik anslutning. En 3-vägs handskakning är allmänt känd som SYN-SYN-ACK och kräver både klient- och serversvar för att utbyta data. SYN betyder synkronisera sekvensnummer och ACK betyder bekräftelse . Varje steg är en typ av handslag mellan avsändaren och mottagaren.
Diagrammet över en framgångsrik TCP-anslutning som visar de tre handskakningarna visas nedan:
De tre handslagen diskuteras i stegen nedan:
Steg 1: SYN
SYN är ett segment som skickas av klienten till servern. Den fungerar som en anslutningsbegäran mellan klienten och servern. Den informerar servern om att klienten vill upprätta en anslutning. Synkronisering av sekvensnummer hjälper också till att synkronisera sekvensnummer som skickas mellan två valfria enheter, där samma SYN-segment ber om sekvensnumret med anslutningsbegäran.
Steg 2: SYN-ACK
Det är ett SYN-ACK-segment eller ett SYN + ACK-segment som skickas av servern. ACK-segmentet informerar klienten om att servern har tagit emot anslutningsbegäran och att den är redo att bygga anslutningen. SYN-segmentet informerar sekvensnumret med vilket servern är redo att starta med segmenten.
Steg 3: ACK
ACK (Acknowledgement) är det sista steget innan en framgångsrik TCP-anslutning upprättas mellan klienten och servern. ACK-segmentet sänds av klienten som svaret på mottagna ACK och SN från servern. Det resulterar i upprättandet av en pålitlig dataanslutning.
Efter dessa tre steg är klienten och servern redo för datakommunikationsprocessen. TCP-anslutning och terminering är full-duplex, vilket innebär att data kan färdas i båda riktningarna samtidigt.
TCP-uppsägning (ett 4-vägs handslag)
Alla enheter upprättar en anslutning innan du fortsätter med avslutningen. TCP kräver 3-vägs handskakning för att upprätta en anslutning mellan klienten och servern innan data skickas. På samma sätt, för att avsluta eller stoppa dataöverföringen, krävs ett 4-vägs handslag. De segment som krävs för TCP-avslutning liknar segmenten för att bygga en TCP-anslutning (ACK och SYN) förutom FIN-segmentet. FIN-segmentet specificerar en avslutningsbegäran som skickas av en enhet till den andra.
Klienten är datasändaren och servern är en mottagare i en dataöverföringsprocess mellan sändaren och mottagaren. Tänk på nedanstående TCP-avslutningsdiagram som visar utbytet av segment mellan klienten och servern.
Diagrammet över en framgångsrik TCP-avslutning som visar de fyra handskakningarna visas nedan:
Låt oss diskutera TCP-avslutningsprocessen med hjälp av sex steg som inkluderar de skickade förfrågningarna och väntande tillstånd. Stegen är som följer:
Steg 1: FIN
FIN hänvisar till begäran om uppsägning skickas av klienten till servern. Den första FIN-begäran skickas av klienten till servern. Den visar starten på avslutningsprocessen mellan klienten och servern.
Steg 2: FIN_ACK_WAIT
Klienten väntar på ACK för FIN-avslutningsbegäran från servern. Det är en väntande tillstånd för kunden.
Steg 3: ACK
Servern skickar ACK-segmentet (Acknowledgement) när den tar emot begäran om FIN-avslutning. Den visar att servern är redo att stänga och avsluta anslutningen.
Steg 4: FIN _WAIT_2
Klienten väntar på FIN-segmentet från servern. Det är en typ av godkänd signal som skickas av servern som visar att servern är redo att avsluta anslutningen.
Steg 5: FIN
FIN-segmentet skickas nu av servern till klienten. Det är en bekräftelsesignal som servern skickar till klienten. Den visar det framgångsrika godkännandet för uppsägningen.
Steg 6: ACK
Klienten skickar nu ACK-segmentet (Acknowledgement) till servern att den har tagit emot FIN-signalen, vilket är en signal från servern för att avsluta anslutningen. Så snart servern tar emot ACK-segmentet avslutar den anslutningen.