Архитектура и протоколы безопасности технологии грид
26 февраля 2013
Рубрика: Связь и телекоммуникации.
Автор: Рустам Абдурахманов, Бахтиер Ризаев.

В 1998 году было заявлено, что «вычислительный грид – это аппаратная и программная инфраструктура, которая обеспечивает надежный, постоянный, расширяемый и недорогой доступ к высокопроизводительным вычислительным мощностям». Это определение первоначально концентрировалось на вычислительных аспектах грид-систем. Постепенно это определение было расширено с большим акцентом на скоординированное разделение ресурсов и многоинституциональные виртуальные организации (VOs).

Грид-вычисления (англ. grid – решетка, сеть) – это форма распределенных вычислений, в которой «виртуальный суперкомпьютер» представлен в виде кластеров, соединенных с помощью сети, слабосвязанных, гетерогенных компьютеров, работающих вместе для выполнения огромного количества заданий (операций, работ). Эта технология применяется для решения научных, математических задач, требующих значительных вычислительных ресурсов. Грид-вычисления используются также в коммерческой инфраструктуре для решения таких трудоемких задач, как экономическое прогнозирование, сейсмоанализ, разработка и изучение свойств новых лекарств.

Грид-проблема
Грид-компьютинг развился в важную дисциплину компьютерной индустрии, отделяя себя от распределенного компьютинга из-за все увеличивающегося внимания к проблемам разделения ресурсов, координации, управляемости и высокой производительности. Такое средоточие внимания на разделении ресурсов получило название грид-проблемы, которая может быть определена как совокупность проблем, связанных с разделением ресурсов среди множества индивидуальных пользователей и групп. Такое разделение ресурсов, колеблющееся от простой передачи файлов до комплексного и корпоративного решения проблем, осуществляется в соответствии с контролируемыми и четко определенными условиями и стратегиями. В этом контексте критическими проблемами являются обнаружение ресурсов, аутентификация, авторизация и механизмы доступа. Проблема разделения ресурсов становится еще более сложной, когда грид используется для решения задач компьютинга услуг (utility computing), где коммерческие ресурсы становятся доступными, разделяемыми и ресурсами по запросу (on demand resources). Эта концепция коммерческих грид-служб по запросу добавляет новые, более сложные требования к уже имеющемуся списку проблем грида, включая характеристики, учет, подсчет количества обращений, гибкое ценообразование, федеративную безопасность, масштабируемость и полную интеграцию.

Виртуальные организации
Виртуальные организации (ВО, Virtual organizations, VOs) — это динамически формируемая совокупность отдельных пользователей, групп и учреждений, которые определили условия и правила разделения ресурсов. Концепция ВО является ключевой для грид-компьютинга. Все ВО принимают участие в выработке соглашений по характеристикам и спорным вопросам, включающим в себя общие интересы и потребности, которые могут варьироваться по объему, области действия, времени выполнения, социологическим параметрам и структуре. Участники любой ВО договариваются о совместном разделении ресурсов, основанном на правилах и условиях, определенных этой виртуальной организацией, и затем получают доступ к ресурсам в созданном пуле ВО.

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

Можно выделить характеристики, которые являются достаточно общими для конкурирующих и «осторожных» участников, формирующих ВО. Перечислим некоторые из этих характеристик:

• все рассмотрения и требования касаются разделения ресурсов;
• разделение ресурсов является условным, ограниченным по времени и управляется определенными правилами;
• множество индивидуальных пользователей и/или институтов формируются динамически;
• взаимоотношения между участниками являются одноранговыми (peer-to-peer) по своей природе;
• разделение ресурсов основывается на четко определенном наборе правил взаимодействий и доступа.

Вышеперечисленные характеристики и требования приводят к определению архитектуры формирования и управления ВО и разделения ресурсов среди ее участников.

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

grid_26_02_2013

Рис. 1. Многоуровневая архитектура грид и ее соотношения с архитектурой протоколов Интернет

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

