Kniga-Online.club
» » » » Сидни Фейт - TCP/IP Архитектура, протоколы, реализация (включая IP версии 6 и IP Security)

Сидни Фейт - TCP/IP Архитектура, протоколы, реализация (включая IP версии 6 и IP Security)

Читать бесплатно Сидни Фейт - TCP/IP Архитектура, протоколы, реализация (включая IP версии 6 и IP Security). Жанр: Программное обеспечение издательство -, год 2004. Так же читаем полные версии (весь текст) онлайн без регистрации и SMS на сайте kniga-online.club или прочесть краткое содержание, предисловие (аннотацию), описание и ознакомиться с отзывами (комментариями) о произведении.
Перейти на страницу:

19.7.1 Прокси-сервер

Прокси-сервер WWW используется для доступа к внешним серверам WWW клиентов, расположенных в пределах зоны безопасности сети. В этом случае браузер клиента конфигурируется для отправки всех запросов прокси-серверу, который, в свою очередь, взаимодействует с реальным сервером WWW и возвращает клиенту полученный результат. На рис. 19.4 показан клиент, обращающийся к серверу WWW через прокси.

Рис. 19.4. Извлечение информации с сервера WWW через прокси

Некоторые прокси кешируют пересылаемые документы и могут самостоятельно отвечать на повторные запросы.

19.8 Протокол HTTP

Служба WWW реализуется поверх соединений TCP (хотя можно применять и другие транспорты) и разрастается вместе с Интернетом. Работа сервера WWW заключается в следующем:

■ Клиент соединяется с сервером.

■ Клиент посылает запрос, например:

GET /home.html НТТР./1.0

ACCEPT: text/html

■ Сервер отвечает на запрос, указывая тип пересылаемой информации и передавая затребованный документ.

Сервер может взаимодействовать с различными видами клиентов благодаря подстройке отправляемых данных под возможности конкретного клиента. Клиент может объявлять о своих возможностях в операторе Accept:, отправляемом на сервер в запросе на извлечение документа. Один клиент может указать, что способен принимать только тексты в формате HTML, а другой — о своих возможностях по обработке текстов, изображений и звуковых файлов.

Обычно сервер WWW работает через общеизвестный порт TCP с номером 80. Иногда серверы конфигурируются для работы через другие порты.

В объектно-ориентированном языке (HTTP) вместо терминов "команда" или "запрос" используется термин "метод". Клиент может запрашивать три стандартных метода:

GET Извлечение страницы документа HEAD Запрос на вывод заголовка запрашиваемого документа POST Отправка страницы на сервер, например ввод данных в форму

Метод GET извлекает страницу. Страница — это документ, содержащий любые изображения или звуковые файлы. Она может размещаться на одном листе или иметь размер целой книги.

Команда HEAD позволяет клиенту до начала пересылки определить длину и тип данных извлекаемого элемента, равно как и дату последнего изменения и текущую версию. Если браузер уже кешировал на локальном диске последнюю версию документа, то документ будет извлечен локально.

19.8.1 Пример типичного диалога HTTP

Один из доводов в пользу быстрого развития протокола WWW состоит в том, что разработчики не тратили время на повторное изобретение колеса, а заимствовали форматы заголовков и типов данных из классической электронной почты и стандартов MIME.

Представленный ниже диалог показывает, насколько просто выполняется взаимодействие в HTTP. Запрос GET/HTTP/1.0 требует извлечения с сервера документа по умолчанию и объявляет, что клиент работает по версии 1.0 протокола HTTP. Клиент также указывает, что способен принимать только текстовые документы HTML.

Ответ сервера объявляет об используемой версии HTTP (1.0) и коде статуса; 200 — означает успешное выполнение запроса. Далее следует серия подобных MIME заголовков. Пустая строка (<CR><LF>) сообщает о конце раздела заголовков и начале тела документа.

GET/HTTP/1.0

ACCEPT: text/html

HTTP/1.0 200 Document follows

Date: Sat, 28 Oct 1995 14:07:25 GMT

Server: NCSA/1.5.1

Content-type: text/html

Last-modified: Tue, 09 May 1995 01:22:41 GMT

Content-length: 1563

<TITLE>InterNIC Directory and Database Services Home Page</TITLE>

<IMG src = "/Pics/logo.gif" alt = "">

<a href = ds/dspg01.html>

<H1>InterNIC Directory and Database Services</H1></a>

<P>

Welcome to InterNIC Directory and Database Services provided by AT&amp;T.

