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

Автономные вычисления (AC) относятся к самоуправляемым характеристикам распределенных вычислительных ресурсов, которые адаптируются к непредсказуемым изменениям, скрывая при этом внутреннюю сложность для операторов и пользователей. Эта инициатива, инициированная IBM в 2001 году, в конечном итоге была направлена ​​на разработку компьютерных систем, способных к самоуправлению, преодоление быстро растущей сложности управления вычислительными системами и снижение барьера, который сложность создает для дальнейшего роста. [1]

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

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

Руководствуясь таким видением, недавно было предложено множество архитектурных структур, основанных на « саморегулирующихся » автономных компонентах. Очень похожая тенденция недавно характеризовала значительные исследования в области многоагентных систем . Однако большинство из этих подходов обычно разрабатываются с учетом централизованных или кластерных серверных архитектур и в основном направлены на снижение затрат на управление, а не на необходимость включения сложных программных систем или предоставления инновационных услуг. Некоторые автономные системы включают мобильных агентов, взаимодействующих с помощью слабосвязанных механизмов связи. [2]

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

Проблема возрастающей сложности [ править ]

Согласно прогнозам, количество используемых вычислительных устройств будет расти на 38% в год [4], а средняя сложность каждого устройства будет расти. [4] В настоящее время этот объем и сложность управляется высококвалифицированными людьми; но спрос на квалифицированный ИТ-персонал уже превышает предложение, а затраты на рабочую силу превышают затраты на оборудование в соотношении до 18: 1. [5] Вычислительные системы принесли огромные преимущества в виде скорости и автоматизации, но в настоящее время существует огромная экономическая потребность в автоматизации их обслуживания.

В статье IEEE Computer 2003 года Кефхарт и Чесс [1] предупреждают, что мечта о взаимосвязанности вычислительных систем и устройств может стать «кошмаром повсеместных вычислений », в котором архитекторы не могут предвидеть, проектировать и поддерживать сложность взаимодействий. Они заявляют, что суть автономных вычислений заключается в самоуправлении системы, освобождающем администраторов от низкоуровневого управления задачами и улучшающем поведение системы.

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

Кроме того, мобильные вычисления проникают в эти сети с возрастающей скоростью: сотрудникам необходимо общаться со своими компаниями, пока они не находятся в офисе. Для этого они используют ноутбуки , персональных цифровых помощников или мобильные телефоны с различными видами беспроводных технологий для доступа к данным своих компаний.

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

80% таких проблем в инфраструктуре происходит на уровне клиентского приложения и базы данных. [ необходима цитата ] Большинство «автономных» поставщиков услуг [ кто? ] гарантия только до базового уровня сантехники (мощность, оборудование, операционная система , сеть и основные параметры базы данных).

Характеристики вегетативных систем [ править ]

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

В самоуправляемой автономной системе человек-оператор берет на себя новую роль: вместо того, чтобы контролировать систему напрямую, он / она определяет общие политики и правила, которые направляют процесс самоуправления. Для этого процесса IBM определила следующие четыре типа свойств, называемых свойствами self-star (также называемыми self- *, self-x или auto- *). [7]

  1. Самостоятельная настройка: Автоматическая настройка компонентов;
  2. Самовосстановление: автоматическое обнаружение и исправление неисправностей; [8]
  3. Самооптимизация : автоматический мониторинг и контроль ресурсов для обеспечения оптимального функционирования в соответствии с определенными требованиями;
  4. Самозащита: упреждающая идентификация и защита от произвольных атак.

