Термины и принципы

Этот раздел зпакомит с основными понятиями и принципиальными вопросами, раскрываемыми в книге. В таблице 1.1 приведен перечень терминов, получивших широкое употребление как в популярных, так и в технических публикациях. Книга фокусирует внимание на основных принципах и принятых стандартах, а не на приложениях, функционирующих в Web:

•          Web-содержание. Web предоставляет пользователям доступ к ресурсам посредством обмена НТТР-сообщениями.

•          Программные компоненты. Web-транзакции состоят из взаимодействий между клиентами, промежуточными звеньями и серверами.

•          Коммуникационная среда. Internet обеспечивает коммуникационную среду для передачи сообщений между компонентами Web.

•          Стандартизация. Стандартизация протоколов помогает обеспечить совместимость программных компонентов Web друг с другом.

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

•          Web-приложения. Кэширование и мультимедийные потоки в основном влияют на производительность Web и на восприятие Web пользователями.

Таблица 1.1.

Основные термины, относящиеся к Wcb

Термин

Определение

WWW/Wcb

Всемирная паутина (World Wide Web), мир информации, доступ к которому осуществляется через подключенные к сети компьютеры

Гипертекст

Нелинейное связывание близких по смыслу документов для облегчения переходов между ними

Internet

Всемирное объединение взаимодействующих между собой с помощью протокола Internet Protocol (IP) сетей

Web-страница

Документ, доступный в Web с помощью URI

Web-сайт

Набор связанных друг с другом Web-страниц

Браузер

Приложение для запроса и отображения Web-ресурсов

Ключевые термины, относящиеся к этим темам, сведены в таблицы и рассматриваются в отдельных подразделах.

Web-содержание

В таблице 1.2 представлен список терминов, относящихся к Web-содержанию и к протоколам HTTP. Web состоит из набора ресурсов или объектов, распределенных по всей Internet. Каждый ресурс представляет собой документ, доступный через сеть или сервис, документ может быть доступен в различных форматах (например, HTML или PostScript). Ресурс может быть статическим файлом или генерироваться динамически во время выполнения запроса. Каждая НТТР-передача связана с одним ресурсом, идентифицируемым URI в сообщении-запросе. Web- страница состоит из контейнерного ресурса, такого как HTML-файл, который может включать ссылки на один или несколько встроенных ресурсов, таких как изображения или анимация. Загрузка Web-страницы предусматривает отдельные HTTP-передачи для контейнера и каждого из встроенных ресурсов.

Таблица 1.2. Терминология, относящаяся к Web-рсурсам и ИТТР-сообщениям

Термин

Описание

Ресурс

Сетевой объект данных или сервис, идентифицируемый с помощью URI

Сообщение

Основная единица сетевого взаимодействия в HTTP

Отправитель/ получатель

Компоненты, ответственные за отправку/получение сообщения

Заголовок

Управляющая часть сообщения

Содержимое

Информация, передаваемая в теле сообщения

Вышерасположенный/ пижерасположениый

Направление потока сообщений (от вышсрасположенпого отправителя к пижерасположсшюму получателю)

Каждая НТТР-передача состоит из двух сообщений: сообщения-запроса, отправляемого клиентом, и соответствующего сообщения-ответа сервера. Клиент является отправителем сообщения-запроса и получателем сообщения-ответа. Аналогично, сервер является получателем сообщения-запроса и отправителем сообщения-ответа. Отправитель сообщения является вышерасположенным для получателя, а получатель является нижерасположенным для отправителя. Сообщение представляет собой последовательность байтов, начинающуюся с необязательного заголовка, который содержит управляющую информацию. HTTP-заголовки имеют формат ASCII; например, заголовок Date, присутствующий в сообщении-запросе и в сообщении-ответе, имеет следующий формат:

Date: Sat Oct 28 2000 11:29:32 GMT

Кроме того, сообщение-запрос или сообщение-ответ может иметь тело — непосредственное представление ресурса. Например, ответ на запрос на http://www.foo.com/ cooIpic.gif может содержать GIF-изображение в качестве тела сообщения.

Программные компоненты