Уровень фабрик (Fabric layer) — определяет интерфейсы к локальным разделяемым ресурсам. В их число входят вычислительные ресурсы, системы хранения данных, сетевые ресурсы, каталоги, модули программного обеспечения и другие системные ресурсы.
Уровень связи (Connectivity layer) — устанавливает базовый набор коммуникационных и аутентификационных протоколов, необходимых для выполнения специфических для гридов сетевых транзакций.
Уровень ресурсов (Resource Layer) — использует протоколы коммуникации и безопасности, определенные на нижележащем уровне связи, для обеспечения безопасных переговоров, инициации доступа к ресурсам, учета и платежей в целях разделения функциональных возможностей отдельных ресурсов. Для осуществления доступа к локальным ресурсам и управления ими компоненты уровня ресурсов обращаются к функциям уровня фабрик. Протоколы этого уровня касаются исключительно отдельных ресурсов, игнорируя вопросы глобального состояния и неделимых операций в корпоративном пуле ресурсов. Такого рода проблемы решаются на уровне кооперации.
Уровень кооперации (Collectivity layer) — в то время, как уровень ресурсов нацелен на взаимодействие с одним ресурсом, уровень кооперации обеспечивает управление глобальными ресурсами и взаимодействие с коллекцией ресурсов. Протоколы этого уровня реализуют широкий набор способов, используя достаточно малое количество протоколов уровня ресурсов и уровня связи.
Уровень приложений (Application layer) — дает возможность использования ресурсов в среде грид с помощью различных корпоративных протоколов и протоколов доступа к ресурсам.

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

1. Kerberos. Kerberos — IETF-стандарт, который поддерживает безопасность системы через установление подлинности, целостности и конфиденциальности сообщения, созданного при использовании метода разделяемой секретной криптографии. Данный протокол может обеспечить однократную авторизацию и гибкую защиту сообщений. Однако, выполнение требования интеграции с локальными решениями проблемы безопасности для этого протокола затруднено, так как различные реализации Kerberos имеют тенденцию заменять локальные решения безопасности.
2. TLS. TLS (Transport Layer Security, исходно известный как SSL) — IETF-стандарт для установления подлинности, целостности и конфиденциальности сообщения, которое создано с использованием технологии криптографии с открытым ключом. Использование данного протокола затруднительно при реализации однократной авторизации и делегирования.
3. PKIX. PKIX — набор IETF-стандартов, которые описывают протоколы и синтаксис управления сертификатами X.509 в инфраструктурах систем безопасности, использующих технологию открытых ключей. Стандарты X.509 обычно используются в сочетании с другими стандартами безопасной связи, например, TLS.
4. CMS. CMS (Cryptografic Message syntax) — стандарт IETF определяет синтаксис, который позволяет в цифровой форме подписать, подтвердить подлинность или зашифровать произвольные сообщения.
5. GSS-API. GSS-API (Generic Security Service API) — стандарт IETF, который определяет интерфейс прикладных программ, обеспечивающий установление подлинности, целостности и конфиденциальности сообщения. Он предполагает, что две стороны, обменивающиеся сообщениями, имеют связь, основанную на протоколе, обеспечивающем надежность доставки информационных пакетов (например, TCP/IP). Данный стандарт может быть использован при реализации любого из основных механизмов безопасности и может быть рекомендован для применения в распределенной вычислительной среде.

Расширением стандарта является стандарт IDUP-GSS-API, который обеспечивает поддержку защиты независимых единиц данных.

Требования к системам безопасности в распределенной вычислительной среде
Анализ мирового опыта разработок распределенных вычислительных систем показывает, что система безопасности GRID должна обладать следующими свойствами:
1. Возможность осуществления однократной регистрации пользователей. Такая регистрация пользователей предполагает, что процедура идентификации проводится только в момент входа пользователя в систему. Все переходы данного пользователя между ресурсами распределенной вычислительной среды совершаются без повторной идентификации.
2. Возможность делегирования прав. Делегирование прав заключается в том, что программа пользователя должна иметь доступ к ресурсам, на которых пользователь авторизован, а также должна иметь возможность передать подмножество своих прав дочернему процессу.
3. Возможность интеграции с локальными системами безопасности. Каждый ресурс может использовать любой из существующих способов решения проблемы безопасности системы. Реализация системы безопасности GRID должна взаимодействовать с этими локальными системами безопасности, не изменяя их.
4. Возможность реализации отношений доверия. Отношения доверия предполагают, что, если пользователь авторизован на ресурсе А, и ресурс А взаимодействует с ресурсом Б, то данный пользователь должен считаться авторизованным и на ресурсе Б.

Литература
1. Эволюция архитектуры грид-компьютинга и модели адаптации грида Дж Джозеф, М. Эрнест, К. Фелленштейн. Грид-компьютинг, 2004.
2. Foster, WS-Resource Framework — Globus Alliance Perspectives.
3. Foster, J. Frey, S. Graham, S. Tuecke, K. Czajkowski, D. Ferguson, F. Leymann, M. Nally, I. Sedukhin, D. Snelling, T. Storey, W. Vambenepe, and S. Weerawarana, Modeling Stateful Resources with Web Services (March 2004).

Orphus system
В Telegram
В Одноклассники
ВКонтакте