Из Википедии, свободной энциклопедии
Перейти к навигации Перейти к поиску

При вычислении, ISCSI ( / s к ʌ г я / ( слушать ) Об этом звуке EYE -skuz-Й ) является аббревиатурой Internet Small Computer Systems Interface , в интернете - протоколе основанного хранения сетевого стандарт для связывания объектов хранения данных (IP). Она обеспечивает доступ на уровне блоков для устройств хранения данных путем осуществления SCSI команд через TCP / IP сети. iSCSI используется для облегчения передачи данных по интрасетям.и управлять хранилищем на больших расстояниях. Его можно использовать для передачи данных по локальным сетям (LAN), глобальным сетям (WAN) или через Интернет, а также обеспечивать хранение и поиск данных независимо от местоположения.

Протокол позволяет клиентам ( так называемые инициаторам ) , чтобы посылать команды SCSI ( CDBS ) на устройства хранения ( мишени ) на удаленных серверах. Это протокол сети хранения данных (SAN), позволяющий организациям объединять хранилища в массивы хранения , обеспечивая клиентам (например, базам данных и веб-серверам) иллюзию локально подключенных дисков SCSI. [1] Он в основном конкурирует с Fibre Channel , но в отличие от традиционного Fibre Channel, который обычно требует выделенных кабелей, [a] iSCSI может работать на больших расстояниях с использованием существующей сетевой инфраструктуры. [2] Протокол iSCSI был впервые предложен IBM и Cisco в 1998 году и представлен в качестве проекта стандарта в марте 2000 года [3].

Концепции [ править ]

По сути, iSCSI позволяет двум хостам согласовывать, а затем обмениваться командами SCSI, используя сети Интернет-протокола (IP). Таким образом, iSCSI использует популярную высокопроизводительную шину локального хранилища и эмулирует ее в широком диапазоне сетей, создавая сеть хранения данных (SAN). В отличие от некоторых протоколов SAN, iSCSI не требует выделенных кабелей; его можно запустить поверх существующей IP-инфраструктуры. В результате iSCSI часто рассматривается как недорогая альтернатива Fibre Channel , для которой требуется выделенная инфраструктура, за исключением FCoE (Fibre Channel over Ethernet). Однако производительность развертывания iSCSI SAN может быть значительно снижена, если она не работает в выделенной сети или подсети (LAN или VLAN).) из-за конкуренции за фиксированную полосу пропускания.

Хотя iSCSI может взаимодействовать с устройствами SCSI произвольного типа, системные администраторы почти всегда используют его, чтобы разрешить серверам (например, серверам баз данных) доступ к дисковым томам в массивах хранения. Сети iSCSI SAN часто преследуют одну из двух целей:

Консолидация хранилища
Организации перемещают разрозненные ресурсы хранения с серверов по своей сети в центральные места, часто в центры обработки данных; это позволяет повысить эффективность распределения хранилища, поскольку само хранилище больше не привязано к определенному серверу. В среде SAN серверу можно выделить новый дисковый том без каких-либо изменений в оборудовании или кабелях.
Аварийное восстановление
Организации зеркалируют ресурсы хранения из одного центра обработки данных в удаленный центр обработки данных, который может использоваться в качестве горячего / резервного в случае длительного простоя. В частности, сети хранения данных iSCSI позволяют переносить целые дисковые массивы через глобальную сеть с минимальными изменениями конфигурации, что фактически делает хранилище «маршрутизируемым» таким же образом, как и сетевой трафик. [ необходима цитата ]

Инициатор [ править ]

An инициатор функционирует в качестве клиента. ISCSI Инициатор обычно служит той же цели для компьютера, что и адаптер шины SCSI, за исключением того, что вместо физического подключения устройств SCSI (таких как жесткие диски и устройства смены лент) инициатор iSCSI отправляет команды SCSI по IP-сети. Инициаторы делятся на два основных типа:

Программный инициатор использует код для реализации iSCSI. Обычно это происходит в резидентном драйвере устройства, который использует существующую сетевую карту (NIC) и сетевой стек для эмуляции устройств SCSI для компьютера, используя протокол iSCSI. Программные инициаторы доступны для большинства популярных операционных систем и являются наиболее распространенным методом развертывания iSCSI.