В таблице 1.3 приведены основные программные компоненты Web и некоторые широко используемые термины, имеющие к ним отношение. Агент пользователя инициирует HTTP-запрос и обрабатывает ответ. Наиболее типичным примером агента пользователя является Web-бpayзep, который отправляет запросы от имени пользователя и выполняет множество других задач, таких как отображение Web- страниц и храпение пользовательских предпочтений. Клиент представляет собой программу, которая отправляет HTTP-запрос и получает ответ. Исходный сервер — это программа, которая предоставляет или генерирует Web-pecypc. Сервер — это программа, которая получает HTTP-запрос и отправляет ответ. На практике клиент может отправлять HTTP-запрос на промежуточное звено — другой компонент Web на пути к исходному серверу. Например, сотрудники компании могут настроить свои браузеры на использование прокси-сервер, которому будут направляться запросы. Прокси-сервер играет роль и клиента, и сервера. Прокси-серверы могут выполнять множество функций, таких как фильтрация запросов к нежелательным Web-сайтам, предоставление клиентам определенной степени анонимности и кэширование популярных ресурсов. HTTP не сохраняет состояние, поэтому у сервера отсутствует информация о запросе после отправки ответа. Сервер может проинструктировать агента пользователя хранить определенную информацию между серией запросов и ответов, поместив ее в cookies.

Таблица 1.3. Терминология, относящаяся к программным компонентам Web


Термин

Описание

Агент

пользователя

Клиентская программа, которая инициирует запрос (например, браузер)

Wcb-клиент

Программа, которая отправляет HTTP-запрос Web-cepBepy

Wcb-еервер

Программа, которая получает HTTP-запрос от Wcb-клиента и передает ему ответ

Исходный сервер

Сервер, где располагается или динамически создается запрашиваемый ресурс

Промежуточное звено

Web-компонент на пути между агентом пользователя и исходным сервером (например, прокси-сервер или шлюз)

Термин

Описание

 

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

Промежуточная программа, функционирующая как сервер для клиента и как клиент для сервера

 

Cookie

Служебная информация, передаваемая между агентом пользователя и исходным сервером

 

Сеть

В таблице 1.4 приведены основные термины, относящиеся к сетевым протоколам, составляющим основу Web. Клиент и сервер обычно выполняются как программы на хостах. Как правило, клиент и сервер размещаются в различных местах в Internet, хотя в настоящее время отмечается быстрый рост применения Web внутри организаций. Отправка и получение НТТР-сообщений требует, чтобы два хоста могли идентифицировать друг друга и обмениваться информацией. Развитие Internet привело к появлению стандартных протоколов, поддерживающих множество сетевых сервисов, таких как FTP, электронная почта и Web. На нижнем уровне Internet предоставляет основной коммуникационный сервис — доставку пакетов данных от одного хоста другому. Протокол Internet Protocol (IP) осуществляет доставку отдельных пакетов; при этом отправляющий и принимающий хосты идентифицируются 32-битными IP-адресами. Эти адреса обычно представляются в нотации, когда каждая из четырех восьмибитных составляющих адреса записывается в виде десятичпого числа. Эти составляющие отделяются друг от друга точками (например, 10.243.74.5 или 10.4.170.124).

Таблица 1.4. Терминология, относящаяся к Internet и протоколам

Термин

Описание

Хост

Компьютер, подключенный к сети

Пакет

Основная единица передачи информации в Internet

IP

Internet Protocol — протокол, который осуществляет доставку отдельных пакетов между хостами

1Р-адрес

32-битный числовой адрес, идентифицирующий хост1 в Internet

Имя хоста

Чувствительная к регистру строка, идентифицирующая хост в Internet

DNS

Система именования доменов (Domain Name System), распределенная инфраструктура для преобразования доменных имен хостов в IР-адрсса

TCP

Transmission Control Protocol — протокол, который реализует концепцию надежного двунаправленного соединения

Соединение

Логический коммуникационный капал между двумя хостами

Простая служба доставки пакетов не удовлетворяет потребностям большинства сетевых приложений, включая Web. Web-клиент идентифицирует Web-cepвep но доменному имени хоста (например, www.att.com или users.berkeley.edu), а не по IP-адресу, а приложения обмениваются НТТР-сообщениями, а не IР-пакетами. Чтобы соединить эти части друг с другом, используется система именования доме- пов Domain Name System (DNS) и протокол управления передачей Transmission Control Protocol (TCP). Перед обращением к Web-серверу Web-клиент сначала преобразует с помощью DNS доменное имя хоста www.att.com в IР-адрес. Web-клиент осуществляет системный вызов для обращения к DNS-серверу, который возвращает IР-адрес www.att.com. Используя этот IР-адрес, Web-клиент инициирует взаимодействие с Web-сервером. Клиент и сервер устанавливают ТСР-соединение — логический коммуникационный канал, который обеспечивает двунаправленное взаимодействие между двумя приложениями. Реализованный в операционных системах двух хостов, TCP скрывает детали отправки и получения данных через Internet. После того, как соединение установлено, клиент может использовать ТСР-соединение для отправки HTTP-запроса серверу, а сервер может отреагировать, передав НТТР-ответ.

Стандартизация

