Handslag
I den verkliga världen är ett handslag en vanlig hälsning mellan två personer. På samma sätt fungerar en datorhandskakning som en hälsning mellan två dator system. Det används ofta för att initialisera a nät anslutning mellan två värdar.
En datorhandskakning kan slutföras mellan två system som kommunicerar med varandra på samma protokoll. De två systemen kan vara en klient och server eller helt enkelt två datorer på en P2P nätverk. Handskakningen bekräftar identiteten hos de anslutande systemen och möjliggör ytterligare kommunikation.
Handskakning över ett nätverk kallas vanligtvis en 3-vägs handskakning eller "SYN-SYN-ACK." Ett framgångsrikt handslag innefattar sju steg:
- Värd A skickar en synkronisering (SYN) paket att vara värd B.
- Värd B tar emot värd A: s SYN-begäran.
- Värd B skickar ett meddelande om synkroniseringsbekräftelse (SYN-ACK) till värd A.
- Värd A mottar värd B: s SYN-ACK-meddelande.
- Värd A skickar ett bekräftelsemeddelande (ACK) till värd B.
- Värd B tar emot värd A: s ACK-meddelande.
- Förbindelsen mellan de två systemen upprättas.
När ett system initierar ett handskakning finns det tre möjliga resultat:
- Inget svar - Om systemet som tar emot handskakningen inte är tillgängligt eller inte stöder protokollet som det initierande systemet använder, kanske det inte svarar på begäran.
- Anslutning vägrade - Systemet som tar emot handskakningen är tillgängligt och förstår begäran, men nekar anslutningen.
- Anslutning accepterad - Systemet som tar emot handskakningen är tillgängligt, tar emot begäran och accepterar anslutningen.
Det tredje resultatet som listas ovan är det enda där handskakningen är klar. Om ett handslag lyckas kan de två systemen börja kommunicera och överföra (data) över det etablerade protokollet. Exempel på protokoll som använder handskakning inkluderar TCP, TLS och SSL.