Концепция Интернета вещей появилась в 1999 году в результате осмысления перспектив широкого применения средств радиочастотной идентификации для взаимодействия физических объектов между собой и с внешним окружением. Свое развитие она получила благодаря распространению беспроводных сетей, внедрению в повседневную практику облаков, совершенствованию технологий межмашинного взаимодействия, а также переходу на IPv6 и освоению программно-конфигурируемых платформ. Уже в 2008 году количество объектов, подключенных к Cети, превысило количество людей на Земле, и сегодня уже около 14 млрд объектов соединено между собой через Интернет. В период до 2020 года ежегодный вклад Интернета вещей, например, в рост ВВП США составит 0,2–0,4%. Такая прогнозируемая динамика роста создаст большое давление на Интернет вещей, развитие которого сегодня определяют следующие факторы:

  • обилие миниатюрных сенсоров, контроллеров и передатчиков, позволяющих обеспечить экономически оправданный процесс сбора всевозможных данных;
  • рост пропускной способности и проникновение сетей, а также многократное увеличение числа IP-адресов, что способствует вовлечению в Интернет вещей все новых устройств и субъектов;
  • снижение стоимости хранения и управления данными, определявшей на протяжении многих лет расходы на ИТ;
  • появление мощных аналитических инструментов, позволяющих оперировать накопленными данными в режиме, близком к реальному времени.

Учитывая эти тенденции, корпорация IBM предложила для работы с устройствами Интернета вещей управляемый облачный сервис IoT Foundation (рис. 1), размещаемый в облаке Bluemix (основанная на открытых стандартах облачная платформа PaaS). Основное предназначение Bluemix — создание и развертывание различных типов приложений с использованием различных технологий (Java, Node.js, Go, PHP, Python, Ruby Sinatra и Scala) и многочисленных сервисов, разработанных сообществом облака Bluemix.

 

Рис. 1. Cтруктура IoT Foundation
Рис. 1. Cтруктура IoT Foundation

 

Сервис IoT Foundation позволяет зарегистрировать устройства в сети, управлять ими, визуализировать и хранить полученные данные. Пользование сервисом начинается с подписки и регистрации «вещи» в сети по ее MAC-адресу. Подписка возможна через Bluemix и через IBM Cloud Marketplace, где можно сделать выбор из множества доступных сервисов. С помощью опции Quick Start пользователь может развернуть собственный прототип, выбрав устройство из списка уже известных, либо создать имитатор устройства.

Устройства соединяются по протоколу MQTT (Message Queue Telemetry Transport) — транспорту сообщений, получившему широкое распространение благодаря своей простоте и открытости. MQTT предназначен для поддержки межмашинного взаимодействия (M2M) в ситуациях, когда на устройстве может работать только весьма компактный код и критична пропускная способность сети. Протокол работает поверх TCP/IP или других сетевых протоколов, способных без потерь обеспечить направленные и двунаправленные соединения.

По мере сбора в IoT Foundation данных от «вещей», возможен запуск процесса конструирования — организации на базе Bluemix визуализации данных обработки событий, полученных от всех субъектов Интернета вещей. Такая визуализация возможна в режиме, близком к реальному времени, — все данные от устройств хранятся в специальной базе и могут использоваться для анализа. В общем случае конструирование состоит в компоновке данных о событиях, поступающих от вещей, в логические последовательности с целью выявления различных закономерностей и принятия решений по оптимизации бизнес-результатов. Кроме того, имеется возможность создания визуальных панелей результатов анализа с привлечением исторических данных.

В качестве примера использования сервиса IoT Foundation можно привести систему мониторинга температуры, построенную на базе сенсоров Arduino Uno и датчиков Virtuabotix DHT11 [1]. Собрав физический прототип из данных устройств и загрузив все необходимые драйверы и библиотеки поддержки MQTT, можно подключиться к облаку Bluemix и среде IoT Foundation для отображения телеметрии от датчиков на экране в виде графиков температуры и влажности. Далее можно создать собственное облачное приложение, которое будет сохранять данные, полученные от устройства Arduino, отображать их и сравнивать полученные ранее (исторические) данные с текущими.

