URI (Universal Resource Identifier — унифицированый идентификатор ресурса)

Лабораторная работа № 3

Изучение протокола прикладного уровня модели OSI на примере HTTP

Цель работы

Целью данной работы является изучение протокола HTTP путем имитации HTTP клиента с помощью Windows Telnet.

Задание

Используя утилиту Windows Telnet подключиться к HTTP серверу, произвести ряд запросов. Проанализировать ответы сервера, заполнить бланк аналитического отчета.

Краткая теория

HTTP (Hypertext Transfer Protocol)

Введение

HTTP — протокол прикладного уровня, разработанный для обмена гипертекстовой информацией в сети Internet. Протокол используется одной из популярнейших систем Сети — Word Wide Web — с 1990 года.

HTTP позволяет реализовать в рамках обмена данными набор методов, базирующихся на спецификации универсального идентификатора ресурсов (Universal Resource Identifier — URI). HTTP Протокол реализует принцип «запрос/ответ». Запрашивающая программа — клиент — инициирует взаимодействие с отвечающей программой — сервером, и посылает запрос, включающий в себя HTTP метод, URI ресурса, версию протокола, сообщение с модификаторами типа передаваемой информации, информацию клиента, и, возможно, тело запроса. Сервер отвечает строкой состояния, включающей версию протокола и код состояния, за которой следует сообщение. Данное сообщение содержит информацию сервера, метаинформацию и тело ответа.

При работе в Internet для обслуживания HTTP запросов как правило используется 80 порт TCP. Общий сценарий работы таков: клиент устанавливает соединение и отсылает запрос. После отправки ответа сервер, в зависимости от модификаторов запроса, либо инициирует разрыв соединения, либо ожидает следующего запроса от клиента.

Ниже рассматривается версия 1.1 протокола HTTP.

Запрос клиента может выглядеть, например, так:

HEAD / HTTP/1.1Host: www.w3.org

В этой записи слово «GET» обозначает HTTP метод GET; «www.w3.org» — имя узла, на котором находится ресурс; «/» — относительный URI ресурса.

Ответ сервера, может выглядеть следующим образом:

HTTP/1.1 200 OKDate: Sat, 22 May 2004 13:55:57 GMTServer: Apache/1.3.28 (Unix) PHP/4.2.3Content-Location: Overview.htmlVary: negotiate,acceptTCN: choiceP3P: policyref="http://www.w3.org/2001/05/P3P/p3p.xml"Cache-Control: max-age=600Expires: Sat, 22 May 2004 14:05:57 GMTLast-Modified: Mon, 17 May 2004 13:25:50 GMTETag: "40a8bd5e;3e2eee38"Accept-Ranges: bytesContent-Length: 22342Content-Type: text/html; charset=utf-8

Здесь первая строка — указание статуса ответа. Далее идут поля заголовка, содержащие информацию, характеризующую обстоятельства ответа и запрашиваемый ресурс.

URI (Universal Resource Identifier — унифицированый идентификатор ресурса)

URI появился, когда Internet стал по-настоящему глобальным как по территориальному критерию, так и по типу ресурсов и сервисов, которые стали доступны с его помощью. Возникла потребность в способе уникально идентифицировать любой ресурс Сети и способ доступа к нему. В результате была создана концепция URI.

В упрощенном общем случае вид URI таков:

схема://узел:порт/путь?запрос

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

В большинстве схем явное указание номера порта необязательно, так как эти схемы определяют доступ по определенному TCP протоколу, для которого существует общепринятый номер порта. Так, например, для HTTP обычно используется порт 80.

И в литературе, и в устном общении часто употребляются термины URL (Uniform Resource Locator) и URN (Uniform Resource Name). В RFC 2396 рекомендовано использовать вместо них единый термин URI.


Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:  



double arrow
Сейчас читают про: