iSCSI: выбор с перспективой развития

22 март, 2006 - 00:00Сергей Грицачук

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

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

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

Как один из выходов из сложившейся ситуации было предложено внедрение внешних хранилищ DAS (Direct Attached Storage). Представляя собой, по сути, реинкарнацию обычного встроенного диска, такие модули внешней памяти могли обеспечить более широкие возможности для управления, а самые продвинутые из них допускали одновременное подключение нескольких серверов. Существенным недостатком такого подхода стало территориальное ограничение: расстояние между накопителем и системой обработки не могло превышать 25 м, поскольку определялось техническими параметрами применяемого интерфейса, в качестве которого традиционно выступал SCSI (Small Computer System Interface).

Более интересное предложение – построение подсистемы хранения данных по принципу сетевого ресурса. Это стало возможным благодаря внедрению сетей на основе протокола Fibre Channel (FC), обладающих высокой пропускной способностью (до 2 Gbps), повышенной надежностью, однако полностью несовместимых с прочно внедрившимся стандартом IP. Тем не менее с их помощью была разработана технология хранения данных SAN (Storage Area Network). Реализация такого решения представляла собой отдельную сеть, независимую от построенной на базе TCP/IP, где использовалась совершенно иная технология, поэтому ее администрирование также выполнялось отдельно и требовало от обслуживающего персонала специальных знаний.

К сети хранения SAN могут подключаться RAID, простые массивы дисков, JBOD (Just a Bunch of Disks), ленточные или магнитооптические библиотеки для резервирования и архивирования данных. Основными компонентами для организации сети SAN, помимо самих устройств хранения, являются адаптеры для подключения серверов к Fibre Channel (НВА, Host Bus Adapter), cетевые устройства для поддержки той или иной топологии FC-сети и специализированный программный инструментарий для управления сетью хранения.

iSCSI выбор с перспективой развития
iSCSI с легкостью внедряется в инфраструктуру предприятия, не требуя, в отличие от FC, дополнительных затрат на сетевое оборудование

Главным преимуществом этой технологии стала возможность территориального разнесения компонентов вычислительной системы на расстояние до 100 км, что позволяло решить задачу централизованного доступа к данным нескольких корпоративных подразделений. Но все эти несомненные достоинства сводились на нет одним существенным недостатком – высокой стоимостью оборудования и его эксплуатации. Именно поэтому внедрение SAN и Fibre Channel никак не вписывалось в рамки малого и среднего бизнеса. Таким образом, проблема создания территориально разнесенных сетевых хранилищ продолжала существовать, что привело к появлению нескольких вариантов ее решения. Более того, крупные компании разделились на два лагеря, выступая с категоричными заявлениями. Например Марк Канепа, вице-президент Sun Microsystems, ответственный за производство всех систем хранения данных, заявил, что IP Storage был всего лишь «мечтой», и что «непрактично применять TCP/IP для организации SAN из-за большой задержки в таких сетях. Даже если у сетей хранения на основе IP есть будущее, то наступит оно через четыре-пять лет, а возможно, не наступит никогда...».

Пока ведущие разработчики думают, каким требованиям должна удовлетворять концепция IP Storage, рынок нуждается в готовых решениях. И самыми первыми из них внедрялись переработанные или надстроенные системы на базе FC – Fibre Channel Оver IP (FCIP) и Internet Fibre Channel Protocol (iFCP). Собственно, эти протоколы предназначены для объединения территориально разнесенных узлов, построенных на основе существующих SAN FC. К сожалению, они не выполнили главной задачи – обеспечения достаточно приемлемого ценового уровня для создаваемых с нуля инфраструктур для малого и среднего бизнеса. Это и предопределило успех iSCSI в данном секторе как решения, не требующего надстроек и прослоек над более дорогими системами.

iSCSI – немного подробностей

По определению SNIA, iSCSI (Internet Small Computer System Interface) – это протокол, который базируется на TCP/IP и разработан для установления взаимодействия и управления системами хранения данных, серверами и клиентами (подробнее).

По сути, iSCSI описывает транспортный протокол для SCSI, который работает поверх TCP, новый механизм инкапсуляции SCSI-команд в IP-сети и протокол для последнего поколения систем хранения данных, которые будут использовать нативный TCP/IP. Архитектура обычного SCSI базируется на клиент-серверной модели. Клиент (сервер или рабочая станция) инициирует запросы на считывание или запись данных с исполнителя, например, системы хранения данных. Команды, которые выдает клиент и обрабатывает исполнитель, помещаются в Command Descriptor Block (CDB). Сервер выполняет команду и сигнализирует об окончании ее выполнения. Инкапсуляция и надежная доставка CDB-транзакций между инициаторами и исполнителями через TCP/IP-сеть и есть главная задача iSCSI, причем ее приходится осуществлять в нетрадиционной для SCSI потенциально ненадежной среде IP-сетей. Таким образом, на протокол iSCSI возлагается обязательная функция контроля передачи блоков данных и подтверждения достоверности завершения операции ввода/вывода.

