SAN на базе IP

Конспект вебинара HonorCup E=DC2 для сдачи HCNA Storage.

IP SAN – способ построения сети хранения поверх транспортной сети TCP/IP (на L2 может быть Ethernet или даже Wi-Fi). Для реализации IP SAN чаще всего используется протокол iSCSI. SCSI – де факто отраслевой стандарт передачи данных между приложением и СХД, а iSCSI (internet SCSI) позволил использовать его в IP сетях. iSCSI описывает инкапсуляцию команд SCSI в сеть TCP/IP. Пример построения сети: сервер с HBA (может быть обычная Ethernet NIC, подробнее ниже) обменивается данными с СХД через обычную сеть Ethernet.

Эволюция сетей хранения (SAN) шла по пути DAS -> FC SAN -> IP SAN. Недостатки DAS описаны тут. Основная причина планомерного замещения FC SAN на поверхности – при использовании IP SAN используется Unified сеть со стандартным Ethernet/ip оборудованием и протоколами, что значительно уменьшает стоимость владения (TCO – total cost of ownership).

Преимущества IP SAN

  • Стандартизация – отказ от FC: не нужны FC коммутаторы/FC HBA (не всегда, подробнее ниже) и вообще изучать FC
  • Передача данных на большое расстояние – по сути, по всему миру
  • Простое управление за счет использования IP – больше квалифицированного персонала и инструментов
  • Масштабирование полосы пропускания с бОльшим потенциалом, чем FC (10/40/100G Ethernet в отличии от 16GB FC)

Недостатки IP SAN

  • Безопасность данных при передаче
  • TCP накладывает большие издержки из-за его обработки на CPU (далеко не всегда, TCP offload не новая штука давно, подробнее ниже)
  • Хуже в сравнении с FC SAN справляется с задачами больших блоков данных из-за мелких пакетов и большой издержки на заголовки (тут может помочь FCoE, о нем тоже ниже)

iSCSI протокол

Хост взаимодействует с устройством хранения, используя SCSI команды. iSCSI инкапсулирует SCSI команды и блоки данных в TCP пакеты для передачи по Ethernet+IP сети.

iSCSI initiator для взаимодействия с удаленной стороной (iSCSI target) кладет обычные SCSI команды и блоки данных в iSCSI пакеты и затем в TCP для транспорта по IP сети. Подробнее о SCSI (взаимодействие target и initiator) можно почитать в соответствующей статье.

В iSCSI есть своя адресация отличная от адресации SCSI и TCP/IP, формат ее похож на доменный: iqn.1992-01.com.example – буквы IQN (iSCSI Qualified Names) далее группа цифр в виде года и месяца регистрации доменного имени, далее окончание домена. За разрешение имен iSCSI отвечает сервер Internet Storage Name Service (iSNS, wiki), чаще всего этот сервер реализовывается на FibreChannel коммутаторах.

Процесс инкапсуляции на iSCSI initiator/target:

  • SCSI команды генерируют CDB команды и передаются iSCSI
  • iSCSI генерируют PDU на базе SCSI CDB
  • iSCSI PDU упаковываются в TCP -> IP -> Ethernet

 

Топологии IP SAN

  • Прямое подключение сервера и CХД через сетевые интерфейсы на устройствах – простая конфигурация, минимальная стоимость
  • Один коммутатор – сервера обмениваются с СХД через коммутатор. Одно устройство хранения может использоваться несколькими серверами.
  • Два коммутатора – появляется отказоустойчивость коммутаторов, линков, контроллеров и балансинг нагрузки.

Компоненты IP SAN

Основные компоненты IP SAN:

  • интерфейсные модули (NIC, iSCSI HBA) – обычно подключаются в PCI-e интерфейс на сервере/контроллере СХД
  • Ethernet коммутаторы – обычные, но часто с обязательной поддержкой QoS
  • СХД с поддержкой iSCSI

Интерфейсные модули бывают трех вариантов (на серверах и СХД):

  • NIC + программа initiator iSCSI – самая простая реализация и низкая стомость, но нагрузка на CPU
  • TOE NIC + программа initiator iSCSI – специализированная плата с TCP/IP Offload (часто уже есть в обычных NIC)
  • iSCSI HBA – аппаратная NIC с поддержкой iSCSI и TCP/IP Offload

С точки зрения клиентского ПО при любом из вариантов он взаимодействует с SCSI.  Программы инициаторы есть для всех популярных ОС (Microsoft, UNIX, Linux, BSD).

При схеме NIC + iSCSI initiator, initiator кладет SCSI в iSCSI пакеты в TCP -> IP -> Ethernet, но потребляет часть ресурсов CPU клиента. Кроме того ресурсы расходуются на обработку TCP/IP.

В случае offload часть нагрузки на CPU ПК уменьшается за счет обработки IP/TCP на микросхеме NIC, но потребляются ресурсы на iSCSI initiator.

