Uścisk dłoni
W prawdziwym świecie uścisk dłoni to zwyczajowe powitanie między dwojgiem ludzi. Podobnie uścisk dłoni komputera służy jako powitanie między dwojgiem ludzi komputer systemy. Jest powszechnie używany do inicjowania pliku sieć połączenie między dwoma gospodarze.
Uzgadnianie komputera może być zakończone między dowolnymi dwoma systemami, które komunikują się ze sobą w tym samym protokół. Te dwa systemy mogą być klient i serwer lub po prostu dwa komputery na P2P sieć. Uścisk dłoni potwierdza tożsamość łączących się systemów i umożliwia dodatkową komunikację.
Uzgadnianie w sieci jest powszechnie nazywane uzgadnianiem trójstronnym lub „SYN-SYN-ACK”. Udany uścisk dłoni obejmuje siedem kroków:
- Host A wysyła synchronizację (SYN) paczka do hosta B.
- Host B otrzymuje żądanie SYN hosta A.
- Host B wysyła komunikat potwierdzenia synchronizacji (SYN-ACK) do hosta A.
- Host A odbiera komunikat SYN-ACK hosta B.
- Host A wysyła komunikat potwierdzenia (ACK) do hosta B.
- Host B otrzymuje komunikat ACK hosta A.
- Ustanowione zostaje połączenie między dwoma systemami.
Gdy system inicjuje uzgadnianie, są trzy możliwe wyniki:
- Brak odpowiedzi - Jeżeli system odbierający handshake nie jest dostępny lub nie obsługuje protokołu używanego przez system inicjujący, może nie odpowiedzieć na żądanie.
- Połączenie odrzucone - System odbierający uzgadnianie jest dostępny i rozumie żądanie, ale odrzuca połączenie.
- Połączenie zaakceptowane - System odbierający handshake jest dostępny, odbiera żądanie i akceptuje połączenie.
Trzeci wynik wymieniony powyżej jest jedynym, w którym uzgadnianie jest zakończone. Jeśli uzgadnianie się powiedzie, oba systemy mogą rozpocząć komunikację i przesyłanie (danych) przez ustalony protokół. Przykłady protokołów wykorzystujących uzgadnianie obejmują TCP, TLS i SSL.