Руководство по технологиям объединенных сетей Cisco (953103), страница 169
Текст из файла (страница 169)
839 Глава 54. Технологии сетевого кэширования Такая линейная масштабируемость достигается благодаря тому, что маршрутизаторы с функцией %ССР псренаправляют потоки данных на кзш-процессоры. %ССР- маршрутизаторы осуществляют хеширование по 1Р-адресу, указанному во входящем запросе, направляя запрос в одну из 256 дискретных ячеек. Эта хэш-функция распределяет входящие запросы статистически равномерно по всем ячейкам. Кроме того, эти ячейки равномерно распределены по всем кэш-процессорам. Благодаря %ССР- маршрутизаторам удается сделать так, чтобы каждый кэш-процессор обрабатывал запросы для определенного 1Р-адреса!пгегпег, Эмпирически такой алгоритм обеспечивает равномерное распределение нагрузки на кластеры кэш-процессорной системы. Большинство известных %еЬ-узлов имеют несколько 1Р-адресов, что препятствует неравномерному распределению загрузки.
Если добавить в кластер новый кэш-процессор, %ССР-маршрутизатор обнаруживает присутствие последнего и перераспределяет 256 ячеек, чтобы разместить в них дополнительный кэш-процессор. Например, в простейшей структуре из одного маршрутизатора и одного кзш-процессора все 256 ячеек назначаются одному кэшпроцессору. Если добавить в систему еще один процессор, то %ССР-маршрутизатор равномерно распределит пакеты между двумя кэш-процессорами так, чтобы на каждое устройство приходилось по !28 ячеек. Если установить третий кэш-процессор, %ССР-маршругизатор назначит каждому из трех устройств 85 или 86 ячеек. Установка новых кэш-процессоров может осуществляться "на ходу", без отключения системы, когда кластеры работают на полной мощности. В этой ситуации %ССР- маршрутизатор автоматически перераспределяет ячейки между всеми членами кэшкластсра, включая вновь установленный кэш-процессор, Поскольку у нового кэшпроцессора еще нет содержимого, в кэше будет часто нс хватать ланных для ответа иа запрос до тех пор, пока в локальное хранилище нс будет занесено достаточно содержимого.
Для того чтобы смягчить период "раскачки", новый кэш-процессор на начальном этапе запрашивает необходимую информацию у других членов кэш-кластера, Если таковая обнаружена, то она передастся новому кэш-процессору, Если новый кзш-процессор сочтет, что получил от глснов кластера достаточно содержимого (согласно параметрам конфигурации), то при недостатке данных в кэшс оп начнет обращаться за содержимым непосредственно к конечному серверу, а не к другим кэшпроцессорам кластера.
Отказоустойчивость и защита от сбоев Если в каком-либо из кэш-процессоров кластера происхолит сбой, то кластер восстанавливается автоматически. %ССР-маршрутизатор равномерно перераспрслсляст загрузку отказавшего кэш-процессора между остальными кэш-процессорами.
Кэшкластер продолжает работу, используя на олин кэш-процсссор меньше. Система сетевого кэширования Сасо обеспечивает совместный доступ к кластеру кэш-процессоров пары маршрутизаторов, поддерживающих протокол %ССР и протокол мультигруппового маршрутизатора "горячего" резервирования (Мц!Бйгоцр Но)-8)апг)Ьу Коцгег Ргогосо! — МНБКР), что образует полностью избыточную систему кэширования, называемую множественной %ССР-адресацией (%ССР шц!грногп!п8).
В случае отказа %ССР-маршрутизатора начинают работать стандартные механизмы отказоустойчивости и восстановления Сосо !08. Например, маршрутизатор "горячего" резервирования может динамически взять на себя перенаправление сетевых запросов кластеру каша. Если откажет весь кзш-кластер, то %ССР-маршрутизатор автоматически прекращает псрена- 841 Глава 54.
Технологии сетевого кзц)ирования правление потоков данных кэш-кластеру, посылая %еЬ-запросы клиентов узлу- источнику традиционным способом. Для пользователей полный сбой кэш-кластера въы разится только в увеличении времени загрузки %еЬ-содержимого. Такая структурная отказоустойчивость достигается благодаря тому, что кэш-кластер не расположен на пути прохождения остальных потоков данных клиентов. Поддержка многоадресных МССР-маршрутизаторов Как уже отмечалось, система сетевого кэширования Сосо позволяет подключать кэш-процессорный кластер к нескольким %ССР-маршрутизаторам для обеспечения избыточности. Таким образом, %еЬ-данные от всех %ССР-маршрутизаторов перенаправляется кэш-кластеру. Например, кэш-процессорный кластер, подключенный к обоим маршрутизаторам МНБКР-парьь образует полностью избыточную систему кэширования, в которой нет одиночных точек отказа (рис.
54.7). Пара МНЗПР- маршрутизаторов Кластер кэш-лроцессоров Рис. 54. 7. Конфигурации наглостью избыточного кэш-процессорного кластеРа Снятие избыточной нагрузки В случае внезапного всплеска потоков %еЬ-данных на кэш-процессорном кластере может возникнуть перегрузка. Для того чтобы обойти эту ситуацию, в случае если кэш-процессор определяет, что кластер перегружен, то он отказывается от дополнительных запросов и передает их серверам-источникам.
Последние отвечают непосредственно клиентам, поскольку переданные им запросы не были обработаны кэшпроцессором (рис. 54.8). Перегруженный кэш-процессор возобновит прием запросов, когда найдет достаточно ресурсов, чтобы сделать это без риска перегрузки в ближайшем будущем. Режим перегрузки автоматически включается и отключается центральным процессором и файловой системой. В критической ситуации, когда кэш-процессор настолько перегружен, что оказывается неспособным ответить на основные %ССР-сообщения проверки состояния от своего маршрутизатора, %ССР-маршрутизатор удаляет кэшпроцессор из кластера и перераспределяет его ячейки. Часть згй.
Управление сетями й Вр Рис. 54.8. Сннтие избыточной нагрузки Таким образом, режим снятия избыточной нагрузки гарантирует, что кэшпроцессорный кластер не приведет к аномальным задержкам и сохранит доступ к сети даже цри необычно интенсивном потоке данных. Динамический сквозной пропуск клиентов На некоторых %еЬ-узлах требуется идентификация клиентов по 1Р-адресу. Однако если между клиентом и %еЬ-сервером стоит сетевой кэш, то %еЬ-сервер "видит" только 1Р-адрес каша, но не адрес клиента. Для решения этой и подобных проблем, в Сасо СасЬе Еоя1ое имеется функция динамического сквозного пропуска клиентов, которая позволяет последним цри определенных условиях подключаться к %еЬ-серверу нецосредствнно, в обход кэш-процессора.
Смсо СасЬе Еоя1пе сохраняет существующие модели 1Р-идентификации и цередает каиентам сообщения об ошибках с сервера. Поскольку кэш-процессор динамически адаптируется к ситуации, дчя обеспечения прозрачности каша требуется меньше усилий. Функция динамического сквозного пропуска клиентов На рис.
54.9 показана ситуация, когда клиент посылает %еЬ-запрос, который перенаправляется кэш-цроцессору. Если на кэш-цроцессоре нет соответствующего содержимого, то он пытается получить его с источника на %еЬ-сервере. ый Ер Рис. 54.й Динамический скеознай нронуск клиента 843 Глава 54.
Технологии сетевого кэширования На рис. 54.10 изображена ситуапия, когда в ответ на запрос кэш-пропессора сервер вьшает код сообщения об ошибке НТТР (например, 40! — несанкционированный доступ, 403 — запрет доступа или 503 — недоступность службы). В этом случас кэшпроцессор запускает систему динамического сквозного пропуска клиснта. Он динамически сохраняет 1Р-адреса клиента и сервера, к которому он обращается, для того, чтобы пропускать все последующие пакеты, направляющиеся по этому пути.
Кэшпроцессор посылает броузеру клиента автоматически формируемое НТТР-сообщение о необходимости повторной попытки. |й аер Формирование пары адресов дпя сквозного пропусеа Сообщение Кат-ПРОЦаоососа об автоматическом повторе Рис. 54. (О. Диззаиический сквозной пропуск клиента На рис. 54.1! показана ситуация, когда броузер клиента автоматически произволит перезагрузку. Запрос перенаправляется кэш-процессору. Однако после проверки таблицы сквозного пропуска и обнаружения записи, которой соответствует запрос, кэшпроцессор отказывает в удовлетворении запроса и отправляет его напрямую ссрверуисточнику.
Таким образом, сервер-источник получает 1Р-адрес клиента, идентифицирует его и отвечает непосредственно клиенту. успешная й ер Рис. 54. П. Линаиический сквозной пропуск клиента Обратное прокси-кэширование Кэш-процессоры часто размещают рядом с клиентами для ускорения реагирования сети и сокращения использования глобальных каналов связи. Таким образом, в каши 844 Часть ч(П1. Управление сетями заносится информация, к которой клиенты обращаются наиболее часто.
Кроме того, кэш-процессоры иногда размещают перед многосерверными системами с целью повышения их пропускной способности и скорости работы %еЬ-узла. Такая конфигурация называется обршпным лрокси-кэшированием, так как в кэш-процессоры попадает содержимое только с тех %еЬ-серверов, перед входом на которые они установлены. Такая возможность особенно полезна в том случае, когда кэш-процессоры устанавливаются на входе многосерверных систем, где некоторая информация используется гораздо чаше, чем другая.