Аппаратный инициатор использует специальное оборудование, обычно в сочетании с микропрограммой, работающей на этом оборудовании, для реализации iSCSI. Аппаратный инициатор снижает накладные расходы на обработку iSCSI и TCP и прерывания Ethernet и, следовательно, может улучшить производительность серверов, использующих iSCSI. Адаптер главной шины iSCSI (чаще HBA) реализует аппаратный инициатор. Типичный HBA-адаптер представляет собой комбинацию контроллера сетевого интерфейса Gigabit (или 10 Gigabit) Ethernet , какой-то технологии TCP / IP Offload Engine (TOE) и адаптера шины SCSI, как это представляется операционной системе. HBA-адаптер iSCSI может включать дополнительное ПЗУ PCI, чтобызагрузка с iSCSI SAN.

ISCSI разгрузить двигатель или Isoe карты , предлагает альтернативу полной ISCSI HBA. ISOE «разгружает» операции инициатора iSCSI для этого конкретного сетевого интерфейса с хост-процессора, освобождая циклы ЦП для основных хост-приложений. iSCSI HBA или iSOE используются, когда дополнительное повышение производительности оправдывает дополнительные расходы на использование HBA для iSCSI [4] вместо использования программного клиента iSCSI (инициатора). iSOE может быть реализован с дополнительными службами, такими как механизм разгрузки TCP (TOE), чтобы еще больше снизить загрузку ЦП хост-сервера.

Цель [ править ]

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

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

Общие сценарии развертывания для цели iSCSI включают:

Массив хранения [ править ]

В центре обработки данных или в корпоративной среде цель iSCSI часто находится в большом массиве хранения. Эти массивы могут быть в виде серийного оборудования с реализациями iSCSI на основе бесплатного программного обеспечения или в виде коммерческих продуктов, таких как Quantastor , CloudByte, StorTrends , Pure Storage , HP StorageWorks , EqualLogic , Tegile Systems , Nimble storage , Reduxio , IBM Storwize. семейство , Isilon , NetApp filer , Dell EMC , Kaminario , NS-series, CX4, VNX, VNXe, VMAX,Hitachi Data Systems HNAS или Pivot3 vSTAC.

Массив хранения обычно предоставляет различные цели iSCSI для множества клиентов. [5]

Программная цель [ править ]

Почти все современные основные серверные операционные системы (такие как BSD , Linux , Solaris или Windows Server ) могут предоставлять целевые функции iSCSI либо в качестве встроенной функции, либо с дополнительным программным обеспечением. Некоторые специализированные операционные системы реализуют поддержку цели iSCSI.

Номер логической единицы [ править ]

В терминологии SCSI LU обозначает логическую единицу , которая определяется уникальным номером логической единицы . LUN представляет собой индивидуально адресуемое (логическое) устройство SCSI, которое является частью физического устройства SCSI (цели). В среде iSCSI LUN представляют собой нумерованные диски. [ необходима цитата ] Инициатор договаривается с целью, чтобы установить соединение с LUN; в результате получается соединение iSCSI, которое имитирует соединение с жестким диском SCSI. Инициаторы обрабатывают iSCSI LUN так же, как жесткие диски SCSI или IDE; например, вместо монтирования удаленных каталогов, как это было бы в NFS или CIFS среды, форматирование систем iSCSI и непосредственное управление файловыми системами на iSCSI LUN.

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

Загрузка по сети [ править ]

Для общего хранения данных на уже загруженном компьютере любой тип универсального сетевого интерфейса может использоваться для доступа к устройствам iSCSI [ необходима ссылка ] . Однако общий сетевой интерфейс потребительского уровня не может загружать бездисковый компьютер из удаленного источника данных iSCSI [ необходима ссылка ] . Вместо этого сервер обычно загружает свою начальную операционную систему с TFTP- сервера или локального загрузочного устройства, а затем использует iSCSI для хранения данных после завершения загрузки с локального устройства [ необходима цитата ] .

