Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
SETI.doc
Скачиваний:
2
Добавлен:
20.09.2019
Размер:
544.26 Кб
Скачать

9. Протокол http

В «сердце» web находится протокол гипертекста HTTP, являющийся протоколом прикладного уровня. Реализуется с помощью двух программ: клиента и сервера, которые, находясь на разных оконечных системах обмениваются HTTP-сообщениями. Порядок обмена и содержание сообщений описаны в протоколе. Протокол определяет каким образом клиенты запрашивают web-страницы, а серверы осуществляют передачу этих страниц. Когда пользователь запрашивает web-страницу, браузер посылает серверу HTTP-запрос объектов, составляющих web-страницу. Сервер получает запрос и высылает ответные сообщения, содержащие требуемые объекты. Использует TCP в качестве протокола транспортного уровня. После завершения обслуживания клиентов сервер не сохраняет о них никакой инфы. Протокол HTTP является протоколом без запоминания состояния соединения.

Поддерживает постоянные и непостоянные соединения (1.0 только непостоянные). При непостоянном TCP получает лишь 1 объект, при постоянном - все.

Время оборота (RTT) - время, для однократного обмена сегментами. Включает в себя задержку распространения, ожидания и обработки. Суммарное время ответа: удвоенное время оборота и время передачи базового HTML-файла.

Постоянные соединения: с конвейеризацией, без конвейеризации (посылает новый запрос после завершения приема текущего объекта).

Формат HTTP-сообщения: сущ 2 типа сообщения: запросы и ответы.

Запрос:

Строка

запроса

Метод

Sp

URL

sp

Версия

cr

lf

Строки заголовка

Имя заголовочного поля

Sp

Значение

cr

lf

Имя заголовочного поля

Sp

Значение

cr

lf

Пустая строка

cr

Lf

Тело объекта

Первая строка - строка запроса, следующие - строки заголовка. Строка запроса содержит 3 поля: поле метода, поле URL и поле версии HTTP. Методы GET, HEAD, POST (слово для поиска(тело)).

Строки заголовка: User-Agent - агент пользователя (тип браузера сгенерировавшего запрос), Accept-Language - строка согласования данных.

Ответ:

Строка

запроса

Метод

sp

URL

sp

Информация состояния

cr

lf

Строки заголовка

Имя заголовочного поля

sp

Значение

cr

lf

Имя заголовочного поля

sp

Значение

cr

lf

Пустая строка

cr

lf

Тело объекта

Состоит из 3 частей: строка состояния, шести строк заголовка и тела сообщения. Тело содержит требуемый объект. Строка состояния образована из 3 полей: версия протокола, код состояния, информация состояния. Строки заголовка: The Date - дата и время создания ответа, Server - каким сервером создан ответ, Last-modified - дата и время создания или последнего изменения объекта, Content-Length - размер объекта в байтах, Content-type - тип объекта.

Поля кода состояния и информация о состоянии: 200 - ОК, 400 Bad Request (не возможна интерпретация запроса), 404 Not Found (не найден), 505 HTTP Version Not Supported (указанная версия сервером не поддерживается).

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]