TCP 3-стороннее рукопожатие (SYN, SYN-ACK,ACK)

Что такое трехстороннее рукопожатие TCP?

Трехстороннее рукопожатие или трехстороннее рукопожатие TCP — это процесс, который используется в сети TCP/IP для установления соединения между сервером и клиентом. Это трехэтапный процесс, который требует, чтобы клиент и сервер обменялись пакетами синхронизации и подтверждения, прежде чем начнется реальный процесс передачи данных.

Процесс трехстороннего установления связи спроектирован таким образом, что оба конца помогают одновременно инициировать, согласовывать и разделять соединения сокетов TCP. Это позволяет передавать несколько TCP-сокетов в обоих направлениях одновременно.

Типы TCP-сообщений

Сообщение Описание
Syn Используется для инициации и установления соединения. Это также поможет вам синхронизировать порядковые номера между устройствами.
ACK Помогает подтвердить другой стороне, что она получила SYN.
СИН-АКТ Сообщение SYN от локального устройства и подтверждение предыдущего пакета.
ПЛАВНИК Используется для разрыва соединения.

Процесс трехстороннего установления связи TCP

TCP-трафик начинается с трехстороннего рукопожатия. В этом процессе установления связи TCP клиент должен инициировать диалог, запросив сеанс связи с Сервером:

Процесс трехстороннего рукопожатия
Схема трехстороннего рукопожатия
  • Шаг 1: На первом этапе клиент устанавливает соединение с сервером. Он отправляет сегмент с SYN и сообщает серверу о том, что клиент должен начать связь, и с каким должен быть его порядковый номер.
  • Шаг 2: На этом этапе sСервер отвечает на запрос клиента установленным сигналом SYN-ACK. ACK помогает вам обозначить полученный ответ сегмента, а SYN указывает, какой порядковый номер должен начинаться с сегментов.
  • Шаг 3: На этом последнем этапе клиент подтверждает ответ Сервера, и они оба создают стабильное соединение и начинают фактический процесс передачи данных.

Пример из реального мира

Пример из реального мира

Вот простой пример процесса трехэтапного установления связи, который состоит из трех этапов:

  • Хост X начинает соединение, отправляя пакет TCP SYN на свой хост-адресат. Пакеты содержат случайный порядковый номер (например, 4321), который указывает начало порядковых номеров для данных, которые должен передать хост X.
  • После этого Сервер получит пакет и ответит своим порядковым номером. Его ответ также включает номер подтверждения, то есть порядковый номер хоста X, увеличенный на 1 (здесь это 4322).
  • Хост X отвечает Серверу, отправляя номер подтверждения, который в основном представляет собой порядковый номер сервера, увеличенный на 1.

После завершения процесса передачи данных TCP автоматически разрывает соединение между двумя отдельными конечными точками.

Резюме

  • Трехстороннее рукопожатие TCP или трехстороннее рукопожатие или трехстороннее рукопожатие TCP — это процесс, который используется в Сеть TCP/IP для установления соединения между сервером и клиентом.
  • Syn используется для инициации и установления соединения.
  • ACK помогает подтвердить другой стороне получение SYN.
  • SYN-ACK — это сообщение SYN от локального устройства и подтверждение предыдущего пакета.
  • FIN используется для завершения соединения.
  • Процесс установления связи TCP, клиент должен инициировать разговор, запросив сеанс связи с сервером.
  • На первом этапе клиент устанавливает соединение с сервером.
  • На этом втором этапе сервер отвечает на запрос клиента набором сигналов SYN-ACK.
  • На этом последнем этапе клиент подтверждает ответ Сервера.
  • TCP автоматически разрывает соединение между двумя отдельными конечными точками.