Обзор методов построения адресного пространства в беспроводных сенсорных сетях

Обзор методов построения адресного пространства в беспроводных сенсорных сетях

В статье рассматривается проблема построения адресного пространства в беспроводных сенсорных сетях. Проводится обзор основных понятий и рассматривается классификация сенсорных сетей по типу выполняемых задач. Дается обзор актуальных исследований по модернизации стандартных алгоритмов построения адресного пространства, а также алгоритмов, использующих адресацию в своей работе. По итогам анализа рассматриваемых исследований выделяются сильные и слабые стороны каждого из решений. Выполняется сравнение предложенных решений со стан-дартными алгоритмами построения адресного пространства на базе протокола 2дВее. Формулируются выводы об актуальности проблемы.

Ключевые слова: беспроводная сенсорная сеть, WSN, адресное пространство, Т\дВее, 6LoWPAN,

SAAM, ОЛЛМ, кеп^еяюиэ, 6LoWPAN, !Ру6, ОААМС, SARA

Ефимушкин ВА,

к.ф.-м.н., доцент, академик МАС,

Заместитель генерального директора ФГУП ЦНИИС, ef@zniis.ru

Шуваев Я.В.,

Начальник сектора инфраструктуры и баз данных, ДКС, ЛАНИТ, shuvaev@lanit.ru

Введение

Беспроводная сенсорная сеть (БСС, WSN, Wireless Sensor Network) — это распределенная, самоорганизующаяся сеть множества датчиков (сенсоров) и исполнительных устройств, объединенных между собой посредством радиоканала. Причем область покрытия подобной сети может составлять от нескольких метров до нескольких километров за счет способности ретрансляции сообщений от одного элемента к другому.

Каждый элемент представляет собой устройство, состоящее из накопителя данных, вычислительного модуля, сенсора и источника питания. В зависимости от решаемой задачи сенсоры могут представлять собой различные датчики, например, температуры, движения, освещенности. [1].

Вычислительная часть устройства, как правило, строится на базе стандартных компонентов. Питание устройства осуществляется от небольшой батареи, возможны варианты использования питания от солнечного света. Современный уровень развития технологий позволяет создавать устройства, способные решать задачи, требующие сбора, анализа и передачи данных от большого числа источников. Дешевизна таких устройств позволяет применять данную технологию для решения широкого спектра задач. В зависимости от типа сенсора можно выделить несколько областей применения сенсорных сетей:

1) Мониторинг параметров окружающей среды (метеомониторинг. климат-контроль помещений, умный дом и т.д.);

2) Медицина (контроль жизненных показателей пациентов и др.);

3) Сбор информации для анализа и контроля за ситуацией во время чрезвычайных ситуаций (места происшествий, катастроф, военные операции и т.д.).

Собранная на узлах информация передается через граничные узлы. Соединение узлов с сетью Internet позволяет собирать данные, в том числе, с удаленных источников

без необходимости нахождения в непосредственной близости к ним. Удаленно можно получать информацию о состоянии сети. Важной особенностью беспроводных сенсорных сетей является то, что выход части узлов сети из строя не должен препятствовать передаче собранной информации на шлюз.

Для выполнения своих функций каждый узел управляется специально разработанной операционной системой. В настоящее время в большинстве беспроводных сенсорных сетей используется ТтуОБ [2] — ОС, разработанная в Университете Беркли. Тту08 относится к программному обеспечению с открытым исходным кодом. ТшуОБ — это управляемая событиями операционная система реального времени, рассчитанная на работу на устройствах с ограниченными вычислительными ресурсами. Операционная система отвечает за автоматическое построение сети, организацию связи между устройствами, построение адресного пространства в рамках заданной топологии.

Главным ограничителем в работе беспроводных сенсорных сетей является ограниченная емкость источников питания, которыми обладают устройства. Учитывая, что узлы сенсорной сети как правило недоступны после активации, например, при длительном сборе информации в сложных природных условия или во время чрезвычайных ситуаций, замена источника питания зачастую невозможно. Таким образом, алгоритмы управления сенсорной сетью должны обеспечивать максимально возможный по продолжительности период функционирования сети в автономном режиме. Вокруг задачи экономии энергии строится все, что связано с устройствами: энергопотребление компонентов, оптимизация алгоритмов и др. Большая часть компонентов сенсорных устройств зачастую просто отключаются и включаются только тогда, когда это необходимо.

В связи с этим возникает задача по оптимизации работ, выполняемых на узлах сети. Так как основная задача узлов сенсорной сети - это сбор и передача информации, то предварительная обработка информации на узлах перед началом ее передачи на шлюз, позволяет минимизировать общий расход энергии на передачу этой информации за счет снижения объема передаваемых данных. Меньше информации для передачи - меньше нагрузка на ретрансляцию между узлами сети до момента попадания данных на шлюз.

Для решения такого рода задач используются специальные протоколы, наиболее известными из которых являются протоколы альянса ZigBee. В качестве базового стандарта, в том числе стека протоколов для беспроводных сенсорных сетей, ZigBee использовал разработанный ранее стандарт IEEE 802.15.4 [4], который описывает физический уровень и уровень доступа к среде для беспроводных сетей передачи данных на небольшие расстояния (до 75 м) с низким энергопотреблением, но с высокой степенью надежности. Протоколы ZigBee позволяют устройствам находиться в спящем режиме большую часть времени, тем самым экономя энергию.

Таким образом, можно сформулировать основные задачи, которые должны решать протоколы, применяющиеся при построении беспроводной сенсорной сети:

1) Минимизация использования энергетических ресурсов устройства.

2) Поддержание целостности сенсорной сети даже в случае выхода из строя некоторого числа узлов.

3) Удобство начального конфигурирования сети.

Из формулировки первой задачи вытекают дополнительные задачи, которые должен решать протокол, по которому работает узел:

4) Минимизация передаваемой информации между узлами.

5) Максимально точная идентификация узла в сети, в пространстве.

В первом случае, как правило, уменьшить объем передачи собранных полезных данных нельзя, таким образом, задача сводится к необходимости максимально уменьшить объем и частоту передачи служебного трафика.

Во втором случае четкая идентификация узла в рамках сети требуется для проведения эффективной маршрутизации. Эффективная маршрутизация необходима как для надежной передачи данных, даже в случае отказа сегмента сети, так и для оптимизации потребления энергии на передачу данных.

