Э. Таненбаум - Компьютерные сети. (4-е издание) (DJVU) (1130092), страница 189
Текст из файла (страница 189)
Шаг 7 связан с определением типа М1МЕ, исходя из расширения файла, первых нескольких байтов, конфигурационного файла или каких-то иных источников. Шаг 8 предназначен для различных задач, таких как построение профиля пользователя, сбор статистики и т. д. На шаге 9 наконец отсылается результат, что фиксируется в журнале активности сервера на шаге 10. Последний шаг требуется для нужд администрирования. Из подобных журналов можно впоследствии узнать ценную информацию 704 Глава 7, Прикладной уровень Обрабатывающий узел Маршрутизатор (отдельный компьютер Конвейер Рио. 7.10. Серверная ферма Одна из проблем, связанных с серверными фермами, заключается в отсутствии общего кэша — каждый обрабатывающий узел обладает собственной памятью.
Эта проблема может быть решена установкой дорогостоящей мультипроцессорной системы с разделяемой памятью, однако существует и более дешевый способ. Он заключается в том, что входной модуль запоминает, на какой узел он посылал запросы конкретных страниц. Последутощие запросы тех же страниц он сможет тогда направлять на те же узлы. Таким образом, получается, что каждый узел специализируется по своему набору страниц; и отпадает необходимость хранения одних и тех же файлов в кашах разных компьютеров. Другая проблема, возникающая при использовании серверных ферм, состоит в том, что ТСР-соединение клиента заканчивасгся на входном модуле, то есть ответ в любом случае должен пройти через входной модуль.
Эта ситуация пока. вана на рис. 7.11, а. Здесь как входящий запрос (1), так н исходящий ответ (2) проходят через входной модуль. Иногда для обхода этой проблемы применяется хитрость под названием передача ТСР. Суть ее в том, что ТСР-соединение продлевается ло конечного (обрабатывающего) узла, и он лтожет самостоятельно отправить ответ напрямую клиенту (рис. 7.11, 6). Эта передача соединения для клиента незаметна. о поведении пользователей — например, о том, в каком порядке люди посетцают страницы на сайте.
Если приходит слишком много запросов в секунду, центральный процессор может перестать справляться с их обработкой вне зависимости от того, сколько дисков параллельно работают на сервере. Решается эта проблема установкой на сервере нескольких узлов (компьютеров). Их полезно укомплектовывать реплицированными (содержащими одинаковую информацию) дисками во избежание ситуации, когда узким местом становится дисковый накопитель.
В результате возникает многомашинная система, организованная в виде серверной фермы (рис. 7.10). Входной модуль по-прежнему принимает входящие запросы, однако распределяет их на сей раз не между потоками, а между центральными процессорами, снижая тем самым нагрузку на каждый компьютер. Отдельные машины сами по себе могут быть многопотоковыми с конвейеризацией, как и в рассматриваемом ранее случае.
Всамирнай паутина ((ой(к(й() 705 От клиента К кпиентк От клиента Рис. 7.! т. Обычный запрос-ответный обмен (а); обмен запросами и ответами ори передаче ТОР (б] Цй1. — унифицированные указатели информационных ресурсов Мы несколько раз упоминали о том, что веб-страницы могут быть связаны между собой ссылками. Пора познакомиться с тем, как эти ссылки реализованы. Уже при создании Паутины было очевидно, что для реализации ссылок с одних страниц на друтие необходим механизм именования и указания расположения страниц, В частности, прежде чем выводить выбранную страницу на экран, нужно узнать ответы на три следующих вопроса. 1.
Как называется зта страница т 2, Где она расположена? 3. Как получить к ней доступ т Если бы каждой странице можно было присвоить уникальное имя, то в идентификации страниц не было бы никакой неоднозначности. Тем не менее, проблему бы это не решило.
Для примера проведем параллель между страницами и людьми. В Соединенных Штатах почти у всех граждан есть номер карточки социального страхования, представляющий собой уникальный идентификатор, так как нет двух людей с одинаковым номером. Тем не менее, зная только номер карточки социального страхования, нет способа узнать адрес владельца и, конечно, нельзя определить, следует ли писать этому гражданину по-английски, по-испански или по-китайски.
Во Всемирной паутине проблемы, в принципе, те же самые. В результате было принято решение идентифицировать страницы способом, решающим сразу все три проблемы. Каждой странице назначается унифицированный указатель информационного ресурса (1Ж1., ()п((опп Кезопгсе Еосасог), который служит уникальныи именем страницы. ()К1 состоят из трех частей: протокола (также называемого схемой), РЫБ-имени машины, на которой расположена страница, и локального имени, единственным образом идентифицирующего страницу в пределах этой машины (обычно это просто имя файла).
Например, веб-сайт факультета, на котором работает автор, содержит несколько видеофрагментов об университете и городе Амстердаме. Унифицированный указатель страницы с видео выглядит следующим образом: (тир://аает.са.чо.п(/ч(бас/(пбех-апЛттш( 706 Глава 7. Прикладной уровень Таблица 7,9. Некоторые распространенные 0й(.-указатели Имя Применение пример Ьлр пр 81е Гипертекст ! НТМь) РТР Ы1р:// мнтг.село.п1/-ае1/ Пр://Пр.св.то.п1/роЬ/в!п1х/ЛЕАОМЕ 1!!в:////ивг/астапов/ргод,с петгв:ссгпо.ов.гп!п1х печке:АА0134223112Фсв.оГал.есо дорлвп//дорпег.гс.огпп.еси/11д.1Ьгаг!ев гпа111оыоьп0вегФасв,огд ге!пап//тпигг,тгз.огд:80 Локальный Файл ТвлеконФвренция Статья новостей Оорлег Отправка электронной почты Удаленный терминал пеав пеегв дорлвг гпв!йо !в!пв1 Кратко рассмотрим этот список.
Протокол Ыр является родным языком Всемирной паутины, на нем разговаривают веб-серверы. НТТР— это сокращение, которое расшифровывается как НурегТехг Тгапэтег Ргососо1 (протокол передачи гипертекста). Более подробно мы рассмотрим его далее в этой главе. Этот ПКЕ состоит из трех частей: протокола (/гггр), ПХЗ-имени хоста (агвяехжоил/) и имени файла (о(г/ео/1лг/ех-елМт/). Отдельные части ПКЕ-указателя разделяются специальными знаками пунктуации. Имя файла представляет собой относительный путь по отношению к веб-катологу сз.ьи.пил/, у сайтов могут быть сокращенные имена для ускоренного доступа к определенным файлам.
Скажем, при отсутствии в ПКЕ имени файла может выводиться главная (домашняя) страница сайта. Если имя файла заканчивается именем каталога, то из него по умолчанию выбирается файл с именем глсгехЖЫ Наконец, имя -изет/г может соответствовать %~Ч 1Ч-каталогу пользователя, причем может быть также задано имя файла по умолчанию, например, 1лг/ех.йтй Так, на домашнюю страницу автора можно попасть по адресу ЬПр://алма.сз.чи, п1/-аз1/ несмотря на то, что действительное имя файла (гпг/ех./г/и/) отличается от указанного. Теперь надо понять, как работает гипертекст.
Чтобы на неком участке текста браузер мог реагировать на щелчок мыши, при написании веб-страницы нужно обозначить два элемента: отображаемый на экране текст ссылки и ()КЕ страницы, которая должна стать текущей при щелчке мышью. Синтаксис такой команды будет пояснен далее в этой главе. При выборе ссылки браузер с помощью службы г)ХЯ ищет имя хоста. Эная 1Р-адрес хоста, браузер устанавливает с ним ТСР-соединение. По этому соединению с помощью указанного протокола браузер посылает имя файла, содержащего страницу.
Вот, собственно, и все. Назад по соединению передается страница. Такая схема является открытой в том смысле, что она позволяет использовать разные протоколы для доставки информационных единиц разного типа. Определены (/К1.-указатели для других распространенных протоколов, понимаемые многими браузерами. Слегка упрощенные формы наиболее употребительных ПКЕ-указателей приведены в табл. 7.9. Всемирная паутина (УУУУУУ! 707 Протокол ~Ср используется для доступа к файлам по РТР— протоколу передачи файлов по Интернету.
За двадцать лет своего существования он достаточно хорошо укоренился в сети. Многочисленные РТР-серверы по всему миру позволяют пользователям в любых концах Интернета регистрироваться на сервере и окачивать разнообразные файлы, размещенные на сервере. Всемирная паутина здесь не вносит особых изменений. Она просто упрощает доступ к РТР-серверам и работу с файлами, ибо само по себе РТР имеет несколько загадочный интерфейс (однако более мощный, чем НТТР: например, он позволяет пользователю машины А передать файл с машины В на машину С).
К локальному файлу также можно обратиться как к веб-странице, либо используя протокол г12е, либо просто указав имя файла. Такой подход напоминает РТР, но не требует наличия сервера. Разумеется, он работает только с локальными файлами, а не с расположенными на удаленных терминалах. Задолго до появления Интернета появилась система групп новостей ()ЯЕХЕТ. Она состоит примерно из 30 000 конференций, в которых миллионы люлей обсуждают широкий круг вопросов, отправляя и читая сообщения, связанные с тематикой данной конференции, Протокол пети позволяет пользователю вызывать на экран статью с новостями, как если бы она была обычной веб-страницей.
Это означает, что веб-браузер легким движением руки превращается в элегантную программу чтения новостей. На самом деле, благодаря кнопкам и пунктам меню многих браузеров чтение новостей ЮЕХЕТ становится даже удобнее, чем с помощью специальных программ чтения сетевых новостей. Для протокола пегез поддерживается два формата ()И.-указателей. Первый формат указывает телеконференцию, и с его помощью можно получить список новых статей с указанного заранее сайта новостей. Второй формат позволяет получить конкретную статью по ее идентификатору, например, АА0134223112©ск игаЬ.еди.
Для получения этой статьи с заранее настроенного сайта браузер использует протокол ХХТР (Хегтуогй Хевз Тгапз(ег Ргогосо! — сетевой протокол передачи новостей). Мы изучим ХХТР в этой книге, однако надо понимать, что это нечто вроде БМТР, они весьма похожи даже по стилю. Протокол яорйег используется системой СорЬег, разработанной в университете штата Миннесота и получившей свое название от университетской спортивной команды «Со!пеп СорЬегз» («Золотые суслики»), (Гоферами называют уроженцев штатов Миннесота, Арканзас и Флорида. Кроме того, на американском сленге это слово означает «добывать», «копать», «искать».) Система СорЬег появилась в Интернете на несколько лет раньше Всемирной паутины.