7.5 Программные интерфейсы приложений для адаптеров шины
7.5 Программные интерфейсы приложений для адаптеров шины
В сетях хранения данных адаптеры шины обеспечивают физическое подключение между сервером и другими элементами сети хранения, включая
устройства хранения, коммутаторы и другие узлы. С ростом сложности сетей хранения необходимость автоматического обнаружения и управления устройствами становится все более важной.
Ассоциация SNIA определила API в виде библиотеки на языке С, который позволяет приложениям управления хранилищами контролировать адаптеры шины Fibre Channel. Приложения управления могут реализовать единый интерфейс, не зависящий от производителя адаптера шины или типа последнего. Достаточно, чтобы производитель адаптера шины поддерживал утвержденный SNIA программный интерфейс приложений для адаптеров шины. В этот интерфейс входит поддержка опроса и установки параметров управления адаптером шины, а также анализ производительности адаптера. В частности, API адаптера шины предоставляет перечисленные ниже элементы.
Атрибуты адаптера шины, например модель, название производителя и имя WWN (уникальное 64-разрядное имя, назначаемое производителем и зарегистрированное в IEEE, который назначает диапазон имен определенному производителю).
Атрибуты порта, например идентификатор порта (24-разрядное число, которое уникально для каждого узла), тип порта, текущий статус порта и максимальный размер кадра, который поддерживается портом.
Атрибуты протокола порта Fibre Channel, например номер шины SCSI или целевой идентификатор SCSI.
Статистика порта, например количество принятых и отправленных кадров, время с момента последнего сброса данных статистики и возникшие ошибки (причина и их количество).
Управляющая информация FC-3 (третий функциональный уровень Fibre Channel), например имя WWN или идентификатор порта; следует отметить, что API позволяет приложению управления опрашивать такие службы Fibre Channel, как сервер имен. Кроме того, API поддерживает назначение информации об узле, например имени WWN и идентификатора.
Хотя компания Microsoft и члены ассоциации SNIA поддерживают программный интерфейс приложений адаптера шины, эта поддержка реализуется по-разному. Архитектура, принятая ассоциацией SNIA, включает в себя три компонента (рис. 7.4).
1. Универсальная динамически подключаемая библиотека API адаптера шины, которая поддерживается ассоциацией SNIA. Эта библиотека предоставляет стандартный интерфейс для приложений управления; на нижнем уровне библиотека связывается с динамически подключаемыми библиотеками, предоставленными производителями.
Рис. 7.4. Программный интерфейс приложений для адаптера шины от ассоциации SNIA
Динамически подключаемая библиотека, созданная производителем адаптера шины, которая подключается к универсальной библиотеке. Библиотека производителя предоставляет управляющую информацию и взаимодействует с драйвером от того же производителя с помощью закрытых вызовов управления вводом-выводом.
Драйвер адаптера шины, предоставленный производителем.
Хотя продвижение в сторону стандартизации имеет свои преимущества, Microsoft указывает на возможные проблемы при использовании такого подхода.
Отсутствует эффективный способ управления распространением и учетом версий динамически подключаемых библиотек. Это еще один пример ситуации, когда несколько приложений устанавливают собственные библиотеки, потенциально перезаписывая библиотеки, установленные другими приложениями.
Производитель адаптера шины должен создать не только драйвер устройства и закрытый интерфейс управления вводом-выводом для этого драйвера, но и собственную динамически подключаемую библиотеку, а также внести определенные изменения в библиотеку-оболочку, чтобы предоставить необходимые интерфейсы собственной динамически подключаемой библиотеке.
Тестирование и сертификация драйверов от производителя, использующих закрытые вызовы управления вводом-выводом, является исключительно сложным процессом; например, как проверить, что некорректные параметры вызова управления вводом-выводом не приведут к переполнению буфера?
Архитектура на первый взгляд выглядит расширяемой, но при более детальном рассмотрении можно понять, что производители адаптеров шины всегда будут «догонять» разработчиков приложении управления, добавляя код, который работает с расширениями, характерными для определенного производителя.
Не поддерживаются связи и управление в режиме ядра. Для архитектуры SNIA требуется, чтобы приложение управления ожидало полноценной работоспособности подсистемы пользовательского режима Windows NT. Но для некоторых аспектов управления, например для маскировки LUN, необходимо наличие драйвера в режиме ядра, который будет выполнять определенные действия в процессе загрузки операционной системы еще до того, как будет запущена подсистема пользовательского режима.
Компания Microsoft предлагает несколько иной метод (рис. 7.5) и подразумевает применение описанных ниже компонентов.
Универсальная динамически подключаемая библиотека API для адаптера шины, которая поддерживается компанией Microsoft,. Эта библиотека предоставляет интерфейс, определенный ассоциацией SNIA, для приложений управления более высокого уровня. На более низком уровне библиотека подключается к интерфейсу WMI, представляющему собой
реализацию модели CIM от Microsoft. (Как уже отмечалось, CIM – это объектно-ориентированная модель управления, принятая ассоциацией SNIA и рабочей группой DMTF.) Библиотека также будет проводить преобразование данных между API адаптера шины, отвечающего спецификации SNIA и интерфейсом WMI.
Драйвер устройства для адайтера шины, созданный производителем; драйвер использует WMI и делает интерфейс управления/настройки доступным в репозитории WMI. Поскольку WMI представляет собой двунаправленный интерфейс, драйвер реализует функции пакетов IRP для интерфейса WMI, которые позволяют приложению управления устанавливать конфигурационные параметры драйвера. Обратите внимание, что от производителя все равно требуется создание драйвера, в который будет добавлен код поддержки WMI.
Метод компании Microsoft имеет ряд преимуществ.
Все представленные интерфейсы стандартизированы, тогда как в архитектуре ассоциации SNIA интерфейс между универсальной библиотекой API адаптера шины и библиотекой производителя закрыт и определяется производителем. Подход компании Microsoft соответствует принятой модели CIM.
Поддержка модификаций, так как производитель может расширить класс WMI или определить новый класс и внедрить управляющую информацию в пределах этого класса. В данном случае также просматриваются общие преимущества модели CIM.
Самым существенным преимуществом является возможность использования модели CIM или API адаптера шины от SNIA. Программа, использующая API адаптера шины от SNIA, может работать без изменений, поскольку код WMI в драйвере и динамически подключаемая библиотека от Microsoft выполняют преобразование данных WMI в данные API адаптера шины от SNIA.
Такая архитектура позволяет компоненту режима ядра опрашивать драйвер производителя и выполнять соответствующие действия.
Приложения управления не интересуются (и не должны интересоваться), каким образом код нижнего уровня получает необходимую информацию. Пока приложение управления использует API адаптера шины от SNIA (как рекомендуется Microsoft), код на нижнем уровне может получать необходимую информацию как от динамически подключаемой библиотеки SNIA, так и от библиотеки WMI.. В любом случае приложение управления осуществляет запись данных на базе единого интерфейса.
Безопасные изменения конфигурации SAN, проводимые с помощью эффективных технологий безопасности; например, все изменения конфигурации требуют цифрового сертификата, идентификации пользователя и пароля.
Ограничение методов разрешения изменений; например, только определенные коммутаторы могут вносить изменения в связную архитектуру, что приводит к отказу от принятия изменений со всех остальных коммутаторов.
Зонирование (см. главу 4) – это еще один способ обеспечения безопасности в сетях хранения данных.
Более 800 000 книг и аудиокниг! 📚
Получи 2 месяца Литрес Подписки в подарок и наслаждайся неограниченным чтением
ПОЛУЧИТЬ ПОДАРОКЧитайте также
Работа шины ввода-вывода SPD
Работа шины ввода-вывода SPD Каждая плата ввода-вывода SPD предоставляет BCU для одной шины SPD. BCU осуществляет основное управление работой шины. Обычно BCU выполняет восстановление после ошибки и повторное выполнение операции. Он также проводит арбитраж, если несколько IOBU
Программные интерфейсы
Программные интерфейсы Программный интерфейс сокетов Вы уже познакомились с интерфейсом сокетов при обсуждении реализации межпроцессного взаимодействия в BSD UNIX. Поскольку сетевая поддержка впервые была разработана именно для BSD UNIX, интерфейс сокетов и сегодня
Программные окна
Программные окна Структура программных окон едина для большинства приложений, поэтому, изучив один пример, вы без труда сможете сориентироваться в окне любой программы.Рассмотрим компоненты программных окон на примере стандартного приложения Windows – текстового
Программные телефоны
Программные телефоны Программный телефон - это приложение, которое обеспечивает функциональность телефона устройству, не являющемуся телефоном, такому как ПК или персональный цифровой секретарь. Итак, на что это похоже? На первый взгляд, казалось бы, простой вопрос, но
15.12 Программные интерфейсы RPC и XDR
15.12 Программные интерфейсы RPC и XDR Приложения клиент/сервер для RPC строятся на основе библиотеки подпрограмм для создания, отправки и получения сообщений RPC. Другие программы библиотеки служат для преобразования между локальным представлением данных для параметров
2.4 Развитие адаптеров шин (НВА)
2.4 Развитие адаптеров шин (НВА) Изначально такие устройства хранения данных, как жесткие диски и накопители на магнитной ленте, подключались непосредственно к серверу. Единицы хранения размещались непосредственно в сервере или внешних отсеках, подключаемых к серверу с
4.3. Программные каналы
4.3. Программные каналы Программные каналы имеются во всех существующих реализациях и версиях Unix. Канал создается вызовом pipe и предоставляет возможность однонаправленной (односторонней) передачи данных:#include <unistd.h>int pipe(int fd[2]);/* возвращает 0 в случае успешного
Программные конструкции
Программные конструкции В следующих разделах рассматриваются программные конструкции, распознаваемые в PSQL. Блоки BEGIN ... END PSQL является структурированным языком. После объявления переменных процедурные операторы заключаются в операторные скобки BEGIN и END. В процессе
Изменить порядок сетевых адаптеров
Изменить порядок сетевых адаптеров Возможно, на вашем компьютере есть драйвер соединения через модем и сетевая карта. В Windows NT и Windows 98 вы можете изменить порядок этих двух сетевых интерфейсов для того, чтобы сетевой адаптер использовался первым по отношению к сетевому
Программные требования
Программные требования Программные требования к компьютеру при установке на него программы ArchiCAD следующие:? операционная система – Windows XP Pro или Vista Business / Enterprise / Ultimate Edition;? поддержка Java 1.6.0 или более поздняя;? проигрыватель – QuickTime, версия 7 или более поздняя. ПРИМЕЧАНИЕ В
Программные модули
Программные модули В состав задачника входят следующие программные модули: PT4Demo -- позволяет просмотреть в демонстрационном режиме все задания, включенные в задачник; PT4Load -- обеспечивает генерацию программы-шаблона для требуемого учебного задания и ее
Глава 10 Шины расширения: слоты и порты
Глава 10 Шины расширения: слоты и порты Шина-шина опа, шина-шина най… Некогда популярная песенка о компьютерах В предыдущих главах мы познакомились с различными внутренними и внешними компонентами компьютера. Теперь рассмотрим то, с помощью чего все эти компоненты
Шины расширения, представленные слотами и разъемами на материнской плате
Шины расширения, представленные слотами и разъемами на материнской плате Шины расширения представлены различными разъемами (слотами) на материнской плате, к которым подключаются внутренние устройства, а также портами, к которым подсоединяются внешние устройства.
Шины расширения, представленные внешними портами
Шины расширения, представленные внешними портами Перейдем к проводам, соединяющим системный блок с периферийными (то есть внешними) устройствами. Они не менее многообразны и также имеют «защиту от дурака». К системному блоку внешние устройства подключаются с помощью
Программные DVB-тюнеры
Программные DVB-тюнеры Программные DVB-тюнеры внешне практически не отличаются от аппаратных, за исключением того, что здесь нет такого количества элементов и микросхем. В тюнерах этого класса основные функции по перекодированию сигнала возложены на центральный процессор