Сенсорные сети имеют приложения в различных областях. Их роль за последние годы значительно возросла, в том числе и в ситуациях, требующих определения признаков возникновения экстренной ситуации. В связи с этим изучение механизмов работы беспроводных сенсорных сетей представляется актуальной задачей. Учитывая, что оптимизация алгоритмов, лежащих в основе работы сети, является ключевым звеном в процессе обеспечения высоких итоговых показателей ее функционирования, тему построения адресного пространства в беспроводных сенсорных сетях можно рассматривать как одну из актуальных задач в рамках исследования данного направления.

Полученный вывод также подтверждается рядом исследований и разработок по улучшению алгоритмов построения адресного пространства, которые были опубликованы за последнее время [5-8].

1. Базовые алгоритмы построения адресного пространства

1. 1. Общие положения

Для демонстрации общих подходов для построения адресного пространства в беспроводных сенсорных сетях рассмотрим стандарт ZigBee [9], в котором определены два механизма построения адресного пространства сети: механизм стохастического присваивания адресов SAAM (Stochastic Address Assignment Mechanism) и механизм распределенного

присваивания адресов DAAM (Distributed Address Assignment Mechanism). В работе обоих механизмов используется схема, при которой каждый узел, становясь родительским, самостоятельно назначает адреса своим дочерним узлам без взаимодействия с координатором сети. Такое поведение характерно для мобильных ad-hoc сетей [10-12].

1.2. Stochastic Address Assignment Mechanism

Суть работы алгоритма SAAM заключается в присвоении новому узлу случайного адреса. Из-за этой особенности алгоритма необходимо каждый раз при добавлении нового узла проверять не был ли назначен данный адрес кому-то ранее, чтобы избежать дублирования адресов [13]. Дзя реализации такой проверки необходимо использование специальных протоколов маршрутизации по запросу (on-demand, reactive) [14-16] или управляемых таблицей (table-driven, proactive) [17]. Все протоколы маршрутизации указанных типов требуют передачи дополнительной служебной информации и хранения больших таблиц маршрутизации, что неэффективно, учитывая специфику работы сенсорных сетей в условиях дефицита энергии.

1.3. Distributed Address Assignment Mechanism

Метод DAAM представляет сеть в виде дерева, а маршрутизация пакетов осуществляется только на основе имеющейся адресной информации без обращений к дополнительным таблицам маршрутизации и предварительной прокладки маршрута. Гарантия уникальности присваиваемых адресов обеспечивается благодаря использованию функции CSkip (Child Skip) [18], которая определяет уникальное для каждого уровня дерева число. Вместе с CSkip в процедуре распределения адресов в методе DAAM используются такие величины, как максимальная глубина дерева максимальное число Ст дочерних потомков не маршрутизаторов и максимальное число Rm дочерних потомков, которые могут быть маршрутизаторами.

Однако, когда речь заходит о построении самоорганизующейся сети [19, 20], важным показателем становится площадь покрытия, при этом учитывая фиксированные начальные параметры, достаточно сложно добиться высокого покрытия при использовании алгоритма DAAM.

В качестве примера рассмотрим сеть с характеристиками: Ст — 3, Rm = 3, Lm = 4, состоящую из трех узлов, расположенных вокруг координатора сети ZigBee - узла, находящегося в вершине дерева. Когда в сети появляется новый узел, между ним и уже существующими узлами устанавливаются взаимоотношения, причем их характер изначально не определен. В нашем примере все три узла могут стать дочерними узлами координатора, то есть смежными узлами координатора в терминах теории графов, а могут образовать линейную цепь, увеличив глубину дерева.

Если будет иметь место последнее, лимит параметра L,„ будет быстро достигнут, а область покрытия сетью будет иметь вытянутую форму. Рис.1, иллюстрирует проблему распределения адресов при использовании алгоритма DAAM. Новый узел / пытается присоединиться к сети, ассоциировав себя с узлом т. то есть, запросив у него адрес. Однако узел т не может присвоить адрес новому узлу сети, так как, имея зри дочерних узла, он уже исчерпал свой лимит по подключению новых узлов (С„,=3).

Рис. 1. Проблема присваивания адреса новому узлу в алгоритме DAAM

1.4. Проблемы стандартных алгоритмов построения адресного пространства

В [21] предложено три решения этой проблемы. Первое заключается в использовании центральным координатором центрального реестра адресов (CSAC, Centralized Stateful Address Configuration) для управления всеми адресами сети. Второе решение состоит в идее использования гибридного алгоритма, при котором распределение адресов с использованием метода CSAC происходит только в том случае, когда узел не может получить адрес при помощи стандартного метода DAAM. Третий подход предлагает использовать “блоки адресов” определенного объема, делегируемые маршрутизатору с разрешением дальнейшего управления ими.

Несмотря на то, что данные сценарии тем или иным образом решают проблему распределения адресов новым узлам сети, все они гребуют использования центрального узла, который либо частично, либо полностью участвует в процедуре адресации. Это делает сеть зависимой от данного узла и снижает уровень общей отказоустойчивости сети.

Существует еще один метод решения данной задачи, описанный в [22]. Метод “линейного адресного присваивания” (Linear address assignment, LAA) также подразумевает использование центрального узла для осуществления адресации. Однако также предполагается использование дополнительной таблицы маршрутизации, рассылки служебных сообщений при расчете маршрута и внесения изменений в формат заголовка передаваемых пакетов. Этот подход, в отличие от предыдущих подходов, не использует алгоритм DAAM в своей работе, а полностью заменяет его.

Все подходы, основанные на централизованной архитектуре, после достижения сетью определенного критического размера с большой долей вероятности будут приводить к возникновению длительных задержек между моментом отправки запроса на присоединение до момента получения адреса новым узлом. Такое поведение связано с тем, что за данный период времени кандидату на роль родительского узла будет необходимо осуществить несколько дополнительных процедур: найти и установить связь с центральным узлом, отправить ему запрос, получить и обработать ответ, - на все эти действия требуется время, особенно на процесс маршрутизации запроса к и от коор-

динатора сети, который вполне может находиться на другом краю сети. Накапливаясь, задержки могут привести к срабатыванию таймаута, установленного для процедуры получения адреса в стандарте IEEE 802.15.4, что повлечет за собой остановку процедуры, и узел не получит адрес.

