Автореферат кваліфікаційної роботи магістра

Тема: Дослідження алгоритмів маршрутизації у динамічних мережах на базі технології ZigBee

Автор: Зуб Михайло Олександрович

Вступ

Актуальність роботи

Вбудовувані системи стали частиною повсякденного життя. Спостерігається бурхливе зростання мікропроцесорних технологій та постійне зниження їх вартості. Автоматизація різних процесів, завдяки цьому, застосовується не тільки на виробництві, а й у побуті. У кожному будинку є не менше 30 пристроїв на базі мікроконтролерів, тому актуальною стає завдання їх комунікації. Дротові рішення в даному випадку незастосовні. У свою чергу, бездротові мережі вигідно відрізняються гнучкістю архітектури, зручністю монтажу і легкістю обслуговування. [1]

Таким чином, з'являється новий клас бездротових мереж малої дальності. Ці мережі мають ряд особливостей. Пристрої, що входять в ці мережі, мають невеликі розміри і живляться в основному від батарей. Ці мережі є Ad-Hoc мережами - високоспеціалізованими мережами, з динамічною зміною кількісного складу мережі. У зв'язку з цим виникають завдання створення та функціонування даних мереж - організація додавання і видалення пристроїв, автентифікація пристроїв, ефективна маршрутизація, безпека даних, що передаються, «живучість» мережі, продовження часу автономної роботи кінцевих пристроїв. [2]

Актуальність роботи визначається актуальністю використання бездротових технологій. Одним з головних напрямів впровадження бездротового зв'язку є бездротові мережі датчиків, що застосовуються в промислових системах управління та контролю SCADA, а також у побуті у вигляді систем автоматизації типу «Розумний будинок». Ринок подібних систем щороку зростає, а це означає високу актуальність дослідження проблеми маршрутизації для поліпшення взаємодії подібних систем.

Цілі і завдання

Об'єктом дослідження наукової роботи є бездротові мережі малої дальності, у тому числі бездротові мережі датчиків.

Предметом дослідження є алгоритми маршрутизації в мережах стандарту 802.11.4.

Метою роботи є дослідження ефективності алгоритмів маршрутизації, стосовно до особливостей функціонування бездротових мереж малої дальності. Для досягнення поставленої мети, у процесі дослідження необхідно:

  • провести огляд і аналіз мережевих стеків, які є надбудовами стандарту 802.11.4;
  • провести огляд і аналіз найбільш поширених алгоритмів маршрутизації;
  • провести огляд існуючих систем моделювання бездротових мереж малої дальності;
  • вибрати середу моделювання;
  • вибрати критерії порівняння ефективності різних алгоритмів маршрутизації;
  • виконати моделювання алгоритмів маршрутизації;
  • за результатами моделювання порівняти алгоритми маршрутизації за обраними критеріями;
  • провести розробку програмно-апаратної реалізації елемента бездротової мережі;
  • провести експерименти на реальній апаратурі;

При дослідженні планується застосувати такі методи, як експериментальні дослідження за допомогою моделюючого програмного забезпечення, статистичний аналіз результатів моделювання, а також експериментальні дослідження на розробленому апаратному забезпеченні.

Наукова і практична новизна

Наукова новизна магістерської роботи полягає в отриманні методики порівняння ефективності різних алгоритмів маршрутизації на основі імітаційного моделювання.

Практична новизна роботи полягає у використанні даної методики при виборі технологій, топології мережі та алгоритмів маршрутизації під час проектування бездротових мереж малої дальності.

Апробація роботи

Основні результати доповідалися і обґрунтовувалися на міжнародних науково-технічних конференціях студентів, аспірантів і молодих вчених "Інформатика та комп'ютерні технології - 2009" (секція "Проектування ЕОМ та цифрових пристроїв, FPGA-технології") і "Інформаційні управляючі системи та комп'ютерний моніторинг - 2010" (секція "Комп'ютерна інженерія").

Високий інтерес учасників конференцій до цих виступів демонструє актуальність обраної теми. На обох конференціях доповіді зайняли перше місце у секції.

Основний зміст роботи

Загальна інформація про технологію ZigBee

