Абстрактный
Meshtastic и MeshCore - это системы связи с открытым исходным кодом на основе LoRa, предназначенные для обмена текстовыми сообщениями и упрощенного обмена данными без сотовой связи, Wi-Fi или интернет-инфраструктуры. Оба проекта используют недорогое маломощное радиооборудование, но имеют разные архитектурные решения.
Meshtastic подчеркивает широкое внедрение сообщества, простую настройку устройств, децентрализованную одноранговую ретрансляцию, мобильные приложения, функции GPS и телеметрии, а также дополнительное подключение к Интернету через MQTT. MeshCore делает упор на структурированные роли, сопутствующие узлы, ретрансляторы, серверы комнат, гибридную маршрутизацию и более продуманное изучение маршрутов для уменьшения повторной лавинной рассылки по всей сети.
В этой статье объясняется, как работают обе системы, где они полезны и какие ограничения следует понимать владельцам хабов, специалистам по планированию действий в чрезвычайных ситуациях, любителям и техническим операторам, прежде чем полагаться на них.
1. Предыстория: почему важна внесетевая коммуникация
Современная связь во многом зависит от централизованной инфраструктуры: вышек сотовой связи, провайдеров интернет-услуг, оптоволоконных сетей, электросетей, облачных сервисов и коммерческих платформ обмена сообщениями. Когда эти системы выходят из строя или недоступны, обычные телефоны могут стать бесполезными для местной координации.
Автономные ячеистые системы устраняют этот пробел, позволяя небольшим радиоустройствам передавать короткие сообщения напрямую между пользователями или через промежуточные ретрансляционные узлы. Meshtastic описывает себя как автономную децентрализованную ячеистую сеть с открытым исходным кодом для доступных устройств с низким энергопотреблением, которая работает без вышек сотовой связи или подключения к Интернету. MeshCore приближается к той же цели, что и автономная зашифрованная система обмена сообщениями и облегченная библиотека маршрутизации C++ для LoRa и других пакетных радиоканалов.
2. Техническая основа: LoRa, не сотовая связь.
LoRa - это метод радиомодуляции дальнего действия с низким энергопотреблением, основанный на расширении спектра ЛЧМ. Он полезен для передачи небольших пакетов с низкой скоростью передачи данных на большие расстояния и обычно используется в региональных нелицензионных диапазонах ISM, таких как 915 МГц, 868 МГц и 433 МГц.
Meshtastic и MeshCore не являются широкополосными системами. Они не предназначены для голосовых вызовов, видео, изображений, больших файлов или высокоскоростного Интернета. Они оптимизированы для текстовых сообщений, отчетов о местоположении, телеметрии, информации об узлах и простых управляющих данных.
Meshtastic также не является LoRaWAN, Helium или The Things Network. Он напрямую использует радио LoRa. LoRaWAN - это отдельный протокол LPWAN со шлюзами и сетевыми серверами, при этом данные проекты строят локальные одноранговые или многопереходные пакетные сети.
3. Как работает Meshtastic
Meshtastic создает ячеистую сеть, в которой пользователи общаются через радиоузлы LoRa. Телефон или компьютер подключается к ближайшему узлу через Bluetooth, Wi-Fi или USB, после чего сообщения передаются по радиосети, а не через Интернет.
- Пользователь пишет сообщение в клиентском приложении.
- Телефон или компьютер отправляет сообщение на ближайшую радиостанцию Meshtastic.
- Радио передает пакет через LoRa.
- Другие узлы, услышавшие пакет, могут его ретранслировать.
- Сообщение распространяется по сети, пока не достигнет получателей.
Радиостанции Meshtastic ретранслируют полученные ими сообщения, образуя сетку, позволяющую участникам, находящимся дальше, продолжать получать сообщения. В новых версиях различаются обработка широковещательных сообщений и прямых сообщений, что помогает протоколу обслуживать мобильных пользователей, фиксированные узлы и смешанные сети.
4. Модель оборудования Meshtastic
Meshtastic работает на многих платах LoRa и специализированных устройствах таких экосистем, как RAK, LILYGO, Heltec, Seeed Studio, Elecrow и других. Выбор оборудования влияет на срок службы батареи, радиус действия, функции и стиль развертывания.
| Компонент | Цель |
|---|---|
| LoRa радиочип | Передача пакетов на большие расстояния. |
| MCU, например ESP32 или nRF52. | Запускает прошивку и логику устройства. |
| Bluetooth | Соединение телефона с узлом. |
| Wi-Fi | Дополнительная конфигурация, MQTT или доступ через Интернет на некоторых платах. |
| GPS/ГНСС | Дополнительный обмен местоположением. |
| Батарея или солнечная | Портативное или стационарное автономное развертывание. |
| Антенна | Главный фактор дальности и надежности. |
Устройства на базе nRF52 обычно более энергоэффективны и привлекательны для портативных или солнечных узлов. Устройства ESP32 часто дешевле и полезны, когда важны Wi-Fi, больший объем памяти или веб-интерфейс.
5. Meshtastic Модель безопасности
Meshtastic использует шифрование, но операторам необходимо понимать его ограничения. Полезная нагрузка пакета LoRa может использовать шифрование AES с разными ключами для каждого канала, в то время как заголовки остаются незашифрованными, поэтому узлы могут ретранслировать пакеты, которые они не могут расшифровать.
Безопасность канала зависит от предварительно общих ключей. Частные каналы могут использовать AES-128 или AES-256 в зависимости от длины ключа, и устройства должны использовать один и тот же ключ для связи. В новой прошивке также добавлена криптография с открытым ключом для прямых сообщений и идентификаторы сеансов для сообщений администратора, в то время как каналы группового чата по-прежнему полагаются на PSK.
Модель доверия децентрализована. Для идентификации узла используется доверие при первом использовании, а не центральный центр сертификации. Локальный доступ через Bluetooth, USB, Wi-Fi или Ethernet также является частью границы доверия, поскольку локальные клиенты могут читать расшифрованный трафик и могут изменять конфигурацию.
6. Meshtastic Расширенные функции
Meshtastic поддерживает не только основной текст. Общие функции включают в себя совместное использование GPS/местоположения, телеметрию, мост MQTT, промежуточное хранение, тестирование диапазона, удаленное администрирование и интеграцию с такими инструментами, как Home Assistant или Node-RED.
Мост MQTT может передавать трафик Meshtastic через Интернет. Публичные службы MQTT обычно ограничивают трафик, исходящий из Интернета, поэтому узлы, подключенные напрямую, могут получать его без переполнения локальных сетей.
Модуль Store & Forward может позволить клиентам запрашивать пропущенные сообщения со специального узла сервера после выхода за пределы диапазона LoRa. Это полезно, но запросы истории могут перегружать сетку, поскольку многие сообщения могут быть отправлены в ограниченное радиоэфирное время. Удаленное администрирование может изменить настройки узла из другого места, но небрежные изменения могут привести к отключению удаленного узла от сети.
7. Как работает MeshCore
MeshCore также является автономной системой связи на основе LoRa, но она отличается философией маршрутизации и разделением ролей. Он предназначен для безопасной текстовой связи, встроенной маршрутизации, экстренного реагирования, активного отдыха, тактического контекста или контекста безопасности, а также сенсорных сетей.
Библиотека MeshCore легкая, портативная и ориентирована на многоскачковую маршрутизацию пакетов. Устройства могут пересылать сообщения через несколько узлов, количество переходов настраивается, а фиксированные роли важны: узлы-компаньоны не повторяют сообщения.
- Пользователь подключается к сопутствующему узлу.
- Узел-компаньон отправляет и получает сообщения пользователя.
- Выделенные ретрансляторы расширяют радиус действия.
- Серверы комнат могут поддерживать постоянную групповую связь.
- Маршруты можно узнать после первоначального открытия.
Такое разделение ролей является одним из определяющих отличий MeshCore. Клиенты Meshtastic могут более широко участвовать в ретрансляции, тогда как MeshCore пытается избежать неэффективного повторения на основе клиента, полагаясь на целевые повторители.
8. MeshCore Модель маршрутизации
MeshCore сочетает в себе лавинную рассылку и маршрутизацию по изученному пути. Первое сообщение может достичь пункта назначения посредством лавинной маршрутизации. Затем пункт назначения отправляет отчет о доставке, содержащий используемые ретрансляторы, и будущие сообщения могут встраивать этот маршрут, чтобы только соответствующие ретрансляторы повторно передавали пакет.
Это важно, потому что эфирного времени LoRa мало. Каждая ненужная повторная передача увеличивает риск коллизий и снижает пропускную способность. Изучение маршрута может уменьшить повторную рассылку прямых сообщений, если путь известен.
Трафик группового канала по-прежнему переполняется, поскольку не существует единого пути назначения. Повторители могут блокировать лавинный трафик, превышающий настроенные пределы переходов, а модель пакетов различает маршруты лавинной рассылки, прямые маршруты и варианты транспорта.
9. MeshCore Модель безопасности и канала
MeshCore делает упор на зашифрованную передачу сообщений и поддерживает частные зашифрованные групповые каналы. Он различает публичные каналы, каналы с хэштегами и частные каналы.
Публичный канал использует общеизвестный ключ, и его следует рассматривать как общедоступный. Каналы с хэштегами получают секрет от названия канала. Частные каналы используют случайно сгенерированный секрет и должны считаться частными только среди пользователей, которые знают этот секрет.
MeshCore также использует подписанную рекламу. В объявлении может передаваться имя узла, положение и открытый ключ шифрования, а подпись помогает предотвратить подделку.
10. Meshtastic против MeshCore
| Категория | Meshtastic | MeshCore |
|---|---|---|
| Основной стиль дизайна | Широкая сеть сообщества с гибкими ролями узлов. | Структурированная сетка с сопутствующими узлами, ретрансляторами и серверами помещений. |
| Акцент на маршрутизации | Ретрансляция и поведение сетчатой трансляции. | Первоначальное открытие наводнения, затем изучение прямых путей. |
| Поведение клиента | Клиенты могут участвовать в поведении сетки в зависимости от роли и конфигурации. | Клиенты-компаньоны не повторяют сообщения. |
| Лучшее соответствие | Использование любителями, походы, сетка местного сообщества, телеметрия и эксперименты. | Запланированные сети ретрансляторов, прямой обмен сообщениями и структурированное развертывание. |
| Интернет-мост | Доступна поддержка MQTT. | В основном автономный, с приложением, флешером и экосистемой карт. |
| Аппаратное обеспечение | Широкая экосистема поддерживаемых устройств. | Устройства LoRa с прошивкой MeshCore и ролями компаньона, ретранслятора или автономного устройства. |
| Модель безопасности | Каналы PSK и прямые сообщения с открытым ключом в новой прошивке. | Публичные/частные каналы, подписанная реклама и секреты частных каналов. |
Выбор заключается не просто в том, какой проект лучше. С Meshtastic часто легче столкнуться из-за его большого сообщества и обширной аппаратной экосистемы. MeshCore привлекателен, когда операторам нужна продуманная архитектура маршрутизации с выделенными повторителями и меньшим количеством ретрансляции на стороне клиента.
11. Варианты использования
Связь в чрезвычайных ситуациях и стихийных бедствиях
Обе системы могут помочь местным группам общаться, когда сотовая связь или Интернет недоступны. Они не заменяют службы экстренной помощи, лицензированные системы общественной безопасности или спутниковые маяки, но могут добавить надежный локальный текстовый слой.
Отдых на свежем воздухе
Путешественники, внедорожные клубы, охотники, туристы, велосипедисты и организаторы удаленных мероприятий могут поддерживать связь с местными жителями там, где покрытие телефонов слабое или вообще отсутствует.
Сети общественной устойчивости
Группы соседей могут размещать стационарные солнечные узлы на крышах или высоких местах, чтобы создать локальную текстовую сеть для аварийных отключений и учений.
Интернет вещей и телеметрия
Небольшие полезные данные от датчиков, трекеров и узлов удаленного мониторинга могут перемещаться через сеть, но эфирное время и местные правила ограничивают объем передаваемых данных.
События и временные сайты
Фестивали, полевые операции, группы волонтеров и удаленные рабочие места могут использовать временные узлы там, где коммерческое покрытие слабое, недоступное или перегруженное.
12. Ограничения и риски
- Низкая пропускная способность: LoRa предназначен для небольших данных. Большой объем сообщений, частые обновления позиций и большие групповые чаты могут быстро перегрузить сетку.
- Столкновения и давление эфирного времени: Повторная ретрансляция может снизить надежность доставки. Ненужные роли маршрутизатора или ретранслятора могут увеличить количество коллизий и использовать прыжки.
- Диапазон зависит от окружающей среды: Прямая видимость, качество антенны, высота установки, местность, здания, защита от атмосферных воздействий и помехи имеют большее значение, чем заявленные маркетинговые характеристики.
- Доступ к метаданным: Шифрование может защитить контент, но наблюдатели все равно могут сделать вывод, что устройство передало, когда оно передавало, а иногда и маршрутизировало или идентифицировало метаданные.
- Ключевое управление: Общие ключи конфиденциальны настолько, насколько конфиденциальны люди и устройства, которые их держат. Публичные каналы или каналы по умолчанию не должны содержать конфиденциального контента.
- Соответствие нормативным требованиям: В США многие нелицензированные устройства работают в соответствии с частью 15 FCC и не должны создавать вредных помех при приеме помех. В других регионах действуют свои собственные правила мощности, рабочего цикла, частоты и антенн.
13. Рекомендации по развертыванию
Для небольшого развертывания Meshtastic начните с двух или трех известных совместимых устройств, выберите правильную предустановку региона, проверьте локальный диапазон и избегайте переключения устройств на роли маршрутизатора или повторителя, если только узел не расположен правильно и местное сообщество не согласится. В большинстве сетей следует использовать в основном клиентские узлы и лишь несколько удачно расположенных маршрутизаторов.
Для развертывания MeshCore планируйте роли. Используйте узлы-компаньоны для пользователей, размещайте ретрансляторы в фиксированных местах на возвышениях и используйте серверы комнат только тогда, когда действительно необходима постоянная групповая связь. Преимущества маршрутизации MeshCore зависят от стабильных ретрансляторов и разумного планирования.
- Используйте закрытые ключи или частные каналы для закрытого общения.
- Не размещайте пароли, секретные ключи или точное местоположение дома на каналах по умолчанию или общедоступных каналах.
- Улучшите качество и высоту антенны, прежде чем увеличивать мощность.
- Держите прошивку обновленной.
- Четко обозначьте узлы.
- Документируйте настройки частоты, местоположения, владельцев и планы обслуживания.
- Прежде чем полагаться на систему во время сбоя, протестируйте ее в нормальных условиях.
14. Заключение
Meshtastic и MeshCore представляют собой практический переход к недорогой и децентрализованной коммуникации, принадлежащей сообществу. Оба используют LoRa для создания устойчивых локальных сетей обмена сообщениями, но они различаются философией маршрутизации.
Meshtastic поддерживает широкую доступность, гибкое поведение узлов и развитую экосистему сообщества. MeshCore предпочитает структурированную архитектуру с сопутствующими узлами, ретрансляторами, серверами помещений и изученными прямыми путями.
Самые сильные развертывания не создаются путем покупки самой мощной радиостанции. Они создаются с учетом особенностей местности, размещения антенн, поведения маршрутизации, ограничений шифрования, местных правил и координации сообщества. При правильном использовании эти системы могут обеспечить ценный резервный уровень связи для групп на открытом воздухе, районов, групп волонтеров и технических сообществ.