Как мы видим, алгоритм DAAM обеспечивает гарантированное построение адресного пространства WSN. Однако, когда заходит речь об увеличении площади покрытия сети, данный алгоритм перестает отвечать заданным требованиям.

2. Алгоритмы в беспроводных сенсорных сетях

2.1. Общие положения

Как видно из обзора стандартных протоколов построения адресного пространства существует ряд проблем, которые в тех или иных ситуациях становятся препятствием для решения задач, возложенных на сенсорную сеть. Ниже рассмотрен ряд исследований [5-8], которые проводились в последнее время и которые тем или иным способом стараются устранить указанные недостатки, либо же активно полагаются на адресацию в БСС, а именно:

1) Алгоритмы “рандеву” для беспроводных сенсорных сетей и мобильных базовых станций (Rendezvous Algorithms for Wireless Sensor Networks with a Mobile Base Stations).

2) Алгоритм автоматической конфигурации адресного пространства для беспроводной сенсорной сети 6L0WPAN, на основе разделения координаторов по цветовому признаку (IPv6 lightweight stateless address autoconfiguration for 6L0WPAN using color coordinators).

3) Алгоритм динамического выделения адресов для управления и контроля в беспроводных сенсорных сетях (Dynamic Address Allocation for Management and Control in Wireless Sensor Networks).

4) Принцип маршрутизации и адресации без поддержания состояния для беспроводных сенсорных сетей (A Stateless Addressing and Routing Architecture for Sensor Networks).

Учитывая число исследований, приводящихся в данном направлении, задачу получения оптимального алгоритма построения адресного пространства можно считать акту альной.

2.2. Rendezvous Algorithms for Wireless Sensor Networks with a Mobile Base Stations

В работе [5] авторы рассматривают задачу оптимизации сбора информации с узлов беспроводной сенсорной сети, который осуществляется мобильной базовой станцией (МБС). Подобный подход к сбору информации от узлов беспроводной сенсорной сети обещает достаточно заметно экономить на энергопотреблении при передаче данных, так как обмен данными происходит исключительно между МБС и узлом на близком расстоянии [9-11].

В работах [9-10], проведенных на эту тему, было доказано, что наиболее эффективным путем движения МБС для сбора информации является периметр зоны работы сети, но, к сожалению, данный маршрут является неэффективным для узлов сети, так как им требуется передавать информацию до границы сети через несколько хопов. Кроме того, при частом изменении положения мобильных узлов относительно МБС, тратится энергия на поддержание в актуальном состоянии информации о топологии и адресном пространстве сети, как на узлах, так и на МБС.

Однако, главным “узким местом” при рассматриваемом подходе оказываются задержки, которые возникают при получении информации, связанные с низкой скоростью передвижения мобильной станции.

В качестве меры по уменьшению времени задержки получения данных авторы предлагают подход, суть которого состоит в выделении части узлов сети в особый класс устройств, называемый точками “рандеву” (от французского “встреча”). Данный класс устройств должен принимать данные от источников отправителей, накапливать их и передавать мобильной станции в момент, когда она будет проходить в зоне действия точки “рандеву”.

Данный подход совмещает преимущества сбора информации посредством использования МБС и предварительного кеширования данных внутри сети, а также позволяет управлять балансом между желаемым энергопотреблением в рамках сети при сборе данных и задержками при получении информации. Первое позволяет минимизировать траты энергии узлов для передачи информации на большое расстояние до граничного узла, второе позволяет накапливать и передавать информацию большими порциями за один сеанс связи, что тоже экономит энергию, а также минимизирует недостатки маленькой скорости передвижения МБС на большие расстояния. Третьим преимуществом подхода является то, что наличие точек “рандеву” позволяет обычным узлам сети быть мобильными и выходить на связь в строго заданное время, что позволяет минимизировать изменения в сетевой топологии, вызванные их мобильностью, а, следовательно, экономить энергию на перестроение адресного пространства сети.

Общая схема работы алгоритма “рандеву” изображена на рис. 2. Для примера авторы взяли поле размером 500 м2, на котором были расположены узлы беспроводной сенсорной сети. Сбор информации производился МБС, средняя скорость которой составляла 0,5 м/с. При такой скорости для посещения 100 произвольных узлов, расположенных на поле, МБС требуется около двух часов. Если же использовать точки “рандеву”, которые находятся в радиусе 100 м от центра поля, то МБС требуется всего около 20 минут, чтобы посетить их все.

Авторы предложили два варианта алгоритма “рандеву”: с фиксированным и с переменным маршрутом движения МБС. Эффективность каждого из алгоритмов они доказывают как теоретически, так и с помощью проведения симуляций с использованием реального оборудования.

Мобильная базовая станция (МБС) Путь Движения МБС МиШ-Кор путь маршрутизации Точки «Рандеву* Узел-ретранслятор Узел-источник

Рис. 2. Общая схема работы алгоритма “рандеву”

Согласно первому варианту алгоритма точки “рандеву” являются частью минимального дерева Штейнера, которое включает в себя все узлы источники. Этот алгоритм позволяет эффективно накапливать данные в точках "рандеву” и позволяет рассчитать минимальный путь, который должна пройти МБС для сбора данных. Второй вариант алгоритма спроектирован специально для МБС для случаев, когда МБС движется по фиксированному маршруту, например, по дорогам, который невозможно изменить. Алгоритм позволяет найти наиболее эффективные точки соприкосновения маршрута с узлами сети и рекомендует их в качестве точек “рандеву”.

В общем виде задачу, решаемую алгоритмами “рандеву” можно описать следующим образом. Для заданного множества узлов БСС, генерирующих данные, которые необходимо передать МБС за интервал времени £>, рассчитать маршрут движения МБС, проходящий через точки "рандеву”. Узлы “рандеву” кэшируют данные и передают их МБС в момент появления МБС в точке “рандеву” используя передачу данных на близком расстоянии. Общие затраты энергии, необходимые узлам сети для передачи данных от узлов источников до узлов “рандеву” должно быть минимизировано с учетом времени передачи О.