В таблице 1.5 приведены основные термины, относящиеся к стандартизации протоколов. Браузеры, прокси- и Web-серверы взаимодействуют между собой, чтобы предоставить пользователю доступ к ресурсам в Web. Хотя каждый Web-сайт может иметь свой набор ресурсов с различным сочетанием типов содержания, доступ к этим ресурсам должен быть независимым от их атрибутов. Стандартизация протоколов жизненно необходима, чтобы компоненты взаимодействовали между собой должным образом. Клиент, отправляющий запрос, должен иметь возможность ясно представлять тот спектр ответов, которые оп может получить, а сервер должен иметь возможность однозначно интерпретировать запрос. Хотя программное обеспечение Web может быть создано различными компаниями или исследовательскими организациями, взаимодействие между компонентами должно быть предсказуемым. Написание компонентов программного обеспечения Web и построение Web-сайтов должно осуществляться с помощью четко определенных интерфейсов. Стандарт протокола дает возможность гарантировать, что компоненты могут взаимодействовать друг с другом, а процесс стандартизации позволяет приводить вновь разрабатываемые компоненты в соответствие со стандартом.

Таблица 1.5. Терминология, относящаяся к стандартам протоколов Internet

Термин

Описание

IETF

Проблемная группа проектирования Internet (Internet Engineering Task Force) — открытое сообщество, занимающееся развитием и совершенствованием Internet

Рабочая группа

Группа IETF, занимающаяся разработкой определенных стандартов

Рабочий проект (Internet Draft)

Неофициальная версия документов по стандарту, отражающая, что работа над стандартом продолжается

RFC

Запрос на комментарий (Request For Comments), официальный документ, связанный со стандартами Internet

MUST, SHOULD и MAY______________

ОБЯЗАТЕЛЬНО, ЖЕЛАТЕЛЬНО и ВОЗМОЖНО – уровни требований к совместимости со спецификацией протокола

