Алексей Спирков, руководитель отдела наукоемких технологий АстроСофт, поделился ходом реализованных в компании исследований, посвященных развитию актуальной сегодня технологии Mesh.
В настоящее время все более широкое распространение получили так называемые «ячеистые» или Mesh-сети, которые отличаются децентрализованной, гибкой и динамичной структурой: узлы сети не привязаны к центральной станции, любой узел может взять на себя функции координатора или ретранслятора [1,2,5]. Благодаря этой структуре Mesh-сети обладают рядом несомненных преимуществ:
Однако организация Mesh сопряжена с рядом проблем, в настоящее время не имеющих однозначного решения. Их условно можно разбить на две группы: «Арбитраж» и «Маршрутизация».
В сети с архитектурой «Звезда» центральный узел сам распределяет радиоэфир, оптимально делит его между подчинёнными узлами. В сети Mesh узлы самостоятельно должны договариваться, своевременно уступать эфир данным с более высоким приоритетом. Набор правил и алгоритмов, по которому узлы сети получают доступ к эфиру, называют «Арбитраж».
|
|
«Звезда» |
Mesh |
Арбитраж необходим, когда невозможно или нецелесообразно каждому узлу выделить собственный радиоканал. Особенно критичным арбитраж становится в момент самоорганизации или изменения структуры сети, а также при ретрансляции и при рассылке критичных широковещательных сообщений. Разработка алгоритмов арбитража сопряжена со следующими проблемами:
Таким образом, все перечисленные глубоко взаимосвязанные проблемы Mesh-сети побудили нас приступить к детальному и комплексному исследованию с целью поиска эффективных способов их решения.
В процессе данного исследования нам необходимо было решить следующие задачи:
В своей работе мы использовали два экспериментальных стенда. Первый состоял из 10 автономных устройств, разработанных на базе приёмопередатчика nRF24L01+ и микроконтроллера ARM Cortex M4, функционирующих под управлением операционной системы реального времени собственной разработки — ОСРВ МАКС. Mesh-сеть реализована как надстройка над ядром ОСРВ. Задача этого стенда состояла в апробации и тестировании разработанных нами алгоритмов Mesh и сравнении с уже существующими.
Второй стенд, более сложный, был собран на основе двух SDR-модемов, разработанных на базе приёмопередатчика LimeMicro LMS6002D, ПЛИС Altera Cyclone4 и контроллера ARM9. Этот стенд предназначался для построения и экспериментальной апробации имитационной модели, учитывающей особенности функционирования SDR-модема, в частности — многообразие возможных вариантов модуляции, шифрования и параллельной передачи по нескольким радиоканалам одновременно [3,4].
Экспериментальный стенд №1. ОСРВ МАКС |
Экспериментальный стенд №2. SDR |
Имитационная модель разрабатывалась в среде Visual Studio, Windows. Предварительное математическое моделирование, планирование и контроль вычислительных экспериментов, а также обработка и визуализация результатов проводятся в среде MathWorks MATLAB.
Результаты многократных физических экспериментов были обобщены в физическую модель, аппроксимирующую взаимодействие узлов в радиоэфире и определяющую вероятность получения данных узлом, в том числе при одновременной передаче несколькими узлами.
Имитационная и физическая модели
Физическая модель связана с эмулятором драйвера приёмопередатчика, имитирующим время-зависимые процессы передачи данных, структурно общие для всех трансиверов. Этот драйвер имеет интерфейс, совместимый с интерфейсами драйверов реальных устройств. Следующий уровень — эмулятор ОСРВ МАКС, позволяющий имитировать многозадачные процессы в рамках разрабатываемой модели. Самый же верхний уровень — непосредственно реализация алгоритмов Mesh — аппаратно-независимое ПО, одинаково функционирующее и на модели, и на рабочем образце. Таким образом, была разработана четырёхуровневая имитационная модель, изолирующая аппаратно-зависимые процессы от работы ПО высокого уровня, которая позволила решить следующие задачи:
Результаты моделирования
Состоятельность разработанной модели была обоснована рядом экспериментов. Так, количество потерянных пакетов при передаче между двумя узлами (50000 пакетов) на стенде и модели отличалось менее чем на 1% — 76% на стенде и 77% на модели. Имитационная модель, обученная на двух действующих образцах, показывала свою состоятельность при последующих экспериментах на полном наборе из 10 физических устройств.
К настоящему времени при помощи модели были налажены и испытаны известные алгоритмы организации Mesh. Особое же внимание было уделено разработкам собственных алгоритмов арбитража, позволяющих поднять полезный трафик до 95% от максимального.
Настоящее исследование ещё не завершено, однако некоторые выводы можно сделать уже сейчас.
Физический эксперимент и имитационное моделирование показали, что возможности, предоставляемые SDR-модемом (такие как переключение между каналами, параллельное использование каналов, переход с одного способа модуляции на другой) значительно расширяют возможности Mesh-сети, позволяют организовать оптимальную группировку узлов, тем самым нивелировать упомянутые ранее эффекты «скрытого», «незащищённого» и «мощного» узла.
Разработанная имитационная модель оказалась исключительно удобным инструментом, позволяющим значительно ускорить и удешевить разработку новых алгоритмов организации сетей Mesh. В частности, имитационная модель обеспечивает поиск оптимальных сочетаний настроечных параметров сети, позволяет статистически обусловлено сравнивать работу различных алгоритмов.
При проведении интенсивных испытаний, в том числе приёмо-сдаточных, имитационная модель позволяет построить оптимальный план работ и обойтись меньшим количеством физических устройств, что значительно снижает и стоимость, и сроки исследования.