Умный дом Яндекса без хаба: как новая IoT-платформа управляет миллионом устройств

Яндекс запускает новую облачную платформу для умного дома, которая способна обслуживать более миллиона активных устройств. Главное нововведение — отказ от обязательного хаба: теперь каждое устройство самостоятельно подключается к экосистеме, поддерживает связь с облаком и получает обновления. Это по

Умный дом Яндекса без хаба: как новая IoT-платформа управляет миллионом устройств

Яндекс запускает новую облачную платформу для умного дома, которая способна обслуживать более миллиона активных устройств. Главное нововведение — отказ от обязательного хаба: теперь каждое устройство самостоятельно подключается к экосистеме, поддерживает связь с облаком и получает обновления. Это потребовало полного пересмотра архитектуры взаимодействия — от заводского контура до транспортного канала. В результате пользователи получают более простую и дешёвую систему, а инженеры решили сложные задачи по оптимизации работы на слабом железе и нестабильных сетях.

Как устроена новая IoT-платформа Яндекса

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

Устройства работают на ограниченном железе: слабый CPU, мало памяти. Домашняя сеть нестабильна: Wi-Fi может пропадать, задержки расти. В таких условиях каждый лишний TLS-коннект или дополнительная аллокация памяти становятся дорогими. Поэтому инженеры Яндекса пошли в обратную сторону — последовательно убирали лишнюю сложность на каждом слое.

Почему хаб стал узким местом

Хаб в умном доме выполнял роль посредника: он собирал данные с устройств по Zigbee, Z-Wave или Wi-Fi, обрабатывал их и отправлял в облако. Это добавляло задержку, точку отказа и стоимость. Пользователю нужно было покупать отдельное устройство, настраивать его и следить за его работой. Кроме того, хаб ограничивал масштабирование: каждое устройство должно было быть совместимо с конкретным хабом.

Яндекс решил убрать этот слой. Теперь устройство само регистрируется в облаке, получает конфигурацию и обновления прошивки напрямую. Это требует, чтобы устройство имело собственный стек для работы с облаком, умело обрабатывать ошибки сети и восстанавливать соединение. На слабом железе это нетривиальная задача.

Как устройство подключается к облаку без хаба

Процесс комиссионирования (ввода устройства в эксплуатацию) происходит через мобильное приложение Яндекса. Пользователь сканирует QR-код на устройстве или вводит код активации. После этого устройство получает токен доступа к облаку и настраивает сетевое соединение. Весь процесс занимает несколько секунд и не требует участия хаба.

Для поддержания соединения используется долгоживущий канал на основе WebSocket или аналогичного протокола. Устройство отправляет keepalive-пакеты, чтобы облако знало о его доступности. Если соединение обрывается, устройство автоматически переподключается с экспоненциальной задержкой, чтобы не перегружать сервер.

Технические детали: один канал вместо зоопарка соединений

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

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

Однопоточная модель исполнения и дисциплина переподключений

На устройствах с ограниченными ресурсами многопоточность может быть вредна: переключение контекста и синхронизация потребляют память и CPU. Яндекс использует однопоточную модель на основе event loop (цикла событий). Все операции — обработка команд, отправка телеметрии, переподключение — выполняются в одном потоке. Это упрощает код и уменьшает потребление памяти.

Особое внимание уделено переподключениям на плохой сети. Если устройство теряет связь, оно не пытается подключиться сразу же — это может перегрузить сервер. Вместо этого используется стратегия с экспоненциальной задержкой (backoff). Первая попытка через 1 секунду, затем через 2, 4, 8 и так далее до максимального интервала (например, 5 минут). После восстановления соединения задержка сбрасывается. Это позволяет выдерживать массовые отключения, например, при сбоях в электросети.

Кого затронет новая платформа

Новая платформа в первую очередь затронет пользователей умного дома Яндекса. Им больше не нужно покупать хаб для работы устройств — достаточно установить приложение и подключить устройство к Wi-Fi. Это снижает порог входа и упрощает расширение системы. Разработчики устройств для умного дома также получат преимущество: им не нужно поддерживать совместимость с конкретным хабом, достаточно реализовать клиентскую часть для облака Яндекса.

Для конкурентов — таких как Xiaomi, SberDevices или сторонние Zigbee-хабы — это вызов. Яндекс предлагает более простую и дешёвую альтернативу, которая может привлечь пользователей, не желающих разбираться в сложных настройках. Однако платформа пока заточена только под устройства Яндекса и партнёров, работающих по лицензии.

Что будет дальше

Яндекс продолжает развивать платформу. В ближайших планах — поддержка большего числа типов устройств, улучшение алгоритмов предсказания отказов сети и внедрение более эффективных протоколов сжатия данных. Также ожидается, что платформа станет открытой для сторонних производителей через SDK. Это может привести к появлению широкого ассортимента совместимых устройств.

Итог

Новая IoT-платформа Яндекса решает давнюю проблему умного дома — зависимость от хаба. Устройства теперь могут работать напрямую с облаком, даже на слабом железе и нестабильной сети. Инженерные решения — один канал, однопоточная модель, умные переподключения — позволяют обслуживать миллионы устройств без потери производительности. Для пользователей это означает более простую и дешёвую экосистему, а для индустрии — новый стандарт построения IoT-решений.