Отдельный DHCP-сервер может быть настроен для поддержки интерфейсов, оснащенных возможностью загрузки по сети , чтобы иметь возможность загружаться через iSCSI. В этом случае сетевой интерфейс ищет DHCP-сервер, предлагающий загрузочный образ PXE или bootp . [6] Это используется для запуска процесса удаленной загрузки iSCSI, используя MAC-адрес загружаемого сетевого интерфейса, чтобы направить компьютер к правильной цели загрузки iSCSI [ необходима ссылка ] . Затем можно использовать программный подход для загрузки небольшой программы загрузки, которая, в свою очередь, может смонтировать удаленную цель iSCSI, как если бы это был локальный диск SCSI, а затем запустить процесс загрузки с указанной цели iSCSI [цитата необходима ]. Это может быть достигнуто с помощью существующегозагрузочного ПЗУPreboot Execution Environment(PXE), которое доступно на многих проводных адаптерах Ethernet. Загрузочный код также может быть загружен с CD / DVD, гибкого диска (или образа гибкого диска) и USB-накопителя, или он может заменить существующий загрузочный код PXE на адаптерах, которые можно повторно прошить. [7]Самым популярным бесплатным программным обеспечением, предлагающим поддержку загрузки iSCSI, являетсяiPXE. [8]

Большинство контроллеров Intel Ethernet для серверов поддерживают загрузку iSCSI. [9]

Обращение [ править ]

iSCSI использует TCP (обычно TCP-порты 860 и 3260) для самих протоколов с именами более высокого уровня, используемыми для адресации объектов внутри протокола. Специальные имена относятся как к инициаторам, так и к целям iSCSI. iSCSI предоставляет три формата имен:

Полное имя iSCSI (IQN)
Формат. Полное имя iSCSI задокументировано в RFC 3720, а другие примеры имен - в RFC 3721. Вкратце, это поля:
  • буквальный iqn (полное имя iSCSI)
  • дата (гггг-мм), когда орган, занимающийся именованием, стал владельцем домена
  • перевернутое доменное имя органа власти (например, org.alpinelinux, com.example, to.yp.cr)
  • Необязательный префикс ":" к имени хранилища, заданному агентством по присвоению имен.
Из RFC: [10]
Расширенный уникальный идентификатор (EUI)
Формат: eui. {EUI-64-битный адрес} (например, eui.02004567A425678D )
Администрация сетевого адреса T11 (NAA)
Формат: naa. {NAA 64- или 128-битный идентификатор} (например, naa.52004567BA64678D )

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

Орган регистрации IEEE предоставляет EUI в соответствии со стандартом EUI-64. NAA является частью OUI, предоставляемой органом регистрации IEEE. Форматы имен NAA были добавлены в iSCSI в RFC 3980 для обеспечения совместимости с соглашениями об именах, используемыми в технологиях хранения Fibre Channel и Serial Attached SCSI (SAS).

Обычно участник iSCSI определяется тремя или четырьмя полями:

  1. Имя хоста или IP-адрес (например, "iscsi.example.com")
  2. Номер порта (например, 3260)
  3. Имя iSCSI (например, IQN «iqn.2003-01.com.ibm:00.fcd0ab21.shark128»)
  4. Необязательный секрет CHAP (например, "secretsarefun")

iSNS [ править ]

Инициаторы iSCSI могут найти соответствующие ресурсы хранения с помощью протокола Internet Storage Name Service (iSNS). Теоретически iSNS предоставляет сетям iSCSI SAN ту же модель управления, что и выделенные сети хранения данных Fibre Channel . На практике администраторы могут удовлетворить многие цели развертывания iSCSI без использования iSNS.

Безопасность [ править ]

Аутентификация [ править ]

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

Кроме того, как и все протоколы на основе IP, IPsec может работать на сетевом уровне. Протокол согласования iSCSI разработан для поддержки других схем аутентификации, хотя проблемы совместимости ограничивают их развертывание.

Логическая сетевая изоляция [ править ]

Чтобы гарантировать, что только допустимые инициаторы подключаются к массивам хранения, администраторы обычно запускают iSCSI только в логически изолированных сетях обратного канала. В этой архитектуре развертывания только порты управления массивами хранения доступны для внутренней сети общего назначения, а сам протокол iSCSI запускается через выделенные сегменты сети или виртуальные локальные сети (VLAN). Это снижает проблемы аутентификации; неавторизованные пользователи не имеют физического доступа к iSCSI и, следовательно, не могут общаться с массивами хранения. Однако это также создает проблему транзитивного доверия , поскольку один скомпрометированный хост с диском iSCSI может использоваться для атаки на ресурсы хранения других хостов.