Бездротові мережі малої дальності, створені для взаємодії мікроконтролерних пристроїв, отримали назву WPAN (Wireless Personal Area Network), стандарт яких розроблений робочою групою IEEE 802.15. Цей стандарт включає в себе специфікацію бездротового зв'язку для портативних пристроїв Bluetooth (стандарт IEEE 802.15.1) і набір протоколів високого мережевого рівня, що використовує малопотужні радіопередавачі ZigBee (стандарт IEEE 802.15.4). Стандарти ZigBee і Bluetooth працюють на неліцензованому діапазоні частот 2,4 ГГц, проте мають істотні відмінності характеристик, які представлені в таблиці 1. [3]

Taбліца 1. Порівняння ZigBee і Bluetooth


Bluetooth ZigBee

Модуляція

FHSS DSSS

Розмір пакету

250Kб 28Kб

Батарея

Оптимизирован для
частой перезарядки
Не
перезаряжаемая
Максимальна швидкість
передачі даних
1Mбіт/с 250Kбіт/с

Радіус дії

1 до 100 метрів до 70 метрів

Час підключення

3 сек 30 мілісекунд

Протоколи ZigBee розроблені з урахуванням максимального енергозбереження, що дозволяє пристроям перебувати основну частину часу в сплячому режимі. Тому пристрої ZigBee здатні працювати від одного акумулятора рік і більше.

Мережі ZigBee є самоутворюваними і самовідновлюваними. Технологія ZigBee може бути використана не тільки для реалізації простих з'єднань типу "точка-точка" і "зірка", але також і для утворення складних мереж з топологіями "дерево" та "комірчаста мережа".[4]

Радіус зони покриття пристроїв ZigBee залежить від декількох факторів, але в першу чергу - від чутливості приймача та потужності передавача. На відкритому просторі відстань між вузлами в мережі ZigBee може досягати сотень метрів. При цьому, за рахунок ретрансляції повідомлень, зона покриття мережі ZigBee може бути значно ширше, ніж відстань між вузлами.

Таким чином, мережа ZigBee є динамічною децентралізованою енергонезалежною бездротовою мережею з можливістю ретрансляції повідомлень, будучи підходящої технологією для комунікації вбудованих систем. Однак необхідно врахувати той факт, що WPAN мережі працюють в неліцензованих частотних діапазонах, тому в ряді випадків можуть виникати перешкоди, створювані сторонніми джерелами радіохвилі. Децентралізація в свою чергу піднімає проблему маршрутизації в даних мережах. При цьому бажано уникати повторної передачі одних і тих же даних, а крім того, враховувати, що через недостатню енергоємність та зовнішні впливи пристрої будуть виходити з ладу назавжди або на якийсь час. У всіх таких випадках схеми обміну даними повинні модифікуватися.

За останні роки розроблена досить велика кількість алгоритмів маршрутизації, з яких найбільшу популярність набули DSR (Dynamic source routing) і AODV (Ad-hoc On-demand Distance Vector routing). Саме AODV, як основний протокол маршрутизації, був реалізований в пристроях ZigBee / ZigBee PRO. Особливістю протоколу AODV є неявне припущення, що будь-який вузол мережі може брати участь у процесі маршрутизації. Однак мережі ZigBee є гетерогенними мережами, так як для пристроїв передбачені різні ролі і функції: координатор, роутер, сплячий пристрій і мобільний пристрій.

Координатор керує роботою мережі, зберігає дані про її топологію і служить шлюзом для передачі даних, що збираються всією бездротовою сенсорною мережею. У сенсорних мережах звичайно використовується один координатор. Роутери здійснюють маршрутизацію пакетів по мережі і повинні бути готові до передачі даних у будь-який момент часу. Тому ці вузли не використовують режимів зниженого енергоспоживання і мають стаціонарне живлення. Сплячі і мобільні пристрої використовують режими зниженого енергоспоживання. Як правило, це вузли з батарейним харчуванням. Зазвичай вони виконують роль датчиків або контролерів виконавчих пристроїв. [5]

Маршрутизація в мережах ZigBee

У ZigBee застосовуються наступні способи маршрутизації пакетів:

  • широкомовлення (broadcasting)
  • явна маршрутизація (source routing)
  • комірчаста мережа (mesh routing)
  • маршрутизація по дереву (tree routing)

Кожен з цих методів має свої переваги і недоліки, зазначені в таблиці 2.