Значение временного интервала £) может быть определено исходя из разных предположений. Рассмотрим случай развертывания диагностического центра в сейсмически опасном районе. Такой центр для проведения точной диагностики ситуации в районе должен получать данные от сейсмодатчиков через строго фиксированные интервалы времени. В данном примере каждый датчик будет передавать данные в точку “рандеву” каждые Юс. Накопленные в точке данные каждые 10 мин будет собирать МБС. Для более детального учета факторов в алгоритм можно ввести параметр перезарядки МБС, но для упрощения расчетов авторы данный параметр исключили из рассмотрения, введя предположение, что для сбора данных используется несколько МБС, осуществляющих непрерывный цикл сбора данных.

Отталкиваясь от крайнего момента времени получения данных, авторы определяют максимальную длину пути, который может пройти МБС для сбора данных за установленный интервал времени как = Ут О, где Ут- средняя скорость движения МБС.

Объем энергии, необходимый для передачи данных от узла источника в точку “рандеву” за несколько скачков (мульти-хоп) рассчитывается как евклидово расстояние между узлом отправителем и узлом получателем. Данное предположение имеет смысл, так как евклидово расстояние между двумя узлами в БСС, в которой узлы расположены на достаточно большой территории, приблизительно пропорционально числу скачков (хопов) между этими узлами [12]. Данный подход также позволяет МБС рассчитывать энергопотребление сети без необходимости иметь информацию о ее топологии. Подобный подход к расчету энергозатрат также используется в ряде работ, например, в [ 13].

Следующее предположение, которое вводят авторы, состоит в том, что накопитель узла «рандеву» в состоянии кешировать весь объем данных, который приходит к нему за интервал времени О. Последним предположением вы-

Рис. 3. Пример работы алгоритма “рандеву” нахождения оптимального пути движения МБС

ступает знание каждого узла и ВМС ее собственной координаты в пространстве относительно других узлов в БСС. Это могут быть либо GPS координаты, либо любые другие механизмы определения положения узла в сети.

Алгоритм “рандеву” нахождения оптимального маршрута движения МБС заключается в следующем: для заданного множества S узлов БСС необходимо найти

1. Маршрут U не длиннее L;

2. Множество деревьев Е )), вершины которых принадлежит U и s £ u,V, так, что сумма \ ^ uv мини-

2. 2 (u,v)e5 '

мальна, где (//,v) - ребро дерева 7] и|т|-его евклидова длина.

Как видно на рис.З МБС посещает три точки «рандеву» (RP - Rendezvous Point): RP1. RP2 (которая в тоже время является и узлом источником) и RP3. При этом все узлы сети можно заключить в два дерева, имеющих своими вершинами RP1 и RP3.

Данная задача очень похожа на задачу коммивояжера (TSP, The Salesman Problem) [14]. В рассматриваемом авторами случае вопрос стоит в существовании такого набора RP, при котором потреблении энергии сетью будет нулевым. Для того чтобы потребление сети было нулевым, все узлы сети должны быть точками "рандеву”, другими словами, МБС должен посетить все точки БСС, расположенные на пути длиной не более L. Такая формулировка уже в точности повторяет задачу коммивояжера.

Для нахождения оптимального пути авторы используют минимальные деревья Штейнера (МДШ) [14]. Идея применения данного алгоритма заключается в том, чтобы найти такое поддерево МДШ, состоящего из узлов источников, что все RP на поддереве могут быть посещены МБС по маршруту не длиннее L при условии минимизации длины оставшегося МДШ. Псевдокод алгоритма приведен в табл.1.

Во втором алгоритме авторы вводят следующие предположения. Маршрут движения МБС Р состоит из непере-секающихся прямых участков р,р/+| таких, что

Р={р,р„,|1</'</?-1| , где Р/Ры не пересекается с PjPh при |f- y|>l.

Алгоритм "рандеву” с фиксированным маршрутом МБС заключается в следующем. Для заданного множества S узлов БСС и маршрута движения МБС

Р = {р,р,+111 < / <п -1) необходимо найти:

1) Маршрут U лежащий на Р не длиннее L.

Таблица 1

Псевдокод алгоритма нахождения оптимального пути МБС

5 - множество узлов БСС.

Д - максимальная длина маршрута МБС.

Q - константа, Q<L.

На входе: £={$,-}, А, (?.

На выходе: список /?, содержащий все ЯР.

1. Найти МДШ Т, которое содержи! все точки из 5. Произвольным образом выбрать узел В как вершину дерева.

2. У=И 2

3. Начать движение по узлам дерева Т. начиная от вершины В, и двигаться пока общая длина ребер пройденного маршрута меньше У. Определить пройденное дерево как 7".

4. р = |г1 “ пересечение между 7" и маршрутом ^---------»Ве Г) •

5. Если А’=/.-Т5Р(/?)>0.

6. У=У+Х/2, перейти к шагу 3.

7. Иначе выход._________________________________________________

2) Множество деревьев {Т)(Ц £,)}, вершины которых принадлежит и и в с о, V, так, что % N минимальна,

