Всем привет. Ищу совета.
Нужно построить низкоскоростную сеть состоящую из:
Передатчиков, повторителей и приемников.
Передатчики посылает пакет приемнику, если расстояние до приемника большое, то устанавливаются повторители.
Посоветуйте простой протокол для передачи данных и борьбы с коллизиями среди повторителей.
пакеты небольшие, асинхронные
Pasha_a13
May 13 2015, 16:21
Чтобы устранить коллизии в идеале бы хорошо как-то синхронизировать передатчики, ну или хотя бы сделать выбор промежутка времени передачи для каждого из передатчиков псевдослучайным.
Вообще для таких вещей лучше бы использовать приемопередатчики чтобы можно было иметь обратную связь и понимать доставлен ли пакет или нет.
Для начала уточните насколько Вам важны передаваемые данные и насколько можно жертвовать тем что часть пакетов будут теряться из-за коллизий, помех и т.п.
Простых протоколов не будет, задача нетривиальная, с нуля долго разбираться и делать. Используйте что-то готовое.
Например старички SimpliciTi, MiWi или новомодный LoRa WAN
Вариантов тонна - только выбирай
QUOTE (x893 @ May 14 2015, 03:38)

Например старички SimpliciTi, MiWi или новомодный LoRa WAN
Вариантов тонна - только выбирай
для z-ram это все оч сложно, тут надо еще базовый освоить ZigBee или 802.15.4
Проще всего свой протокол разработать
Подобными свойствами обладает радиолюбительская сеть APRS, в основе которой лежит протокол AX.25. Посмотрите, может подойдет.
Спасибо всем кто ответил в теме.
Взял за основу алгоритм из
http://www.atmel.com/tools/LIGHTWEIGHT_MESH.aspx но сильно упростив. Исходники открытые и задокументированые.
Для просмотра полной версии этой страницы, пожалуйста,
пройдите по ссылке.