Почему мой компьютер 3 раза совершает рукопожатие с сервером 3 раза с разными портами - Wireshark? - PullRequest
0 голосов
/ 03 апреля 2020

Я перехватил пакеты, используя Wireshark, когда мой компьютер подключается к произвольному веб-сайту для моего назначения по TCP. Обычно для трехстороннего рукопожатия перед началом передачи данных должно быть 3 начальных пакета (SYN, SYN-ACK, ACK).

В моем случае есть 9 соединений, 3 разных 3-сторонних рукопожатия; каждый был сделан с различным портом моего компьютера. После того, как каждый из них принят, передача данных продолжается только с одного из портов.

Я не мог понять причину этого. Спасибо!

1 Ответ

2 голосов
/ 03 апреля 2020

Обычно браузеры открывают несколько подключений к сайту. Причина этого заключается в том, что в HTTP / 1 одно TCP-соединение может обрабатывать только один запрос-ответ за раз, то есть несколько запросов друг за другом, а не параллельно. Для параллельной обработки нескольких запросов в браузере должно быть открыто несколько TCP-соединений. Поскольку установка соединения занимает некоторое время, браузеры могут открывать несколько соединений с сервером, чтобы уже установить некоторые из них, если необходимо отправить новые запросы.

...