Taбліца 2. Порівняння способів маршрутизації пакетів
Широкомовлення Комірчаста мережа Маршрутизація по дереву Явна маршрутизація
Максимальна довжина маршруту (хопи) до 30 до 30 до 10 до 5
Множинні одержувачі так ні ні ні
Точка - точка ні так так так
Ефективне використання смуги частот ні так так так
Ефективна корисне навантаження так так так ні
Підтвердження прийому ні так так так

Широкомовлення

Широкомовлення дозволяє одному вузлу відправити пакет безлічі вузлів. Цей метод не використовує підтвердження прийому (доставка не гарантується) і вимагає значних мережевих ресурсів. Широкомовлення є основою для побудови складних маршрутів.

Коли вузол ініціює широкомовлення, повідомлення ретранслюється усіма сусідніми маршрутизаторами до певної межі, як показано на малюнку 1. Область охоплення широкомовлення розширюється подібно колам на воді. Кожен вузол, який отримує широкомовні повідомлення, додає запис у спеціальну таблицю Broadcast Transaction Table (BTT) і зменшує значення поля радіусу. Якщо поле радіусу досягає одиниці, подальша ретрансляція пакета не проводиться. Таблиця BTT також запобігає повторне одержання ретрансльованих повідомлень. Для кожного запису в таблиці BTT вказується значення таймауту, що в сукупності з обмеженим розміром таблиці вводить обмеження на кількість широкомовних повідомлень за одиницю часу. Якщо таблиця заповнена, широкомовні повідомлення не буде прийнято.

Широкомовні повідомлення поширюються досить повільно і сильно навантажують мережу, тому їх використання потрібно обмежувати. Слід враховувати, що тільки координатори та маршрутизатори можуть брати участь в ретрансляції.

photo
Рисунок 1 - Розповсюдження широкомовних пакетів
(gif-анімація, 3 кадри, 14,1 КБ)

Явна маршрутизація

При використанні явної маршрутизації шлях пакета визначається його відправником. При суворої явної маршрутизації в пакеті вказується його повний шлях, при неточної явної маршрутизації шлях вказується частково.

Явна маршрутизація має високі витрати для бездротової передачі. Розмір пакета фізичного рівня стандарту 802.15.4 обмежений 127 байтами. З урахуванням накладних витрат на протокол ZigBee корисне навантаження становить близько 100 байт. У разі явної маршрутизації з великою довжиною маршруту, корисне навантаження може бути знижено аж до 60 байт. Тим не менше, явна маршрутизація присутня у ZigBee, але довжина маршруту обмежена п'ятьма вузлами, щоб мінімізувати накладні витрати.

Комірчаста мережа

Комірчаста мережа - проста і гнучка технологія. Маршрут складається від одного вузла до іншого, і пролягає через будь-яку кількість проміжних вузлів. Якщо щось трапляється з маршрутом (вузол стає недоступним або можуть перешкоджати радіосигналу), новий маршрут обчислюється автоматично. На відміну від широкомовлення, в передачі задіються тільки вузли, що входять у маршрут, що значно знижує навантаження мережі і прискорює передачу. Також вузол-відправник точно знає, чи було доставлене повідомлення.