Физическая сетевая изоляция [ править ]

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

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

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

Авторизация [ править ]

Поскольку iSCSI направлен на консолидацию хранилища для многих серверов в единый массив хранения, для развертывания iSCSI требуются стратегии, предотвращающие доступ несвязанных инициаторов к ресурсам хранилища. В качестве патологического примера, один массив корпоративных хранилищ может содержать данные для серверов, регулируемых по-разному Законом Сарбейнса-Оксли для корпоративного учета, HIPAA для информации о пользе для здоровья и PCI DSS для обработки кредитных карт. Во время аудита системы хранения должны демонстрировать средства управления, чтобы гарантировать, что сервер в одном режиме не может получить доступ к ресурсам хранения сервера в другом.

Обычно массивы хранения iSCSI явно сопоставляют инициаторы с определенными целевыми LUN; Инициатор аутентифицируется не в массиве хранения, а в конкретном хранилище, которое он намеревается использовать. Однако, поскольку целевые LUN ​​для команд SCSI выражаются как в протоколе согласования iSCSI, так и в базовом протоколе SCSI, необходимо позаботиться о том, чтобы управление доступом обеспечивалось единообразно.

Конфиденциальность и целостность [ править ]

По большей части iSCSI работает как протокол открытого текста, который не обеспечивает криптографической защиты данных, перемещаемых во время транзакций SCSI. В результате злоумышленник, который может прослушивать трафик iSCSI Ethernet, может: [12]

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

Эти проблемы возникают не только с iSCSI, но и с любым протоколом SAN без криптографической защиты. Протоколы безопасности на основе IP, такие как IPsec , могут обеспечить стандартную криптографическую защиту этого трафика.

Реализации [ править ]

Операционные системы [ править ]

Даты в следующей таблице обозначают первое появление собственного драйвера в каждой операционной системе. Драйверы сторонних производителей для Windows и Linux были доступны еще в 2001 году специально для подключения устройства IBM IP Storage 200i. [13]

Цели [ править ]

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

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

В индустрии продуктов безопасности некоторые производители используют iSCSI RAID в качестве цели, причем инициатором является кодировщик с поддержкой IP или камера.

Конвертеры и мосты [ править ]

Существует несколько систем, которые позволяют подключать устройства Fibre Channel, SCSI и SAS к IP-сети для использования через iSCSI. Их можно использовать для перехода от старых технологий хранения, доступа к SAN с удаленных серверов и соединения SAN через IP-сети. Шлюз iSCSI соединяет IP-серверы с сетями хранения данных Fibre Channel. TCP-соединение завершается на шлюзе, который реализован на коммутаторе Fibre Channel или как автономное устройство.

См. Также [ править ]

  • ATA-over-Ethernet (AoE)
  • Fibre Channel через Ethernet (FCoE)
  • Fibre Channel через IP (FCIP)
  • HyperSCSI SCSI через кадры Ethernet вместо IP (как iSCSI)
  • Требования к средствам тестирования и тестирования на соответствие ISCSI
  • Расширения iSCSI для RDMA (iSER)
  • Интернет-протокол Fibre Channel (iFCP)
  • Служба имен хранилищ в Интернете (iSNS)
  • LIO Linux SCSI Target
  • Сетевое блочное устройство (NBD)
  • ГКНТ стека целевого программного обеспечения Linux SCSI
  • Протокол определения местоположения службы

Заметки [ править ]

  1. ^ Если не туннелирован, например, в Fibre Channel через Ethernet или Fibre Channel через IP .
  2. ^ Цель доступна только как часть Windows Unified Data Storage Server . Цель доступна в Storage Server 2008 (за исключением версии Basic). [14] Target доступен для Windows Server 2008 R2 как отдельная загрузка. Windows Server 2012, 2012 R2 и 2016 имеют встроенную цель Microsoft iSCSI версии 3.3.
  3. ^ a b Интеграция массивов API vStorage
  4. ^ В macOS нет ни инициатора, ни цели напрямую от поставщика. [ необходима цитата ]