В случае использовании iSCSI HBA обработка TCP/IP + iSCSI осуществляется на HBA, не нагружая CPU клиента.

СХД для работы в IP SAN должны иметь поддержку iSCSI, как например СХД Huawei ;). Для этого используются платы Ethernet. На платах есть поддержка TCP offload.

Пример iSCSI подключения СХД к серверу через Ethernet коммутаторы.

Сравнение FC SAN с IP SAN

Видно, что почти по всем аспектам IP SAN для новых инсталляций лучший выбор.

Индикатор FC SAN IP SAN
Макс. скорость 16 Gbit/s 10, 40, 100 Gbit/s
Сет. архитектура отдельная сеть FC существующая или отдельная IP сеть
Расстояние ограничено оптической сетью FC SAN (можно поставить промежуточный FC свич, но это не сильно поможет) не ограничено
Управление сложное (в том числе знающий персонал) простое
Совместимость (гетерогенность) плохая (очень сложно или невозможно использовать оборудование разных производителей) хорошая (оборудование разных производителей часто полностью совместимо)
Производительность хорошая хорошая – тут неоднозначано, полоса хорошая, но проблемы с накладными расходами при передаче (см. выше)
Стоимость очень высокая (в том числе на обучение персонала) низкая
Стоимость реализации отказоустойчивости в случае катастроф высокая низкая
Безопасность высокая (авторизация устройств) низкая (по умолчанию, но никто не отменял ipsec/etc)

Конвергенция FC SAN и IP SAN

Обе технологии FC и TCP/IP развиваются и будут еще долго сосуществовать, пишут в слайде, поэтому появились решения по конвергенции сетей. Варианты конвергенции лучше не использовать если есть возможность использования только одного из протоколов (усложнение сети, так же см. все недостатки описанные в IP SAN).

  • FiberChannel передается поверх сетей TCP/IP/Ethernet: FCIP, iFCP, FCOE
  • TCP/IP передается поверх сетей FiberChannel: IPFC (редкий кейс)

Конвергенция в основном затрагивает тематику проброса FC через сеть IP, а не наоборот. Поэтому у меня лично некоторые сомнения в необходимости FC в новых инсталляциях, особенно учитывая вышестоящее сравнение FC SAN и IP SAN.

Пример использования одновременно IP SAN и FC SAN – в СХД при этом используются и IP и FC интерфейсы.x

FCIP – Fibrechannel over IP. Туннелирующих протокол, который инкапсулирует FibreChannel фреймы в IP пакеты для передачи по IP сети. В результате устройства FC могут взаимодействовать друг с другом через TCP/IP сеть. На стыке сетей для реализации должны стоять FCIP gateway (или FCIP LEP – Link end point), имеющие интерфейсы в обе сети.

Как выглядит стек протоколов при использовании FCIP: SCSI команды в FibreChannel фрейме (SOF – адрес в FC), FCIP, TCP, IP, Ethernet.

Протокол iFCP – по сути, аналог FCIP, просто с другим названием. Стек и инкапсуляция так же похожи, описывать смысла не вижу. Такой же проброс FC через IP сеть.  Взаимодействие через своего рода gateway, тоже разницы нет.

  

Пример работы – взаимосвязь 4 разных сетей FC SAN (слияние нескольких ЦОД) между собой через IP сеть используя iFCP шлюзы.

Если сравнивать протоколы iSCSI, FCIP, iFCP с точки зрения инкапсуляции – разницы большой не увидим, все они, по сути, прослойка между SCSI и TCP. Судя из вышестоящей ин-ии FCIP и iFCP требуют промежуточного устройства для проброса FC поверх IP, а iSCSI требует специализированного софта или сетевой карты.

FCoE – отличается от описанных выше протоколов. FibreChannel кадры кладутся напрямую в кадры lossless enhanced Ethernet (о нем ниже), минуя прослойку TCP-IP.

FCoE работает поверх не простого Ethernet, а поверх Converged Enhanced Ethernet (CEE) или Data Center Bridging (DCB) (см. wiki  или habr). Причина? В обычном Ethernet возможны потери и он не гарантирует доставку, а транспортируемый FibreChannel накладывает обязательные требования по отсутствию потерь.

В ряде новых стандартов 802.3, применимых для последних скоростей 10 gbit/s и более, внесены дополнения, которые позволяют сделать Ethernet lossless протоколом. Поэтому DCB работает только на скоростях 10 gbit/s и более, что оставляет за бортом кучу устройств и применение FCoE пока не так распространено, как iSCSI, но его используют все чаще.

Для гарантии доставки в CEE/DCB реализованы ряд технологий типо flow control, qos для:

  • Приоритизации
  • Гарантии доставки
  • Предотвращения потерь

  

Multipath

см. в FC SAN

Вопросы

все вопросы/ответы по теме тут

Leave a Reply