УДК 519.7
DOI: 10.17586/0021-3454-2020-63-12-1081-1093
ПРОТОКОЛ ОРГАНИЗАЦИИ ДЕЦЕНТРАЛИЗОВАННОЙ БЕСПРОВОДНОЙ СЕТИ СВЯЗИ
ДЛЯ ОБЕСПЕЧЕНИЯ ВЗАИМОДЕЙСТВИЯ ГРУППЫ ИНТЕЛЛЕКТУАЛЬНЫХ МОБИЛЬНЫХ РОБОТОВ
Н. И. Хохлов1, А. Н. Ивутин2, А. С. Новиков2, Ю. Б. Подчуфаров1, Д. В. Ларин1, М. С. Пестин2
1 Конструкторское бюро приборостроения им. академика А. Г. Шипунова,
300001, Тула, Россия E-mail: [email protected]
2Тульский государственный университет, 300012, Тула, Россия E-mail: [email protected]
Предложен протокол функционирования беспроводной децентрализованной самоорганизующейся сети связи для обеспечения взаимодействия группы интеллектуальных мобильных роботов в процессе решения поставленных перед ними кооперативных задач. Сформулирован набор требований, которым должны удовлетворять протоколы построения сетей указанного типа, и описана реализация гибридного протокола связи. Разработанные протокол и алгоритмы позволяют осуществлять самоадаптацию децентрализованной сети и динамическую маршрутизацию в ней при изменении структуры сети в случае смены взаимного расположения узлов при их движении в пространстве или сильного ухудшения параметров каналов связи между отдельными узлами вследствие различных внешних воздействий. Корректность работы предложенного протокола подтверждена экспериментальными исследованиями модели сети, функционирующей на его основе. Моделирование позволило провести оценку параметров трафика в сети и коэффициентов загруженности каналов связи передачей прикладных и служебных данных. По результатам экспериментов предложено рациональное обоснование выбора значения временного параметра протокола HELLO_TIME, который задает временной интервал опроса узлами сети соседних узлов для динамического отслеживания изменений в ее структуре. Предложены рекомендации, позволяющие за счет особенностей организации движения мобильных роботов снизить нагрузку на сеть для передачи служебного трафика.
Ключевые слова: протокол организации сети, децентрализованная самоорганизующаяся сеть, беспроводные сети передачи данных, алгоритмы маршрутизации трафика, модель сети, коэффициент загрузки сети, организация связи между мобильными роботами
Введение. Для организации связи между отдельными мобильными роботами (МР) в составе группы при решении общей кооперативной задачи должна обеспечиваться бесперебойная доставка сообщений. При этом связь должна быть эффективной даже в случае недоступности требуемых адресатов напрямую (например, из-за значительного расстояния между МР или влияния рельефа местности на распространение радиосигнала). В подобном случае информация должна передаваться через цепочку промежуточных узлов, т.е. на основе группы МР должна быть организована беспроводная сеть передачи данных, в которой каждый отдельный МР может играть роль приемника сообщений или ретранслятора, передающего сообщения по заданному сетевому маршруту. Подобную сеть практически невозможно настроить статически, так как ее топология динамически изменяется и зависит от текущих условий и решаемых задач. Поэтому алгоритмы организации, настройки и маршрутизации
таких децентрализованных сетей (ДС) должны быть максимально автоматизированы и оптимизированы по времени работы и обеспечению качества обслуживания [1, 2].
Известные протоколы маршрутизации беспроводных сетей делятся на протоколы вектора расстояния и протоколы состояния канала (с комплексной метрикой маршрутов). При этом задача выбора правильной метрической системы весьма актуальна для создания сетей особого назначения. Обычно при построении маршрутов могут учитываться следующие метрики [3]: длина пути, надежность, временные задержки, пропускная способность, время жизни канала, загрузка и стоимость передачи данных.
При анализе технологий, использующихся при организации коммерческих ДС (Mesh, Ad hoc, MANET, WSN и VANET) [3—5], можно сделать вывод, что наиболее подходят под требования решаемой задачи сети MANET и VANET (подвид MANET) [6]. Это обусловлено полностью децентрализованными методами управления в таких сетях и отсутствием необходимости использования базовых станций и каких-либо опорных узлов. В отличие от классических сетей Ad hoc, алгоритмы и протоколы, реализуемые в MANET/VANET, учитывают возможность перемещения отдельных узлов в пространстве, что позволяет избавиться от ограничений фиксированной топологии сети со случайным соединением стационарных узлов, характерных для Ad hoc. Mesh-сети менее перспективны для организации связи между МР в составе группы, т.к. они предполагают наличие некой дополнительной стационарной инфраструктуры, обеспечивающей доступ движущихся абонентов к сети. На практике организация таких ячеистых сетей не всегда возможна, особенно в условиях сложного рельефа местности.
Известные протоколы проактивной маршрутизации — DSDV, OLSR и др. [7, 8] — ориентированы на обеспечение оптимального использования сетевых ресурсов при квазистатичных условиях работы сети, т. е. когда топология меняется медленно или вообще не меняется. Это объясняется тем, что указанные протоколы подразумевают наличие в маршрутных таблицах информации обо всей сети в целом. Они постоянно строят возможные маршруты до всех известных узлов, вне зависимости от того, нужен этот абонент или нет. В результате необходимо генерировать в сети неинформативный (служебный) трафик значительного объема в условиях высокой мобильности узлов и быстроизменяющей-ся структуры связей между ними. Реактивные протоколы — AODV, DSR и др. [9, 10] — формируют маршруты по запросу, что позволяет снизить объемы служебного трафика, передаваемого по сети. Однако протокол AODV не учитывает возможность существования асимметричных каналов передачи данных и не имеет встроенного механизма балансировки поиска новых маршрутов в случае обрыва связи между двумя промежуточными узлами. Стандартные механизмы протокола DSR не позволяют восстанавливать разорванные соединения, в кэшах узлов может оставаться неактуальная информация о маршрутах, что может привести к ошибкам передачи. Протокол имеет большую задержку при установке соединения, причем снижение производительности прямо пропорционально возрастанию подвижности узлов.
Требования к протоколу организации децентрализованной сети передачи данных. С целью организации ДС для обеспечения взаимодействия между МР в составе группы при решении кооперативных задач необходимо разработать гибридный протокол, который сочетал бы основные преимущества протоколов DSR, AODV и OLSR, нивелируя их недостатки, и позволял бы производить гибкую самоадаптацию сети к быстроменяющимся внешним условиям. Для этого проектируемый протокол маршрутизации должен обладать следующими качествами:
1) быть распределенным. Все узлы в сети должны быть способны осуществлять маршрутизацию и не иметь жестко закрепленных за ними функций;
2) обеспечивать надежную доставку пакетов в условиях постоянно изменяющейся топологии сети, когда использование классических механизмов гарантированной доставки, как на транспортном уровне в протоколе ТСР, затруднено;
3) обеспечивать малое время построения маршрута в условиях постоянно изменяющейся структуры сети;
4) обладать механизмами самоорганизации [11—13], т.е. оперативного обнаружения разрыва маршрута и его восстановления, а также восстановления сетевой структуры, в случае отключения от сети отдельных узлов и/или сегментов;
5) не допускать образования петель в маршрутах;
6) рассылать при функционировании как можно меньший объем служебной информации;
7) обладать высокой масштабируемостью, т.е. обеспечивать высокую производительность сети при различных ее размерах.
Основной метрикой, характеризующей качество выбираемого маршрута, будет оптимальное с точки зрения длины пути маршрута расстояние между узлом-источником и узлом-получателем. Метрику, соответствующую данному критерию оптимальности, чаще представляют числом промежуточных узлов от источника до получателя информации или hop count (счетчик ходов).
Протокол организации сети связи между МР в составе группы. Разработанный протокол представляет совокупность четырех алгоритмов, при помощи которых организуется связь между узлами:
— подключение узла к беспроводной сети (процедура Handshake, „рукопожатие");
— проверка связи между узлами-соседями (процедура Hello);
— поиск маршрута к заданному узлу (процедура Route);
— пересылка данных между узлами.
Для описания представленных алгоритмов введем следующие понятия: соседи
1-го уровня — узлы, непосредственно связанные с целевым узлом в заданной сети; соседи
2-го уровня — узлы, которые транзитивно связаны с целевым узлом через одного из соседей 1-го уровня.
I. Алгоритм Handshake используется при подключении нового узла к сети, при поиске соседних узлов, при определении первоначальной топологии соединений, а также для восстановления связи между соседними узлами в случае обрыва канала.
Процедура начинается с отправки узлом-источником S известным ему узлам запроса AccessQuery. Абонент-адресат D, получив это сообщение, заносит S в список соседей 1-го уровня (listNeighbors) и отправляет ответ AccessAnswer, который содержит данный список. Если S получает ответ в течение времени HND_ANSWER_TIME, то он добавляет D в свой список listNeighbors, а соседей узла D в свой список соседей 2-го уровня (list2StepNeighbors).
Таким образом, результатом работы рассматриваемого алгоритма является построение графа топологии сети на два шага (рис. 1), представленного в виде списка узлов list2StepNeighbors, с которыми возможна связь от текущего узла-источника через один транзитный узел. Списки listNeighbors и list2StepNeighbors для узла S (см. рис. 1) будут иметь вид, представленный в табл. 1. В ней для каждого узла-соседа 2-го уровня в списке list2StepNeighbors также указан промежуточный узел, через который этот сосед может быть достигнут.
2 3 . Сосед n2s3 уровня 2
2 шага
Сосед nl уровня 1
1 шаг Источник
n3 Сосед уровня 1
Рис. 1
Таблица 1
Имя списка Содержимое списка
listNeighbors {n1} {n2} {n3}
list2 StepNeighbors {n1,n2s1} {n2,n2s2} {n2,n2s3} {n2,n3} {n3,n2} {n3,n2s4}
II. Алгоритм Hello предназначен для определения доступностей соседних узлов, а также поддержания в актуальном состоянии списков listNeighbors и list2StepNeighbors.
Процедура Hello во многом аналогична Handshake. Узел S отправляет своим соседям запрос HelloQuery на подтверждение связи и ожидает ответ в течение времени HELLO_OK_TIME. Получив запрос, узел D формирует и отправляет ответ HelloAnswer со своим списком listNeighbors. При получении HelloAnswer в течение заданного таймаута S может внести коррективы в list2StepNeighbors.
Если пакет HelloAnswer не приходит до окончания времени HELLO_OK_TIME, соседний узел считается недоступным и удаляется из listNeighbors, list2StepNeighbors, также удаляются маршруты, которые используют данный узел. Также по окончании времени HELLO_OK_TIME узел S отправляет подтвержденным соседям пакет HelloError, который содержит список недоступных узлов. Узлы, получившие HelloError, корректируют список list2StepNeighbors, а также удаляют маршруты, содержащие пары (S; D).
Таким образом, алгоритмы Handshake и Hello в целом представляют проактивную часть разработанного протокола маршрутизации. Каждый узел содержит частичную структуру сети в виде списка list2StepNeighbors. В случае сетей с малым количеством узлов (а подобная ситуация типична для групп МР) большинство маршрутов будет содержать небольшое число промежуточных соединений. В результате целевой путь может быть найден простым анализом подграфа соседей 2-го уровня заданного узла без необходимости дополнительных накладных расходов на пересылку служебных запросов в сети.
Ш. Процедура Route предназначена для построения маршрутов к узлам D, которые отсутствуют в списках соседей 1-го и 2-го уровня узла-источника S, и представляет реактивный алгоритм поиска путей в сети разработанного протокола маршрутизации. Маршруты R хранятся в списке listRoutes и представляют собой совокупность транзитных узлов T. Также для каждого маршрута сохраняется время его нахождения. Эта информация необходима для контроля периода актуальности каждого маршрута.
Для поиска маршрута от узла S до узла D используется следующий алгоритм.
1. Узел S генерирует запрос на поиск маршрута RouteQuery и рассылает его соседним узлам из списка listNeighbors.
2. При получении запроса RouteQuery промежуточный узел T проверяет:
2.1. Если узел-адресат D находится в списке своих соседей listNeighbors, то узел T формирует сообщение RouteAnswer, в котором указан путь от D обратно до S, который может
быть извлечен из списка промежуточных узлов пакета ЯоШеОиегу. По этому пути пакет RouteAnswer возвращается к узлу-источнику
2.2. Если пакет запроса ЯоШеОиегу с такими же значениями полей адресов 5 и Б и идентификатора запроса маршрута уже проходил через узел Т, то пакет на узле уничтожается.
2.3. Если пакет запроса ЯоШеОиегу содержит в цепочке маршрута адрес самого узла Т, это означает, что при поиске имеет место петля, и пакет должен быть уничтожен (рис. 2).
Рис. 2
2.4. Если поле CTR превышает заданное значение времени жизни пакетов TTL, то пакет на узле T уничтожается.
2.5. Если ни одно из условий 2.1—2.4 не выполняется, то узел T:
2.5.1. Увеличивает значения поля CTR пакета RouteQuery на 1, добавляет свой адрес в список промежуточных узлов. Список промежуточных узлов представляет формируемый маршрут.
2.5.2. Рассылает запрос RouteQuery всем своим соседям из списка listNeighbors.
2.5.3. Добавляет заголовок пакета в таблицу, чтобы в дальнейшем идентифицировать пакеты с тем же запросом, которые повторно могут идти через текущий узел (см. 2.2).
3. Если узел S получает ответ RouteAnswer, адресованный ему, то он добавляет цепочку маршрута из этого ответа в свой список listRoutes и может использовать его в качестве маршрута к узлу D в течение времени ACTUAL_ROUTE_TIME. Если в качестве ответов RouteAnswer получено несколько разных маршрутов, то выбирается самый короткий из них. Также маршрут может утратить актуальность, если:
— во время процедуры Hello обнаружено отсутствие связи между узлами, входящими в данный маршрут;
— во время запроса на обмен данными не получен ответ, подтверждающий или отвергающий пересылку сообщения от адресата;
— во время передачи пакетов по сети промежуточный узел обнаружил недоступность следующего узла, указанного в маршруте передачи.
4. Если за время КОиТЕ_8БЛКСН_Т1МЕ узел £ не получил ни одного ответа RouteAnswer, то считается, что узел-адресат Б недоступен в данной подсети (отсутствует какой-либо маршрут к нему) и отправка данных отменяется.
IV. Процедура пересылки данных между узлами использует маршруты, полученные при помощи алгоритмов I—III. Маршруты хранятся в теле сообщений. Процедура доставки данных включает опрос узла назначения Б о готовности к приему данных, надежную доставку данных в соответствии с приоритетом сообщений с данными, а также их подтверждение.
Сообщения данных имеют приоритет, который варьирует от 0 до 255. При этом различают три вида сообщений с данными: StatusMessage, CommandMessage и ApplicationMessage.
Сообщения StatusMessage имеют низкий приоритет и предназначены для обмена данными о физическом состоянии каждого МР. Сообщения CommandMessage предназначены для отправки команд от ведущего узла сети ведомым МР, используются только ведомым узлом и имеют наивысший приоритет. Для других целей используются сообщения ApplicationMessage, которые могут иметь приоритет в зависимости от их назначения.
Перед отправкой данных узлу Б узел £ проверяет его готовность к приему данных, отправляя ему запрос готовности DataQuery. В ответ узел Б должен прислать ответ DataЛnswer со статусом готовности.
Если в течение времени, заданного параметром DATA_ANSWER_TIME, узел £ не получает ответа DataЛnswer, считается, что маршрут к узлу Б утратил актуальность. Если ответ DataЛnswer, полученный узлом £, свидетельствует о неготовности узла Б принимать данные, то в случае низкого приоритета отправляемых данных пересылка отменяется. В ином случае запрос повторяется через время, заданное параметром REPEATED_DQUERY_TIME.
Если ответ DataЛnswer свидетельствует о готовности узла Б к приему информации, то £ формирует один или несколько пакетов данных, присваивая им порядковый номер каждого пакета в передаваемом фрейме. Используя подобные порядковые номера, узел-приемник может собрать отдельные пакеты в полный информационный фрейм. После полной сборки фрейма узел-приемник отправляет узлу-источнику £ сообщение подтверждения приема данных DataReceived.
Если часть пакетов фрейма потеряны в процессе передачи, то узел-приемник Б формирует сообщение DataError, в котором указывает номера потерянных пакетов и отправляет его узлу-источнику £. При получении сообщения DataError узел £ отправляет потерянные пакеты повторно. Если за время, указанное в параметре DATA_REPEATED_TIME, узел-источник не прислал потерянные пакеты узлу Б, фрейм считается сбойным и узел Б его удаляет.
Если за время, указанное в параметре DATA_TRANSFERRED_TIME, узел £ не получил ни сообщения о подтверждении приема DataReceived, ни сообщения о потере пакетов DataError, то считается, что данные не доставлены, а текущий маршрут утратил актуальность. При высоком приоритете отправляемых данных инициируется поиск нового маршрута, и данные отправляются повторно, при низком пересылка оканчивается неудачей.
Если в ходе доставки данных обнаруживается недоступный узел маршрута, формируется сообщение RouteError, в котором указываются недоступный узел, идентификатор пакета данных и маршрут, по которому пакет пришел в узел £. Получив один из пакетов RouteError, узел £ пытается построить новый маршрут к узлу назначения Б, и переслать данные по новому маршруту, если таковой будет найден.
Примеры циклограмм протокола при обмене сообщениями между узлами сети sNode и aNode приведены на рис. 3 (а — потери пакетов данных отсутствуют, б — узел-адресат обна-
руживает потерю нескольких пакетов во фрейме, в — узел 1Коёе обнаруживает недоступный узел на маршруте в процессе передачи фрейма, и инициируется поиск нового альтернативного маршрута через someNode).
а)
sNode
a Node
б)
sNode
в)
aNode
sNode
aNode
iNode
Some Node
Рис. 3
Экспериментальная проверка разработанного протокола связи. Для экспериментальной проверки работоспособности представленного протокола и исследования его временных характеристик в среде сетевого симулятора Omnet++ [14] создана модель [15, 16] беспроводной децентрализованной самоорганизующейся сети для организации связи между мобильными роботами в составе группы [17] на основе метода планирования загрузки аппаратного обеспечения отдельных узлов, описанного в работе [18].
Значения параметров протокола, используемые в экспериментальном исследовании, представлены в табл. 2. Согласно сценарию моделирования, передача данных осуществляется от узла 5 наиболее удаленному от него узлу Б. Данные представляют 10 фреймов, каждый из которых включает по одному пакету, и отправляются с периодом 0,35 с.
Таблица 2
Парамет ры моделирования
Параметр Значение
HELLO TIME [0,15; 0,250; 0,350; ...; 1,150; ...;1,750] с
HND TIME 1,0 с
HND ANSWER TIME 0,999 с
HELLO OK TIME 0,99 * HELLO TIME
ROUTE SEARCH TIME 0,1 с
ACTUAL ROUTE TIME 0,101 с
DATA ANSWER TIME Больше, чем время моделирования
DATA TRANSFERRED TIME Больше, чем время моделирования
REPEATED DQUERY TIME 1,0 с
DATA REPEATED TIME 5,0 с
Интервал задержки пакетов [0,0003; 0,001] c
TTL 15
Время моделирования 1000000 виртуальных c
В ходе тестирования протокола моделью ДС проводилась серия экспериментов для определения зависимости коэффициентов загрузки в сетях различных топологий от числа узлов, составляющих сеть, и от параметра протокола HELLO_TIME, определяющего интервал, с которым узлы опрашивают своих соседей для выявления их доступности. В ходе симуляции определялись время доставки данных (ГЯЛ,), время поиска маршрута (ГЯЛ,. го^), а также следующие коэффициенты: общий коэффициент загрузки сети (Х^), коэффициент загрузки сети передачей прикладных данных (Х^), коэффициент загрузки сети служебным трафиком (Хй) и коэффициент свободы среды передачи (Х). Последний коэффициент показывает средний процент времени, когда через среду передачи не ведется пересылка служебных или прикладных пакетов.
При исследовании сетевых процессов эмулировались различные варианты типовых соединений между узлами при статической и динамической топологии сети передачи данных.
Для топологий „А", „Б", „В", „Г", представленных на рис. 4, использовался сценарий, предполагающий, что сеть является статичной, т.е. топология не меняется во времени. При этом выбранное время маршрутизации меньше периода отправки данных.
Топология А
Топология В Топология Г
На рис. 5 приведена зависимость времени маршрутизации, доставки данных и коэффициентов загрузки сети от значения константы ИЕЬЬО_ТГМЕ для статичных топологий: а — для „А", б — для „Б", в — для „В", г — для „Г").
а)
0,07 0,06 0,05 0,04 0,03 0,02 0,01
б)
0
0,2 0,16 0,12 0,08 0,04
0
в)
0,06 0,05 0,04 0,03 0,02 0,01
г)
0
0,0125 0,0115 0,0105 0,0095
--- Т
-L ЯЛ
-T
-L ял
0,5 1
HELLO_TIME, с Т
^ av route
1,5
0,5 1
HELLO TIME, с
1,5
■-- - Т
ял
Ta
ЯЛ
.у*
0,5 1
HELLO_TIME, с
Ta
av
1,5
0
0,5 1
HELLO_TIME, с
1,5
---Klo
0,08
- -K
uf
.......Kst
0,06
0,04
0,02 0
Kfr -+
AAAAAAAAAAA
0,5 1
HELLO TIME, с
1
0,8 0,6 0,4 0,02
_ "Kload
X
X ^v w Ж-я,
Ku
Kst
1,5
Kfr
X
^■ *Ж-Ж*Ж-Ж-Ж-------ж
AAAAAAAAA
0
0,8 0,6 0,4 0,2
0
0,5 1
III I I О TTMR. с
- * —A'bad " -Kuf —*—Kst
1,5
fr
H+
A A A AAA A A AAA------А
- —Klo
0,5 1
HELLO_TIME, с
- -*■ -Kuf —*—Kst
1
0,8 0,6 0,4 0,2
0
fill
1,5
Kfr
—н
АААА
0,5 1
HELLO TIME, с
1,5
Рис. 5
Результаты экспериментов демонстрируют, что при относительно малом объеме полезного трафика объем служебного трафика зависит в большей степени от периода запуска процедуры Hello, и в меньшей от частоты пакетов маршрутизации.
На рис. 6 представлен пример состояния реальной сети передачи данных для организации связи между МР в составе группы, для этой топологии использовался сценарий, предполагающий динамическое изменение структуры сети. Динамичность топологии предполагает, что в ходе движения МР друг относительно друга в составе группы часто пропадают отдельные каналы связи между абонентами вследствие воздействия факторов окружающей среды (изменения в рельефе местности, наличие препятствий, помехи и др.). Для проверки корректности функционирования протокола в подобной ситуации в модели реализована возможность периодического отключения отдельных каналов и выпадения отдельных абонентов из сети.
T
av
Например, в сети, изображенной на рис. 6, моделировалось отключение двух из трех связей (8—11), (9—10), (9—14) с периодичностью 10 мс, т.е. в каждый промежуток времени только одна из этих связей оставалась активной. Поэтому при пересылке данных периодически возникала необходимость в обновлении построенных ранее маршрутов передачи трафика и поиске новых.
Рис. 6
Полученные результаты моделирования приведены на рис. 7. Видно, что, несмотря на динамичное изменение сетевой структуры, сохраняются тенденции, характерные для статичных сетей.
Т
-L ЯЛ
-T
-L ЯЛ
Kfr
0,18 0,14 0,0 0,06 0,02 0
0,5 1
HELLO TIME, с
1,5
0,8 0,6 0,4 0,2
0
▲ А * ▲ ▲ Л ▲ ▲ А
0,5 1
HELLO TIME, с
1,5
Рис. 7
Заключение. По результатам экспериментальных исследований разработанного протокола на модели сети в среде Ошие1++ можно сделать следующие выводы.
1. При малом ИЕЬЬО_ТГМЕ все временные параметры и коэффициенты загрузки сети экспоненциально увеличиваются. При этом могут наблюдаться существенные потери пакетов данных на промежуточных узлах маршрута, и сеть перестает корректно функционировать. Это можно объяснить недостаточной пропускной способностью для одновременной передачи прикладного и служебного трафика, объем которого существенно возрастает при малом (менее 0,3 с) значении ИЕЬЬО_Т1МЕ.
2. С ростом ИЕЬЬО_Т1МЕ значения временных параметров и коэффициентов загрузки сети стремятся к асимптотическим значениям, определяемым характеристиками прикладного трафика и количеством промежуточных транзитных узлов, из которых состоят маршруты передачи данных.
3. В практически значимых режимах работы рекомендуется выбирать значение ИЕЬЬО_Т1МЕ, лежащее в интервале 1—2 с. Это позволит достаточно быстро отслеживать динамические изменения структуры сети связи и не перегружать ее служебным трафиком.
4. Чем выше степень связности узлов в сети, тем больше в ней будет коротких маршрутов передачи сообщений между любой парой узлов. В результате время поиска маршрутов и время передачи данных в такой ДС будет значительно меньше, чем в сетях, состоящих из такого же числа узлов, но с меньшей степенью их связности. Поэтому рекомендуется при организации сети связи между отдельными МР в составе группы всегда иметь некий резерв узлов
для повышения связности сетевой структуры и сокращения маршрутов передачи сообщений между критически значимыми узлами.
5. В случае повышения степени связности узлов в ДС общий коэффициент загрузки сети при передаче тестового объема данных также уменьшается, что можно объяснить существованием более коротких маршрутов для передачи потоков данных и соответственно меньшей нагрузкой на сеть при ретрансляции данных между транзитными узлами. Особенно эта тенденция заметна для сетей с большим числом узлов. Соответственно коэффициент свободы среды передачи данных станет тем больше, чем выше степень связности узлов сети, и чем более короткие маршруты передачи данных будут использоваться в ней. В результате при планировании маршрутов движения отдельных МР в составе группы следует стремиться к максимальной связности между передатчиками данных, чтобы обеспечить как можно более короткие пути для передачи сообщений.
список литературы
1. Dugaev D., Zinov S., Siemens E. and Shuvalov V. A survey and performance evaluation of ad-hoc m„lti-hop routing protocols for static outdoor networks // 2015 Intern. Siberian Conf. on Control and Communications (SIBCON). 2015. P. 1—11.
2. Gnawali O., Fonseca R., Jamieson K., Kazandjieva M., Moss D., Levis P. CTP: An Efficient, Robust, and Reliable Collection Tree Protocol for Wireless Sensor Networks // ACM Transactions on Sensor Networks. 2013. Vol. 10, N 1. P. 1—49.
3. Вишневский В., Лаконцев Д., Сафонов А., Шпилев С. Mesh-сети стандарта IEEE 802.11s: протоколы маршрутизации // Первая миля. 2009. Т. 10, № 1. С. 16—21.
4. Гусс С. В. Самоорганизующиеся mesh-сети для частного использования // Математические структуры и моделирование. 2016. № 4(40). С. 102—115.
5. Bai F., Helmy A. A Survey of Mobility Models in Wireless Adhoc Networks // Wireless Ad Hoc and Sensor Networks. Kluwer Academic Publishers, 2004. P. 1—29.
6. Aravind M. C., Sangeetha C. P., Suriyakala C. D. Enhanced Dynamic MANET On-demand (En-DYMO) Routing Protocol for Mobile Adhoc Networks // IEEE 2015 Global Conf. on Communication Technologies (GCCT). Thuckalay, India, 2015. P. 544—549.
7. Perkins C. E., Bhagwat P. Highly Dynamic Destination-Sequenced Distance-Vector (DSDV) for Mobile Computers // Proc.ACM Conf. Communications Architectures and Protocol. London, UK, August 1994. Р. 234—244.
8. Кирьянов А., Сафонов А., Хоров Е. Методы исследования переходных характеристик протокола OLSR при включении/выключении узла связи // Тр. 33-й конф. „Информационные технологии и системы (ИТиС)". Геленджик, 2010. C. 20—29.
9. Perkins C. E., Royer E. M. Ad-hoc On-Demand Distance Vector Routing // Proceedings the 2nd IEEE Workshop on Mobile Computing System and Applications. New Orleans, LA, February 1999. P. 90—100.
10. Rom R., Sidi M. Multiple Access Protocols: Performance and Analysis. NY: Springer-Verlag, 1990. 172 p.
11. Marinescu D. C. Complex Systems and Clouds. A Self-Organization and Self-Management Perspective. Elsevier, 2017. 238 p.
12. Marinescu D. C., Yu C., Marinescu G. M. Scale-free, self-organizing very large sensor networks // J. of Parallel and Distributed Computing. 2010. Vol. 70, N 5. P. 612—622.
13. Sohrabi K., Gao J., Ailawadhi V., Pottie G. J. Protocols for self-organization of a wireless sensor network // IEEE Personal Communications. 2000. Vol. 7, N 5. P. 16—27.
14. OMNeT++ Discrete Event Simulator. https://www.omnetpp.org/.
15. Фарашиани М. А., Муравьева-Витковская Л. А. Анализ соответствия генерируемого при моделировании потока заявок реальному трафику в компьютерных сетях // Изв. вузов. Приборостроение. 2017. Т. 60, № 1. С. 10—13.
16. Кутузов О. И., Татарникова Т. М. Метод ускоренного имитационного моделирования сетевых узлов коммутации // Изв. вузов. Приборостроение. 2019. Т. 62, № 1. С. 23—31.
17. Хохлов Н. И., Ларин Д. В., Ларин А. В., Ивутин А. Н., Новиков А. С., Пестин М. С. Исследование протокола маршрутизации беспроводной децентрализованной самоорганизующейся сети // Изв. Тульского гос. ун-та. Технические науки. 2019. Вып. 6. С. 131—144.
18. Борзов Д. Б., Титов В. С., Басов Р. Г. Аппаратные средства составления планов загрузки процессоров в мультипроцессорных системах критического назначения // Изв. вузов. Приборостроение. 2019. Т. 62, № 6. С. 517—523.
Сведения об авторах
Николай Иванович Хохлов — канд. техн. наук; Конструкторское бюро приборостроения им. акад.
А. Г. Шипунова; заместитель управляющего директора по направлению бронетанковой техники, противотанковым ракетным комплексам и артвооружению; E-mail: [email protected] Алексей Николаевич Ивутин — канд. техн. наук, доцент; Тульский государственный университет,
кафедра вычислительной техники; заведующий кафедрой; E-mail: [email protected] Александр Сергеевич Новиков — канд. техн. наук, доцент; Тульский государственный университет,
кафедра вычислительной техники; доцент; E-mail: [email protected]
Юрий Борисович Подчуфаров — д-р техн. наук, профессор; Конструкторское бюро приборостроения
им. акад. А. Г. Шипунова, отделение № 20; начальник отделения; E-mail: [email protected]
Дмитрий Викторович Ларин — канд. техн. наук; Конструкторское бюро приборостроения им. акад.
А. Г. Шипунова, отделение № 20; заместитель начальника отделения; E-mail: [email protected]
Максим Сергеевич Пестин — аспирант; Тульский государственный университет, кафедра вычис-
лительной техники; E-mail: [email protected]
Поступила в редакцию 12.10.2020 г.
Ссылка для цитирования: Хохлов Н. И., Ивутин А. Н., Новиков А. С., Подчуфаров Ю. Б., Ларин Д. В., Пестин М. С. Протокол организации децентрализованной беспроводной сети связи для обеспечения взаимодействия группы интеллектуальных мобильных роботов // Изв. вузов. Приборостроение. 2020. Т. 63, № 12. С. 1081—1093.
A PROTOCOL FOR ORGANIZING A DECENTRALIZED WIRELESS COMMUNICATION NETWORK FOR ENSURING THE INTERACTION OF A GROUP OF INTELLIGENT MOBILE ROBOTS
N. I. Khokhlov1, A. N. Ivutin2, A. S. Novikov2, Yu. B. Podchufarov1, D. V. Larin1, M. S. Pestin2
1JSC Academician A. Shipunov linstrument-Making Design Bureau, 300001, Tula, Russia
E-mail: [email protected] 2 Tula State University, 300012, E-mail: [email protected]
A protocol is proposed for the functioning of a wireless decentralized self-organizing communication network to ensure interaction within a group of intelligent mobile robots in the process of solving their cooperative tasks. A set of requirements is formulated that must be satisfied by the protocols for building networks of this type, and the implementation of a hybrid communication protocol is described. The developed protocol and algorithms allow self-adaptation of a decentralized network and dynamic routing in it when the structure of the network changes in the event of a change in the relative position of nodes when they move in space or a strong deterioration in the parameters of communication channels between individual nodes due to various external influences. The correctness of the proposed protocol is confirmed by experimental studies of the network model operating on its basis. Modeling made it possible to assess the traffic parameters in the network and the load factors of communication channels by transferring applied and service data. Based on the results of the experiments, a rational justification for choosing the value of the time parameter of the HELLO_TIME protocol is proposed, which sets the time interval for polling neighboring nodes by the network nodes for dynamic tracking of changes in its structure. Recommendations are proposed that allow, due to the peculiarities of organizing the movement of mobile robots, to reduce the load on the network for the transmission of service traffic.
Keywords: network protocol, decentralized self-organizing network, wireless data networks, traffic
routing algorithms, network model, network load factor, organization of communication between mobile
robots
REFERENCES
1. Dugaev D., Zinov S., Siemens E., and Shuvalov V. International Siberian Conference on Control and Communications (SIBCON), 2015, pp. 1-11.
2. Gnawali O., Fonseca R., Jamieson K., Kazandjieva M., Moss D., Levis P. ACM Transactions on Sensor Networks, 2013, no. 1(10), pp. 1-49.
3. Vishnevskiy V., Lakontsev D., Safonov A., Shpilev S. Pervaya milya, 2009, no. 1(10), pp. 16-21. (in Russ.)
4. Guss S.V. Matematicheskiye struktury i modelirovaniye, 2016, no. 4(40), pp. 102-115. (in Russ.)
5. Bai F., Helmy A. Wireless Ad Hoc and Sensor Networks, Kluwer Academic Publishers, 2004, pp. 1-29.
6. Aravind M.C., Sangeetha C.P., Suriyakala C.D. IEEE 2015 Global Conference on Communication Technologies (GCCT), Thuckalay, India, 2015, pp. 544-549.
7. Perkins C.E. Proc. ACM Conf. Communications Architectures and Protocol, London, UK, August 1994, рр. 234-244.
8. Kiryanov A., Safonov A., Khorov E. Informatsionnyye tekhnologii i sistemy (ITiS) (Information Technologies and Systems (ITiS)), Proceedings of the 33rd Conference, Gelendzhik, 2010, рр. 20-29. (in Russ.)
9. Perkins C.E., Royer E.M. Proceedings the 2nd IEEE Workshop on Mobile Computing System and Applications, New Orleans, LA, February 1999, pp. 90-100.
10. Rom R., Sidi M. Multiple Access Protocols: Performance and Analysis, NY, Springer-Verlag, 1990, 172 p.
11. Marinescu D.C. Complex Systems and Clouds. A Self-Organization and Self-Management Perspective, Elsevier, 2017, 238 p.
12. Marinescu D.C., Yu C., Marinescu G.M. Journal of Parallel and Distributed Computing, 2010, no. 5(70), pp. 612-622.
13. Sohrabi K., Gao J., Ailawadhi V., Pottie G.J. IEEE Personal Communications, 2000, no. 5(7), pp. 16-27.
14. OMNeT++ Discrete Event Simulator, https://www.omnetpp.org/.
15. Farashiani M.A., Murav'yeva-Vitkovskaya L.A. Journal of Instrument Engineering, 2017, no. 1(60), pp. 10-13. (in Russ.)
16. Kutuzov O.I., Tatarnikova T.M. Journal of Instrument Engineering, 2019, no. 1(62), pp. 23-31. (in Russ.)
17. Khokhlov N.I., Larin D.V., Larin A.V., Ivutin A.N., Novikov A.S., Pestin M.S. Izvestiya Tul'skogo gosudarstvennogo universiteta. Tekhnicheskiye nauki, 2019, no. 6, pp. 131-144. (in Russ.)
18. Borzov D.B., Titov V.S., Basov R.G. Journal of Instrument Engineering, 2019, no. 6(62), pp. 517-523. (in Russ.)
Nikolay I. Khokhlov
Alexey N. Ivutin
Alexander S. Novikov Yuly B. Podchufarov
Dmitry V. Larin
Maxim S. Pestin
For citation: Khokhlov N. I., Ivutin A. N., Novikov A. S., Podchufarov Yu. B., Larin D. V., Pestin M. S. A protocol for organizing a decentralized wireless communication network for ensuring the interaction of a group of intelligent mobile robots. Journal of Instrument Engineering. 2020. Vol. 63, N 12. P. 1081—1093 (in Russian).
DOI: 10.17586/0021-3454-2020-63-12-1081-1093
Data on authors
PhD; JSC Academician A. Shipunov linstrument-Making Design Bureau; Deputy Managing Director for Armoured Vehicles, ATGW, Artillery Armament; E-mail: [email protected]
PhD, Associate Professor; Tula State University, Department of Computer Engineering; Head of The Department; E-mail: [email protected]
PhD, Associate Professor; Tula State University, Department of Computer Engineering; Associate Professor; E-mail: [email protected] Dr. Sci., Professor; JSC Academician A. Shipunov linstrument-Making Design Bureau; Department № 20; Head of the Department; E-mail: [email protected]
PhD; JSC Academician A. Shipunov linstrument-Making Design Bureau; Department № 20; Deputy Head of the Department; E-mail: [email protected]
Post-Graduate Student; Tula State University, Department of Computer Engineering; E-mail: [email protected]