JavaRush /Курсы /JSP & Servlets /Типы http-протоколов

Типы http-протоколов

JSP & Servlets
9 уровень , 8 лекция
Открыта

9.1 http

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

Ниже я расскажу, какие виды протоколов бывают и в чем их особенности. А пока вот тебе картинка – изучай.

протоколы http

9.2 https

Начнем с первой модификации протокола http – протокола https. Это тот же http, но в него добавлено шифрование контента. Ведь Http-запросы и ответы — это обычные текстовые файлы. Ты бы, наверное, не хотел, чтобы все, что передает и получает твой браузер, ходило через интернет в открытом виде.

Для решения этой проблемы и был придуман протокол https (http+security). Когда ты пытаешься сделать запрос по https протоколу, то твой браузер сначала устанавливает соединение с требуемым сервером и запрашивает у него его SSL-сертификат.

Затем данный сертификат проверяется на подлинность: в нем содержится название домена и список публичных ключей тех, кто выдал серверу этот сертификат.

Если сертификат подлинный, тогда браузер устанавливает зашифрованное соединение с этим сервером. И уже внутри этого соединения передаются данные по протоколу http.

А так как информация о запрашиваемом ресурсе передается в самом протоколе, то при использовании https протокола, никто не может перехватить информацию о том, к каким именно ресурсам сервера браузер обращался.

Сегодня этот протокол стал стандартом de-facto и почти вытеснил старый добрый http.

Если кто-то попытается подменить сервер, к которому ты отправляешь https-запрос, то сертификат домена он подменить не сможет. Браузер поймет это дело, и вы увидите страницу типа такой:

9.3 http/2

Но в этом мире нет ничего, что нельзя было бы улучшить. После того, как компания Google выиграла войну браузеров, она решила подмять весь интернет под себя. И, конечно же, из-за благородной причины. Они решили улучшить протокол http.

Сказано – сделано. В новый стандарт передачи данных добавили:

  • Обязательное шифрование.
  • Сжатия данных в заголовках HTTP.
  • Сервер может высылать файлы еще до их запроса (push-технология).
  • Может быть несколько http-запросов через одно TCP-соединение.
  • Запросы обрабатываются как на конвейере (не нужно ждать ответа, чтобы послать новый запрос).
  • Протокол является бинарным (не нужно переводить непечатаемые символы в текст).

Большая часть этого скрыта от Python-программиста и поддерживается на уровне web-сервера и браузера.

9.4 http/3

Третья версия http протокола еще дорабатывается и самое большое ее нововведение – это отказ от TCP протокола. Данные будут идти сразу по UDP.

Вот так. Придумывали люди модель OSI, придумывали, а тут на тебе. Чего не сделаешь ради скорости. С другой стороны, может так и правильно. Сегодня в интернете передается очень много потокового видео, а там использовать UDP сам бог велел.

о с прелестями этого протокола уже ты будешь играться. Я свое уже отмучился :)

Более подробно про http/3 можно почитать

Комментарии (9)
ЧТОБЫ ПОСМОТРЕТЬ ВСЕ КОММЕНТАРИИ ИЛИ ОСТАВИТЬ КОММЕНТАРИЙ,
ПЕРЕЙДИТЕ В ПОЛНУЮ ВЕРСИЮ
tsypnyatov Уровень 45
7 февраля 2026
12 вопрос ссылается на язык Java, исправьте
Алексей Уровень 115
14 июня 2025
Видео супер! 🍵
Максим Уровень 15
9 декабря 2024
Большая часть этого скрыта от Java-программиста еще предложение
Максим Уровень 15
9 декабря 2024

Как будущий Java-программист
Это же питон-университет))
Руслан Никитин Уровень 109
9 февраля 2025
видимо часть контента одна на всех, привет с Java универа
finedefinition Уровень 28
20 января 2023
о с прелестями этого протокола уже ты будешь ***ться. Я свое уже отмучился :)
Алексей Уровень 115
14 июня 2025
Я своё отбоялся. Отплакался, отбоялся...
Jh-007 Уровень 28
22 июня 2022

Если кто-то попытается подменить сервер, к которому ты отправляешь https-запрос, то сертификат домена он подменить не сможет. Браузер поймет это дело, и вы увидите страницу типа такой:
К сожалению возможно. У нас на работе внедрили такой прокси. В винде через домен настраивается. В линуксе через импорт сертификата.
Facepalm Уровень 32
15 июня 2022
Классно и коротко объяснено про разницу между http и https, спасибо