А £ (и.УЬьЕ,

(

где (м,у) - ребро дерева г, и |иу| - его евклидова длина.

Алгоритм решения данной задачи приведен в табл.2. Результаты проведенного авторами сравнения алгоритмов показали, что знание положения узлов БСС позволяют с помощью предложенных алгоритмов получить значительную экономию энергии при сборе данных в точках "рандеву”.

Таблица 2

Псевдокод алгоритма нахождения оптимального _______расположения точек «рандеву» на пути движения МБС

.V - множество угчов БСС.

А - максимальная длина маршрута МБС.

Д/. - константа, Д/>о.

Р -маршрут фиксированной длины, состоящий из п участков.

На входе: 8 = {в, | ,1. ДI, Р = {р,р(>| 11 < / < п - 1} .

На выходе: список Я. содержащий все ЯР.

1. Найти множество точек И/ = {IV, 11: /: /T7.lv, = р,,и/т = рп), принадлежащих Р так, что \/ / > 11 \л/1\л/,+1 |= ДЛ и

Р

|=| Р I -1 -1—1 ДА, где Р- длина всего маршрута.

\М\

2. Найти множество точек маршрута, которые находятся ближе всего к узлам источникам:

и = {и, I (и, еР) Л (I и(в, |- 1ТПП)} .

Перегруппировать точки И/ и и вдоль маршрут

Х = {х,,х2,...,х/).

3.Для 1: к: I- 1

a. Начиная с Хк , найти частичный маршрут рк , который по длине равен 1/2. либо включает в себя X,. Определить Хк как подмножество точек А", которые принадлежат маршруту' рк .

b. Найти множество МДШ МДШрк , которое соединяет узлы источники с точками Хк и имеет минимальную общую длину.

4. МДШр = аг§ шш С{МДШрк ) - есть множество МДШ с минимальными общими длинами среди всех других МДШ.

5. Маршруг МБС р и список /? будет состоять из конечных точек МДШр , лежащих на р.

2.3. IPv6 lightweight stateless address autoconfiguration for 6L0WPAN using color coordinators

В [6] авторы затрагивают вопрос адресации в БСС, использующей протокол 6L0WPAN [15]. Данный протокол используется для подключения БСС к обычной IP сети, позволяющий, в том числе, присваивать 1Р адреса непосредственно узлам сети. Так как стандартные алгоритмы построения адресного пространства в БСС потребляют большое количество энергии, а алгоритмы IP сетей в виду размера IP пакета потребляют еще больше энергии [1620], авторы предлагают “облегченный” протокол автоматического присваивания адресов в рамках сети.

Алгоритм использует три узла-координатора, которые присваивают узлам код в соответствии с его геометрическим положением в сети. Каждый узел сети получает три кода в зависимости от расстояния до координаторов в хо-пах, на основе которых генерирует уникальный в рамках сети адрес. Подход, реализованный в алгоритме, изображен на рис.4. Авторы связывают три координаты с составляющими палитры RGB (Red, Green, Blue, красный, зеленый, синий), тем самым вводя адресацию узлов по цвету.

Основными недостатками, которые присущи альтернативным алгоритмам [16-20], являются: необходимость хранения таблиц адресации и маршрутизации, которые занимают место в накопителе и требуют значительных затрат энергии на поддержание информации в актуальном состоянии, и использование центрального объекта управления и хранения информации о топологии сети, который также требует значительных затрат энергии на передачу служебных запросов от и к узлам.

Таким образом, алгоритм, который должен использоваться для получения адреса узлом БСС, по мнению авторов не должен зависеть от центрального координатора и не должен хранить таблиц маршрутизации.

Такие алгоритмы основаны на подходах без поддержания связи с центром, другими словами - децентрализованы. Решая задачу независимости от центрального управляющего узла, в алгоритмах такого типа возникает задача определения уникальности получаемого узлом адреса в рамках БСС.

Рис. 4. Схема работы “цветовой дифференциации адресов"

Авторы рассмотрели алгоритмы такого рода, уже предложенные другими исследователями, например, рассмотренный в [21] алгоритм нахождения дубликатов адресов (DAD - Duplicate Address Detection), но как оказалось, методы решения задачи проверки уникальности адреса в рамках сети практически на нет сводили выигрыш по затратам энергии, полученный от отказа использования таблиц адресации. Не было это исправлено и в других алгоритмах [22-24].

В подходе, предложенном авторами, используется комбинация из глобального идентификатора сети (NID -Network ID) и уникального адреса узла (UIP - Unique IP). Пара NID и UIP составляют глобально уникальный IPv6 адрес узла БСС.

Для уменьшения передаваемых объемов служебного трафика и, соответственно, снижения энергозатрат при внутрисетевых взаимодействиях используется только UIP, имеющий длину 16 бит. Для взаимодействия с внешними устройствами используется полный IPv6 адрес узла. Общая схема загрузки узла, использующего алгоритм, предложенный авторами, изображена на рис.5.

Работа алгоритма основана на цветовой идентификации местоположения узла в рамках сети относительно цветных координаторов, которые обозначаются в рамках сети как Красный, Зеленый и Синий. Каждый узел в сети измеряет расстояние до каждого из координаторов и генерирует случайное число А. Финальный адрес устройства будет выглядеть как (R.G.B.A), рис.4. Так как тройку (R.G.B) могут получить несколько устройств, находящихся на одинаковом расстоянии от координаторов, то случайная величина А позволяет получить уникальный адрес в рамках одной “монохромной” зоны. Таким образом, чтобы получить уникальный в рамках сети адрес, узлу необходимо проверить его уникальность только в рамках своей “монохромной” зоны, которая, как правило, по размеру меньше одного хопа. На таком расстоянии механизм DAD уже не требует больших энергозатрат и может быть эффективно использован.

Вероятность возникновения конфликта адресов, при использовании предложенного авторами метода, напрямую зависит от плотности узлов БСС в монохромной зоне, в которой находится узел, но при этом не зависит от общего количества узлов в БСС.

После генерации адреса каждый узел должен выполнить DAD процедуру для определения уникальности полученного адреса. Для этого узел отправляет в рамках своей монохромной зоны широковещательное сообщение с указанием адреса, который он себе выбрал. Если в течение установленного времени ответа от соседних узлов не поступает, адрес фиксируется. Если же узел получает ответ о существовании подобного адреса в рамках зоны, адрес генерируется снова с новым случайным значением А.

Для предотвращения ситуации вхождения в бесконечный цикл DAD авторы предлагают использовать следующий метод. При многократном возникновении конфликга адресов в рамках одной монохромной зоны, предлагается расширить зону проверки и включить в процедуру генерации адреса соседние с узлом монохромные зоны. Такой подход позволяет снизить вероятность получения существующего адреса, увеличив диапазон возможных адресов. В случае если и там не окажется свободных мест, вступает ограничение на число DAD процедур, которое определяется предустановленными настройками на узле и зависит от энергоресурса устройства.

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

Подводя итог, можно выделить как сильные, так и слабые стороны данного алгоритма. К плюсам можно отнести его независимость от координаторов сети, высокую энергоэффективность при получении узлом адреса. Среди минусов данного алгоритма можно отметить высокую зависимость коэффициента эффективности алгоритма от плотности устройств в сети. По данным самих авторов при числе узлов более 15 на I монохромную зону число повторных регенераций адресов по процедуре DAD составляет от 20 до 25, что может привести к значительным расходам энергии.

Можно сделать вывод, что метод будет наиболее эффективен в сетях со статическим расположением узлов и с небольшой плотностью их расположения в рамках БСС. Сами авторы применяли свой алгоритм для построения адресного пространства в БСС контроля состояния пациентов в клиниках [25], в системе контроля за парковкой [26], в системе определения источника звука [27], а также в системе мониторинга за БСС [28].

2.4. Dynamic Address Allocation for Management and Control in Wireless Sensor Networks

Авторы данного метода в своей работе [7] рассматривают проблему, аналогичную той, которая рассматривалась в работе [6], а именно как избежать выделения дубликата адреса в сети, построение адресного пространства

которой происходит с помощью децентрализованных алгоритмов построения адресного пространства.

Задача, которую решают авторы метода, несколько выходит за рамки просто построения адресного пространства, она связана с управлением узлами в рамках сети, проведением технического обслуживания узлов, в т.ч. обновления микропрограмм узлов и изменения алгоритмов их работы.

Алгоритм динамического выделения адресов для управления и контроля в беспроводных сенсорных сетях (Dynamic Address Allocation for Management and Control in Wireless Sensor Networks), предложенный авторами, является децентрализованным алгоритмом построения адресного пространства. Данный метод был специально разработан для проведения технических работ в БСС очень большого размера, т.е. таких сетях, в рамках которых возможно построить локальные адресные пространства на базе группы узлов без необходимости получать глобально-уникальные адреса. Несмотря на этот факт, авторы утверждают, что метод применим и для более широкого спектра задач, помимо профилактических работ над устройствами БСС.

Как заявляют сами авторы, эффективность их алгоритма зависит от назначения той БСС, в рамках которой планируется использовать данный алгоритм. Также авторы выделяют несколько разновидностей БСС по цели назначения: это сеть, узлам которой необходимо наличие глобально-уникального адреса, и сеть, узлам которой наличие глобально-уникального адреса не обязательно.

Ко второй группе сетей авторы относят сети, решающие такие задачи, как измерение каких-либо параметров на заданной территории. Данные измерений в такой сети должны быть отправлены в центр обработки данных как единый набор, привязанный к территории, но не к конкретному сенсору. Для сетей такого типа важно быстрое развертывание и удаление узлов без изменения программы оставшихся узлов. В случае, когда глобальноуникальные адреса для узлов все же необходимы, значительные расходы энергии тратятся на выяснение уникальности адреса.

Предложенные децентрализованные алгоритмы, предложенные в других работах [29-31] позволяют на основе построенных адресных пространств организовать передачу данных в рамках БСС, но для проведения операций управления и обновления ПО такие алгоритмы не подходят, так как не позволяют обратиться к конкретному узлу, так как идентифицируют сразу целый регион устройств.

Для решения задачи управления узлами авторы предлагают свой собственный алгоритм построения адресного пространства. За основу авторы взяли два протокола: DIICP (DHCP Dynamic Host Configuration Protocol) [32] и PDAD (PDAD - Passive Duplicate Address Detection) [33].

Первый - клиент-серверный сетевой протокол, широко использующийся за пределами БСС. DHCP поддерживает

3 механизма присвоения адресов: автоматический, управляемый оператором и динамический. В первом случае клиент получает постоянный адрес на весь период своей работы, во втором случае такой адрес клиенту назначает оператор. В третьем случае - IP адрес присваивается кли-

енту временно. Третий вариант является наиболее подходящим для использования в БСС, так как для управления устройствами сети не нужно поддерживать постоянное соединение с узлами - достаточно небольших временных интервалов обслуживания в течение которых важно иметь связь непосредственно с устройством.

Однако основная идея протокола заключается в связи MAC адреса устройства и его IP адреса, поэтому применение протокола в чистом виде в БСС является крайне неэффективным, так как придется поддерживать для одного устройства сразу два адреса.

Второй протокол был специально разработан для использования в БСС. Фактически, не являясь протоколом построения адресного пространства, PDAD позволяет определять дубликаты адресов в сети. Главной целью при его разработке была направленность на БСС с большим числом мобильных узлов. Основной идеей в работе алгоритма является схема, по которой на первом шаге каждый узел выбирает себе произвольный адрес. При этом не требуется центрального координатора или сервера. На втором шаге узел запускает процедуру проверки уникальности адреса по алгоритму PDAD, суть которого заключается в пассивном наблюдении за сетевым трафиком. Наблюдая за локальной таблицей маршрутизации, алгоритм обеспечивает локальную уникальность адреса узла.

Предложенный авторами алгоритм основан на двух рассмотренных выше протоколах. В предложенном алгоритме процессом построения адресного пространства управляет выделенный сервер, который назначает адреса узлам, обновляет их и ведет учет всех операций. Это поведение схоже с протоколом DHCP за исключением того, что не идет привязки адреса к MAC адресу устройства или любому другому идентификатору беспроводного узла. Из-за этой особенности требуется использование второй части алгоритма, связанной с процедурой DAD.

Предложенный авторами сценарий позволяет присваивать адреса в БСС с мобильными узлами, для которых вероятность выхода из строя для каждого из узлов авторы определяют больше нуля. Для того чтобы избежать бесконечного цикла присваивания адресов авторы вводят понятие “раунда” адресации. Каждый узел по истечению срока раунда должен получить новый адрес. Это делается для того, чтобы отключившиеся узлы или узлы, работа с которыми была завершена, не занимали адресное пространство, тем самым усложняя процедуру DAD. Общая схема алгоритма изображена на рис.6.

На первом шаге алгоритма управляющий сервер пока еще не может работать непосредственно с каждым узлом, так как, как это было оговорено выше, проведение обслуживания узлов может проходить в сети, уникальность адреса каждого из узлов в которой не обязательна (рис. 6,а). Таким образом, отправка юникаст запросов узлу от сервера на этом этапе невозможно (в отличие от DHCP). Но, возможна отправка широковещательных сообщений, которые примут все узлы в радиусе действия управляющего сервера и начнут процедуру получения адреса. После получения адреса сервер сможет управлять каждым из узлов по отдельности (рис. 6,6).

Каждый узел после получения широковещательного сообщения с идентификатором нового раунда инициирует процедуру получения нового адреса (рис. 6,в). Новый адрес устройство генерирует случайным образом в диапазоне [0,2і6]- Этот адрес отправляется серверу, который запускает процедуру DAD для проверки уникальности адреса. Таким образом, применение данного алгоритма позволяет снизить нагрузку на отдельные узлы, перенеся все ресурсоемкие вычисления на управляющий сервер.

Для устранения ситуаций, когда часть узлов не получила сообщения от сервера и для устранения дублирования адресов, сервер может в любой момент на первом шаге повторить запрос на присваивание адресов. Такая процедура называется “сабраунд”. В рамках каждого сабра-унда каждый узел будет генерировать уникальный адрес, пока сервер не зафиксирует его, отправив узлу сообщение

о фиксировании адреса.

Авторы рассматривают три ситуации, которые могут привести к появлению в сети одинаковых адресов. Первая возможна тогда, когда несколько узлов сгенерировали одинаковые адреса в рамках одного и того же сабраунда. Вероятность этого события достаточно мала —

^возникновения дубликата ~ 1 — Э|/((Э —Л)!Э ), К тому ЖЄ С каждым новым сабраундом она уменьшается; здесь п - число соседних узлов, а - число доступных адресов.

Вторая ситуация возможна тогда, когда одинаковые адреса появляются в сети в рамках разных сабраундов, т.е. тогда, когда узел сгенерировал адрес, который уже зафиксирован на сервере. В этом случае сервер отправляет команду узлам, выбравшим дубликат, заново сгенерировать адрес, т.е. отправляет их на еще один сабраунд.

Третья ситуация возможна в случае, когда в рамках сети два или более серверов производят процедуру построения сети и выбрали одинаковые идентификаторы раундов, которые используются для идентификации узлов в рамках первого этапа их подключения к серверу. Такие ситуации алгоритм не обрабатывает. Авторы рассчитывают на малую вероятность такого события, а также предлагают не допускать работы нескольких управляющих серверов в смежных секторах сети.

А©  © © © © ©  © ^\© Б©  © •О: Q Кто ЦКЬ? /0v Q Q *©  © © -© ©© ©"«Г л ©- © © л ^ © ©

© Сенсорный узел Мобильный робот г©  © © © © ©  ©^© А Обработка © 0 д©  © © ©  Перепрограммирование

Рис. 6. Сценарий использования алгоритма

Присвоив адреса всем соседним узлам (рис. 6,г), сервер рассылает команды управления уже непосредственно каждому из узлов (рис. 6,д). Часть узлов может быть отключена, часть перепрограммирована, а для части может быть изменен алгоритм работы управляющей программы.

Таким образом, в [7] предлагается энергоэффективная адресная схема, использующая преимущества алгоритмов DHCP и PDAD. Алгоритм хорошо зарекомендовал себя в задачах управления сети. Возможно применения алгоритма и для более широкого круга задач. Из минусов можно отметить завязку на генератор случайных чисел, который при большом значении узлов в заданном районе работы сервера может привести к появлению большого числа дубликатов, что неизбежно повышает потребление энергии на новых сабраундах получения адреса. Вторым минусом можно отметить отсутствие защиты от ситуаций с одинаковыми идентификаторами раундов разных серверов в рамках одной БСС.

2.5. TreeCast: A Stateless Addressing and Routing Architecture for Sensor Networks

Авторы рассматриваемого в данном разделе подхода в своей работе [8] пытаются решить общую для всех БСС проблему минимизации энергопотребления при работе узлов. В рамках своего исследования они предложили децентрализованный алгоритм под названием TreeCast.

Суть метода заключается в построении множества несвязных деревьев, которые географически связаны корнями с каналом передачи данных. Использование таких деревьев позволяет маршрутизировать сообщения между узлами БСС без необходимости использования каких-либо таблиц маршрутизации в рамках сети. Определение адреса для каждого из узлов происходит глобально в рамках зоны, в которой он находится. Зона сети определяется граничным узлом (sink node), который должен быть значительно мощнее и функциональнее остальных узлов.

Построение адресного пространства начинается с граничного узла, который имеет адрес 0. Вычисление адресов других узлов зависит от расстояния от них до граничного узла. Процесс присвоения адресов узлам схож с [34] за исключением некоторых моментов, а именно возможности менять родительский узел в алгоритме [8] и более обобщенный характер построенного адресного пространства в рамках БСС. Примером дерева, построенного в рамках моделирования данного алгоритма, может быть дерево, изображенное на рис. 7.

Так как алгоритмы очень схожи, то и выводы по их преимуществам и недостаткам будут практически одинаковыми.

Несмотря на все достоинства алгоритмов возможно возникновение ситуации, когда кандидат на роль родительского узла не сможет найти свободный адрес у своих соседних узлов. В этом случае новый узел не получит адрес и не попадет в сеть. Авторы алгоритма в [34] вводят ограничение на глубину поиска свободного адреса в один хоп от узла кандидата на роль родительского узла. Данное ограничение объясняется тем, что при увеличении глубины поиска увеличивается задержка передачи сообщений между

• v V '

: \.'\Л jf'J/-

• 'Л' J A f t'

'i I Д j/.

- о

vK/ ft 7

<X у r /k

, n v N Z--' '

-^Лк-ЬЖ^

й>'НЧ-/  - .

Рис. 7. Дерево адресного пространства, построенного по алгоритму [34]

узлами, что может привести к превышению таймаута ожидания ответа на запрос присоединения на новом узле. При этом время поиска адреса у соседних узлов в радиусе одного хопа не превышает 3 мс при определенном в спецификации протокола ZigBee таймауте в 983 мс. Таким образом, можно предположить, что увеличение дистанции поиска кандидата на роль родительского узла не привело бы к деградации показателей сети, но зато увеличило бы вероятность подключения большего числа узлов к сети.

Заключение

В статье были рассмотрены основные задачи, решение которых на данный момент является актуальным в рамках изучения работы беспроводных сенсорных сетей. Одной из таких задач является нахождение оптимального алгоритма построения адресного пространства беспроводной сенсорной сети. Был выполнен обзор основных понятий. Приведена классификация сенсорных сетей по типу выполняемых задач. Проведен обзор актуальных исследований по модернизации стандартных алгоритмов построения адресного пространства. Рассмотрены плюсы и минусы предложенных решений, проведено их сравнение со стандартными алгоритмами построения адресного пространства. Сделаны выводы об актуальности проблемы.

Литература

1 Сергиевский М. WSN // Компьютер пресс. - 2007. http://www.compress.ru/article.aspx?id= 17950&iid=831.

2 http://www.tinyos.net.

3 http://www.zigbee.org.

4 http://standards.ieee.org/about/get/802/802.15.html.

5 Guoliang X., Tian W., Weijia J., Minming L. Rendezvous Design Algorithms for Wireless Sensor Networks with a Mobile Base Station // MobiHoc, Hong Kong. - 2011.

6 Shin H., Talipov E., Cha H. IPv6 Lightweight Stateless Address Autoconfiguration for 6L0WPAN Using Color Coordinators // 2009 IEEE International Conference 011 Pervasive Computing and Communications. - March, 2009.

7 Yao Z., Dressier F. Dynamic Address Allocation for Management and Control in Wireless Sensor Networks. // 40th Annual Hawaii International Conference on System Sciences (HICSS'07). -January, 2007.

8 PalChaudhuri S., Du S., Saha A.K., Johnson D.B. A

Stateless Addressing and Routing Architecture for Sensor Networks // 18th International Parallel and Distributed Processing Symposium (IPDPS'04) - Workshop 12, - April, 2004.

9 Luo J., Hubaux. J.-P. Joint mobility and routing for lifetime elongation in wireless sensor networks // INFOCOM. - 2005.

10 Gandham S. R., Dawande M., Prakash R., Venkatesan

S. Energy efficient schemes for wireless sensor networks with multiple mobile base stations // Globecom. - 2003.

11 Wang Z. M„ Basagni S., Melachrinoudis E., Petrioli C. Exploiting sink mobility for maximizing sensor networks lifetime // HICSS. - 2005.

12 Niculescu D., Nath B. Dv based positioning in ad hoc networks // Journal of Telecommunication Systems. - 2003. - V.22, No. I -4.

13 Kim H. S., Abdelzaher T. F., Kwon W. H. Dynamic delay-constrained minimum-energy dissemination in wireless sensor networks. // Embedded Computing Sys. - 2005. - Vol.4, No.3.

14 Arora S. Polynomial time approximation schemes for Euclidean traveling salesman and other geometric problems // J. ACM. -1998. -Vol.45, No.5.

15 Culler D. E., Hui J. 6L0WPAN Tutorial. IP on IEEE 802.15.4 Low-Power Wireless Networks // http://www.archrock.com/ dow'nloads/resources/6LoWPAN-tutorial.pdf.

16 Droms R. Dynamic Host Configuration Protocol // Network Working Group. - RFC 2131. - March, 1997.

17 Nesargi S., Prakash R. MANET conf: Configuration of Hosts in a Mobile Ad Hoc Network. // Proc. IEEE INFOCOM. -June, 2002.

18 Boleng J. Efficient network layer addressing for mobile ad hoc networks // Proc. of ICWN’02. - Las Vegas, USA. - June, 2002. -P.271-277.

19 Zhou H„ Ni L. M., Mutka M.W. Prophet Address Allocation for Large Scale Manets // Proc. IEEE INFOCOM 2003. - San Francisco, CA. - Mar. 2003.

20 Mohsin M„ Prakash R. IP Address Assignment in a Mobile Ad Hoc Network // Proc. IEEE MILCOM 2002. - Anaheim, CA. -Oct. 2002.

21 Giines M., Reibel J. An IP Address Configuration Algorithm for Zeroconf Mobile Multihop Ad Hoc Networks // Proc. Int. Wksp. Broadband Wireless Ad Hoc Networks and Services. - Sophia Antipolis, France. - Sept. 2002.

22 Perkins C., Malinen J.T., Wakikawa R., Belding-Royer E.M., Sun Y. IP address autoconfiguration for ad-hoc networks // IETF Draft.-2001.

23 Vaidya N.H. Weak Duplicate Address Detection in Mobile Ad Hoc Networks // Proc. of ACM MobiHoc, 2002. - Lausanne, Switzerland. - June, 2002. - P.206-216.

24 Weniger K. PACMAN: Passive Autoconfiguration for Mobile Ad Hoc Networks // Special issue, IEEE JSAC, Wireless Ad Hoc Networks. - Vol.23. - Mar. 2005. - P.507-19.

25 Choi H., Choi S., Cha H. Structural Health Monitoring System based on Strain Gauge Enabled Wireless Sensor Nodes // INSS: International Conference on Networked Sensing Systems. -Kanazawa, Japan. - June 17-19, 2008

26 Na K„ Kim Y., Cha H. Acoustic Sensor Network-based Parking Lot Surveillance System // 6th European Conference on Wireless Sensor Networks (EWSN 2009). - Cork, Ireland. - February, 2009.

27 You Y., Cha H. Scalable and Low-Cost Acoustic Source Localization for Wireless Sensor Networks // The 3rd International Conference on Ubiquitous Intelligence and Computing (UIC) 2006. -Wuhan and Three Gorges, China. - September, 2006.

28 Jung I., Cha H. RMTool: Component-Based Network Management System for Wireless Sensor Networks // 2007 IEEE Consumer Communications and Networking Conference. - Las Vegas, USA. - January, 2007.

29 Sun Y„ Belding-Royer E.M. A study of dynamic addressing techniques in mobile ad hoc networks. // Wireless Communications and Mobile Computing. - April 2004. — Vol.4, No.3. - P.315 - 329.

30 Weniger K. PACMAN: Passive Autoconfiguration for Mobile Ad-hoc Neworks // IEEE Journal on SAC. - March, 2005.

31 Weniger K., Zitterbart M. Address Autoconfiguration in Mobile Ad Hoc Networks: Current Approaches and Future Directions // IEEE Network Magazine: Special issue on Adhoc networking: data communications & topology control. - July, 2004.

32 Droms R. Stateless Dynamic Host Configuration Protocol (DHCP) Service for IPv6 // RFC 3736. - April, 2004.

33 Weniger K. Passive Duplicate Address Detection in Mobile Ad hoc Networks // IEEE Wireless Communications and Networking Conference. - New Orleans, USA. - March, 2004.

34 Park S., Ryu J.H., Joo S., Kim H.S. Distributed Borrowing Addressing Scheme for ZigBee/IEEE 802.15.4 Wireless Sensor Networks // ETRI Journal. - 2009. - Vol.31, No.5. - P.527-528.

Survey of methods lor WSN address space construction

Efimushkin VA., ef@zniis.ru,

Shuvaev Y.V., shuvaev@lanit.ru.

Keywords: wireless sensor network, WSN, address space, ZigBee, 6LoWPAN, SAAM, DAAM, Rendezvous, IPv6, DAAMC, SARA.