Как работает http keep-alive?

Keep-alives были добавлены в HTTP, чтобы в основном уменьшить значительные накладные расходы на быстрое создание и закрытие соединений сокетов для каждого нового запроса. Ниже приводится краткое описание того, как это работает в HTTP 1.0 и 1.1:

HTTP 1.0 Спецификация HTTP 1.0 на самом деле не вникает в то, как Keep-Alive должен работать. По сути, браузеры, поддерживающие Keep-Alive, добавляют к запросу дополнительный заголовок:

Connection: Keep-Alive Когда сервер обрабатывает запрос и генерирует ответ, он также добавляет к ответу заголовок: Connection: Keep-Alive. Когда это делается, соединение с сокетом не закрывается, как раньше, но остается открытым после отправки сообщения. ответ. Когда клиент отправляет другой запрос, он повторно использует то же соединение. Соединение будет по-прежнему использоваться повторно, пока клиент или сервер не решат, что разговор окончен, и один из них не прервет соединение.

Вышеприведенное объяснениеприходит отсюда, Но я нене понимаю одну вещь

Когда это сделано, сокетное соединение не закрывается, как раньше, а остается открытым после отправки ответа.

Как я понимаю, мы просто отправляем tcp пакеты, чтобы делать запросы и ответы, как этоsocket connection помогает и как это работает? Мы все еще должны отправлять пакеты, но как это может как-то установить постоянное соединение? Это кажется нереальным.

Ответы на вопрос(4)

Ваш ответ на вопрос