Выпуск #7/2018
Б.Гольдштейн, А.Голышко
Наша цель – клаудизм!? Часть 2. Больше тумана
Наша цель – клаудизм!? Часть 2. Больше тумана
Просмотры: 2090
Только Сloud Сomputing начал утверждаться в головах пользователей, как возникла очередная модель компьютинга – Edge Computing, или периферийные (граничные) вычисления, называемые еще Fog Computing (туманные вычисления). Под всем этим подразумевается модель, в которой данные, их обработка и даже некоторые приложения находятся в распределенных устройствах на границе сети, вместо того чтобы почти полностью находиться в облаке.
DOI: 10.22184/2070-8963.2018.76.7.16.23
DOI: 10.22184/2070-8963.2018.76.7.16.23
"Только неизвестность пленяет нас. В тумане все кажется необыкновенным".
Уайльд О. "Портрет Дориана Грея"
Туманные идеи
Термин исходит из того, что туман – это то же облако, просто находящееся ближе к земле, то есть туманные вычисления распределяются в пространстве между границами сети и централизованными облачными ресурсами. Сам туман состоит из "вычислительных капель" – мини-чипов, микроконтроллеров с определенной процессорной мощностью, памятью, интерфейсом, средствами беспроводной связи, электропитанием. Соответственно, туманные вычисления основываются на распределенной инфраструктуре совокупности таких "капель" с топологией типа ячеистой (mesh) сети, динамической маршрутизацией и относительно однородными по вычислительной мощности "каплями". Такая "капля" питается от небольшой батарейки, которой хватает на несколько лет беспрерывной работы. К "капле" могут подключаться всевозможные датчики и прочие объекты IoT / IoE. С помощью этих мини-чипов можно создать действительно распределенную сеть данных или устройств и развернуть ее по всей планете.
Основное отличие граничных вычислений от облачных заключается в том, что сбор и анализ данных проводится не в централизованной вычислительной среде, такой как ЦОД, а в том месте, где происходит генерация потоков данных. Источниками данных служат цифровые устройства (не обязательно находящиеся в одной локации), которые затем передают эти данные в режиме реального времени (зависит от ситуации, передача информации может быть отложена) в центральный репозиторий. Таким образом, Fog Computing не только перемещает (частично или полностью) объекты и службы облачных вычислений из центра в сеть доступа, но и открывает путь разнообразным сетевым проводным / беспроводным микроконтроллерам, мобильным интеллектуальным устройствам с ограниченными ресурсами к новым приложениям, которые позволят распределенным пользователям / машинам собирать, анализировать и делиться данными об окружающей среде, о мире людей и вещей.
Кроме того, в рассмотренных ранее облачных центрах обработки данных затраты на электроэнергию составляют значительную часть общих эксплуатационных расходов. С этой точки зрения парадигма туманных вычислений обещает сократить потребление энергии и связанные с этим эксплуатационные расходы за счет использования собственных возможностей туманных капель, их самоорганизации и распределенного пространственного размещения.
Идеи распределенных вычислений имеют уже полувековую историю. Зародились они еще в 1970-е, в эпоху больших ЭВМ. С появлением мини- и микрокомпьютеров распределенные вычислительные сети и параллельная обработка данных получили достойную аппаратную реализацию. Кстати, подход Fog Computing был реализован в проекте по поиску внеземных цивилизаций SETI. А уже в наши дни началась многоядерная эпоха, породившая разные компьютерные парадигмы: grid-вычисления, кластерные вычисления, мощные суперкомпьютеры, облачные вычисления.
В области инфокоммуникаций эти идеи обладают почти такой же историей и не менее актуальны. По времени они совпали с созданием цифровых систем коммутации с программным управлением и высказывались уже сравнительно давно [1, 2]. В наши дни прогнозируется, что от 20 до 50 млрд устройств будут включены в сеть Интернет в ближайшие годы, и, следовательно, новые триллионы гигабайт данных IoT будут созданы и должны будут обрабатываться в облачных центрах обработки данных. Не останутся в стороне и люди, точнее – новые приложения, генерирующие данные на пользовательских смартфонах и планшетах, которые используют облако в качестве централизованного сервера. Все это сделает рассмотренные ранее облачные сервисы де-факто несостоятельной вычислительной моделью в самом скором времени. Резко возрастающая интенсивность трафика от географически удаленных многочисленных источников и соответствующая нагрузка на сетевую инфраструктуру не могут не влиять отрицательно на качество обслуживания QoS и QoE.
Решением проблемы становятся "туманные вычисления". Эта вычислительная модель основана на предпосылке, что вычислительная рабочая нагрузка может быть выполнена на граничных вычислительных узлах, расположенных между облаком и множеством пользователей / устройств, как показано на рисунке.
Такая модель эффективно дополняет облачные вычисления и позволяет обеспечить высокие качественные показатели QoS и QoE при резком увеличении трафика и количества сетевых устройств.
Заметим, что идея туманных вычислений отличается от близкого к ним (часто в литературе используемого как синоним) понятия "краевых вычислений", когда в непосредственной близости от пользователя находится средство, удовлетворяющее дополнительные вычислительные потребности пользователя по обработке и хранению данных. В этом случае дополнительные средства краевых вычислений интегрируются исключительно с пользовательскими устройствами, а в туманных вычислениях дополнительные вычислительные средства ("туманные капли") интегрируются как в облачную вычислительную модель, так и в сеть пользовательских устройств.
Определим туманные вычисления как модель децентрализации ресурсов обработки данных (серверов, хранилищ, приложений и услуг), дополняющую облако и улучшающую качество обслуживания пользователей, а также их опыт QoS / QoE.
Эта модель никоим образом не может заменить преимущества использования облака, наоборот – оптимизирует производительность его приложений и снижает интенсивность передаваемого по сети трафика.
Сравнение облачных
и туманных вычислений
Туманные вычисления отнюдь не заменяют, а расширяют возможности облаков и современных инфокоммуникаций в целом, приближая обработку, аналитику и даже приложения к источникам данных, делая возможным изолировать данные в облачных системах и хранить их рядом с пользователем, а также в реальном же времени реагировать на поступающую в реальном времени информацию.
Сравнительные характеристики этих двух моделей в несколько упрощенном, но зато в компактном виде представлены в таблице.
Существуют еще некоторые особенности туманных вычислений, отсутствующие в облачной модели, которые не уместились в таблице.
В облаке работает несколько виртуальных машин, принадлежащих разным пользователям и расположенных на одном физическом сервере. Эти серверы, в отличие от многих краевых узлов, ориентированы именно на такое их использование. В то же время пограничные узлы, такие, например, как базовая станция, используются в первую очередь для приема и передачи сигналов мобильной связи. Вычислительные мощности, доступные на таких узлах, разработаны для этой основной задачи маршрутизации трафика. Если и когда эти узлы используются в туманных вычислениях, существует риск ухудшения QoS основной их функциональности, в связи с чем целесообразно введение приоритетов для основных "плановых" функций относительно дополнительных туманных вычислительных задач.
Еще одна особенность связана с соглашениями об уровне обслуживания (SLA). Управление облачной вычислительной средой требует выполнения соглашений между провайдером и пользователем в виде SLA, которые всегда устанавливаются, поддерживаются и контролируются в облачных вычислениях. Организация подобной поддержки и контроля SLA в туманных вычислениях является несоизмеримо более сложной задачей в силу многочисленности и разнородности "туманных капель". Если задача должна была быть выгружена с облачного сервера на пограничный узел, например, на мобильную базовую станцию, принадлежащую оператору мобильной связи, тогда SLA облачных / туманных вычислений должны будут принимать во внимание соглашения SLA с третьей стороной по услугам мобильной связи, что делает их мониторинг чрезвычайно сложной задачей.
Проблемы и риски
туманных вычислений
По-разному в облачных и туманных вычислениях осуществляются исследования уязвимостей, которые могут повлиять на безопасность и конфиденциальность. В таблице характеристики представлены не только упрощенно, но и несколько комплементарно в пользу туманных вычислений. По сути, утверждается, что туманные вычисления снимают основные ограничения традиционной облачной модели, среди которых: географическая удаленность облака от пользователей; мобильность пользователей, способная внезапно и значительно увеличивать эту удаленность; соответствующие сетевые задержки на долгом пути от пользователя в облако и обратно; соответствующие вероятности потерь пакетов; соответствующая стоимость требуемой полосы пропускания; соответствующие риски нарушения связи из-за непредвиденных ситуаций в сети.
Это утверждение вполне справедливо. Тем не менее, чтобы у читателя не сложилось превратное впечатление о безоблачности процесса внедрения туманных вычислений, отметим некоторые связанные с этой новой моделью проблемы и риски.
Вертикальное масштабирование. Как известно, облачные ЦОД позволяют масштабирование ресурсов по горизонтали, когда несколько виртуальных машин (VM), например, могут быть использованы для обслуживания возрастающей нагрузки в ЧНН (горизонтальное масштабирование). Экосистема туманных вычислений позволяет осуществлять вертикальное масштабирование ресурсов и даже организовывать несколько иерархических уровней вычислений, что позволяет уменьшить объем сетевого трафика, достигающего облако, сократить задержки в обслуживании, оптимизировать задействованные ресурсы и повысить QoS / QoE.
Гетерогенность. В облаке виртуальные ресурсы представляют собой однотипные VM, организуемые на одном и том же или на однородных физических серверах. Экосистема туманных вычислений включает широкий спектр гетерогенных узлов различной специализации и вычислительной мощности: цифровые сигнальные процессоры (DSP), датчики, микроконтроллеры, графические процессоры, маршрутизаторы, мобильные базовые станции, коммутаторы, большие компьютеры, расположенные в центрах обработки данных, и другие сетевые вычислительные устройства с совершенно разными характеристиками и производительностью. Эффективные вычисления, распределяемые на таких разнообразных ресурсах как в горизонтальном, так и в вертикальном масштабе, и есть главное предназначение туманных вычислений, но их организация – задача отнюдь не тривиальная.
Приоритетность специализированных задач пограничных узлов над непосредственно туманными вычислениями. Эта проблема актуальна для тех "туманных капель", которые строятся на традиционных сетевых элементах – маршрутизаторах, контроллерах базовых станций сотовой сети, технологических управляющих компьютерах и т.п., которые на добровольной основе предоставляют свободные излишки своих вычислительных ресурсов для туманных вычислений. Эта задача уже упоминалась выше.
Проблема количества. Как отмечалось ранее, ожидается, что в сеть будут включены новые миллиарды устройств IoE, что естественным образом влечет пропорциональное увеличение количества ресурсов, которые добавляются в туман и в облако, что делает неизбежным как вертикальное, так и горизонтальное масштабирование. При вертикальном масштабировании и неоднородности средств туманных вычислений количество ресурсов, которые будут добавлены и которые станут видимыми в сети, станет чрезвычайно большим.
Безопасность и конфиденциальность. При доступе к удаленному компьютеру в облачных вычислениях важнейшим фактором является безопасность, связанная с хранением данных и размещением нескольких пользователей, которую должен гарантировать поставщик. Для облачных вычислений уже разработаны надежные механизмы обеспечения изоляции пользователей и их данных. Это проблема гораздо более трудноразрешима в экосистеме туманных вычислений, когда хакер может развернуть вредоносные приложения на пограничном узле, что, в свою очередь, может использоваться как уязвимость для нарушения выполнения других функций этого пограничного узла, например, маршрутизатора. Более того, если пользовательские данные должны быть временно сохранены в нескольких пограничных точках, чтобы облегчить вычисление на краю, существенно усложняется решение проблемы конфиденциальности пользователя и проблемы безопасности. Такие угрозы могут оказать значительное негативное воздействие на распространение туманных вычислений в целом.
Прозрачность и доступность. Ресурсы в облаке общедоступны и прозрачны для удаленного пользователя, что позволяет приобретать их обычными рыночными способами. Облачный рынок является конкурентоспособным и предлагает пользователям широкий спектр предложений на выбор. При использовании туманных вычислений картина меняется, имеется значительно большее количество узлов в сети, которые не будут отображаться другим пользователям, но могут стать доступными им. Разработка аналогичной облаку рыночной модели с учетом неоднородности ресурсов и их возможной разной принадлежности является чрезвычайно сложной задачей. Более того, создание доверия потребителей к использованию устройств и узлов, поддерживающих туманные вычисления, потребует решения ряда проблем, таких как безопасность и конфиденциальность, разработка стандартов, правил, контрольных показателей.
Мониторинг и бенчмаркинг (эталонное тестирование). Задачи измерения и контроля производительности в облачных вычислениях решаются с использованием различных методов, таких как бенчмаркинг для выбора ресурсов, которые максимизируют производительность приложения, и периодический мониторинг ресурсов для обеспечения поддержания заданного пользователем уровня обслуживания. Однако на пограничных узлах туманных вычислений мониторинг будет более сложным, тем более учитывая вышеупомянутую ограниченную доступность оборудования. К тому же бенчмаркинг и мониторинг должны будут охватывать все связи – между пограничным узлом и пользовательскими устройствами, между пограничным узлом и облаком и, возможно, между разными пограничными узлами.
И все же все эти семь проблем представляют собой не более чем новые, пусть и сложные, но вполне разрешимые инженерные задачи. Хочется пожелать читателю принять участие в увлекательном процессе их решения.
Схемы организации
туманных вычислений
В модели облачных вычислений находящиеся на границе сети пользовательские смартфоны /планшеты, равно как и сенсоры / датчики / "вещи", общаются с туманными и облачными серверами. Там же в облачных / туманных хранилищах хранятся и обрабатываются данные с сетевых устройств, а пользовательские устройства просто получают доступ к этим ресурсам. Например, службы веб-приложений, такие как Amazon Elastic Compute Cloud (EC2) или Google Compute Engine, размещенные на серверах в облачных центрах обработки данных, к которым через интернет получают доступ пользователи со всего мира. В туманной модели вычисления / хранение сосредоточены не только в облачных центрах данных, но и во множестве гетерогенных узлов на краю сети, приближаясь тем самым к пользователю и уменьшая задержки и возможные сбои при связи с географически удаленным облаком, о чем говорилось ранее. При этом могут быть задействованы разные схемы организации туманных вычислений. Рассмотрим их.
Агрегационная схема, когда потоки данных с нескольких устройств в заданной географической области агрегирует близлежащий пограничный узел ("туманная капля"). Он выполняет вычисления, при необходимости дает возможность реагировать пользователю и направляет агрегированные данные на облачный сервер для дальнейшей обработки. Рассмотрим пример технического обслуживания автомобиля с множеством датчиков разных агрегатов. В одном современном автомобиле находится более чем 100 микропроцессорных модулей управления, выполняющих более 100 миллионов строк программного кода. Водитель, естественно, не в состоянии видеть все эти 100 устройств. То, что он замечает, – это интерфейс взаимодействия с человеком, видимая интерфейсная система (по существу, контроллер развлекательных устройств и навигационный сервис). Иногда водитель замечает включаемые датчиками дождя автоматические дворники, круиз-контроль, предупреждение о не застегнутом ремне безопасности, антиблокировочную тормозную систему, систему регулировки тяги. В то же время эти микропроцессорные датчики генерируют до двух петабайт эксплуатационных данных в год, которые, разумеется, чересчур дорого и непрактично передавать в облако сервисного центра и / или автомобильного завода для обработки в реальном времени. В свою очередь, туманные вычисления превращают такой автомобиль в своего рода ЦОД на колесах, который в состоянии классифицировать и индексировать данные, а затем генерировать аварийные сигналы, если необходимо вмешательство человека (например, когда перегрелся двигатель или снизилось давление в шинах), а также передавать агрегированные данные в удаленное облако сервисного центра.
Схема разгрузки, когда приложение выгружает рабочую нагрузку с устройства на пограничный узел ("туманную каплю") с дополнительными вычислительными возможностями, содержащий аппаратные ускорители или множество ядер.
Схема совместного использования разгрузки, когда рабочая нагрузка от пользовательского устройства с помощью "туманных капель" распределяется между одноранговыми узлами на одном или разных иерархических уровнях экосистемы туманных вычислений. Подчеркнем, что возможности туманных вычислений могут быть расширены за счет самих пользовательских устройств, которые имеют свободные вычислительные мощности и могут выступить в качестве добровольных участников экосистемы.
Гибридная схема. Для оптимизации обслуживания сложных рабочих нагрузок может задействоваться комбинация вышеупомянутых схем. Рассмотрим, например, датчики загрязнения воздуха в городе. Когда уровень загрязняющих веществ в определенной области города увеличивается, частота мониторинга может повышаться, что приводит к большему объему данных. Эти данные могут быть отфильтрованы или предварительно обработаны на одноранговых узлах в модели совместного использования, чтобы сохранить темп обработки в реальном времени и не отставать от интенсивности, с которой данные генерируются датчиками в районах с высоким уровнем загрязнения. При этом общая сенсорная сеть может по-прежнему следовать описанной выше агрегационной схеме.
Эталонная архитектура
туманных вычислений
В самом конце 2015 года Принстонским университетом и компаниями ARM, Cisco, Dell, Intel, Microsoft был основан консорциум OpenFog. А в феврале 2017 года OpenFog Consortium опубликовал описание эталонной архитектуры туманных вычислений OpenFog как важнейшего компонента перспективной цифровой экономики. В эталонной архитектуре OpenFog заложены следующие восемь технологических принципов: безопасность, масштабируемость, открытость, автономность, RAS (reliability, availability, serviceability – надежность, доступность и эксплуатационные возможности), адаптируемость, иерархический принцип построения, программируемость.
Инфраструктура OpenFog представляет собой набор узлов (fog nodes) на базе сетевых смарт-устройств, которые выполняют обработку данных в рамках модели туманных вычислений. В проекте также содержатся описания вариантов иерархического выстраивания узлов, модели развертывания систем, примеры возможных реализаций.
Варианты реализаций
туманных вычислений
Эталонная модель ориентирована, в частности, на проекты Интернета вещей, мобильной связи 5G, искусственного интеллекта. Применения эталонной модели туманных вычислений просматриваются сегодня в строительстве умных городов, в новых принципах организации железнодорожного и автомобильного транспорта, в производстве умных автомобилей нового поколения, подключенных к интернету, в организации управления и принятия решений роем беспилотников, в умные светофоры и парковки, в интеллектуальные системы водоснабжения и вывоза мусора и т.д., вплоть до электрических лампочек с IP-адресами. Размещение туманных вычислений в мобильных сетевых узлах (Radio Network Edge) обеспечивает эффективное управление промышленным оборудованием и даже домашними электроприборами, экономя тем самым электроэнергию и стимулируя выполнение экологических норм.
Быстрое развитие всех этих применений модели туманных вычислений обусловлено тем, что включаемые в сеть устройства генерируют данные с экспоненциально возрастающей скоростью, создающей проблемы с перегруженностью информацией на краю сети и с нехваткой производительности облака. Именно производительность, безопасность, пропускная способность и надежность делают эталонную модель туманных вычислений перспективным средством решения этих проблем.
О решениях Amazon и Google мы уже писали выше. Не только они, но и другие ведущие мировые компании IBM, Cisco, Dell, Intel, Micrcosoft, Toshiba и др. ведут активные работы в области туманных вычислений для IoT и IoE в областях энергетики, медицины, торговли, сельского хозяйства, военного дела. Так Toshiba и Cisco совместно разработали инфраструктуру распределенной обработки данных на основе вычислительной сети Cisco Fog Computing Network компании Cisco и технологий Toshiba в области сенсорных устройств и конечных элементов обслуживания географически распределенных мультифункциональных вычислительных устройств [3, 4].
Весьма интересной является разработка в университете Саутгэмптона в рамках проекта FloodNet интеллектуальной распределенной сети для прогноза и предупреждения наводнений с использованием платформы туманных вычислений WiseNet [5]. Еще одна разработка GlacsWeb предназначена для облачного / туманного мониторинга движения ледников и исследования ледниковой среды.
Эффективны туманные вычисления для видеонаблюдения и визуальных средств безопасности. Камеры наблюдения широко используются для обеспечения безопасности людей, имущества, охраняемых территорий и пр. Умные города, умные дома, магазины, общественный транспорт, предприятия все активнее используют датчики камер видеонаблюдения для обеспечения безопасности людей, выявления несанкционированного доступа и повышения безопасности, надежности и эффективности. Сами же камеры имеют возможность генерировать огромное количество данных, которые могут превышать терабайты в день для одной камеры, что делает невозможным перенос всех данных в облако для обработки данных в реальном времени. Задержки же крайне важны при обнаружении аномалий (злоумышленник в здании, отказ производственного оборудования, срабатывание датчиков влажности, температуры, задымленности, срочная медицинская помощь) и необходимости обнаружения и реагирования в строго регламентируемое время. Туманные вычисления позволяют создавать системы распределенного видеонаблюдения в режиме реального времени. К тому же узлы тумана используются для интеллектуального разделения обработки видеоизображения, ускоряющего видеоанализ в целом.
Современные умные здания могут содержать тысячи датчиков для измерения различных рабочих параметров здания, включая температуру, влажность, заполнение, открывание / закрытие двери, считыватели карт памяти, занятость мест на стоянке, лифты и качество воздуха. Эти датчики фиксируют данные телеметрии с различными интервалами и передают эту информацию для обработки и хранения, а также при необходимости на управляемые контроллером приводы. Здесь тоже многие процессы обработки и реагирования чрезвычайно чувствительны ко времени. Например, включение систем пожаротушения в ответ на пожар или блокирование зоны при неавторизованном проникновении. Все это требует обработки данных в непосредственной близости от устройств инфраструктуры.
Вместо заключения
Таким образом, "туманные капли" позволяют хранить и кэшировать данные рядом с пользователем вместо того, чтобы хранить их на значительном географическом отдалении в облачных дата-центрах, избегать задержек, быстрее и эффективнее анализировать Большие данные. Кроме того, туманные вычисления дают возможность оперативного анализа локальных данных и предоставления соответствующих локальных сервисов без выстраивания полной сетевой инфраструктуры.
Более того, парадигма туманных вычислений вместе с рассмотренной выше парадигмой Интернета всего определят грядущую эру "тумана всего" (Fog of Everything, FoE = FogComputing + IoE) – эру, определяющую новую парадигму: мир плотно распределенных интеллектуальных беспроводных устройств с ограниченным ресурсом, способных собирать, обрабатывать и передавать в реальном времени гигантские объемы данных об окружающей среде, о жизнедеятельности людей и вещей. Возможно даже, что вскоре им будет управлять искусственный интеллект. Впрочем, во многом это уже будет мир подключенных устройств. И все желающие тоже могут подключиться.
Кстати, возвращаясь к первой части статьи [6], чуть не забыли – по всему получается, что если облака – это своего рода модель Бога, то туманные вычисления делегируют часть Божьего промысла пользователям. Этакая, понимаешь, демократия наклевывается… Только для пользователей или же для "вещей"? Вот в чем вопрос.
ЛИТЕРАТУРА:
1. Гольдштейн Б.С. Телефонная операционная система электронного узла коммутации // Электросвязь. 1980. № 8.
2. Виноградова Н.Ю., Гольдштейн Б.С. Инструментальная операционная система // Вестник связи. 1987. № 11.
3. Cisco – Fog computing and the Internet of Things: Extend the cloud to where the things are. 2015. [Online]. Available: http://www.cisco.com/c/dam/enus/solutions/trends/iot/docs/computing-overview.pdf
4. Chiang M. and Zhang T. Fog and IoT: An overview of researchopportunities // IEEE Internet of Things Journal. 2016. Vol. 3. No. 6. PP. 854–864.
5. Eisa Aleisa Wireless Sensor Networks Framework for Water Resource Management that Supports QoS in the Kingdom of Saudi Arabia Original Research Article, Procedia Computer Science. 2013. Vol. 19. PP. 232–239.
6. Гольдштейн Б., Голышко А. Наша цель – клаудизм!? // ПЕРВАЯ МИЛЯ. 2018. № 3. С. 46–52.
Уайльд О. "Портрет Дориана Грея"
Туманные идеи
Термин исходит из того, что туман – это то же облако, просто находящееся ближе к земле, то есть туманные вычисления распределяются в пространстве между границами сети и централизованными облачными ресурсами. Сам туман состоит из "вычислительных капель" – мини-чипов, микроконтроллеров с определенной процессорной мощностью, памятью, интерфейсом, средствами беспроводной связи, электропитанием. Соответственно, туманные вычисления основываются на распределенной инфраструктуре совокупности таких "капель" с топологией типа ячеистой (mesh) сети, динамической маршрутизацией и относительно однородными по вычислительной мощности "каплями". Такая "капля" питается от небольшой батарейки, которой хватает на несколько лет беспрерывной работы. К "капле" могут подключаться всевозможные датчики и прочие объекты IoT / IoE. С помощью этих мини-чипов можно создать действительно распределенную сеть данных или устройств и развернуть ее по всей планете.
Основное отличие граничных вычислений от облачных заключается в том, что сбор и анализ данных проводится не в централизованной вычислительной среде, такой как ЦОД, а в том месте, где происходит генерация потоков данных. Источниками данных служат цифровые устройства (не обязательно находящиеся в одной локации), которые затем передают эти данные в режиме реального времени (зависит от ситуации, передача информации может быть отложена) в центральный репозиторий. Таким образом, Fog Computing не только перемещает (частично или полностью) объекты и службы облачных вычислений из центра в сеть доступа, но и открывает путь разнообразным сетевым проводным / беспроводным микроконтроллерам, мобильным интеллектуальным устройствам с ограниченными ресурсами к новым приложениям, которые позволят распределенным пользователям / машинам собирать, анализировать и делиться данными об окружающей среде, о мире людей и вещей.
Кроме того, в рассмотренных ранее облачных центрах обработки данных затраты на электроэнергию составляют значительную часть общих эксплуатационных расходов. С этой точки зрения парадигма туманных вычислений обещает сократить потребление энергии и связанные с этим эксплуатационные расходы за счет использования собственных возможностей туманных капель, их самоорганизации и распределенного пространственного размещения.
Идеи распределенных вычислений имеют уже полувековую историю. Зародились они еще в 1970-е, в эпоху больших ЭВМ. С появлением мини- и микрокомпьютеров распределенные вычислительные сети и параллельная обработка данных получили достойную аппаратную реализацию. Кстати, подход Fog Computing был реализован в проекте по поиску внеземных цивилизаций SETI. А уже в наши дни началась многоядерная эпоха, породившая разные компьютерные парадигмы: grid-вычисления, кластерные вычисления, мощные суперкомпьютеры, облачные вычисления.
В области инфокоммуникаций эти идеи обладают почти такой же историей и не менее актуальны. По времени они совпали с созданием цифровых систем коммутации с программным управлением и высказывались уже сравнительно давно [1, 2]. В наши дни прогнозируется, что от 20 до 50 млрд устройств будут включены в сеть Интернет в ближайшие годы, и, следовательно, новые триллионы гигабайт данных IoT будут созданы и должны будут обрабатываться в облачных центрах обработки данных. Не останутся в стороне и люди, точнее – новые приложения, генерирующие данные на пользовательских смартфонах и планшетах, которые используют облако в качестве централизованного сервера. Все это сделает рассмотренные ранее облачные сервисы де-факто несостоятельной вычислительной моделью в самом скором времени. Резко возрастающая интенсивность трафика от географически удаленных многочисленных источников и соответствующая нагрузка на сетевую инфраструктуру не могут не влиять отрицательно на качество обслуживания QoS и QoE.
Решением проблемы становятся "туманные вычисления". Эта вычислительная модель основана на предпосылке, что вычислительная рабочая нагрузка может быть выполнена на граничных вычислительных узлах, расположенных между облаком и множеством пользователей / устройств, как показано на рисунке.
Такая модель эффективно дополняет облачные вычисления и позволяет обеспечить высокие качественные показатели QoS и QoE при резком увеличении трафика и количества сетевых устройств.
Заметим, что идея туманных вычислений отличается от близкого к ним (часто в литературе используемого как синоним) понятия "краевых вычислений", когда в непосредственной близости от пользователя находится средство, удовлетворяющее дополнительные вычислительные потребности пользователя по обработке и хранению данных. В этом случае дополнительные средства краевых вычислений интегрируются исключительно с пользовательскими устройствами, а в туманных вычислениях дополнительные вычислительные средства ("туманные капли") интегрируются как в облачную вычислительную модель, так и в сеть пользовательских устройств.
Определим туманные вычисления как модель децентрализации ресурсов обработки данных (серверов, хранилищ, приложений и услуг), дополняющую облако и улучшающую качество обслуживания пользователей, а также их опыт QoS / QoE.
Эта модель никоим образом не может заменить преимущества использования облака, наоборот – оптимизирует производительность его приложений и снижает интенсивность передаваемого по сети трафика.
Сравнение облачных
и туманных вычислений
Туманные вычисления отнюдь не заменяют, а расширяют возможности облаков и современных инфокоммуникаций в целом, приближая обработку, аналитику и даже приложения к источникам данных, делая возможным изолировать данные в облачных системах и хранить их рядом с пользователем, а также в реальном же времени реагировать на поступающую в реальном времени информацию.
Сравнительные характеристики этих двух моделей в несколько упрощенном, но зато в компактном виде представлены в таблице.
Существуют еще некоторые особенности туманных вычислений, отсутствующие в облачной модели, которые не уместились в таблице.
В облаке работает несколько виртуальных машин, принадлежащих разным пользователям и расположенных на одном физическом сервере. Эти серверы, в отличие от многих краевых узлов, ориентированы именно на такое их использование. В то же время пограничные узлы, такие, например, как базовая станция, используются в первую очередь для приема и передачи сигналов мобильной связи. Вычислительные мощности, доступные на таких узлах, разработаны для этой основной задачи маршрутизации трафика. Если и когда эти узлы используются в туманных вычислениях, существует риск ухудшения QoS основной их функциональности, в связи с чем целесообразно введение приоритетов для основных "плановых" функций относительно дополнительных туманных вычислительных задач.
Еще одна особенность связана с соглашениями об уровне обслуживания (SLA). Управление облачной вычислительной средой требует выполнения соглашений между провайдером и пользователем в виде SLA, которые всегда устанавливаются, поддерживаются и контролируются в облачных вычислениях. Организация подобной поддержки и контроля SLA в туманных вычислениях является несоизмеримо более сложной задачей в силу многочисленности и разнородности "туманных капель". Если задача должна была быть выгружена с облачного сервера на пограничный узел, например, на мобильную базовую станцию, принадлежащую оператору мобильной связи, тогда SLA облачных / туманных вычислений должны будут принимать во внимание соглашения SLA с третьей стороной по услугам мобильной связи, что делает их мониторинг чрезвычайно сложной задачей.
Проблемы и риски
туманных вычислений
По-разному в облачных и туманных вычислениях осуществляются исследования уязвимостей, которые могут повлиять на безопасность и конфиденциальность. В таблице характеристики представлены не только упрощенно, но и несколько комплементарно в пользу туманных вычислений. По сути, утверждается, что туманные вычисления снимают основные ограничения традиционной облачной модели, среди которых: географическая удаленность облака от пользователей; мобильность пользователей, способная внезапно и значительно увеличивать эту удаленность; соответствующие сетевые задержки на долгом пути от пользователя в облако и обратно; соответствующие вероятности потерь пакетов; соответствующая стоимость требуемой полосы пропускания; соответствующие риски нарушения связи из-за непредвиденных ситуаций в сети.
Это утверждение вполне справедливо. Тем не менее, чтобы у читателя не сложилось превратное впечатление о безоблачности процесса внедрения туманных вычислений, отметим некоторые связанные с этой новой моделью проблемы и риски.
Вертикальное масштабирование. Как известно, облачные ЦОД позволяют масштабирование ресурсов по горизонтали, когда несколько виртуальных машин (VM), например, могут быть использованы для обслуживания возрастающей нагрузки в ЧНН (горизонтальное масштабирование). Экосистема туманных вычислений позволяет осуществлять вертикальное масштабирование ресурсов и даже организовывать несколько иерархических уровней вычислений, что позволяет уменьшить объем сетевого трафика, достигающего облако, сократить задержки в обслуживании, оптимизировать задействованные ресурсы и повысить QoS / QoE.
Гетерогенность. В облаке виртуальные ресурсы представляют собой однотипные VM, организуемые на одном и том же или на однородных физических серверах. Экосистема туманных вычислений включает широкий спектр гетерогенных узлов различной специализации и вычислительной мощности: цифровые сигнальные процессоры (DSP), датчики, микроконтроллеры, графические процессоры, маршрутизаторы, мобильные базовые станции, коммутаторы, большие компьютеры, расположенные в центрах обработки данных, и другие сетевые вычислительные устройства с совершенно разными характеристиками и производительностью. Эффективные вычисления, распределяемые на таких разнообразных ресурсах как в горизонтальном, так и в вертикальном масштабе, и есть главное предназначение туманных вычислений, но их организация – задача отнюдь не тривиальная.
Приоритетность специализированных задач пограничных узлов над непосредственно туманными вычислениями. Эта проблема актуальна для тех "туманных капель", которые строятся на традиционных сетевых элементах – маршрутизаторах, контроллерах базовых станций сотовой сети, технологических управляющих компьютерах и т.п., которые на добровольной основе предоставляют свободные излишки своих вычислительных ресурсов для туманных вычислений. Эта задача уже упоминалась выше.
Проблема количества. Как отмечалось ранее, ожидается, что в сеть будут включены новые миллиарды устройств IoE, что естественным образом влечет пропорциональное увеличение количества ресурсов, которые добавляются в туман и в облако, что делает неизбежным как вертикальное, так и горизонтальное масштабирование. При вертикальном масштабировании и неоднородности средств туманных вычислений количество ресурсов, которые будут добавлены и которые станут видимыми в сети, станет чрезвычайно большим.
Безопасность и конфиденциальность. При доступе к удаленному компьютеру в облачных вычислениях важнейшим фактором является безопасность, связанная с хранением данных и размещением нескольких пользователей, которую должен гарантировать поставщик. Для облачных вычислений уже разработаны надежные механизмы обеспечения изоляции пользователей и их данных. Это проблема гораздо более трудноразрешима в экосистеме туманных вычислений, когда хакер может развернуть вредоносные приложения на пограничном узле, что, в свою очередь, может использоваться как уязвимость для нарушения выполнения других функций этого пограничного узла, например, маршрутизатора. Более того, если пользовательские данные должны быть временно сохранены в нескольких пограничных точках, чтобы облегчить вычисление на краю, существенно усложняется решение проблемы конфиденциальности пользователя и проблемы безопасности. Такие угрозы могут оказать значительное негативное воздействие на распространение туманных вычислений в целом.
Прозрачность и доступность. Ресурсы в облаке общедоступны и прозрачны для удаленного пользователя, что позволяет приобретать их обычными рыночными способами. Облачный рынок является конкурентоспособным и предлагает пользователям широкий спектр предложений на выбор. При использовании туманных вычислений картина меняется, имеется значительно большее количество узлов в сети, которые не будут отображаться другим пользователям, но могут стать доступными им. Разработка аналогичной облаку рыночной модели с учетом неоднородности ресурсов и их возможной разной принадлежности является чрезвычайно сложной задачей. Более того, создание доверия потребителей к использованию устройств и узлов, поддерживающих туманные вычисления, потребует решения ряда проблем, таких как безопасность и конфиденциальность, разработка стандартов, правил, контрольных показателей.
Мониторинг и бенчмаркинг (эталонное тестирование). Задачи измерения и контроля производительности в облачных вычислениях решаются с использованием различных методов, таких как бенчмаркинг для выбора ресурсов, которые максимизируют производительность приложения, и периодический мониторинг ресурсов для обеспечения поддержания заданного пользователем уровня обслуживания. Однако на пограничных узлах туманных вычислений мониторинг будет более сложным, тем более учитывая вышеупомянутую ограниченную доступность оборудования. К тому же бенчмаркинг и мониторинг должны будут охватывать все связи – между пограничным узлом и пользовательскими устройствами, между пограничным узлом и облаком и, возможно, между разными пограничными узлами.
И все же все эти семь проблем представляют собой не более чем новые, пусть и сложные, но вполне разрешимые инженерные задачи. Хочется пожелать читателю принять участие в увлекательном процессе их решения.
Схемы организации
туманных вычислений
В модели облачных вычислений находящиеся на границе сети пользовательские смартфоны /планшеты, равно как и сенсоры / датчики / "вещи", общаются с туманными и облачными серверами. Там же в облачных / туманных хранилищах хранятся и обрабатываются данные с сетевых устройств, а пользовательские устройства просто получают доступ к этим ресурсам. Например, службы веб-приложений, такие как Amazon Elastic Compute Cloud (EC2) или Google Compute Engine, размещенные на серверах в облачных центрах обработки данных, к которым через интернет получают доступ пользователи со всего мира. В туманной модели вычисления / хранение сосредоточены не только в облачных центрах данных, но и во множестве гетерогенных узлов на краю сети, приближаясь тем самым к пользователю и уменьшая задержки и возможные сбои при связи с географически удаленным облаком, о чем говорилось ранее. При этом могут быть задействованы разные схемы организации туманных вычислений. Рассмотрим их.
Агрегационная схема, когда потоки данных с нескольких устройств в заданной географической области агрегирует близлежащий пограничный узел ("туманная капля"). Он выполняет вычисления, при необходимости дает возможность реагировать пользователю и направляет агрегированные данные на облачный сервер для дальнейшей обработки. Рассмотрим пример технического обслуживания автомобиля с множеством датчиков разных агрегатов. В одном современном автомобиле находится более чем 100 микропроцессорных модулей управления, выполняющих более 100 миллионов строк программного кода. Водитель, естественно, не в состоянии видеть все эти 100 устройств. То, что он замечает, – это интерфейс взаимодействия с человеком, видимая интерфейсная система (по существу, контроллер развлекательных устройств и навигационный сервис). Иногда водитель замечает включаемые датчиками дождя автоматические дворники, круиз-контроль, предупреждение о не застегнутом ремне безопасности, антиблокировочную тормозную систему, систему регулировки тяги. В то же время эти микропроцессорные датчики генерируют до двух петабайт эксплуатационных данных в год, которые, разумеется, чересчур дорого и непрактично передавать в облако сервисного центра и / или автомобильного завода для обработки в реальном времени. В свою очередь, туманные вычисления превращают такой автомобиль в своего рода ЦОД на колесах, который в состоянии классифицировать и индексировать данные, а затем генерировать аварийные сигналы, если необходимо вмешательство человека (например, когда перегрелся двигатель или снизилось давление в шинах), а также передавать агрегированные данные в удаленное облако сервисного центра.
Схема разгрузки, когда приложение выгружает рабочую нагрузку с устройства на пограничный узел ("туманную каплю") с дополнительными вычислительными возможностями, содержащий аппаратные ускорители или множество ядер.
Схема совместного использования разгрузки, когда рабочая нагрузка от пользовательского устройства с помощью "туманных капель" распределяется между одноранговыми узлами на одном или разных иерархических уровнях экосистемы туманных вычислений. Подчеркнем, что возможности туманных вычислений могут быть расширены за счет самих пользовательских устройств, которые имеют свободные вычислительные мощности и могут выступить в качестве добровольных участников экосистемы.
Гибридная схема. Для оптимизации обслуживания сложных рабочих нагрузок может задействоваться комбинация вышеупомянутых схем. Рассмотрим, например, датчики загрязнения воздуха в городе. Когда уровень загрязняющих веществ в определенной области города увеличивается, частота мониторинга может повышаться, что приводит к большему объему данных. Эти данные могут быть отфильтрованы или предварительно обработаны на одноранговых узлах в модели совместного использования, чтобы сохранить темп обработки в реальном времени и не отставать от интенсивности, с которой данные генерируются датчиками в районах с высоким уровнем загрязнения. При этом общая сенсорная сеть может по-прежнему следовать описанной выше агрегационной схеме.
Эталонная архитектура
туманных вычислений
В самом конце 2015 года Принстонским университетом и компаниями ARM, Cisco, Dell, Intel, Microsoft был основан консорциум OpenFog. А в феврале 2017 года OpenFog Consortium опубликовал описание эталонной архитектуры туманных вычислений OpenFog как важнейшего компонента перспективной цифровой экономики. В эталонной архитектуре OpenFog заложены следующие восемь технологических принципов: безопасность, масштабируемость, открытость, автономность, RAS (reliability, availability, serviceability – надежность, доступность и эксплуатационные возможности), адаптируемость, иерархический принцип построения, программируемость.
Инфраструктура OpenFog представляет собой набор узлов (fog nodes) на базе сетевых смарт-устройств, которые выполняют обработку данных в рамках модели туманных вычислений. В проекте также содержатся описания вариантов иерархического выстраивания узлов, модели развертывания систем, примеры возможных реализаций.
Варианты реализаций
туманных вычислений
Эталонная модель ориентирована, в частности, на проекты Интернета вещей, мобильной связи 5G, искусственного интеллекта. Применения эталонной модели туманных вычислений просматриваются сегодня в строительстве умных городов, в новых принципах организации железнодорожного и автомобильного транспорта, в производстве умных автомобилей нового поколения, подключенных к интернету, в организации управления и принятия решений роем беспилотников, в умные светофоры и парковки, в интеллектуальные системы водоснабжения и вывоза мусора и т.д., вплоть до электрических лампочек с IP-адресами. Размещение туманных вычислений в мобильных сетевых узлах (Radio Network Edge) обеспечивает эффективное управление промышленным оборудованием и даже домашними электроприборами, экономя тем самым электроэнергию и стимулируя выполнение экологических норм.
Быстрое развитие всех этих применений модели туманных вычислений обусловлено тем, что включаемые в сеть устройства генерируют данные с экспоненциально возрастающей скоростью, создающей проблемы с перегруженностью информацией на краю сети и с нехваткой производительности облака. Именно производительность, безопасность, пропускная способность и надежность делают эталонную модель туманных вычислений перспективным средством решения этих проблем.
О решениях Amazon и Google мы уже писали выше. Не только они, но и другие ведущие мировые компании IBM, Cisco, Dell, Intel, Micrcosoft, Toshiba и др. ведут активные работы в области туманных вычислений для IoT и IoE в областях энергетики, медицины, торговли, сельского хозяйства, военного дела. Так Toshiba и Cisco совместно разработали инфраструктуру распределенной обработки данных на основе вычислительной сети Cisco Fog Computing Network компании Cisco и технологий Toshiba в области сенсорных устройств и конечных элементов обслуживания географически распределенных мультифункциональных вычислительных устройств [3, 4].
Весьма интересной является разработка в университете Саутгэмптона в рамках проекта FloodNet интеллектуальной распределенной сети для прогноза и предупреждения наводнений с использованием платформы туманных вычислений WiseNet [5]. Еще одна разработка GlacsWeb предназначена для облачного / туманного мониторинга движения ледников и исследования ледниковой среды.
Эффективны туманные вычисления для видеонаблюдения и визуальных средств безопасности. Камеры наблюдения широко используются для обеспечения безопасности людей, имущества, охраняемых территорий и пр. Умные города, умные дома, магазины, общественный транспорт, предприятия все активнее используют датчики камер видеонаблюдения для обеспечения безопасности людей, выявления несанкционированного доступа и повышения безопасности, надежности и эффективности. Сами же камеры имеют возможность генерировать огромное количество данных, которые могут превышать терабайты в день для одной камеры, что делает невозможным перенос всех данных в облако для обработки данных в реальном времени. Задержки же крайне важны при обнаружении аномалий (злоумышленник в здании, отказ производственного оборудования, срабатывание датчиков влажности, температуры, задымленности, срочная медицинская помощь) и необходимости обнаружения и реагирования в строго регламентируемое время. Туманные вычисления позволяют создавать системы распределенного видеонаблюдения в режиме реального времени. К тому же узлы тумана используются для интеллектуального разделения обработки видеоизображения, ускоряющего видеоанализ в целом.
Современные умные здания могут содержать тысячи датчиков для измерения различных рабочих параметров здания, включая температуру, влажность, заполнение, открывание / закрытие двери, считыватели карт памяти, занятость мест на стоянке, лифты и качество воздуха. Эти датчики фиксируют данные телеметрии с различными интервалами и передают эту информацию для обработки и хранения, а также при необходимости на управляемые контроллером приводы. Здесь тоже многие процессы обработки и реагирования чрезвычайно чувствительны ко времени. Например, включение систем пожаротушения в ответ на пожар или блокирование зоны при неавторизованном проникновении. Все это требует обработки данных в непосредственной близости от устройств инфраструктуры.
Вместо заключения
Таким образом, "туманные капли" позволяют хранить и кэшировать данные рядом с пользователем вместо того, чтобы хранить их на значительном географическом отдалении в облачных дата-центрах, избегать задержек, быстрее и эффективнее анализировать Большие данные. Кроме того, туманные вычисления дают возможность оперативного анализа локальных данных и предоставления соответствующих локальных сервисов без выстраивания полной сетевой инфраструктуры.
Более того, парадигма туманных вычислений вместе с рассмотренной выше парадигмой Интернета всего определят грядущую эру "тумана всего" (Fog of Everything, FoE = FogComputing + IoE) – эру, определяющую новую парадигму: мир плотно распределенных интеллектуальных беспроводных устройств с ограниченным ресурсом, способных собирать, обрабатывать и передавать в реальном времени гигантские объемы данных об окружающей среде, о жизнедеятельности людей и вещей. Возможно даже, что вскоре им будет управлять искусственный интеллект. Впрочем, во многом это уже будет мир подключенных устройств. И все желающие тоже могут подключиться.
Кстати, возвращаясь к первой части статьи [6], чуть не забыли – по всему получается, что если облака – это своего рода модель Бога, то туманные вычисления делегируют часть Божьего промысла пользователям. Этакая, понимаешь, демократия наклевывается… Только для пользователей или же для "вещей"? Вот в чем вопрос.
ЛИТЕРАТУРА:
1. Гольдштейн Б.С. Телефонная операционная система электронного узла коммутации // Электросвязь. 1980. № 8.
2. Виноградова Н.Ю., Гольдштейн Б.С. Инструментальная операционная система // Вестник связи. 1987. № 11.
3. Cisco – Fog computing and the Internet of Things: Extend the cloud to where the things are. 2015. [Online]. Available: http://www.cisco.com/c/dam/enus/solutions/trends/iot/docs/computing-overview.pdf
4. Chiang M. and Zhang T. Fog and IoT: An overview of researchopportunities // IEEE Internet of Things Journal. 2016. Vol. 3. No. 6. PP. 854–864.
5. Eisa Aleisa Wireless Sensor Networks Framework for Water Resource Management that Supports QoS in the Kingdom of Saudi Arabia Original Research Article, Procedia Computer Science. 2013. Vol. 19. PP. 232–239.
6. Гольдштейн Б., Голышко А. Наша цель – клаудизм!? // ПЕРВАЯ МИЛЯ. 2018. № 3. С. 46–52.
Отзывы читателей