Читайте также: |
|
В «сердце» 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 (указанная версия сервером не поддерживается).
Дата добавления: 2015-08-05; просмотров: 92 | Нарушение авторских прав
<== предыдущая страница | | | следующая страница ==> |
Требования приложений. Сервисы, предоставляемые TCP и UDP. | | | Аутентификация в HTTP, cookies, условный GET в HTTP. |