Технологии сетевого кэширования

Введение

Хотя объем Web-данных в Internet непостоянен, его значительную часть на любом Web-узлс составляют обращения одних и тех же пользователей к одному и тому же содержимому. Это ^означает, что значительная часть инфраструктуры глобальной сети изо дня в день занята переносом одного и того же содержимого и одинаковых запросов на него. Благодаря ликвидации большинства повторяющихся операций по переда- <: чс данных предприятия и клиенты провайдеров экономят значительные средства.

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

Сетевое кэширование

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

•          Сокращение затрат за счет меньших требований к полосе пропускания глобальных каналов. Internet-провайдеры могут разместить кэш-процессоры в стратегических точках своих сетей, за счет чего сократить время отклика и уменьшить требования к полосе пропускания магистрали. Провайдеры ISP могут устанавливать кэш- устройства в стратегических точках доступа к глобальной сети для того, чтобы Web-запросы обслуживались с локального диска, а не с удаленных или перегруженных Web-серверов.

•          В корпоративных сетях значительное сокращение используемой полосы пропускания за счет Web-кэширования позволяет обслуживать ту же базу пользователей при помоши более узкополосного (и дешевого) WAN-соединения, увеличить количество пользователей или расширить спектр услуг за счет освободившейся пропускной способности существующего канала.

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

Среди других достоинств можно отметить следующие.

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

•          Контроль действий посетителей. Сетевые администраторы могут изучить количество обращений к различным URL, узнать, сколько запросов в секунду обслуживается кэшем, какая часть URL обслуживается кэшем, а также получить другую статистическую информацию.

Функционирование Web-кэширования

Web-кэширование функционирует следующим образом.

1.                     Пользователь обращается к Web-странице.

2.        Сеть анализирует запрос и, в зависимости от его параметров, прозрачно перенаправляет его в кэш локальной сети.

3.        Если у кэша нет Web-страницы, он генерирует собственный запрос на исходный Web-cepBep.

4.        Исходный Web-cepBep предоставляет содержимое, которое заносится в кэш. Там оно сохраняется и передается клиенту. Таким образом, содержимое остается в кэше.

5.        Впоследствии, когда другой пользователь запросит ту же Web-страницу, сеть проанализирует его запрос и, в зависимости от его параметров, прозрачно передаст его локальному сетевому кэшу.

Вместо того чтобы отправлять запрос по Internet и Intranet, сетевой кэш выполняет его локально, таким образом ускоряя доставку содержимого.

Возникает важная задача своевременного обновления данных, и она решается различными способами, в зависимости от структуры системы.

Достоинства локализации типов потоков данных

Кэширование позволяет локализовать типы потоков данных и решить проблему перегрузки сетевых каналов благодаря следующим факторам:

•     ускорение доставки содержимого пользователям;

•     более оптимальное использование полосы пропускания WAN-сети;

•     упрощения наблюдения за потоками данных.

Интегрированный сетевой кэш

Первым шагом при организации интегрированного сетевого кэширования является локализация потоков данных путем маршрутизации содержимого на уровне системы и настройка параметров оптимизации потоков данных в сети. Примером технологии маршрутизации содержимого, поддерживающей локализацию потоков данных, является Cisco IOS ® Web Cache Communication Protocol (WCCP).

Если в основу сети заложена соответствующая технология, то в ее стратегических точках могут быть добавлены кэши.

Для интегрированного сетевого кэширования Cisco разрабатывает аппаратно- программные комплексы.

Системы интегрированного сетевого кэширования всегда обладают следующими тремя свойствами.

•          Управление ими подобно управлению другим сетевым оборудованием, так что затраты на эксплуатацию минимальны.

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

•          Они прозрачно внедряются в сеть, что, с одной стороны, сокращает затраты на внедрение и эксплуатацию, а с другой, повышает доступность содержимого.

Современные системы кэширования

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

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

Прокси-сервер представляет собой программное обеспечение, работающее на обычном компьютере и под управлением обычной операционной системы. Прокси-сервер устанавливают на компьютере, физически расположенном между клиентским приложением, таким как Web-броузер, и Web-сервером. Прокси-сервер играет роль "привратника", который принимает все пакеты, предназначенные для Web-cepeepa и проверяет, может ли он выполнить запрос самостоятельно; если такой возможности у него нет, то он формулирует собственный запрос для Web-cepeepa. Прокси-серверы могут использоваться для фильтрации запросов, например, чтобы предотвратить доступ сотрудников к определенным Web-узлам.

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

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

