protobufs
Обзор
Protocol Buffers, обычно называемые Protobufs, представляют собой нейтральный относительно языка программирования и платформы, расширяемый механизм для сериализации структурированных данных. Они используются программным обеспечением Meshtastic для кодирования и передачи данных между App и Device, а также для коммуникации Device-to-Device.
Protobufs обеспечивают эффективный и легковесный способ обмена данными, что делает их хорошо подходящими для использования в средах с ограниченными ресурсами, таких как сеть Meshtastic. Они предлагают несколько преимуществ по сравнению с традиционными форматами данных, такими как XML или JSON, включая:
- Меньший сериализованный размер: Сериализованные данные Protobuf обычно значительно меньше, чем представления тех же данных в XML или JSON.
- Более быструю сериализацию и десериализацию: Protobufs разработаны для быстрой сериализации и десериализации, что важно для приложений, которым нужно обрабатывать большие объемы данных.
- Безопасность типов и самодескриптивность: Сообщения Protobuf безопасны с точки зрения типов, а форматы сообщений самодескриптивны, что упрощает работу с данными и их поддержку со временем.
Protobuf-сообщения Meshtastic
Проект Meshtastic определяет собственный набор сообщений Protobuf для различных типов данных, обмениваемых между app-device и device-device. Эти сообщения организованы в разные модули.
Официальная документация по сообщениям Protobuf Meshtastic доступна в Buf Schema Registry (BSR). BSR предоставляет централизованное место для управления и документирования схем Protobuf, используемых в проекте.