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

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

УСТРОЙСТВА «ПРЯЧУТ» ГЛОБАЛЬНУЮ СЕТЬ

В проектах по переводу серверов файлов и печати в общий для всех филиалов вычислительный центр немало неприятностей доставляет непредсказуемое поведение сигналов во времени. Чем больше расстояние, тем сложнее предсказать возможную задержку в глобальной сети. При этом вариации задержки сигнала служат лишь спусковым механизмом непредсказуемого снижения производительности сети в филиалах. Действительной причиной являются унаследованные коммуникационные протоколы для служб печати, файлов и серверов, таких, как сетевая файловая система (Network File System, NFS) в области Linux и общая межсетевая файловая система (Common Internet File System, CIFS) на платформах Windows.

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

ТАК РАБОТАЮТ NFS и CIFS

В так называемых глобальных файловых службах (Wide Area File Services, WAFS) устройства подобного рода всегда выступают в дуэте (симметричное использование): в качестве механизма управления файлами в ядре (Core File Engine, CFE) в центре и в качестве механизма управления файлами на периметре (Edge File Engine, EFE) в филиале. Таким образом, периферийное специализированное устройство выглядит для клиента как стандартный хост в сети. Для клиентов NFS оно зарегистрировано в локальной таблице DNS, а для каждого экспортированного с центрального файлового сервера каталога предоставляет локально точку монтирования. Доступ к ней осуществляется при помощи стандартного протокола монтирования (Standard Mount Protocol, SMP), который является составной частью NFS начиная с версии 4.

Для клиентов CIFS одно специализированное устройство может также представлять различные файловые серверы. В вычислительном центре оно отображает соответствующее логическое имя хоста EFE на исходный файловый сервер. Клиенты Windows в филиалах могут таким образом легко обращаться к логическим файловым серверам в их непосредственной сетевой среде при помощи команды настройки сеанса CIFS. В качестве альтернативы в масштабе всего предприятия можно организовать глобальное пространство имен, к примеру для совместной обработки документов. Для этого предлагается использовать распределенную файловую систему (Distributed File System, DFS) — механизм для сохранения файлов в каталогах на базе древовидной структуры.

ИНТЕЛЛЕКТУАЛЬНОЕ КЭШИРОВАНИЕ

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

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

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

ОДНОВРЕМЕННЫЙ ДОСТУП ПОЛЬЗОВАТЕЛЕЙ

Настройка производительности посредством сетевого устройства нацелена на оптимизацию параллельного использования файлов несколькими пользователями в разных филиалах.

В идеальном случае с централизованно хранящимися документами Word или Excel оказывается возможно работать так же, как и при доступе из локальной сети. Поэтому парное устройство поддерживает режим совместного пользования CIFS при одновременном обращении из локальной и глобальной сетей. То же самое справедливо и в отношении NFS, где локальное и глобальное блокирование файлов также идут рука об руку.

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

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

ПОЛНЫЙ ГАЗ

Для локальных сред разрабатывались не только NFS и CIFS, но и множество распространенных бизнес-приложений. Поэтому при их предоставлении по каналам глобальных сетей проблемы с производительностью доставляют столько же хлопот, что и при удаленном доступе к файловому серверу.

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

Для отдельного канала между двумя специализированными устройствами можно одновременно сконфигурировать несколько соединений TCP/IP. Тогда запросы и ответы на них поступают параллельно по разным каналам TCP. В таком случае транспортные ресурсы используются более эффективно, тем более что протокол адаптации позволяет сократить время задержки, из-за которой производительность приложений при передаче ТСР заметно снижается. Для предотвращения конфликтов между одновременно функционирующими приложениями протокол работает, помимо прочего, с сетевыми механизмами управления пропускной способностью.

ЦЕНТРАЛИЗОВАННОЕ УСТРАНЕНИЕ БАРЬЕРОВ ПРОИЗВОДИТЕЛЬНОСТИ

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

