Интернет Вещей - мир в котором обычные объекты становятся умнее и начинают объединяться между собой, делая возможными все новые виды услуг – он обещает сделать умнее города, уменьшить количество пробок, сделать чище окружающую среду, и обеспечить серию побед для любимой футбольной команды (Ок, ну может быть все кроме последнего).
Проблема заключается в том, что большинство технологов и технофилов говорят об Интернете Вещей так, как будто он уже существует, на самом же деле его еще нет. Ни в каком из возможных значений этого термина.
Нужно отметить, что уже существует множество умных гаджетов, которые способны подключатся к другим устройствам, и передавать на них данные – домашняя сигнализация, к примеру. Камеры. Тепловые датчики и водомеры. Но, как вы, наверное, уже заметили, мы все еще далеки от того дня, когда ваш холодильник, заметив отсутствие молока, заказывает новый литр, или когда ваш чемодан, проверив ваш календарь на командировки, удостовериться в том, что ваша командировочная одежда выстирана и сложена. И вот почему.
Не Лингва Франка
В своем наиболее обширном значении, Интернет - это всего лишь сеть, которая способна объединить любые устройства друг с другом. Это просто соединение, и совсем не означает, то, что гаджеты будут знать, как взаимодействовать друг с другом, а уж тем более, им будет что «сказать» друг другу.
Когда устройства взаимодействуют это, как правило, происходит с помощью одного или нескольких «Протоколов», или специализированных языков для обработки конкретных задач. Вы наверняка сталкивались с одним из самых популярных протоколов Интернета - Протоколом Передачи Гипер Текста, или HTTP. (Да, это именно то «http://» которое вы иногда видите в заглавии Web адреса в вашем браузере.) HTTP позволяет компьютерам всех видов обмениваться друг с другом файлами, изображениями и видео с помощью сети Интернет. Кроме HTTP, существует множество других, часто используемых, протоколов для выполнения специфических коммуникационных задач. SMTP, POP и IMAP, например, всё это протоколы электронной почты. FTP служит для базовой обработки передачи данных, и так далее. Такие специальные протоколы, как эти, как правило, работают просто отлично, так как Web, почт и FTP-серверы не могут много сказать друг другу (во время их работы программное обеспечение просто обрабатывает поставленную им задачу). Когда Интернет окончательно развился, стало намного проще использовать и дальше связку протоколов, в котором каждый отвечает за одну конкретную задачу, чем пытаться сделать что-то более сложное.
Вы, наверное, уже начали замечать проблемы. Устройства в Интернете Вещей должны уметь обрабатывать множество разных задач. Но при всем этом не совсем еще согласовано, какие протоколы при этом использовать. Другими словами, то, что мы сейчас имеем – это неспособность к взаимодействию.
«Все технологии неопределенные» говорит Хольгер Реинхардт, архитектор Облачных технологий 7 прикладного уровня.. «Интернет вещей аморфный как в философском, так и в терминологическом смысле».
Вавилонская Башня
Так что вместо того чтобы взаимодействовать непосредственно друг с другом, устройства в возникающем сегодня Интернете Вещей общаются в первую очередь через централизованные серверы, которые контролируются непосредственно связанными с ними разработчиками или продавцами. Это кое-как работает, но также приводит к множеству раздробленных подсетей, в которых устройства просто отлично могут общаться друг с другом, но фактически не могут общаться с устройствами из других подсетей. Возьмем, к примеру, автомобили. Форд Фокус, скажем, может просто отлично общаться с сервисом Форд или центром обработки данных, когда отправляет информацию о своем состоянии через интернет. Если какая – то деталь нуждается в замене, система автомобиля может доложить на главную базу, которая в свою очередь генерирует уведомление об этом владельцу автомобиля.
Но, скажем, вы захотели создать предупреждения в реальном времени, на основе информации от автомобилей, которые в настоящее время находятся на дороге. Теперь у Вас появилась проблема, ведь Ваш Форд, вероятней всего, создан для общения только с другими Фордами, а не с Хондами, Порше или Теслами. Это потому, что они не говорят на одном языке. А так нет никакого простого способа передать цепочке автомобилей сообщение о том, что, к примеру, впереди идут строительные работы, или о том, что какой-то водитель значительно превышает скорость.
Некоторые из этих вопросов просто проблемы в сетевой архитектуре, то есть устройства могут соединяться между собой при помощи, скажем, Bluetooth или NFC. Эти недочеты относительно легко можно исправить.
Вопрос протокола же, напротив, является прямым препятствием к Интернету Вещей, потому что группа разрозненных устройств взаимодействует только внутри своих компаниями, что никак не способствует развитию Интернета. (Хотя, может быть это все закончиться как CompuServe Вещей, хитро, не правда ли?)
Слишком много региональных диалектов
Теперь, даже конкурирующие автомобильные компании рано или поздно поймут, что общий протокол данных хорошо повлияет на развитии бизнеса. Но все равно это не решит протокольную проблему – это лишь приведет к увеличению проблемы связи с другими смежными информационными системами, включая все новые машины. Есть еще множество устройств, которые хотели бы «поговорить» с автомобилями, но не могут, как скажем, ворота при въезде на платные дороги, или заправочные станции. Они «говорят» на региональных диалектах, которые другие не могут понять.
Для того чтобы рассмотреть эту проблему поближе рассмотрим, к примеру, «умную» гостиную с тремя вещами подключенными к интернету – Nest термостат, светильник Spark, и автоматизированные шторы Makita. Каждое из устройств собирает данные, и отправляет их своим производителям, что весьма ограничивает их действия. Если в комнате стало слишком тепло, термостат Nest включает кондиционер, если темно, контроллер Makita открывает шторы. Если в темноте кто-то заходит в комнату, зажжется светильник Spark. Посмотрим же, чего не происходит? Nest не «общается» со Spark’ом, Spark не «общается» с Makit’ой, а Makita не «общается» с Nest’ом. В лучшем случае Вы могли бы получить один концентратор, типа системы управления домом, но эти контроллеры бесполезны, так же как и универсальные пульты для дома. Стоит отметить, насколько маловажно то, что все эти устройства имеют доступ к интернету. Тот факт, что они находятся online - означает лишь, что вы можете управлять ими при помощи своего смартфона. Большое дело.
В этом мы можем винить избыток инженеров. Новые технологии поощряют отношения как на Диком Западе среди разработчиков, когда они преследуют лишь собственные интересы, вместо того чтобы согласовать общие стандарты. В результате у нас есть безумный алфавитный суп из протоколов, которые управляют тем, как машины «общаются» друг с другом. MQTT компании IBM, AMQP базируемый на DDS фирмы OMG, RESTful HTTP, XMPP, CoAP, NanoIP и SSI.
Что бы быть справедливым, существую веские причины для создания таких различных диалектов протокола. HTTP, например, всегда прекрасно работает с Web-серверами, которые легко справляется с двусторонним, в реальном времени "Запрос и ответ", режимом работы web коммуникаций.
Но не все устройства в Интернете Вещей будут созданы для такого рода межмашинного «разговора». Гаджеты, батареи, которых быстро разряжаются, или которые должны иметь дело с прерывистым или слабым сигналом, не всегда смогут в режиме реального времени отвечать на подобные HTTP запросы. Вот почему они, как правило, полагаются на другие протоколы - те, которые, например, могут передавать сообщения от устройства к устройству оппортунистически. (Как, например, в PubSub категории протоколов, которые включают MQTT).
Тем не менее, диалекты составляют еще одну проблему в Интернете Вещей.
Покажите Нам Деньги
Единственный правильный путь, при котором взаимосвязанный Интернет Вещей будет работать, о котором спорят эксперты, такие как эксперт седьмого прикладного уровня Рейнхардт, станет возможным, когда экономическое стимулирование подтолкнет производителей устройств дать доступ к элементам управления и данным по производству своих гаджетов. В данный момент этих стимулов просто не существует.
Видите, потребуется много усилий, чтобы получить умные вещи, способные «говорить» друг с другом осмысленно. Рейнхардт предлагает например умные урны для мусора в общественных парках. Когда мусорный подрядчик захочет получить данные от урны, (полная она или нет), изготовитель урн первым делом должен убедиться в том, что его урны смогут «разговаривать» с системой управления мусорного подрядчика. Затем он должен дать разрешение подрядчику на доступ к данным урны. В наше время этот первый шаг может справедливо занять большое количество времени и создать массу проблем. С другой стороны эти затраты ставят преграды частоте, с которой урны будут проходить через этот процесс. Это также делает сбор данных более дорогостоящим для мусорного подрядчика, которому легче просто нанять работника, который будет следить за уровнем наполнения урн. Теперь предположим, что урна получила возможность общаться с системами мусорного подрядчика. Теперь, изготовитель урн может просто нажать на кнопку и предоставить данные кому угодно без лишней головной боли. Как только процесс обмена и передачи данных станет легче повторять, производители устройств станут более заинтересованными в обмене данными, для получения дополнительных доходов.
Соединение Бункеров или Интернет Островов
В конце конов Интернет Вещей примет одну из двух возможных форм. Если нынешние тенденции не изменятся, устройства окажутся в ловушке централизованных Бункеров, а-ля пример домашней автоматизации рассмотренной выше. В конце концов, компании и поставщики объединят эти бункеры, и описанные различия в протоколах станут просто неважными. И так же далее начнут выстраиваться экономические стимулы. Однако разделять данные станет труднее, чем должно быть, учитывая необходимость продолжать строить новые связи между Бункерами. Едем дальше, это может стать, предметом высокой загруженности концентраторов, замедляя предоставление услуг. Однако централизация данных может повысить безопасность и конфиденциальность. Тем не менее, эта система могла бы приблизить нас к реальному Интернету Вещей, чем-то, что мы имеем на данный момент.
По словам Рейнхардта, в качестве альтернативы, более широко можно использовать протоколы, которыми могут пользоваться разные устройства, что может создать "Интернет островов", Устройства в комнате могли общаться напрямую друг с другом, с домом, а затем и с окрестностями. Данные останутся в этих небольших областях, повышая скорость предоставления услуг, и конфиденциальность.
Эта последняя сеть представляет Интернет вещей гораздо более гибким и отзывчивым. После того как вы уполномочите различные устройства свободно «общаться» с другими машинами, автоматизированные системы могут начать изучать, что происходит в мире, вокруг них, и адаптироваться к потребностям человека. Жаль, что современные тенденции технологий и краткосрочность экономики не совсем прокладывают путь для этого.
Оригинальная статья - What's Holding Up The Internet Of Things
Перевод - Новак Константин