Автономные кэши

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

Кэширование в браузере клиента

Internet-браузеры позволяют кэшировать Web-страницы (изображения и текст в формате HTML) на локальном жестком диске пользователя. Пользователь сам выбирает размер дискового пространства для кэширования. На рис. 54.1 показано окно настройки кэша в Netscape Navigator.

Puc. 54.1. Выбор размера дискового пространства для кэширования Web-страниц в Netscape Navigator

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

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

Рис. 54.2. Достоинства кэширования в браузере для одного узла

Сетевое кэширование по протоколу WCCP

В 1997 г. корпорация Cisco разработала протокол маршрутизации клиирования WCCP, который локализирует потоки данных в сети и обеспечивает интеллектуальное распределение нагрузки между несколькими сетевыми кэшами, что позволяет добиться максимальной скорости загрузки содержимого.

Кэш-компонент н этой разработке Cisco представляет собой кэш, интегрированный в сеть — Cisco Cache Engine 500 Series. Он интефирован в сеть по следующим причинам.

•          Обеспечивает те же возможности управления сетью, что и в традиционных сетевых устройствах Cisco (такие, как поддержка Cisco IOS CI 1 и RADIUS), что сводит к мииимуму затраты на управление и эксплуатацию.

•          Спроектирован и внедряется скорее как сетевое оборудование для кэширования, чем как автономные серверные платформы, приспособленные для кэширования. Таким образом, устройства высокой плотности Cisco Cache Engines конструктивно лучше интегрируются в инфраструктуру сети в качестве сетевых расширений, прозрачно встраиваемых в существующие сетевые структуры и приспосабливаемые к необычным режимам, что позволяет свести к минимуму затраты на внедрение и эксплуатацию, а также повысить доступность содержимого.

Совместное сетевое кэширование

Кэш-процессор с самого начала разрабатывался как слабосвязанная многоузловая сетевая система, оптимизированная для совместного сетевого клиирования. Кэш- процессорная система состоит из протокола управления Web-кэшированием (Web Cache Control Protocol — WCCP), который является стандартной функцией программного обеспечения Cisco IOS, и одного или нескольких кэш-процессоров Cisco, сохраняющих данные в локальной сети. Обмен информацией между кэш-процессором и маршрутизатором происходит по протоколу WCCP. Согласно этому протоколу маршрутизатор направляет Web-запросы кэш-процессору (а не на соответствующий сервер). Маршрутизатор также определяет доступность кэш-процессора и перенаправляет запросы на новые кэш-процессоры по мере их ввода в действие.

Кэш-процессор Cisco представляет собой специализированное сетевое устройство для хранения и извлечения содержимого посредством высокооптимизированных алгоритмов кэширования и предоставления данных (рис. 54.3).

Рис. 54.11. Динамический сквозной пропуск клиента

Обратное прокси-кэширование

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

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

Функция обратного прокси-кэширования

На рис. 54.12 каждый кэш-процессор привязан к WCCP-маршрутизаторам и WCCP- коммутаторам, обслуживающим многосерверные системы. Когда входящий Web-запрос достигает WCCP-маршрутизатора, последний хеширует IP-адрес и номер порта источника запроса, помещая запрос в одну из 256 ячеек. Эта функция хеширования распределяет входящие запросы статистически равномерно по всем ячейкам. Кроме того, эти ячейки равномерно распределяются по всем кэш-процессорам кластера.

Поскольку функция хеширования основана на обработке IP-адреса и номера порта источника, а не получателя запроса, Web-объект может храниться в нескольких кэш- процессорах кластера. Распределяя часто запрашиваемую информацию по всему кэш- кластеру, функция обратного прокси-кэширования позволяет обслуживать такие запросы нескольким кэш-процессорам. Таким образом, установка в кластере дополнительных кэш-процессоров приводит к повышению скорости доступа к популярным Web-узлам и сокращению времени загрузки содержимого.

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

Литература:

Руководство по технологиям объединенных сетей, 4-е издание. : Пер. с англ. — М.: Издательский дом «Вильяме», 2005. — 1040 с.: ил. – Парал. тит. англ.

Вы можете следить за любыми ответами на эту запись через 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