logo search
Мет по сетям (протоколам)

Протокол http

Протокол HTTP (Hyper Text Transfer Protocol) является базовым для службы WWW (World Wide Web) доступа к документам с гипертекстовым ссылками. Согласно этому протоколу для каждой новой ссылки открывается новое ТСР соединение, использующее по умолчанию 80 порт.

Протокол предполагает задание URL (Uniform Resource Locator – метки) ресурса программе браузера (например, MS Internet Explorer) в качестве параметра. По URL браузером формируется запрос в форме URI (Uniform Resource Identifier) – идентификатора запрашиваемого ресурса, полный формат которого можно встретить в таких протоколах прикладного уровня, как FTP или протоколы для электронной почты.

Формат URL предусматривает следующий набор параметров, разделённых знаками «//», «:», «@», «/», «#» и «?» -

http://user: password@www. server: port/path#fragment? query

Эти параметры (аргументы) имеют следующий смысл:

user: password – имя пользователя и его пароль. Как правило, не указываются, даже если для доступа к ресурсу требуется аудентификация. В случае ограничения прав пользователей на ресурс, запрос без параметров user: password вызовет ответ сервера WWW ресурса с кодом ошибки 401, по которому браузер сгенерирует запрос пользователю о его имени и пароле и сформирует новый запрос на ресурс уже с указанием этих параметров. Причина использования такого механизма авторизованного запроса кроется в том, чтобы не передавать параметры user: password в явном виде. Предусмотрено два способа аудентификации – без криптографической защиты (схема Basic) и с защитой (схема Digest – дневник, краткое изложение, слепок – термин, широко употребляемый в криптографии).Схема Basic предполагает преобразование строки user: password по алгоритму Base64. Этот алгоритм применяется в электронной почте для записи присоединённых файлов с произвольными двоичными данными в виде набора латинский букв, знаков и цифр, т. е. в виде хотя и неосмысленного, но текста. По этому алгоритму преобразуемые данные разбиваются на блоки по 24 бита (3 байта), каждый блок делится на 4 группы по 6 битов в каждой. Каждая группа отождествляется с символом (байтом) буквы латинского алфавита, цифры или специального знака. Легко заметить, что алгоритм Base64 представляет собой алгоритм канального кодирования с избыточностью 25 % (скоростью 0,75), что приводит к увеличению передаваемых данных на ¼.Схема Digest предусматривает шифрование параметров user: password по алгоритму MD5 (Message Digest версии 5). Этот алгоритм представляет собой процедуру вычисления хэш-функции, по которой данные произвольной длины преобразуются в 128 бит (16 байт). Краткое описание MD5 можно найти, например, в www. server: port— доменное имя и порт (80 по умолчанию) WWW-сервера.path – путь к файлу-ресурсу (index. html по умолчанию).fragment – метка внутри документа (начало по умолчанию).query – аргумент запроса.