ВРЕМЕННОЕ ПЛАНИРОВАНИЕ В КЛАСТЕРНЫХ БЕСПРОВОДНЫХ СЕНСОРНЫХ СЕТЯХ ZIGBEE
Голубничая Екатерина Юрьевна,
аспирант кафедры мультисервисных сетей и информационной безопасности Поволжского государственного университета телекоммуникаций и информатики (ФГОБУ ВПО ПГУТИ), г. Самара, Россия, ekaterina.golubn@mail.ru
Лихтциндер Борис Яковлевич,
Заслуженный работник высшей школы РФ, профессор, д.т.н., профессор кафедры мультисервисных сетей и информационной безопасности Поволжского государственного университета телекоммуникаций и информатики (ФГОБУ ВПО ПГУТИ), Вице-президент научно-общественной академии Телекоммуникаций и информатики, г. Самара, Россия, lixt@psati.ru
Ключевые слова: ZigBee, суперкадр, маячок, коллизии, временной слот, кластерное дерево.
Беспроводные сенсорные сети на базе стандарта IEEE 802.15.4/ZigBee представляют альтернативу проводным соединениям в распределённых системах управления и мониторинга, в которых объединённые в сеть датчики образуют территориально-распределённую самоорганизующуюся систему сбора, обработки и передачи информации. В рассматриваемых сетях синхронизация является сложной и важной проблемой, так как она требует взаимной пространственно-временной координации между узлами. Однако в настоящее время по-прежнему остаётся открытым вопрос, как эффективно построить синхронизированные сети с несколькими кластерами, в частности, в случае топологии кластерного дерева. Одним из основных недостатков данной топологии является надёжность сети, так как при нарушении связи ветвь дерева будет изолирована и работоспособность сети нарушится. В связи с чем, предлагается использовать механизм синхронизации, основывающийся на временном планировании маячков. Сущность предлагаемого механизма заключается в том, что роль портов, соединяющих коммутаторы в проводных сетях, в сетях ZigBee выполняют временные слоты, в течение которых осуществляется соединение маршрутизаторов. Соединение между узлами осуществляется благодаря тому, что узлы (между которыми необходимо установить связь) работают в течение одного и того же слота. Если же узлы осуществляют приёмо-передачу в различные временные слоты, то связь между ними отсутствует. Таким образом, предлагаемый механизм позволяет осуществить маршрутизацию при двухадресных пакетах, содержащих адрес начального и конечного получателя, по аналогии тому, как это происходит при реализации проводных сетей, работающих на основе протоколов STP (Spanning Tree Protocol) и RSTP (Rapid Spanning Tree Protocol). Также в статье рассматривается методика для назначения рабочего цикла каждому маршрутизатору сети, которая позволяет обеспечивать рациональное использование полосы пропускания пропорционально трафику. Оптимальное назначение рабочего цикла в кластерной древовидной сети зависит от используемой метрики (пропускная способность, размер буфера, задержка), а также для каких параметров (тип трафика, требования задержки). Данная методика может быть легко адаптирована к любой другой метрике, только с учётом ограничений, связанных с этой метрикой.
Для цитирования:
Голубничая Е.Ю., Лихтциндер Б.Я. Временное планирование в кластерных беспроводных сенсорных сетях ZIGBEE // T-Comm: Телекоммуникации и транспорт. - 2016. - Том 10. - №1. - С. 5-10.
For citation:
Golubnichaya E.Yu., Likhttsinder B.Y. Temporary planning cluster wireless sensor networks ZIGBEE. T-Comm. 2016. Vol. 10. No.1, рр. 5-10.
(in Russian).
Введение
Беспроводные сенсорные сети (БСС) - это одно из самых перспективных направлений развития современных телекоммуникационных технологий. Перспективы их использования связаны как с заменой кабельной инфраструктуры на радиоэфир, так и с новыми функциональными возможностями. На основе стандарта IEEE 802.15.4 было разработано несколько стеков протоколов для БСС, однако наибольшее распространение в настоящее время получил стандарт ZigBee, разработанный организацией ZigBee Alliance. Преимуществом стандарта ZigBee по сравнению с другими беспроводными решениями является возможность создания как простых соединений, так и сложных сетей различных топологий: «кластерное дерево», «ячеистая сеть» [I]. В данной статье мы рассматриваем модель кластерной древовидной сети, учитывая, что кластеризация является одним из методов уменьшения потребления энергии узлами БСС, а также одним из лучших вариантов уменьшения информационного потока.
Эффективное функционирование БСС на основе ZigBee устройств зависит от многих свойств, важнейшим из которых является живучесть, т.е. способность сети обеспечивать работоспособность сети при выходе из строя узлов или каналов связи. Сети организованные на базе ZigBee обладают способностью к самоорганизации, т.е. автоматическому построению той или иной топологии сети и определению маршрутов транспортировки сообщений в ней, при этом механизм обеспечения синхронизации узлов, играет важную роль, от которого зависит работоспособность сети в целом.
Структура кластерной древовидной сети ZigBee
Простейшим частным случаем кластерного дерева является один кластер, однако несколько кластеров могут объединяться, образуя кластерное дерево. На рис. I представлен пример кластерной древовидной сети ZigBee, которая включает три типа узлов: координатор (ZigBee Coordinator, ZC), маршрутизаторы (ZigBee Router, ZR) и конечные узлы (ZigBee End Device, ZED).
никами информации. ZED не ретранслируют сообщений и поэтому могут переходить в режимы пониженного энергопотребления, что даёт им возможность функционировать от батарей до нескольких лет,
ZED общаются со всей сетью через свой «родительский» маршрутизатор (ZR). Выбор «родителя» осуществляется автоматически во время образования сети. Если впоследствии «родительский» узел по каким-либо причинам перестанет функционировать, «дочерний» узел (ZED) найдёт себе другой «родительский» маршрутизатор. Для передачи сообщения сеть автоматически находит наиболее короткий маршрут с удовлетворительным качеством связи в обоих направлениях. Если с течением времени какой-либо из маршрутизаторов выходит из строя, то сеть автоматически осуществляет поиск нового оптимального маршрута.
ZigBee позволяет обеспечивать низкое энергопотребление и гарантии реального времени. Однако достоинства, полученные от этих возможностей, как правило, зависят от конфигурации подуровня управления доступом к среде (Media Access Control, MAC), который может функционировать в одном из двух режимов: в маячковом режиме {с синхронизацией) или без поддержки маячков (без синхронизации).
В маячковом режиме ZC определяет структуру суперкадра (рис. 2), которая включает в себя интервал между маячками (В|), определяющий время между двумя последовательными кадрами маячков (Beacon) и длительность суперкадра (SD), которая определяет активную часть BI, и разделяется на 16 одинаковых по размеру временных интервала, в течение которых разрешена передача кадров. Опционально неактивный период существует при BI > SD, в течение, которого узлы засыпают, благодаря чему сохраняется энергия [2].
Beacon
Beacon
i
сч
(Л Ь-
о
и
ь-«
СА
1
FP
Inactive Period
01 2 Э 4 5 в 7 в 91011 121S14151
Superframe Duration (SD)
D
(Active)
Beacon Interval (BI)
Рис. 2, Структура суперкадра
Интервал между маячками и длительность суперкадра определяются параметрами Beacon Order (ВО) и Superframe Order (SO) [3]:
Рис. I. Пример кластерной древовидной сети ZigBee
Основной задачей ZC является образование сети, которое заключается в сканировании эфира и выборе наименее загруженного частотного канала. ZR ретранслируют пакеты данных от других узлов и сами могут быть источ-
В1 = aBaseSuperframeDuration ■ 2"" SD = aBaseSuperframeDuration ■ 2so
при 0 < SO < ВО < 14. О
где aBaseSuperframeDuration обозначает минимальную длительность суперкадра, соответствующую SO = 0. Эта
величина фиксирована и равна 15,36 мс, при скорости 250 кбит/с в частотном диапазоне 2,4 ГГц.
В течение SD /злы соперничают за получение доступа к среде, используя в период конкурентного доступа (САР) слотовый метод CSMA/CA. Стандарт IEEE 802.15.4 позволяет использовать суперфреймовую структуру сообщений с гарантированными временными слотами (GTS), поэтому в течение SD для приложений, которым необходима гарантированная полоса пропускания, предусматривается период неконкурентного доступа к среде (CFP) [2].
Эффективное управление рабочим циклон
в кластерных древовидных сетях ZigBee
При реализации кластерной древовидной сети ZigBee с использованием подхода временного планирования, каждый ZR активируют свой кластер в течение отдельного временного окна с конкретным рабочим циклом. Если рабочий цикл будет распределён случайным образом, это может привести к нежелательным ситуациям. Например, если ZR без необходимости был присвоен рабочий цикл с высокой длительностью, это может помешать работе других кластеров, в которых нагрузка на ZR выше [4].
Рассмотрим случай несбалансированного кластерного дерева ZigBee, представленного на рис. 3. Сеть включает 10 маршрутизаторов ZigBee (в том числе один ZC). Обозначим DC рабочий цикл i-го маршрутизатора.
Рис. 3. Пример несбалансированной кластерной древовидной сети Z.'\gBee
На рис. 3 видно, что нагрузка на каждый маршрутизатор различна, поэтому для рационального назначения рабочего цикла каждому маршрутизатору, необходимо рассмотреть условия, выражающие ограничения рабочего цикла каждого маршрутизатора, при котором рабочий цикл пропорционален его входящему трафику [5].
Первое ограничение состоит в том {выражение 2), что сумма всех рабочих циклов сети не должна быть больше единицы, В том случае, если необходимо максимизировать период активности кластерной древовидной сети, данная сумма должна быть равна единице или она может быть установлена в любое другое значение меньше, чем единица, в зависимости от требований к пропускной способности приложений.
Второе ограничение (выражение 3) заключается в том, что рабочий цикл родительского маршрутизатора, должен быть, по крайней мере, равен сумме из всех рабочих циклов его дочерних маршрутизаторов, т.к. активный период родительского маршрутизатора должен быть в состоянии поддерживать весь входящий трафик его дочерних маршрутизаторов.
ос^-^с^о, (3)
где йСгы1 ~ рабочий цикл родительского маршрутизатора; ОСф)ч - рабочий цикл дочернего маршрутизатора.
Для примера, представленного на рис. 3 получаем, что рабочий цикл ОС0 равен сумме рабочих циклов йС, и РС2, так как входящий трафик в корневом узле равен сумме выходного трафика маршрутизаторов ZRI и 2Рг. Следовательно, ОСй - £>С, - ОС2 = 0.
Третье ограничение, заключается в том, что все одиночные маршрутизаторы {без дочерних узлов) должны иметь одинаковый рабочий цикл (даже на разных глубинах), так как в каждом одиночном маршрутизаторе входящий трафик одинаковый.
Таким образом, если ZR был назначен рабочий цикл с низкой длительностью, а требования к трафику кластера больше, чем доступная пропускная способность возникает перегрузка ZR, что приводит к неустойчивой работе сети. Рассмотренные ограничения позволяют обеспечить рациональное назначение рабочего цикла каждому маршрутизатору, путём оптимального распределения ресурсов пропускной способности среди всех маршрутизаторов в кластерной древовидной сети.
Коллизии маячков
В случае если маячки отправляются без применения временного планирования, могут произойти коллизии кадров маячков в некоторых узлах, которые находятся в диапазоне видимости более чем одного маршрутизатора. Различают прямые и косвенные коллизии кадров маячков {рис. 4) [5].
-z?- © ¿)
©
а) прямые коллизии кал рои мая кои
©
€г
©
© • ©
6} кослсшшс коллизии KLUpim маякоп
Рис. 4, Коллизии маячков
Прямые коллизии маячков происходят, когда два или более маршрутизатора располагаются в диапазоне передачи друг друга и отправляют свои маячки примерно в одинаковое время, как показано на рис. 4а. В этом примере, предполагается, что узел Ы, является дочерним узлом
ZR,, который практически одновременно с ZR;, отправляет ему маячок, в результате из-за коллизии маячков из ZR, и ZRj, узел N, теряет синхронизацию с его родителем ZR,.
В случае, когда два или более маршрутизатора не слышат друг друга, то коллизии между ними не возникает, однако она может возникнуть при передаче маячка дочернему узлу, так как он может располагаться в зоне видимости нескольких маршрутизаторов. Данный вид коллизии относится к косвенным коллизиям. На рис, 46 косвенная коллизия возникает за счёт того, что маршрутизатор ZR, посылает маячок узлу N,, уже являющемуся дочерним узлом маршрутизатора ZR,, 8 результате чего теряется синхронизация дочернего узла с его родителем.
Следует обратить внимание на то, что также могут произойти коллизии между кадрами данных и кадрами маячков, например, когда маршрутизатор посылает свой периодический кадр маячка в течение активного периода соседнего кластера. Таким образом, задача заключается в том, чтобы организовать передачу маячков из различных маршрутизаторов, так, чтобы избежать столкновения с другими маячками и кадрами данных. То есть необходимо организовать передачу неперекрывающихся кадров маячков, при которой кадр маячка не столкнётся с другими кадрами, даже если маршрутизаторы находятся в непосредственном или косвенном соседстве. Чтобы избежать столкновения с кадрами данных, кадры маячков не должны быть отправлены в течение длительности суперкадра другого маршрутизатора. Рассмотрим два метода, которые позволяют избежать коллизий кадров маячков [5].
Метод временного разделения предполагает, что маршрутизатор пробуждается в своём активном периоде и в активном периоде своего родителя. Сущность данного подхода состоит в том, что маячки и длительность суперкадра кластера (Superframe Duration, SD) запланированы в течение неактивного периода его соседнего кластера, как показано на рис. 5.
ZR1
SD1
81
SD1
sot
П—I ZR2 I; I 1|-L
S02
m
li I
jLX
SD2
t
!
Рис. 5. Метод временного разделения для предотвращения коллизий маячков
Идея заключается в том, что каждый маршрутизатор передаёт свои кадры маячка, используя начальное время смещения маячков Тх, которое отличается от начального времени соседних маршрутизаторов и их родителей. Время смещения маячков должно быть выбрано рационально, как для того чтобы избежать коллизии маячков, так и для того чтобы эффективно использовать неактивные периоды, тем самым увеличив количество кластеров а сети. Недостатком данного метода, является отсутствие прямой связи между соседними кластерами, в результате того что
маршрутизаторы должны работать в различных временных окнах.
Метод только маячкового периода, заключается в том, что в начале каждого суперкадра зарезервировано временное окно для передачи маячков в фазе без конкуренции. Каждый маршрутизатор выбирает время передачи, выбрав такой временной слот без конкуренции, при котором его кадры маячка не сталкиваются с кадрами маячков, отправленных его соседними кластерами. Преимущество этого подхода по сравнению с предыдущим в том, что активные периоды различных кластеров начинаются одновременно, таким образом, возможна прямая связь между соседними узлами. Основной сложностью данного подхода является определение продолжительности маячкового периода, которая зависит от количества узлов в сети, а также механизма планирования, применяемого при распределении временных слотов каждому маршрутизатору [5].
Механизм временного планирования ZigBee
Нами предлагается в кластерных древовидных сетях ZigBee использовать метод временного планирования, при котором существует возможность осуществления маршрутизации при двухадресных пакетах, содержащих адрес начального и конечного получателя, по аналогии тому, как это происходит при реализации проводных сетей, работающих на основе протоколов STP (Spanning Tree Protocol) и RSTP (Rapid Spanning Tree Protocol). Так же, как в проводных сетях STP и RSTP, началу работы в штатном режиме, предшествуют процесс выбора главного корневого узла и процесс построения минимального связующего дерева. Наличие связующего дерева исключает появление петель и образование «шторма» трафика в сети. На рис. 6 показан фрагмент сети, с построенным минимальным связующим деревом, где используются следующие обозначения:
1 - связь, входящая в дерево;
2 - конечные узлы кластера;
3 - физические связи.
Помимо связей (I), образующих ветви дерева, между головными узлами кластеров имеются непосредственные физические радиосвязи (3). В проводных сетях подобные связи осуществляются с помощью соединительных линий, подключенных к соответствующим портам коммутаторов. При формировании связующего дерева в проводных сетях, порты соединительных линий, образующих связи, не принадлежащие дереву, ставятся в заблокированное состояние, в результате чего, указанные связи разрываются. Таким образом, между двумя узлами всегда оказывается одна, единственная связь, являющаяся ветвью дерева.
В окрестности каждого из маршрутизаторов (корневые узлы кластеров, ZR) расположены конечные узлы, образующие кластер. Соединение между узлами осуществляется благодаря тому, что оба узла работают в течение одного и того же слота. Если же узлы осуществляют приёмо-передачу в различные временные слоты, то связь между ними отсутствует.
8
■
T-Comm Том 10. #1-2016
Рис. 6, Фрагмент сети 2^Вее, с построенным минимальным связующим деревом
При распределении временных слотов, в которых происходит активная работа приёмо-передатчика, необходимо предусмотреть, чтобы, в течение данного слота, образующего связь между двумя узлами, отсутствовала связь этих узлов с остальными окружающими узлами. Простейший алгоритм выбора слотов - это присвоение всем связям дерева различных временных слотов, однако, такое распределение не является эффективным, поэтому при распределении слотов, следует использовать алгоритмы, минимизирующие число различных слотов. Так, на рис. 6, пронумерованы все номера слотов, образующие связи, всего для организации связи между двенадцатью корневыми узлами кластеров (2Я) задействовано 10 временных слотов, а слоты №1 и №2 используются дважды (между ХС-ХК,, г^-гя, а также, ТС-ТК, соответствен-
но).
Узел, получивший пакет в течение определённого слота, копирует адрес начального отправителя пакета, фиксирует номер слота, в котором получен пакет, и дополняет свою таблицу МАС-адресов строчкой, в которой бывший адрес начального отправителя обозначается как МАС-адрес конечного получателя:
МАС-адрес конечного получателя - Номер зафиксированного слота. При необходимости направить пакет в адрес определённого конечного получателя, любой узел вставляет в пакет МАС-адрес конечного получателя, а в
поле начального отправителя проставляет собственный МАС-адрес.
Узел проверяет, имеется ли в его таблице, требуемый для отправки МАС-адрес конечного получателя. Если МАС-адрес конечного получателя имеется, то узел отправляет пакет в закреплённом за этим адресом слоте. Если отсутствует, то узел отправляет пакет во всех слотах, кроме того, через который он этот пакет получил. Пакеты, достигнут адреса конечного получателя, оставляя, по пути, строчки, с адресом своего начального отправителя и закреплёнными за ним номерами слотов.
Целью работы являлось рассмотрение структуры кластерной древовидной сети 2^Вее, а также особенностей характерных для сетей 7^Вее с данным типом топологии. Был рассмотрен традиционный механизм синхронизации в кластерных древовидных сетях 2щВее. Учитывая недостатки существующих методов синхронизации, был предложен механизм синхронизации, основывающийся на временном планировании. Достоинством предлагаемого метода временного планирования является то, что в результате использования временных слотов, в сетях 7^Вее, становится возможным осуществить полноценную маршрутизацию при двухадресных пакетах, по аналогии тому, как это происходит в сетях, с протоколами БТР и Р.5ТР.
1. Смурыгин И.М. Концепция организации беспроводных сенсорных сетей и их применение [Электронный ресурс]. - Режим доступа: http://sntbul.bmstu.ru/doc/478768.html (дата обращения: 24,04.2015).
2. Ьаргаузин В. Радиосети для сбора данных от сенсоров, мониторинга и управления на основе стандарта IEEE 802.15.4 [Электронный ресурс]. - Режим доступа: http://book.itep.ru/ depository/zigbee/802.15.4.pdf (дата обращения: 29.05.2015).
3. Семенов Ю.А. Беспроводные сети ZigBee и IEEE 802,15.4 [Электронный ресурс]. - Режим доступа: http://book.itep.ru/ 4/41/zigbee.htm/ (дата обращения: 29,05.2015).
4. Трифонов С.Б., Холодов ЯЛ. Исследование и оптимизация работы беспроводной сенсорной сети на основе протокола ZigBee // Компьютерные исследования и моделирование, 2012. -Т,4. - № 4. - С. 855-869.
5. КоиЬоо A., Cunha A., A/ves /И., Tovar Е. TDBS: A time division beacon scheduling mechanism for Zigbee duster-tree wireless sensor networks // Real-Time Systems Journal, 2008. - Vol. 40. - Na3. - P. 321-354.
Заключение
Литература
г Г\
COMMUNICATIONS
TEMPORARY PLANNING CLUSTER WIRELESS SENSOR NETWORKS ZIGBEE
Golubnichaya Ekaterina Yurievna, Post-graduate Student of Multiservice networks and information security chair of the Povolzhskiy State University of Telecommunications and Informatics (PSUTI), Samara, Russia,
ekaterina.golubn@mail.ru
Likhttsinder Boris Yakovlevich, Honorary Figure of Russian Higher Education, Doctor of Technical Science,
Professor of Multiservice networks and information security chair of the Povolzhskiy State University of Telecommunications and Informatics (PSUTI), Vice-president of scientific public Academy of Telecommunications
and Informatics, Samara, Russia, lixt@psati.ru
Abstract
Wireless sensor networks based on the standard IEEE 802.15.4/ZigBee represent an alternative to wired connections in distributed control and monitoring systems in which networked sensors form a geographically distributed self-organizing system of collecting, processing and transmitting information. In these networks, the synchronization is a challenging and important problem since it requires mutual spatiotemporal coordination between nodes. Currently, however, still remains an open question how to effectively build a network with synchronized multiple clusters, in particular in the case of the topology of the cluster-tree. One of the major disadvantages of this topology is the reliability of the network, since communication failure branch of the tree will be isolated and that the network violated. In this connection, it is proposed to use a synchronization mechanism, based on the planning time beacons. The essence of the mechanism is that the role of the ports connecting the switches in wired networks, ZigBee networks operate in the time slots during which the compound routers. The connection between the nodes is carried out due to the fact that the nodes (between which it is necessary to establish a connection) are working for the same slot. If the nodes are carried receiving-transmission in different time slots, then there is no connection between them. Thus, the proposed mechanism allows the routing of packets in the two-address containing the address of the initial and final recipient, similar to the way it happens in the implementation of wired networks, operating on the basis of the protocols STP (Spanning Tree Protocol) and RSTP (Rapid Spanning Tree Protocol). The article also examines the methodology for assigning cycle each router network that allows to provide efficient use of bandwidth in proportion to the traffic. The optimal assignment of the working cycle of the cluster tree network depends on the metric (bandwidth, buffer size, delay), and for which the parameters (type of traffic delay requirements). This technique can easily be adapted to any other metric, only taking into account the constraints associated with this metric.
Keywords: ZigBee, superframe, beacon, collision, time slot, cluster-tree.
References
1. Smuryigin I.M. 'The concept of wireless sensor networks and their use', [Online], available at: http://sntbul.bmstu.ru/doc/478768.html (Accessed: 24.04.2015).
2. Vargauzin V. 'Radio networks сaptures the data from sensors, monitoring and based management the IEEE 802.15.4 standard', [Online], available at: http://book.itep.ru/depository/zigbee/802.15Apdf (Accessed: 29.05.2015). (in Russian)
3. Semenov Y.A. 'Wireless networks ZigBee and IEEE 802.15.4', [Online], available at: http://book.itep. ru/4/41/zigbee.htm (Accessed: 29.05.2015). (in Russian)
4. Trifonov S.V. & Kholodov Y.A. 2012, 'Study and optimization of wireless sensor network based on ZigBee protocol', Computer Research and Modeling, vol. 4, no. 4, pp. 855-869. (in Russian)
5. Koubaa A., Cunha A., Alves M. & Tovar E. 2008, 'TDBS: A time division beacon scheduling mechanism for Zigbee cluster-tree wireless sensor networks', Real-Time Systems Journal, vol. 40, no. 3. pp. 321-354.