Более серьезный пример — управление сетью сенсоров давления и потоковой готовности, расположенных на трубопроводах и вовлеченных в локальный Интернет вещей. Анализируя показатели от датчиков, можно в режиме реального времени выявлять аномалии, а также фильтровать данные о ложных срабатываниях. Информация о местоположении протечки передается ремонтной службе, приложения которой также находятся в облаке, что позволяет практически мгновенно обнаруживать протечки. Аналогичное решение вполне применимо к задачам мониторинга давления воды в кранах жилых домов. С помощью IoT Foundation можно отслеживать параметры движения автомобиля и посылать водителю предупреждающие сообщения о необходимости снизить скорость, о предельной высоте моста или тоннеля, допустимой нагрузке на ось и т. п. При попадании автомобиля в зону рискованной езды (например, гололед) сигнал посылается в Интернет вещей, откуда другим участникам движения рассылаются предупреждения, ответственные службы получают уведомление о необходимости обработать дорогу реагентами, а службы управления движением динамически устанавливают ограничения скорости. Таким образом, совместное использование IoT Foundation и Bluemix (рис. 2) позволяет создать основу композитных бизнес-решений для различных прикладных отраслей.

 

Рис. 2. IoT Foundation и облако Bluemix
Рис. 2. IoT Foundation и облако Bluemix

 

Особое внимание в IoT Foundation уделяется безопасности на всех этапах работы с устройствами Интернета вещей — их аутентификации, идентификации соединения и организации обмена данными. Взаимодействие осуществляется по протоколу HTTPS с сертификатом, подписанным Центром сертификации DigiCert для гарантии того, что соединение произошло именно с настоящим сервисом IoT Foundation. Устройства соединяются посредством уникальной комбинации идентификатора, заданного конкретным заказчиком, и аутентификации при помощи токена.

После установления соединения происходит контроль процессов передачи данных между устройствами с помощью безопасных механизмов сообщений. Будучи единожды аутентифицированы, устройства могут публиковать только свои собственные события и подписываться на командную логику, которая свойственна только им. Для предотвращения утечки данных между группами устройств применяются идентификаторы групп (организаций), которые внедрены в идентификаторы устройств и приложений и аутентифицируются с помощью паролей. IoT Foundation фильтрует потоки данных внутри организаций, исключая несанкционированное «перетекание» данных между ними. При использовании IoT Foundation рекомендуется применять встроенные функции безопасности, а также придерживаться практик Open Web Application Security Project [2].

Общее управление в IoT Foundation осуществляется с помощью системы передачи сообщений IBM MessageSight, специально созданной для работы с соединениями типа M2M, а накопленные данные хранятся средствами СУБД IBM Informix.

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

***

Сервис IoT Foundation востребован во многих отраслях, в числе которых автомобильная промышленность, розничная торговля, здравоохранение и фармацевтика, пищевая индустрия, энергетика, ЖКХ, службы прогноза погоды, транспорт. Его применение позволяет оптимизировать бизнес-процессы — корректировать маршруты транспорта, проводить мониторинг медицинских показателей, контролировать периметры безопасности и состояние энергосистем и т. п. По мере увеличения количества приложений, работающих с объектами Интернета вещей, будет наблюдаться взрывной рост объемов генерируемых различными устройствами данных, что приведет к обострению проблемы их управления, решение которой традиционными средствами достаточно затратно. Сервисы типа IoT Foundation, работающие в составе публичных облаков, способствуют сокращению управленческих расходов благодаря, например, интеграции использования системы управления умным домом с автоматизированной системой мониторинга энергосистемы здания.

Литература

  1. Кайл Браун. Создание датчика температуры для облачной среды с помощью Arduino Uno и IBM IoT Foundation. URL: http://www.ibm.com/developerworks/ru/library/cl-bluemix-arduino-iot2 (дата обращения: 28.05.2015).
  2. Дмитрий Евтеев. Анализ защищенности Web-приложений // Открытые системы.СУБД. — 2009. — № 02. — С. 37–39. URL: http://www.osp.ru/os/2009/02/7322807 (дата обращения: 28.05.2015).

Игорь Кулиничев (Igor.Koulinitchev@ru.ibm.com) — архитектор индустриальных решений, IBM (Москва).