Internet не имеет единого «центра управления»; различные хосты и сети придерживаются стандартов протоколов добровольно. Организация Internet Engineering Task Force (IETF) [Bra96bj представляет собой открытое сообщество разработчиков, поставщиков программных продуктов и исследователей, которые способствуют развитию и функционированию Internet. Описания стандартов в публикуемых документах составляют основу для взаимопонимания. IETF формирует стандарты с помощью официальных публикаций, называемых Request for Comments (RFC — запрос на комментарии). Первый документ RFC был опубликован в 1969 г.

Документы IETF на начальном этапе представляют собой рабочие проекты (Internet Drafts), которые являются неофициальными документами, подвергаемыми корректировкам на основе замечаний, получаемых от членов сообщества. Не все рабочие проекты превращаются в RFC. RFC делятся но темам и направлениям: стандарты, история, информация и исследования. Документы стандартов обычно создаются рабочей грунной (Working Group) IETF. Требования совместимости со стандартом имеют различные уровни: MUST (ОБЯЗАТЕЛЬНО), SHOULD (ЖЕЛАТЕЛЬНО) и MAY (ВОЗМОЖНО). Любая совместимая реализация должна удовлетворять всем требованиям уровня MUST. Реализация может считаться условно совместимой, если она удовлетворяет всем требованиям уровня SHOULD. Требования уровня MAY соблюдать необязательно. Эти уровни требований помогают обеспечить взаимную совместимость различных реализаций. Документы стандартов проходят через три стадии: Proposed Standard (Предложение но стандарту), Draft Standard (Проект стандарта) и Internet Standard (Стандарт Internet), постепенно проходя путь от хорошо разработанной спецификации до высококачественного, зрелого в техническом отношении документа, оспованного на практическом опыте- применения. Некоторые RFX отражают текущий практический опыт (best current practices — BCP) и известны как ВСР-документы. Стандарты действуют не вечно — они могут быть отменены и заменены следующей спецификацией.

Чтобы содействовать росту Web, в 1994 г. был основан World Wide Web Consortium (W3C). W3C было разработано множество стандартов, получивших название Рекомендаций, которые имели отношение к Web. W3C сосредотачивает свое внимание на представлении Web-содержания и связанных с этим технологиях (например, языке HTML), а не на аспектах, относящихся собственно к сети. W3C работает над вопросами архитектуры, проблемами, связанными с пользовательским интерфейсом, форматами, языками, юридическими вопросами и вопросами издательской деятельности, а также проблемами доступности Web для людей с ограниченными возможностями (инвалидов).

Web-трафик и производительность

Таблица 1.6 содержит термины, имеющие отношение к Web-трафику и производительности. Широкая популярность Web привела к быстрому росту числа пользователей и Web-сайтов. Однако возможности сети и серверов не безграничны. Желание пользователей быстро получать ответы стало причиной более пристального внимания к проблемам производительности. Время ожидания — это время между началом действия, например, отправкой сообщения-запроса и первым признаком получения ответа. Время ожидания на стороне пользователя — это задержка между моментом, когда пользователь активизирует гиперссылку, и началом отображения запрашиваемого содержимого в окне браузера. Каждый программный компонент и протокол характеризуются определенным временем ожидания на стороне пользователя. Например, браузер должен построить HTTP-запрос, определить IP-адрес сервера, установить ТСР-соединение с сервером, передать запрос, дождаться ответа и, наконец, отобразить ответ пользователю. Большое время ожидания на стороне пользователя может обусловливаться различными факторами, такими как задержки при обращении к DNS, «заторы» в сети или перегруженность сервера.

Таблица 1.6. Терминология, относящаяся к Web-трафику и производительности

Термин

Описание

Время ожидания

Время между началом действия и первым признаком ответа

Время ожидания на стороне пользователя

Время между действием пользователя и началом отображения содержимого

Пропускпая способность

Объем трафика, который может быть передан за единицу времени

Рабочая нагрузка

Набор входных данных, получаемых компонентом Web за определенное время

Регистрация в журнале

Запись транзакций, выполненных компонентом Web

Кроме того, браузер может работать через Internet-соединение с относительно низкой пропускной способностью, например, через модем со скоростью передачи 28,8 Кбит/с. Передача ресурса большого объема через модем вносит заметную задержку, даже если Web-cepвep и остальная часть Internet загружены мало. Анализ производительности сложной и разнородной системы, каковой является Web, на практике представляет собой достаточно непростую задачу. Все же общее представление о системе и осведомленность в принципах ее функционирования имеют важное значение для выявления проблем с производительностью и совершенствования технологий. Измерение параметров и анализ Web-трафика необходимы для того, чтобы охарактеризовать работу пользователей и свойства ресурсов, доступных в Web. Большинство действий по анализу Web-трафика заносятся в журналы регистрации, которые обеспечивают запись информации HTTP-передачах, выполняемых программными компонентами Web. Анализ журналов регистрации полезен для понимания характеристик рабочей нагрузки программных компонентов Web. Рабочая нагрузка определяется набором всех входных данных (например, HTTP-запросов), получаемых компонентом за определенное время. Характеристики рабочей нагрузки, такие как время между запросами, а также размеры и степень популярности различных ресурсов, имеют важное влияние на производительность Web-протоколов, программных компонентов и сети.

Web-приложения

В таблице 1.7 приведены термины, относящиеся к Web-приложениям. С ростом популярности Web кэширование и мультимедийные потоки стали важными приложениями. Рост Web привел к большой загруженности Web-серверов и Internet и, как следствие, к увеличению времени ожидания на стороне пользователя при доступе к Web-содержимому. Кэширование перемещает содержимое ближе к пользователю. Это относительно простая идея, существовавшая уже на первых порах развития Web. Кэш представляет собой локальное хранилище сообщений. Кэш может размещаться в браузере пользователя, на Wcb-ссрвсре или на компьютере, расположенном на пути между пользователем и Web-сервером. Хотя кэширование повышает производительность, кэшированные ответы могут отличаться от тех, которые имеются на исходном сервере. Механизм согласования кэша используется для обеспечения совпадения кэшированного сообщения с сообщением на сервере. Альтернативой кэшированию является репликация, предусматривающая явное дублирование Web-содержания на нескольких серверах. Клиентский запрос направляется одной из реплик. Вместо репликации всего содержания Web-сайта может осуществляться избирательная доставка содержания от имени исходного сервера. Подобный прием называется распределением Web-содвржания.

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

Термин

Описание

Кэш

Хранилище сообщений, используемое для сокращения времени ожидания на стороне пользователя, а также снижения нагрузки на сеть и на сервер

Согласование кэша

Механизм снижения вероятности возврата устаревших сообщений из кэша

Репликация

Дублирование ресурсов на нескольких исходных серверах

Распределение Web-содержания

Доставка ресурсов от имени исходного сервера

Поток аудио/видеоданных

Последовательность звуковых сэмплов или видеокадров

Потоковая передача

Одновременная передача информации сервером и воспроизведение клиентом аудио/видео данных

Медиаплойер

Приложение для воспроизведения мультимедийных потоков

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

Источник: Web-протоколы. Теория и практика. — M.: ЗАО «Издательство БИНОМ», 2002 г. – 592 c.: ил.

Вы можете следить за любыми ответами на эту запись через RSS 2.0 ленту. Вы можете оставить ответ, или trackback с вашего собственного сайта.

Оставьте отзыв

XHTML: Вы можете использовать следующие теги: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>

 
Rambler's Top100