С помощью iSCSI возможно решить задачи консолидации систем хранения и резервирования данных, кластеризации серверов, репликации (дублирования), а также восстановления в аварийных ситуациях. Кроме того, появляются новые возможности, эффективно реализуемые с использованием IP Storage: географическое распределение SAN, QoS и обеспечение безопасности. Построение новых систем хранения данных, для которых iSCSI будет «родным» протоколом, даст целый ряд дополнительных преимуществ, предлагая единую технологию для подсоединения систем хранения, серверов и клиентов в рамках LAN, WAN, MAN и SAN; использование накопленного опыта в Ethernet и SCSI; возможности значительного географического отдаления систем хранения и применения существующих средств управления сетями TCP/IP.

Для передачи данных на Storage с интерфейсом iSCSI можно использовать не только носители, коммутаторы и маршрутизаторы существующих сетей LAN/WAN, но и обычные сетевые контроллеры. Правда, при этом возникают значительные расходы процессорной мощности (до 100% на стороне клиента). По утверждению разработчиков, программная реализация iSCSI в среде Gigabit Ethernet может быть оправдана исключительно ее низкой стоимостью. Для достижения максимальной эффективности рекомендуются специальные сетевые карты, поддерживающие механизмы разгрузки CPU от обработки стека TCP.

Безопасность

В связи с использованием iSCSI в сетях, где возможен несанкционированный доступ к данным, спецификацией предусмотрено применение различных способов повышения безопасности. Протокол защиты IPsec, выполняющий аутентификацию и проверку целостности, поддерживается стандартом iSCSI. Основной механизм такой защиты – криптография, требующая значительных ресурсов, поэтому возможность ее использования зависит от конкретных условий заказчика. Даже если этот протокол реализован в iSCSI HBA, необходимо уточнять, где именно выполняется шифрование – на HBA (с помощью микрокода или аппаратно) или на хосте. В последнем случае создается значительная нагрузка на хост, особенно при переходе к стандарту 10 GbE.

Если IPsec не поддерживается компонентами iSCSI, требуется внешнее решение. Для сетей TCP/IP разработано множество вариантов обеспечения безопасности (программных и аппаратных), в частности защитные экраны и VPN. Единственное, на что следует обратить внимание при выборе таких систем – их влияние на время ввода/вывода. Для аутентификации могут использоваться разнообразные решения, например Kerberos или обмен ключами, при этом репозитарием ключей может служить сервер iSNS (Internet Storage Name Service).

Протоколы FCIP и iFCP

Протокол FCIP обеспечивает только туннелирование, при котором блоки FC упаковываются в пакеты TCP/IP и передаются по сети TCP/IP. Принцип его работы таков: маршрутизатор хранения (конвертер) подсоединяется к коммутатору FC и выполняет упаковку блоков. Пакеты TCP/IP поступают к получателю, который подключен ко второму коммутатору FC. Маршрутизатор извлекает блок FC из пакета TCP/IP и передает его коммутатору FC. Протокол FCIP не различает блоки с данными и с управляющими последовательностями, координирующими работу SAN-фермы. Таким образом устанавливается связь FCIP между двумя отдельными фермами SAN (несколько коммутаторов в одном адресном пространстве) и происходит их объединение.

В каждой исходной SAN-ферме имеется базовый коммутатор, который координирует назначение адресов, однако во вновь созданной SAN может быть только один такой узел. Процедуры определения «мастера» и единого распределения адресов выполняются в сетях FC автоматически и на несколько секунд приводят к прерыванию обмена. В случае обрыва соединения FCIP происходит обратный процесс, при котором каждая из двух вновь образованных ферм сама определяет своего «мастера». При низком качестве связи FCIP такие перебои возникают не только в отдельных соединениях, но и во всей инфраструктуре.

Основная задача протокола iFCP – соединение устройств FC через сеть IP, при этом коммутация и маршрутизация IP заменяют сервисы FC. Данный протокол определяет связь между шлюзами. В отличие от туннелирования FCIP здесь отдельные SAN не объединяются. Последствия ошибок, которые, например, могут привести к реконструкции всего массива, проявляются только локально. Для iFCP также требуется как минимум два отдельных маршрутизатора хранения. Одна из главных проблем этого протокола связана с согласованной обработкой метаданных (прав доступа в форме зон и т. п.). Для ее решения в настоящее время разрабатывается стандарт iSNS.

Заключительные замечания

Конечно, если главное условие – низкая стоимость системы, то выбор в пользу iSCSI однозначен. Но все-таки стоит учитывать некоторые нюансы. Так, в конфигурациях FC имеется несколько встроенных функций, гарантирующих оптимальную пропускную способность, заданный порядок реагирования на превышение пороговых значений параметров и максимальную безопасность. Такие функции вполне реализуемы и в сети TCP/IP, хотя это требует дополнительных ресурсов и усложняет управление. Многие полагают, что эффективное применение iSCSI в корпоративных сетях невозможно без механизма TOE. В настоящее время цены на iSCSI HBA с TOE сопоставимы с ценами на FC HBA.

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

На сегодняшний день высокопроизводительные устройства iSCSI HBA с TOE поддерживают пропускную способность 1 Gbps, а системы FC HBA – 2 Gbps. В ближайшее время ожидается переход на скорость 10 Gbps, что может составить серьезную конкуренцию технологии FC, особенно с появлением доступных по цене адаптеров iSCSI HBA 10 Gbps с TOE.