Другие, такие как Послад [7] и Нами и Бертельс [9] , расширили набор самозвезды следующим образом:

  1. Саморегулирование : система, которая работает для поддержания некоторого параметра, например качества обслуживания , в пределах диапазона сброса без внешнего управления;
  2. Самообучение: системы используют методы машинного обучения, такие как обучение без учителя, которое не требует внешнего контроля;
  3. Самосознание (также называемое самопроверкой и самоопределением): система должна знать себя. Он должен знать объем своих собственных ресурсов и ресурсы, на которые он ссылается. Система должна знать о своих внутренних компонентах и ​​внешних ссылках, чтобы контролировать их и управлять ими;
  4. Самоорганизация : структура системы, управляемая моделями физического типа, без явного давления или вмешательства извне;
  5. Самосоздание (также называемое самосборкой , самовоспроизведением ): система, управляемая моделями экологического и социального типа, без явного давления или участия извне. Члены системы мотивированы и самоуправляемы, создавая сложность и порядок в творческом ответе на постоянно меняющийся стратегический спрос;
  6. Самоуправление (также называемое самоуправлением): система, которая управляет собой без внешнего вмешательства. То, что находится под управлением, может варьироваться в зависимости от системы и приложения. Самоуправление также относится к набору процессов самостоятельной звезды, таких как автономные вычисления, а не к единственному процессу самостоятельной звезды;
  7. Самоописание (также называемое самообъяснением или самопрезентацией): система объясняет себя. Это может быть понято (людьми) без дополнительных объяснений.

IBM сформулировала восемь условий, определяющих автономную систему: [10]

Система должна

  1. знать себя с точки зрения того, к каким ресурсам он имеет доступ, каковы его возможности и ограничения, а также как и почему он подключен к другим системам;
  2. иметь возможность автоматически конфигурировать и перенастраивать себя в зависимости от меняющейся вычислительной среды;
  3. уметь оптимизировать его производительность, чтобы обеспечить максимально эффективный вычислительный процесс;
  4. уметь обходить возникшие проблемы, либо ремонтируя себя, либо выполняя функции маршрутизации вдали от проблемы;
  5. обнаруживать, идентифицировать и защищать себя от различных типов атак для поддержания общей безопасности и целостности системы;
  6. адаптироваться к окружающей среде по мере ее изменения, взаимодействуя с соседними системами и устанавливая протоколы связи;
  7. полагаться на открытые стандарты и не могут существовать в закрытой среде;
  8. предвидеть спрос на свои ресурсы, оставаясь при этом прозрачным для пользователей.

Несмотря на то, что назначение и, следовательно, поведение автономных систем различаются от системы к системе, каждая автономная система должна обладать минимальным набором свойств для достижения своей цели:

  1. Автоматический : по сути, это означает возможность самоконтроля своих внутренних функций и операций. Таким образом, автономная система должна быть автономной и способной запускаться и работать без какого-либо ручного вмешательства или внешней помощи. Опять же, знания, необходимые для начальной загрузки системы ( ноу-хау ), должны быть присущи системе.
  2. Адаптивная : автономная система должна иметь возможность изменять свою работу (то есть ее конфигурацию, состояние и функции). Это позволит системе справляться с временными и пространственными изменениями в ее рабочем контексте либо в долгосрочной перспективе (настройка / оптимизация среды), либо в краткосрочной перспективе (исключительные условия, такие как злонамеренные атаки, сбои и т. Д.).
  3. Осведомленность : автономная система должна иметь возможность отслеживать (ощущать) свой операционный контекст, а также свое внутреннее состояние, чтобы иметь возможность оценить, служит ли ее текущая работа своей цели. Осведомленность будет контролировать адаптацию его оперативного поведения в ответ на изменения контекста или состояния.

Эволюционные уровни [ править ]

IBM определила пять эволюционных уровней или модель автономного развертывания для развертывания автономных систем:

  • Уровень 1 - это базовый уровень, который представляет текущую ситуацию, когда системы в основном управляются вручную.
  • На уровнях 2–4 вводятся все более автоматизированные функции управления, в то время как
  • Уровень 5 представляет собой конечную цель автономных, самоуправляющихся систем. [11]

Паттерны дизайна [ править ]

Сложность проектирования автономных систем можно упростить, используя шаблоны проектирования, такие как шаблон модель-представление-контроллер (MVC), чтобы улучшить разделение проблем путем инкапсуляции функциональных проблем. [12]

Контур управления [ править ]

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

Согласно IBM, ожидается, что сотни или даже тысячи этих контуров управления будут работать в крупномасштабной самоуправляемой компьютерной системе.

