Олифер В.Г., Олифер Н.А. - Компьютерные сети. Принципы, технологии, протоколы (4-ое изд.) - 2010 - обработка (953099), страница 202
Текст из файла (страница 202)
Теперь проще найти интересующую вас статью в Интернете, чем в стопке журналов, хранящихся рядом в шкафу. Очень быстро исчезают многие традиционные приемы рациональной органиэации работы с информацией, заключающиеся, например, в хранении полезной информации в записных книжках, раскладывании вырезок из журналов и газет в картонные папки с веревочками, упорядочивании документов в каталогах путем наклеивания на них маркеров с условными кодами, помогающими быстро отыскать нужный документ и т. д. Этим приемам приходят на смену новые безбумажные технологии Интернета, среди которых важнейшей является сетевая служба ЪЪгЪЪГЪЪг, или веб-служба.
Заметим, что ЪЪГЪЪгЪ«l не только предоставляет любому человеку возможность быстрого поиска нужных данных н доступа к ним, но и позволяет выносить на многомиллионную аудиторию пользователей ВО2 Глава 23. Сетевые службы Интернета собственную информацию — мнения, художественные и публицистические произведения, результаты научной работы, объявления и т.
д. Причем он может это делать без особых организационных забот и практически бесплатно. Мы ме будем долго останавливаться на описании всех возможностей этой службы, учитывая, что для большинства из нас регулярный просмотр веб-сайтов стал не просто обыденмостью, а необходимым элементом жизненного уклада.
ВЕб- И НТМЕ-СТРаНИЦЫ Миллионы компьютеров, связанных через Интернет, хранят невообразимо огромные объемы информации, представленной в виде веб-страниц. ~2 Ввб-страница, или авб-документ, как правило, состоит из основного НТМ«-файла и,некоторого количвства ссылок на другие объв«ты разного тига: 4РЕО- и ОВ«изображения, другив, НТМ«.файлы, аудио- и видеофайлы. О Нуйц;файлоаг, Нуйц:страницей или гипертвквтовай страницей называют файл, который содержит текст, написанный на языке НТМ~ (Нурегуе«т Магхор Ьалроаде —, язык разметки гипершкста). История появлемия языка НТМВ связана с попытками программистов разработать средство, которое бы позволяло им программным путем создавать красиво сверстанные страницы для просмотра на экране.
Другими словами, красивая картинка появляется на дисплее только в результате ее интерпретации специальной программой, а в исходном виде она представляет собой однообразный текст с множеством служебных пометок. Вместо применения различных приемов форматирования, таких как выделение заголовков крупным шрифтом, а важных выводов — курсивным или полужирмым начертанием, создатель документа на языках этого типа просто вставляет в текст соответствующие указания о том, что данмая часть текста должна быть выведена на экран в том или ином виде. Служебные пометки такого рода в исходном тексте выглядят, например, как <Ь> </Ь> (начать и закончить вывод текста полужирным начертанием) и называются тегами. Язык НТМВ не является первым языком разметки текста, его предшественники существовали задолго до появления веб-службы, например в первых версиях ОС ()шх существовал язык гго(г (с помощью этого языка отформатированы страницы электронной документации ()шх, известные как шап-страницы).
В язык НТМг включены разные типы тегов, команд и параметров, в том числе для вставки в текст изображений (тег <1ад з ге "..." >). Чтобы НТМЕ-страница выглядела так, как задумал программист, она должна быть выведена на экран специальной программой, способной интерпретировать язык НТМЕ.
Такой программой является уже упоминавшийся веб-браузер. Существует особый типтега, который имеет вид <а ЬгеГ-"..."> ...</а> и называется гиперссылкой. Гиперссылка содержит информацию о веб-страмице или объекте, который может находиться как на том же компьютере, так и на других компьютерах Интернета. Отличие гиперссылки от других тегов состоит в том, что элемент, описываемый ею, не появляется автоматически на экране, вместо этого на месте тега (гиперссылки) на экран выводится некоторое условное изображение нли особым образом выделенный текст — имя гнперссылкн. Чтобы получить доступ к объекту, на который указывает эта гиперссылка, пользователь воз Веб-служба должен «щелкмуть» иа ией, дав тем самым команду браузеру найти и вывести ма экран требуемую страницу или объект.
После того как новая веб-страмица будет загружена, пользователь сможет перейти по следующей гиперссылке — такой «веб-серфииг» может продолжаться теоретически сколь угодно долго. Все это время веб-браузер будет находить указанные в гиперссылках страницы, интерпретировать все размещенные ма мих указания и выводить информацию ма экран в том виде, в котором ее спроектировали разработчики этих страниц. ов.
Браузер находит веб-страмицы и отдельные объекты по адресам специального формата, называемым ()Кг (()п)(огш Кезопгсе !.осагог — унифицированный указатель ресурса). (3 К!.-адрес может выглядеть, например, так: Ьцр://ам»и.о!Вег.со.ох/Ьооаа/Ьооха. Шш. В 0К):адресе можно выделить три части: 0 Тии протокола доступа. Начальмая часть !) К!.
(Ьцр://) указывает ма то, какой протокол должен быть использован для доступа к данным, расположемие которых определяется оставшейся частью () К!.. Помимо НТГР здесь могут быть указаиы и другие протоколы, такие как РТР Ге! пей также позволяющие осуществлять удалеммый доступ к файлам или компьютерам'. 0 /)Ху-имя сервера. Имя сервера, ма котором хранится нужная страница. В нашем случае — это имя сайта чили.о!Вег.со.ох.
О Путь к обьекту. Обычно это составное имя файла (объекта) относительно главного каталога веб-сервера, предлагаемого по умолчанию. В нашем случае путем к объекту является /Ьоохз/Ьоомз. Шш. По расширению файла мы можем сделать вывод о том, что это НТМ!.-файл. Веб-клиент и веб-сервер Как мы уже отмечали, сетевая веб-служба представляет собой распределенную программу, построемиую в архитектуре клиент-сервер.
Клиент и сервер веб-службы взаимодействуют друг с другом по протоколу НТГР Через этот интерфейс пользователь получает доступ к широкому набору услуг, главной мз которых, конечно, является «веб-серфммг», включающий поиск и просмотр страниц, навигацию между уже просмотренными страницами, переход по закладкам и хранение истории посешемий. Помимо средств просмотра и навигации, веб-браузер предоставляет пользователю возможность мам ипулировамия страницами: сохранение их в файле ма диске своего компьютера, вывод ма печать, передача по электронной почте, контекстный поиск ' Если а НЕЕ-»древе ме указывается тип протокола доступа, тс браузер лс умолчанию использует протокол НТТР.
Глава 23. Сетевые службы в пределах страницы, изменение кодировки и формата текста, а также множество других функций, связанных с представлением информации на экране и конфигурированием самого браузера. К числу наиболее популярных сейчас браузеров можно отнести !пгегпес Ехр!огег компании М1сгозоГг, Р1геГох компании Мог!!1а и последнее предложение компании Сопя!е — СЬгоще. Веб-браузер — это не единственный вид клиента, который может обращаться к веб-серверу.
Эту роль могут исполнять любые программы и устройства, поддерживающие протокол НОТР а также многие модели мобильных телефонов — для доступа в этом случае применяется специальный протокол %АР ('тт1ге!езз Аррйсайоп Ргоптсо! — протокол беспроводных приложений). Значительную часть своих функций браузер выполняет в тесной кооперации с вебсервером. Как уже было сказано, клиент и сервер веб-службы связываются через сеть по протоколу НТТР Это означает, что в клиентской части веб-службы присутствует клиентская часть НТТР а в серверной — серверная часть Н1 ГР. Ввб*еврвер — это программа, нраиацея объвк)ы лекалытб вквб~вак!томлыитера, иа не~ором оиа зэлуциыа. и обеспечивающая достугьквпвк объвюпм поъ!й! адресам. наиболвв популяр-' ными аеб-серверами сейчас являются драл!те.и йеюпжо$иФвгвеЙл!оппапоп Ветчес т Вилееклил к l иэ фиане к к кыеояк к l к и г к г к Ф к г Веб.клиент Рис.
23.4. Отображение ееб-страницы Как и любой другой сервер, веб-сервер должен быть постоянно в активном состоянии, прослушивая ТСР-порт 80, который является назначенным портом протокола НТТР. Как только сервер получает запрос от клиента, он устанавливает ТСР-соелинение и получает 808 пеб-служба от клиента имя объекта, например, в виде уьоохз/Ьооаз.1яш, после чего находит в своем каталоге этот файл, а также другие связанные с ним объекты и отсылает по ТСР-соединению клиенту. Получив объекты от сервера, веб-браузер отображает их на экране (рис. 23.4).
После отправки всех объектов страницы клиенту сервер разрывает с ним ТСР-соединение. В дополнительные функции сервера входят также аутентификация клиента н проверка прав доступа данного клиента к данной странице. Для повышения производительности некоторые веб-серверы прибегают к кэшированию наиболее часто используемых в последнее время страниц в своей памяти. Когда приходит запрос на какую-либо страницу, сервер, прежде чем считывать ее с диска, проверяет, не находится ли она в буферах более «быстрой» оперативной памяти. Кэширование страниц осуществляется и на стороне клиента, а также на промежуточных серверах (проксисерверах).
Кроме того, эффективность обмена данными с клиентом иногда повышают путем компрессии (сжатия) передаваемых страниц. Объем передаваемой информации уменьшают также за счет того, что клиенту передается не весь документ, а только та часть, которая была изменена. Все эти приемы повышения производительности веб-службы реализуются средствами протокола НТТР Протокол НТТР НТТР (НурегТехг Тгапэ(ег Ргогосо! — протокол передачи гипертекста)' — это протокол прикладного уровня, во многом аналогичный протоколам ЕТР и ВМТР В настоящее время используются две версии протокола НТТР 1.О и НТТР!.1 Обмен сообщениями идет по обычной схеме «запрос-ответ». Клиент и сервер обмениваются текстовыми сообщениями стандартного формата, то есть каждое сообщение представляет собой нескольких строк обычною текста в кодировке АЯСП.
Для транспортировки НТТР-сообщений служит протокол ТСР При этом ТСР-соединения могут использоваться двумя разными способами: (2 Доиовремвннов соединение — передача в одном ТСР-соединении нескольких объектов, причем время существования соединения определяется при конфигурировании вебслужбы. 11 Кратковременное соединение — передача в рамках одного ТСР-соединения только одного объекта. Долговременное соединение, в свою очередь, может быть использовано двумя способами: (Д Последовательная явредача запросов с проплоями — новый запрос посылается только после получения ответа. 0 Конвейерная передача — это более эффективный способ, в котором следующий запрос посылается до прибытия ответа на один или несколько предыдущих запросов (напоминает метод скользящего окна). Обычно по умолчанию степень параллелизма устанавливается на уровне 5-10, но у пользователя имеется возможность изменять этот параметр при конфигурировании клиента. В НТТР 1.1 по умолчанию применяются постоянные соединения и конвейерный режим.