EMZETT.
Увійти

Тристороннє рукостискання (three-way handshake)

Коротко: Триетапне встановлення з’єднання в TCP: SYN → SYN-ACK → ACK, перш ніж почнеться власне передавання даних.

Докладніше: При цьому клієнт і сервер обмінюються своїми початковими порядковими номерами та підтверджують одне одному готовність до з’єднання. Лише після цих трьох пакетів з’єднання вважається «встановленим» і передається корисне навантаження. Ці накладні витрати — одна з причин, чому UDP швидший для критичних до затримки застосунків: він повністю пропускає рукостискання.

Подробиці

Послідовність докладно:

Клієнт                              Сервер
  |----------- SYN (seq=x) --------->|   «Хочу підключитися»
  |<------ SYN-ACK (seq=y, ack=x+1) -|   «Гаразд, я теж готовий»
  |----------- ACK (ack=y+1) ------->|   «Підтверджую, починаємо»

Див. також: SYN, SYN-ACK, ACK, TCP