Концептуальная модель [ править ]

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

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

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

  • Автономные сети
  • Автономная нервная система
  • Органические вычисления
  • Устойчивость (сеть)

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

  1. ^ а б Кефарт, Джо; Шахматы, DM (2003), "Видение автономных вычислений", Компьютер , 36 : 41-52, CiteSeerX  10.1.1.70.613 , DOI : 10,1109 / MC.2003.1160055
  2. ^ Падовиц, Амир; Аркадий Заславский; Сенг В. Локе (2003). Осведомленность и гибкость автономных распределенных систем: независимая от платформы коммуникация на основе событий публикации и подписки для мобильных агентов . Труды 14-го Международного семинара по приложениям баз данных и экспертных систем (DEXA'03) . С. 669–673. DOI : 10,1109 / DEXA.2003.1232098 . ISBN 978-0-7695-1993-7.
  3. ^ Цзинь, Сяолун; Лю, Джиминг (2004), «От моделирования на индивидуальной основе к вычислениям, ориентированным на автономность», « Агенты и вычислительная автономия» , конспект лекций по информатике, 2969 , с. 151, DOI : 10.1007 / 978-3-540-25928-2_13 , ISBN 978-3-540-22477-8
  4. ^ a b Рожок. «Автономные вычисления: взгляд IBM на состояние информационных технологий» (PDF) . Архивировано из оригинального (PDF) 16 сентября 2011 года.
  5. «Тенденции в технологиях», обзор, Калифорнийский университет Беркли, США, март 2002 г.
  6. ^ http://whatis.techtarget.com/definition/autonomic-computing
  7. ^ а б Послад, Стефан (2009). Автономные системы и искусственная жизнь, В: Повсеместные вычислительные интеллектуальные устройства, интеллектуальные среды и интеллектуальное взаимодействие . Вайли. С. 317–341. ISBN 978-0-470-03560-3. Архивировано из оригинала на 2014-12-10 . Проверено 17 марта 2015 .
  8. ^ Сеть S-Cube. «Система самоисцеления» .
  9. ^ Нами, MR; Бертельс, К. (2007). «Обзор автономных вычислительных систем»: 26–30. Cite journal requires |journal= (help)
  10. ^ «Что такое автономные вычисления? Определение Webopedia» .
  11. ^ «IBM представляет новую модель развертывания автономных вычислений» . 2002-10-21.
  12. ^ Карри, Эдвард; Грейс, Пол (2008), "Гибкое Самоуправление Используя шаблон Model-View-Controller", IEEE Software , 25 (3): 84, DOI : 10,1109 / MS.2008.60

Внешние ссылки [ править ]

  • Международная конференция по автономным вычислениям (ICAC 2013)
  • Автономные вычисления Ричарда Марча, опубликованные IBM Press
  • Статьи и руководства по автономным вычислениям
  • Практические автономные вычисления - дорожная карта к технологии самоуправления
  • Блог об автономных вычислениях
  • Whitestein Technologies - поставщик среды разработки и интеграции для программного обеспечения для автономных вычислений
  • Applied Autonomics предоставляет автономные веб-сервисы
  • Веб-сайт Enigmatec - поставщики программного обеспечения для автономных вычислений
  • Handsfree Networks - поставщики программного обеспечения для автономных вычислений
  • Проект CASCADAS: компонентное ПО для автономных, ситуативно-адаптируемых коммуникаций и динамической адаптации, финансируется Европейским союзом.
  • CASCADAS Autonomic Tool-Kit с открытым исходным кодом
  • Проект ANA: Исследовательский проект архитектуры автономной сети, финансируемый Европейским Союзом.
  • JADE - фреймворк для разработки программного обеспечения автономного администрирования
  • Барселонский суперкомпьютерный центр - автономные системы и платформы электронного бизнеса
  • SOCRATES: самооптимизация и самоконфигурация в беспроводных сетях
  • Динамически самонастраивающиеся автомобильные системы
  • ASSL (язык спецификации автономных систем): основа для спецификации, проверки и создания автономных систем
  • Объяснение автономных вычислений и их использования для бизнес-процессов (IBM) - на немецком языке [ постоянная мертвая ссылка ]
  • Архитектура автономных вычислений в RKBExplorer
  • Международный журнал автономных вычислений
  • BiSNET / e: Сетевая архитектура когнитивных датчиков с эволюционной многоцелевой оптимизацией
  • Licas: платформа с открытым исходным кодом для построения сетей на основе сервисов со встроенным Autonomic Manager.