Ссылки [ править ]

  1. Роуз, Маргарет (май 2011 г.). «iSCSI (Интернет-интерфейс для малых компьютерных систем)» . SearchStorage . Проверено 21 января 2019 .
  2. ^ «ISCSI SAN: ключевые преимущества, решения и ведущие поставщики сетей хранения данных» . Сетевые решения Tredent. Архивировано из оригинального 12 августа 2014 года . Проверено 3 ноября 2012 года .
  3. ^ "Подтверждение концепции iSCSI в IBM Research Haifa" . IBM . Проверено 13 сентября 2013 года .
  4. ^ «Chelsio демонстрирует iSCSI нового поколения 40G на выставке SNW Spring» . chelsio.com. 2013-04-03 . Проверено 28 июня 2014 .
  5. ^ Архитектура и надежность крупномасштабных интернет-сервисов Дэвид Оппенгеймер и Дэвид А. Паттерсон, Беркли, IEEE Internet Computing , сентябрь – октябрь 2002 г.
  6. ^ "Цепная загрузка iPXE" . ipxe.org . Проверено 11 ноября 2013 .
  7. ^ "Запись iPXE в ROM" . ipxe.org . Проверено 11 ноября 2013 .
  8. ^ «iPXE - Загрузочная прошивка с открытым исходным кодом» . ipxe.org . Проверено 11 ноября 2013 .
  9. ^ «Контроллеры Intel Ethernet» . Intel.com . Проверено 18 сентября 2012 .
  10. ^ «RFC 3720 - Internet Small Computer Systems Interface (iSCSI), (Раздел 3.2.6.3.1. Введите« iqn. »(ISCSI Qualified Name))» . Апрель 2004. с. 32 . Проверено 16 июля 2010 .
  11. ^ Сатран, Джулиан; Kalman, Meth; Сапунтзакис, Коста; Зейднер, Эфри; Чадалапака, Малликарджун (2 апреля 2004 г.). «RFC 3720» .
  12. ^ «Защита iSCSI SAN» . VMware. Архивировано из оригинала 3 марта 2016 года . Проверено 3 ноября 2012 года .
  13. ^ "IBM IP Storage 200i общедоступный" . IBM . Проверено 13 сентября 2013 года .
  14. ^ "Сервер хранения Windows | NAS | Управление файлами" . Microsoft . Проверено 18 сентября 2012 .

Дальнейшее чтение [ править ]

  • RFC 3720 - Internet Small Computer Systems Interface (iSCSI) (устарело)
  • RFC 3721 - Именование и обнаружение интерфейса малых компьютерных систем Интернета (iSCSI) (обновлено)
  • RFC 3722 - Строковый профиль для имен интерфейса малых компьютерных систем Интернета (iSCSI)
  • RFC 3723 - Защита протоколов блочного хранилища через IP (Область применения: использование IPsec и IKE для защиты iSCSI, iFCP, FCIP, iSNS и SLPv2.)
  • RFC 3347 - Требования к протоколу интерфейса малых компьютерных систем через Интернет (iSCSI) и соображения по проектированию
  • RFC 3783 - Рекомендации по упорядочиванию команд интерфейса малых компьютерных систем (SCSI) с iSCSI
  • RFC 3980 - Формат имен T11 Network Address Authority (NAA) для имен узлов iSCSI (устарел)
  • RFC 4018 - Поиск целей и серверов имен Internet Small Computer Systems Interface (iSCSI) с помощью протокола определения местоположения службы версии 2 (SLPv2)
  • RFC 4173 - загрузка клиентов с использованием протокола Internet Small Computer System Interface (iSCSI).
  • RFC 4544 - Определения управляемых объектов для интерфейса малых компьютерных систем Интернета (iSCSI)
  • RFC 4850 - декларативный открытый ключ расширения для архитектуры узла интерфейса малых компьютерных систем Интернета (iSCSI) (устарело)
  • RFC 4939 - Определения управляемых объектов для iSNS (Internet Storage Name Service)
  • RFC 5048 - Исправления и пояснения к интерфейсу малых компьютеров в Интернете (iSCSI) (устарело)
  • RFC 5047 - DA: Datamover Architecture for the Internet Small Computer System Interface (iSCSI)
  • RFC 5046 - Расширения Internet Small Computer System Interface (iSCSI) для удаленного прямого доступа к памяти (RDMA)
  • RFC 7143 - протокол Internet Small Computer System Interface (iSCSI) (консолидированный)