Dec 09, 2022 Оставить сообщение

Краткое введение во взаимосвязь между TCP, UDP и HTTP

1. TCP/IP — это группа протоколов, которую можно разделить на три уровня: сетевой уровень, транспортный уровень и прикладной уровень.

На сетевом уровне существуют протокол IP, протокол ICMP, протокол ARP, протокол RARP и протокол BOOTP.

На транспортном уровне есть протокол TCP и протокол UDP.

На уровне приложений существуют такие протоколы, как FTP, HTTP, TELNET, SMTP и DNS.

Следовательно, HTTP сам по себе является протоколом, протоколом передачи гипертекста с веб-сервера в локальный браузер.

 

2. Протокол HTTP основан на модели запрос/ответ. Сначала клиент устанавливает TCP-соединение с сервером и отправляет серверу запрос, который включает метод запроса, URI, версию протокола и соответствующие сообщения в стиле MIME. Сервер отвечает строкой состояния, содержащей версию протокола сообщения, коды успеха и неудачи, а также соответствующий MIME-стиль сообщения.

 

HTTP/1.0 устанавливает новое TCP-соединение для каждого HTTP-запроса/ответа, поэтому странице, содержащей HTML-содержимое и изображения, потребуется установить несколько кратковременных TCP-соединений. Для установления TCP-соединения потребуется 3 рукопожатия.

 

Кроме того, чтобы получить соответствующую скорость передачи, TCP необходимо потратить дополнительное время двустороннего соединения (RTT). Установление каждого канала требует такого рода регулярных накладных расходов и не несет в себе фактических полезных данных, а лишь обеспечивает надежность канала. Таким образом, HTTP/1.1 предлагает метод реализации устойчивых ссылок. HTTP/1.1 устанавливает TCP-соединение только один раз и использует его повторно для передачи серии сообщений запроса/ответа, тем самым уменьшая количество установленных соединений и накладные расходы на обычные соединения.

TCP, UDP and HTTP

3. Вывод: хотя HTTP сам по себе является протоколом, в конечном итоге он основан на TCP. Однако в настоящее время некоторые люди изучают протокол HTTP, основанный на смеси TCP+UDP.

Что такое сокет?

 

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

 

Отправить запрос

whatsapp

teams

Отправить по электронной почте

Запрос