These services are partially supported through a cooperative agreement with

the National Science Foundation.

. . .

Сервер закроет соединение, когда будет завершена пересылка.

19.8.2 Заголовки сообщения

В таблицах 19.2–19.5 представлены краткие описания заголовков в запросах и ответах.

Таблица 19.2 Главные заголовки HTTP

Главные заголовки Описание Date: дата Дата в формате универсального времени, например: Date: Sun, 29 Oct 1995 15:15:23 GMT MIME-Version: версия Версия MIME заголовка, например: MIME-Version: 1.0 Pragma: директива Реализация конкретной директивы, например: Pragma: no-cache (указывает прокси на извлечение более новой версии страницы, если данная страница уже кеширована).

Таблица 19.3 Заголовки запросов HTTP

Заголовки запросов Описание Authorization: мандат Содержит информацию об аутентификации клиента для доступа к защищенным ресурсам. From: идентификатор электронной почты Подобен соответствующему полю в электронной почте. If-Modified-Since: дата Служит для организации условия в GET. Если затребованный документ не был изменен после указанной даты, в ответе будет содержаться только код 304, но не будет тела документа. Referer: URL Указание на источник получения ссылки на документ, например: Referrer: http://www.abc.com/index.html. User-Agent: программа Идентифицирует программное обеспечение клиента.

Таблица 19.4 Заголовки ответов HTTP

Заголовки ответов Описание Location: URL Предпочитаемое сервером размещение документа. Server: программа Идентифицирует программное обеспечение сервера. WWW-Authenticate: исследование Предоставляет параметры для указания на схему аутентификации и необходимость аутентификации самого клиента.

Таблица 19.5 Заголовки элементов HTTP

Заголовки элементов Описание Allow: метод Перечисление поддерживаемых ресурсом методов, например: Allow. GET, HEAD Content- Encoding: кодирование содержимого Для сжатого или зашифрованного содержимого; указывает на использованный алгоритм, например: Content-Encoding: x-gzip Content-Length: длина Описывает длину тела пересылаемого документа, например: Content-Length: 2048 Content-Type: тип носителя Определены IANA, например: Content-Type, text/html Expires: дата Элемент недостоверен после указанной даты. Last-Modified: дата Время последней модификации элемента.

■ В сообщении первыми стоят главные заголовки как в запросах, так и в ответах (таблица 19.2).

■ Затем следуют заголовки, специфичные для запросов (таблица 19.3) или ответов (таблица 19.4).

■ Наконец последними стоят заголовки элементов, которые обеспечивают детальное описание данного элемента (таблица 19.5).

Нужно помнить, что запрос POST приводит к пересылке от клиента к серверу определенных элементов, например данных формы. Поэтому заголовки элементов могут появляться в запросах и ответах.

19.8.3 Коды состояния

Коды состояния используются подобно электронной почте и пересылке файлов (FTP). Наиболее распространенные значения кодов:

Перейти на страницу:

Сидни Фейт читать все книги автора по порядку

Сидни Фейт - все книги автора в одном месте читать по порядку полные версии на сайте онлайн библиотеки kniga-online.club.


TCP/IP Архитектура, протоколы, реализация (включая IP версии 6 и IP Security) отзывы

Отзывы читателей о книге TCP/IP Архитектура, протоколы, реализация (включая IP версии 6 и IP Security), автор: Сидни Фейт. Читайте комментарии и мнения людей о произведении.


Уважаемые читатели и просто посетители нашей библиотеки! Просим Вас придерживаться определенных правил при комментировании литературных произведений.

  • 1. Просьба отказаться от дискриминационных высказываний. Мы защищаем право наших читателей свободно выражать свою точку зрения. Вместе с тем мы не терпим агрессии. На сайте запрещено оставлять комментарий, который содержит унизительные высказывания или призывы к насилию по отношению к отдельным лицам или группам людей на основании их расы, этнического происхождения, вероисповедания, недееспособности, пола, возраста, статуса ветерана, касты или сексуальной ориентации.
  • 2. Просьба отказаться от оскорблений, угроз и запугиваний.
  • 3. Просьба отказаться от нецензурной лексики.
  • 4. Просьба вести себя максимально корректно как по отношению к авторам, так и по отношению к другим читателям и их комментариям.

Надеемся на Ваше понимание и благоразумие. С уважением, администратор kniga-online.


Прокомментировать
Подтвердите что вы не робот:*
Подтвердите что вы не робот:*