Интернет вещей: Стандарты и рекомендации IETF
Авторы: Ari Keränen, Carsten Bormann
Для истинного интернета вещей (IoT) необходимо, чтобы эти «вещи» могли использовать протоколы Интернета. В Интернете всегда существовали те или иные «вещи», а неспециализированные компьютеры в домах и центрах обработки данных обычно без проблем работают с протоколами Интернета, так как они для этих устройств и предназначены. Тем не менее, подключение к Интернету устройств более узкого назначения, которым часто нужны оптимизированные версии или специальные условия использования для этих протоколов, имеет значительные достоинства.
Предыстория
За последнее десятилетие в IETF было инициировано несколько разнообразных работ, направленных на то, чтобы предоставить широкому диапазону вещей возможность использовать совместимые технологии для взаимодействия друг с другом: от миниатюрных датчиков, управляемых микроконтроллерами, до больших компьютеров в центрах обработки данных.
Когда мы писали об IoT в журнале IETF в 2010 году, в IETF имелось три рабочих группы, чья деятельность была направлена на IoT для устройств и сетей с ограниченными возможностями: группа 6LoWPAN, определившая уровень адаптации IPv6 и сжатие заголовков, пригодные для ограниченных радиоканалов; группа ROLL, сосредоточившая свою деятельность на протоколах маршрутизации для сетей с ограниченными узлами; и группа CoRE, целью которой является распространение архитектуры Web на большинство ограниченных сетей и встроенных устройств. Деятельность в направлении IoT с 2010 года только расширилась, и сегодня у нас насчитывается семь рабочих групп, активно разрабатывающих различные аспекты IoT (плюс еще две, завершивших работу), а также исследовательская группа Internet Research Task Force (IRTF), посвященная открытым исследовательским вопросам, связанным с IoT.
Деятельность IETF в области IoT
Первая рабочая группа IETF IoT, получившая название 6LoWPAN (IPv6 over Low-Power WPAN), была образована в марте 2005 года. Она определила методы адаптации IPv6 для сетей IEEE 802.15.4 (WPAN), отличающихся крайне малым размером пакета, путем сжатия заголовков и оптимизации обнаружения соседей (Neighbor Discovery). 6LoWPAN завершила свою работу в 2014 году, и пришедшая ей на смену рабочая группа 6Lo занимается разработкой аналогичных механизмов адаптации к более широкому спектру технологий радиосвязи, включая Bluetooth Low Energy (RFC 7668), ITU-T G.9959 (как используется в Z-Wave, RFC 7428) и стандарт беспроводных телефонов Digital Enhanced Cordless Telecommunications (DECT) Ultra Low Energy (ULE), а также экономичную технологию проводных сетей Master-Slave/Token-Passing (MS/TP), широко используемую в сетях RS-485 при создании систем автоматизированного управления.
Рабочая группа ROLL (Routing Over Low-Power and Lossy Networks) создала спецификации как для RPL-протокола IPv6 Routing Protocol for Low-Power and Lossy Networks (RFC 6550), так и для набора связанных расширений для различных метрик маршрутизации, объективных функций и малтикаста. Еще одним результатом деятельности ROLL стал комплект требований и заявлений о применимости, терминологический документ и анализ угроз безопасности.
Рабочая группа CoRE (Constrained RESTful Environments) до сих пор является одной из самых активных IoT-групп. Основным результатом ее работы является Constrained Application Protocol (CoAP, RFC 7252), радикально упрощенный аналог HTTP, основанный на UDP. Расширения CoAP позволяют осуществлять групповую коммуникацию (RFC 7390) и несложную серверную рассылку для наблюдения за ресурсами (RFC 7641). Все это дополняется механизмом обнаружения и самоописания, основанном на формате веб-ссылок, пригодном для ограниченных устройств (RFC 6690). Нынешняя деятельность группы направлена на разработку расширений, которые будут поддерживать передачу больших ресурсов, использование каталогов ресурсов для координации обнаружения, готовых к использованию описаний интерфейсов и транспортировку CoAP поверх TCP и TLS. Рабочая группа CoRE сейчас переформируется: в ее область работы включаются RESTCONF-подобные функции управления и коммуникация типа “публикация-подписка” по CoAP. CoRE также разрабатывает формат данных для представления измерений, снятых с датчиков, который будет использовать стандарт Concise Binary Object Representation (CBOR) (RFC 7049), аналог JSON, оптимизированный для двоичных данных и устройств с ограниченными ресурсами.
С 2010 года стало ясно, что IoT невозможен без надежной системы безопасности. Поэтому большинство новых рабочих групп по IoT были сформированы в сфере безопасности. Рабочая группа DICE (DTLS In Constrained Environments), уже завершившая работу, создала профиль TLS/DTLS, пригодный для ограниченных IoT-устройств. Рабочая группа ACE (Authentication and Authorization for Constrained Environments) трудится над механизмами аутентификации для доступа к ресурсам, размещенным на серверах в ограниченных средах, и недавно подготовила всеобъемлющий документ RFC 7744. Работу в этом направлении поддерживает недавно образованная рабочая группа COSE, создающая упрощенные аналоги CBOR для методов подписания и шифрования объектов JSON, разрабатываемых в группе JOSE.
Группа 6TiSCH (IPv6 Over the TSCH Mode of IEEE 802.15.4e), ставшая своеобразным дополнением к 6Lo, была образована в 2014 году и работает над реализацией IPv6 для Time-Slotted Channel Hopping (TSCH), недавно добавленного в сети IEEE 802.15.4. Эта работа направлена на использование детерминированных функций реального времени TSCH и включает в себя архитектуру, информационную модель и вопросы конфигурации. Обзорный документ 6TiSCH с изложением проблемы (RFC 7554) был опубликован в 2015 году; следующей будет спецификация для интерфейса с минимальной конфигурацией.
Кроме новых протоколов и других механизмов, разрабатываемых рабочими группами IETF, также важной является разработки рекомендаций по эффективным методам внедрения и другим аспектам. Рабочая группа LWIG (Lightweight Implementation Guidance) WG работает над такими документами, включая рекомендации для протоколов CoAP и IKEv2, асимметричной криптографии и CoAP в сотовых сетях. LWIG опубликовала RFC 7228, определяющий общую терминологию для сетей с ограниченными узлами.
Даже если оставить за скобками деятельность IETF, направленную конкретно на сценарии IoT, весь стек протоколов Web стремительно развивается, и многие из новых технологий, созданных другими рабочими группами IETF, скорее всего, будут использоваться также и для IoT. Рабочая группа HTTPbis недавно завершила создание спецификации для протокола HTTP/2, которая более пригодна для IoT-сценариев, чем ранние версии HTTP, благодаря более компактному формату и упрощенным правилам обработки. Рабочая группа TLS разрабатывает протокол TLS версии 1.3, включая DTLS 1.3, который может устанавливать безопасные транспортные сеансы более эффективно и поэтому лучше подойдет для IoT. Рабочая группа Homenet занята разработкой автоматической конфигурации сетей IPv6 в домашних сетях. Параллельно деятельности IETF по стандартизации следует отметить две исследовательские группы IRTF: ICNRG (Information-Centric Networking), исследующую применимость своих технологий для сценариев IoT, и CFRG (Crypto Forum), развивающую фундаментальные методы шифрования, такие как новые кривые эллиптической криптографии (ECC), которые будут более пригодны для IoT. И, наконец, IAB (Internet Architecture Board) организовывал несколько связанных семинаров (например, по безопасности, архитектуре, семантической совместимости) и опубликовал информационные документы, такие как Architectural Considerations in Smart Object Networking (RFC 7452).
В то время как IoT-ориентированные рабочие группы IETF уже выработали первые зрелые стандарты для IoT, возникают все новые вопросы для исследования, связанные с внедрением этих стандартов. Рабочая группа IRTF T2TRG (Thing-to-Thing Research Group) была образована в 2015 году для исследования открытых вопросов IoT, в первую очередь проблем с возможностью выработки стандартов IETF. В числе изучаемых тем – управление и эксплуатация сетей с ограниченными узлами, управление безопасностью и жизненным циклом, способы использования парадигмы REST в сценариях IoT и семантическая совместимость. Кроме того, имеется значительный интерес к отслеживанию и вкладу в работу других групп, работающих в области IoT. Например, недавно начала работу группа WoT (Web of Things) в составе W3C, и две группы тесно сотрудничают, изучая совместное будущее IoT и Web-технологий.
Заключение
К настоящему моменту IETF уже больше десятилетия работает над выработкой спецификаций и документированием ключевых стандартов и рекомендаций по IoT, и сегодня активность этой организации в этом направлении больше, чем когда-либо. Другие организации и консорциумы, работающие в области IoT, приняли стек протоколов Интернета в качестве основы для своих решений. IP и в частности IPv6 являются очевидным выбором для построения сетей, но широко используется и остальная часть стека IETF IoT, включая CoAP и DTLS. Базовый стек протоколов IETF IoT, как он определен сейчас в спецификациях RFC, является зрелым и пригодным для внедрения. Появляются дополнительные потребности в стандартизации, и активные группы в составе IETF и IRTF не покладая рук работают над выявлением и удовлетворением этих потребностей.