Основной замысел асимметричного подхода заключается в том, чтобы уменьшить трафик приложений через глобальную сеть, без изменения приложений. Для снижения времени задержки в глобальной сети такие системы используют различные технологии оптимизации, к примеру Flash Forward Object Acceleration. Вызов страниц через Web, как правило, требует проверки всех объектов в кэше браузера. Каждая отдельная проверка сопровождается генерацией запроса от клиента к серверу. Нередко в случае такого запроса приходится передавать 20 Кбайт и более в восходящем направлении.

Чем больше встроенных объектов, тем дольше длится компоновка страницы и тем выше нагрузка на сеть. Flash Forward Object Acceleration собирает информацию о версиях всех объектов и в компактной форме добавляет ее для загрузки в вышестоящий (родительский) документ HTML. Если, к примеру, «дата последнего изменения» или «дата окончания срока действия» объекта на серверной странице еще не истекла, то последняя версия находится в кэше. Это предотвращает отправку запроса HTTP GET при новом обращении к странице, и соответствующий трафик клиентом не передается.

Ненужных проверок актуальности объектов можно избежать также при помощи так называемой интеллектуальной переадресации (Smart Redirect). Многие разработчики приложений для автоматической переадресации страниц охотнее используют метатеги HTML, игнорируя более неудобные URL. Однако при этом следует проверять все объекты и для страниц, выполняющих исключительно функцию щита переадресации, что приводит к появлению многочисленных излишних запросов. Smart Redirect конвертирует метатеги HTML в информацию заголовка HTML и таким образом сбрасывает балласт неиспользуемых объектов.

ДЕЛЬТА-КОДИРОВАНИЕ

Оптимизированное кэширование представляет собой испытанный метод в тех случаях, когда содержимое страниц Web остается неизменным в течение продолжительного времени. Но если оно меняется слишком часто, то метод оказывается неэффективным: количество запросов не удается снизить сколь-нибудь значительно — просто потому, что почти все из них на самом деле важны. Тем не менее определенную оптимизацию осуществить можно, поскольку большинство модификаций страницы несущественно. Поэтому асимметричный подход предлагает метод для передачи только этой незначительной разницы между новой и старой страницей — разницы между сервером и клиентским кэшем, которая чаще всего составляет несколько байт. Даже если изменяются 2000 байт в документе HTML общим объемом 50 Кбайт, экономия составляет 96% избыточной информации.

Дельта-кодирование (Delta Encoding) базируется на концепции базовых и разностных файлов: базовый файл представляет собой страницу Web в том виде, в котором она находится в кэше браузера. Разностный файл содержит инструкции для браузера о том, как нужно изменить страницу на байтовом уровне, чтобы она соответствовала последней версии страницы на удаленном сервере. Принцип заключается в следующем: создание содержимого на месте из имеющихся реально измененных фрагментов вместо постоянной передачи целых страниц Web.

Портальные приложения часто маркируют такие объекты страниц, как рисунки, сценарии Java, элементы управления Active-X или бинарные данные, в качестве «некэшируемых», когда, например, соответствующий объект может непредвиденным образом измениться в результате реакции на действия пользователя. Такого рода некэшируемые объекты сами по себе являются тормозом производительности, поскольку браузеру приходится заново загружать страницу при каждом ее новом вызове. В локальной сети они могут быть полезными, однако в глобальной сети их неэффективность не оправдана. Поэтому необходимо использовать асимметричную систему оптимизации с собственной оценкой объектов реального времени: она удаляет маркировку и вводит управление версиями затронутого объекта. Тогда для всех объектов имеет силу общее правило: уже известная информация по глобальной сети не передается.

ЗАКЛЮЧЕНИЕ

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

Клаусс Ленссен — менеджер по развитию бизнеса в области безопасности и ориентированных на приложения сетей компании Cisco. С ним можно связаться по адресу: wg@lanline.awi.de.


? AWi Verlag

Поделитесь материалом с коллегами и друзьями