Алгоритм маршрутизації заснований на публічно доступному алгоритмі динамічної маршрутизації Advanced Ad-hoc On-Demand Distance Vectoring (AODV). Даний алгоритм не пред'являє жорстких вимог до оперативної пам'яті пристрою (пристрої ZigBee зазвичай мають не більше 4кб оперативної пам'яті). В алгоритмі AODV інформація про маршрут розподілена - кожен вузол мережі містить таблицю маршрутизації, в якій зберігаються записи о сусідніх вузлах за потрібними маршрутами. Таблиця маршрутизації може містити кілька десятків значень. Маршрути зазвичай односпрямовані і існують, поки ще можуть використовуватися. Про збої маршруту повідомляється вузлу-відправнику, вказуючи йому знайти новий маршрут. Слід зазначити, що в даному алгоритмі мережа являє собою зважений граф. В якості ваг ребер графа виступає якість сигналу між вузлами, а в тілі пакету зберігається сума ваг пройдених ребер.

Спочатку комірчаста мережа не містить ніякої інформації про маршрути. Визначення маршруту починається з широкомовного повідомлення від вузла-відправника. Приміром, на малюнку 2, вузол 1 відправляє пакет вузлу 10. Вузол 10 не є сусідом вузла 1, і маршрут до нього невідомий, тому починається визначення маршруту. Повідомлення ретранслюється в усіх напрямках і на кожному вузлі в тіло пакету додається вага пройденого ребра графа. Необхідно зауважити, що довгий маршрут з більш якісним зв'язком є найкращим, оскільки на повторну передачу зниклого пакету піде більше часу, ніж на проходження зайвого вузла в маршруті. [6]

photo
Рисунок 2 - Широкомовна пошук маршруту в комірчастій мережі (gif-анімація, 4 кадри, 45,4 КБ)

Для простоти візьмемо рівні ваги ребер графа мережі. Таким чином, маємо найкоротший шлях від вузла 1 до вузлу 5, а потім до вузла 10. Вузол 10 чекає деякий час, поки не отримає всі повідомлення і не вибере мінімальне. Потім вузол 10 відповідає вихідному вузлу, як показано на малюнку 3. Для вузлів 5 і 1 зберігається відповідний запис у їх таблиці маршрутизації, для інших вузлів запис видаляється.

Слід зазначити, що ZigBee не шукає активно найоптимальніший маршрут. Пакети будуть проходити за встановленим маршрутом до тих пір, поки він знаходиться в робочому стані. Однак можна регулярно програмно оновлювати з'єднання. При цьому необхідно враховувати, що пошук маршруту може займати кілька секунд.

Маршрутизація по дереву

Даний вид маршрутизації використовується спільно зі спеціальним методом адресації вузлів мережі. Слід зазначити, що вузли мережі ZigBee мають кілька адрес - адресу MAC, що привласнюється виробником пристрою (64 біта), а також коротку адресу мережі (16 біт). Використання короткої адреси дозволяє скоротити службовий заголовок пакета, тому що в пакеті потрібно передати адресу одержувача і адресу відправника.

У разі використання адресації Cskip (child skip) координатор мережі має адресу 0 за замовчуванням. Кожен новий вузол, під'єднується до мережі, отримає адресу від батьківського вузла, яка буде залежати від того, чи є новий вузол роутером або кінцевим пристроєм. Cskip використовує три параметри, щоб визначити адресацію - maxDepth (максимальна глибина дерева), maxChildren (максимальна кількість дітей у вузла) і maxRouters (максимальна кількість роутерів).

Утворюється симетричне дерево, коренем (нульовим рівнем) якого є координатор з адресою 0. Всі роутери, підключені до координатора, становлять перший рівень дерева, а роутери, підключені до них - другий, і т.д. Перший роутер підключений до координатора отримує номер 0x0001, а другий роутер - номер досить великий, щоб у лісі, утвореному першим роутером всі можливі діти могли бути пронумеровані. Таким чином, створюється запас по номерах. Приклад нумерації з заданими параметрами мережі показаний на малюнку 3.

photo
Рисунок 3 - Приклад нумерації вузлів дерева

З недоліків організації такої топології і способу маршрутизації слід зазначити ненадійність мережі. При руйнуванні зв'язку, гілка дерева стане ізольованою і цілісність мережі порушиться. [7]

Апаратна реалізація елемента мережі

В якості апаратної реалізації елемента мережі, розглянемо зв'язку мікроконтролера AVR ATmega32 фірми Atmel і трансівера СС2500 фірми Chipcon, структурна схема якої зображена на малюнку 4. Дані інтегральні схеми досить поширені і мають низьку вартість, що дозволяє використовувати їх в недорогих вбудованих системах. [8]

photo
Рисунок 4 - Структурна схема елемента мережі

Контролери AVR побудовані за скалярною RISC архітектурою, що забезпечує продуктивність приблизно 20MIPS на частоті 20MHz. Даної обчислювальної потужності повинно бути достатньо для організації координаторів і маршрутизаторів. Розвинена периферія Atmel AVR (ШІМ, UART, АЦП) буде використана для підключення елементів управління і датчиків на кінцевих пристроях, а наявність функцій енергозбереження дозволить використовувати контролер в енергонезалежних модулях. Таким чином, використання зовнішнього контролера дозволяє реалізувати всі елементи гетерогенної мережі ZigBee, використовуючи одну й ту ж апаратну частину, що скорочує час розробки та здешевлює кінцевий пристрій. [10]

Мікросхема Chipcon СС2500 розроблена для малопотужних бездротових пристроїв у смузі частот на 2,4 ГГц і відрізняється дешевизною і технологічністю. Цей трансівер вимагає мінімум зовнішніх компонент, що істотно полегшує розробку. Тактується чіп кварцовим резонатором Q2 з частотою в діапазоні 26-27 MHz. Точність кварцового резонатора має суттєвий вплив на частоту пріемопередачі. Необхідно використовувати прецизійні кварцові резонатори або змінювати частоту резонатора за допомогою вбудованих механізмів корекції.

Також потрібно враховувати, що СС2500 є вельми чутливою до якості живлення, оскільки зміна напруги живлення в процесі прийому або передачі призводить до відтоку частоти передачі. Для стабілізації використані мікросхеми LF33 або KA7805 з конденсаторами ємністю рекомендованої виробником.

Для зв'язку модуля з ПК використовується вбудований UART контролер, підключений до COM-порту через мікросхему MAX232. Зв'язок контролера з ZigBee трансивером СС2500 відбувається з послідовного периферійному інтерфейсу SPI, реалізованого в мікроконтролері програмно. Дані між модулями ZigBee передаються пакетами по 64 байти з контролем парності.

Висновок

У роботі були розглянуті основні види маршрутизації мереж ZigBee стандарту 802.15.4. Був проведений порівняльний аналіз різних видів маршрутизації. Можна зробити висновок, що для різних умов прийнятні різні види маршрутизації, але самим оптимальним видом організації маршрутизації є комірчаста мережа. Вона стійка до пошкоджень пристроїв та розриву зв'язків, є оптимальною за швидкодією, а також не накладає особливих обмежень на використовуване апаратне забезпечення. Алгоритм маршрутизації, використаний для організації даної мережі, повинен бути додатково досліджено та покращено.

Список літератури

  1. Матеріали альянсу ZigBee / Інтернет ресурс. — Режим доступу: www.zigbee.org
  2. Patrick Kinney. ZigBee Technology: Wireless Control that Simply Works / Kinney Consulting LLC, Chair of IEEE 802.15.4 Task Group, 2003 / Інтернет ресурс. — Режим доступу: http://intranet.daiict.ac.in/~ranjan/sn/papers/Zigbee.pdf
  3. F. L. Lewis. Wireless Sensor Networks / Automation and Robotics Research Institute, The University of Texas at Arlington / Інтернет ресурс. — Режим доступу: http://arri.uta.edu/acs/networks/WirelessSensorNetChap04.pdf
  4. Kemal Akkaya and Mohamed Younis. A Survey on Routing Protocols for Wireless Sensor Networks / Department of Computer Science and Electrical Engineering, University of Maryland, Baltimore County / Інтернет ресурс. — Режим доступу: http://www.cs.umbc.edu/~kemal1/mypapers/Akkaya_Younis_JoAdHocRevised.pdf
  5. Curt Schurgers,Mani B. Srivastava. Energy Efficient Routing in Wireless Sensor Networks / Networked & Embedded Systems Lab (NESL), University of California at Los Angeles / Інтернет ресурс. — Режим доступу: http://citeseerx.ist.psu.edu/viewdoc/download?doi=10.1.1.11.4476
  6. Ian D. Chakeres, Elizabeth M. Belding-Royer. AODV Routing Protocol Implementation Design / Dept. of Electrical & Computer Engineering, University of California, Santa Barbara / Інтернет ресурс. — Режим доступу: http://moment.cs.ucsb.edu/pub/wwan_chakeres_i.pdf
  7. Drew Gislason. ZigBee Wireless Networking. — Newnes, 2008
  8. Shahin Farahani. ZigBee Wireless Networks and Transceivers. — Newnes, 2008
  9. Панфилов Д., Соколов М. Введение в беспроводную технологию ZigBee стандарта 802.15.4
    Электронные компоненты. — Киев, 2004. — №12(73). — С.73-79
  10. Шатунов М. Штрапенин Г. Интеграция технологии ZigBee в электронные устройства:
    Компоненты и технологии. — Минск, 2005. — №10(130). — С.130-134
micheal[dot]zub[at]gmail[dot]com