HyperText Transfer Protocol (HTTP)

HTTP - это новый Internet протокол, который спроектирован специально для быстрого манипулирования с гипертекстовыми документами. Подобно другим Internet инструментариям, таким как FTP, WAIS и Gopher, HTTP - это клиент-сервер протокол. В модели клиент-сервер программа клиент, которая исполняется на компьютере пользователя, посылает запрос к программе сервера, которая исполняется на другом компьютере в сети Internet. Ответ на запрос сервер отсылает снова клиенту. В поцессе обмена этими сообщениями, клиент и сервер используют протокол (совокупность правил, согласно которым компьютеры взаимодействуют между собой). FTP, WAIS и Gopher - другие примеры протоколов клиент-сервер сети Internet, каждый из которых также доступен через WWW броузер. Однако HTTP был сконструирован специально для работы с гипертекстовыми документами.

На самом простом уровне HTTP серверы действуют подобно анонимным FTP серверам, поставляя файлы по запросам клиентов. Однако HTTP cервера поддерживают еще ряд важных дополнительных функций:

- возможность отсылать клиенту не только файлы, но также и дополнительную информацию, которая генеруется программами, которые исполняются на сервере;

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

Специальные программы, которые находятся на сервере и исполняют эти функции, называются программами gateway (шлюз), поскольку они действительно действуют как шлюз между HTTP сервером и другими локальными ресурсами, такими как, например, базы данных. В точности так, как FTP сервер предоставляет возможность доступа к огромному количеству файлов, так и HTTP сервер предоставляет возможность доступа к огромному количеству программ: в этих двух случаях Вы определяете путем задания URL, какие (файловые или программные) ресурсы Вы б хотели получить.

Взаимодействие между сервером и этими gateway программами регулируется спецификациями Common Gateway Interface (CGI). Используя CGI cпецификации, программист может легко писать простые программы или скрипты на обработку запросов пользователя и тому подобное.

В настоящее время используется версия 1.1 протокола HTTP. Ее поддерживают все основные броузеры и WEB-серверы. Протокол HTTP 1.1 описан в RFC-2068 и превосходит предыдущую версию HTTP 1.0 – прежде всего, по производительности. Однако, есть и другие отличия, описанные ниже

* Постоянные соединения. Протокол HTTP 1.1 устанавливает меньше TCP-соединений, чем HTTP 1.0. Версия 1.0 устанавливает и разрывает TCP-соединение для каждого HTML-запроса, а HTTP 1.1 создает TCP-соединение, сохраняющееся на протяжении многих запросов.

* Протокол HTTP 1.1 поддерживает сжатие данных. Это означает, что файлы между клиентом и сервером могут передаваться сжатыми, что снижает нагрузку на сеть.

* Протокол HTTP 1.1 поддерживает многие языки сетевого программирования.

* Создание виртуальных хостов. Протокол HTTP 1.1 позволяет одному WEB-серверу иметь несколько доменных имен. В настоящее время эта ситуация распространена широко (например, когда поставщик услуг InterNet’а поддерживает несколько доменов).

 

Консорциум W3С работает над протоколом HTTP-NG (Next Generation), который, как предполагается, заменит HTTP. К HTTP-NG предъявляются следующие требования:

* Простота – протокол HTTP-NG должен быть прост для реализации и обслуживания.

* Расширяемость – на случай ситуации, не предусмотренной в процессе разработки.

* Масштабируемость – вне зависимости от того, используется ли HTTP-NG в маленькой локальной сети или в сети InterNet.

* Эффективность – ожидается, что протокол HTTP-NG будет намного эффективнее HTTP. Последний плохо работает в сетях с большим временем задержки. Причина в том, что HTTP – протокол одиночных запросов и ответов. Кроме того, он перегружен информацией. Протокол HTTP-NG призван устранить эти и другие недостатки.

В последнее десятилетие наметилась тенденция разработки формальных методов описания протоколов, значительно упрощающих разработку и тестирования новых протоколов передачи данных (см. подраздел 3.2), требования обеспечения конфиденциальности передаваемой по сетям информации инициировали разработку новых протоколов обеспечения секретности данных.


Лекция








Дата добавления: 2015-09-14; просмотров: 844;


Поиск по сайту:

При помощи поиска вы сможете найти нужную вам информацию.

Поделитесь с друзьями:

Если вам перенёс пользу информационный материал, или помог в учебе – поделитесь этим сайтом с друзьями и знакомыми.
helpiks.org - Хелпикс.Орг - 2014-2024 год. Материал сайта представляется для ознакомительного и учебного использования. | Поддержка
Генерация страницы за: 0.004 сек.