УДК 681.3
А. М. Бершадский, Л. С. Курилов, А. Г. Финогеев
ОБЗОР МЕТОДОВ МАРШРУТИЗАЦИИ В БЕСПРОВОДНЫХ СЕНСОРНЫХ СЕТЯХ
Аннотация. Статья является обзором современных методов маршрутизации в беспроводных сенсорных сетях. Рассматриваются основные принципы маршрутизации и дается начальное представление о методах маршрутизации в беспроводных сенсорных сетях на примере десяти характерных и известных алгоритмов: SPIN, DD, RR, GBR, GPSR, MCF, LEACH, TEEN, GAF, TTDD. Приводится краткое описание с библиографической ссылкой на первоисточник, описание сопровождается поясняющими иллюстрациями. Указывается специфика и особые условия применения каждого метода, имеющиеся модификации и различия между ними.
Ключевые слова: беспроводные сенсорные сети, маршрутизация, доставка данных, ретрансляция сообщений, балансировка нагрузки трафика, минимизация энергопотребления, сенсорные узлы.
Abstract. The article presents a short overview of routing methods used in the wireless sensor networks (WSN). The authors consider the main principles of routing and present the routing methods in WSN by means of describing the most popular algorithms such as SPIN, DD, RR, GBR, GPSR, MCF, LEACH, TEEN, GAF and TTDD. A brief description of each method is accompanied by picture and bibliographic reference. Additionally the researchers explain application-oriented and other specifics of the methods and distinguish some modifications of the methods.
Key words: wireless sensor networks, routing, data transmission, message relaying, traffic load balancing, optimization of power consumption, sensor nodes.
Введение
Исследования в области беспроводных сенсорных сетей (БСС) на сегодня являются одними из самых приоритетных и востребованных в мире. Несмотря на обилие публикаций в зарубежных изданиях, в русскоязычной научной литературе до сих пор имеется значительный пробел по этой тематике. Данная статья является попыткой дать первоначальное представление о методах и принципах маршрутизации в БСС на примере десяти наиболее характерных и известных алгоритмов SPIN, DD, RR, GBR, GPSR, MCF, LEACH, TEEN, GAF, TTDD, для которых приводится краткое описание с библиографической ссылкой на источник и поясняющие иллюстрации.
1. SPIN (Sensor Protocols for Information via Negotiation)
SPIN - семейство протоколов, обеспечивающее доставку данных на основе процедуры «переговоров» [1]. Относится к методам маршрутизации с одноранговыми узлами без гарантированной доставки сообщений, возможен учет расхода энергии узлов. Хорошо подходит для БСС с динамической топологией с мобильными узлами.
Используется адаптивный вариант простой техники лавинного распространения («flooding»), значительно повышающий эффективность маршрутизации по сравнению с прототипом. Сообщение от каждого узла распростра-
няется по всей сети, что позволяет довольно простым способом получить информацию с любого узла по запросу с немедленной доставкой.
Механизм взаимодействия базируется на трех типах сообщений: ADV -для информирования о наличии новых данных в узле, содержит их описание в виде так называемых «метаданных»; REQ - для запроса данных; DATA -для пересылки непосредственно самих данных. Суть алгоритма заключается в следующем. При получении новых данных узел проводит предварительные «переговоры» с соседними узлами, посылая сообщение ADV и ожидая от них ответа REQ. Получив запрос на передачу (REQ), узел транслирует реальные данные. Каждый сосед, получив новые данные, аналогичным образом ведет переговоры соответственно со своими соседями и рассылает эти данные тем из них, которые в этих данных заинтересованы, т.е. которые их еще не получили и имеют возможность транслировать их далее по сети (рис. 1).
Метаданные служат своего рода идентификатором реальных данных, основываясь на которых, узел имеет возможность избежать повторной передачи одних и тех же данных (например, самому источнику). Таким образом, снижается избыточность сетевого трафика и уменьшается бесполезный расход энергии по сравнению с классическим методом лавинной маршрутизации.
В семейство входят основные протоколы SPIN-1, SPIN-2, а также ряд других протоколов: SPIN-BC (для широковещательной рассылки), SPIN-PP (для взаимодействия типа «точка-точка»), SPIN-EC (с учетом энергопотребления узлов) и т. д.
2. DD (Directed Diffusion)
Основные характеристики метода DD: ориентирован на централизованную модель сбора данных (data-centric) с доставкой по запросу (query-driven); взаимодействие узлов локальное; использует высокоуровневые средства именования данных [2].
Централизованная модель подразумевает наличие в сети центрального узла сбора (sink) и, соответственно, маршрутизацию от множества источников данных к одному приемнику. Процесс маршрутизации начинается с рассылки центральным узлом сообщения запроса (interest). Так как данные в узле представлены в виде пар «атрибут-значение», то запрос указывает на интересующие центральный узел параметры и их возможные значения (или диапазон значений). Каждый узел поддерживает локальный кэш запросов, в котором хранятся записи о состоянии активных запросов.
Для каждого запроса в кэше хранятся дополнительные данные, такие как временная метка (timestamp), т.е. значение таймера, фиксирующее момент получения запроса; градиенты (gradient) на каждый соседний узел с указанием скорости обмена (data rate), длительности существования по таймеру (duration) и времени жизни (expiresAt). Градиент фактически указывает возможное направление маршрутизации и может иметь свой вес, используемый в зависимости от конкретных требований по маршрутизации. Описанная структура кэша запросов является основой для оптимальной маршрутизации.
Алгоритм устанавливает определенные правила, направленные на поддержание содержимого кэша в актуальном состоянии в процессе обработки получаемых запросов. Запросы с «интересом» периодически повторяются центральным узлом с целью обеспечения надежности доставки и работоспособности общей схемы маршрутизации при отказах в сети.
i ADV
9“9
о—о
(>ЧЗ
2 REQ
045
3 DATA
9“9і
о—о-
0—0
4 ADV
5 REQ
6 DATA
7 ADV
S REQ
9 DATA
iO ADV
ii REQ
12 DATA
Рис. 1. Иллюстрация метода SPIN
При возникновении событий в узле, позволяющих интерпретировать изменение в сенсорных данных как удовлетворение запроса, начинает осуществляться обратная маршрутизация (от источника к центру) сообщений с запрошенными данными, которые могут поступать с определенной частотой в центр в течение всего времени существования запроса. Для обратной трансля-
ции используются сведения об уже установленных градиентах, показывающие для каждого конкретного узла оптимальное направление передачи. В итоге для потока сообщений (ответов на запрос) выбирается наиболее подходящий с точки зрения заданных критериев маршрутизации путь (например, кратчайший или с минимизацией энергопотребления) и режим трансляции (рис. 2).
Рис. 2. Иллюстрация метода DD 3. RR (Rumor Routing)
RR является вариацией предыдущего алгоритма [3]. Оптимизирует схему маршрутизации для тех сетей, в которых число событий невелико,
а количество запросов огромно. Каждый узел ведет свою таблицу событий. При возникновении событий сведения о них заносятся в таблицу и генерируются специальные сообщения, названные «агентами» (agent), которые содержат информацию о произошедшем локальном событии узла. Сообщения данного типа отправляются в сеть, по которой «путешествуют», распространяя информацию о произошедших событиях другим узлам. При получении таких сообщений удаленные узлы пополняют свою таблицу событий и передают агента соседним узлам до тех пор, пока он не исчерпает свое время жизни (TTL - TimeToLive).
В тот момент, когда центральным узлом распространяется запрос на данные, уже полученные вследствие произошедшего события, те узлы, через которые направляется запрос, просматривают свои таблицы событий и в случае обнаружения соответствия запросу информируют центр о результате. Таким образом, информация о событии доходит до инициатора запроса еще до того, как запрос дойдет до требуемого источника данных. В случае сохранения в таблице событий полной цепочки промежуточных узлов, пройденных агентом (т.е. всего пути) до данного узла, значительно облегчается задача определения расположения в сети исходного узла - источника события.
4. GBR (Gradient-based routing)
Еще один вариант алгоритма Directed Diffusion [4]. Данная модификация имеет следующие особенности. В процессе распространения запроса из центра по всей сети учитывается количество ретрансляций от узла к узлу (hops). В каждом узле вычисляется параметр, названный «высотой» узла (height), который указывает на минимально возможное число звеньев (hops) в цепочке маршрута от данного узла к центральному. Градиентом для каждого из соседних направлений в узле обозначается разность между высотой исходного узла и высотой его соседа. Для маршрутизации выбирается направление с наибольшим значением градиента. В тех случаях, когда градиенты для разных направлений равны, выбор осуществляется случайным образом.
Приведенная схема маршрутизации может дополняться правилами, обеспечивающими учет экономии энергии. Так, при падении текущего уровня запаса энергии в узле ниже определенного значения узел может самостоятельно автоматически увеличить свою «высоту» с целью уменьшения нагрузки со стороны других узлов. Соседние узлы «видят», что использовать для передачи сообщений данный узел становится все более невыгодно, и обходят его направление, оказывая предпочтение более оптимальным направлениям. Такой механизм обеспечивает хорошую адаптивность алгоритма в плане балансировки энергонагрузки.
Кроме того, алгоритм может обеспечивать балансировку трафиковой нагрузки посредством анализа уже использующихся маршрутов для доставки потоков сообщений о событиях. Соответственно для новых потоков составляется маршрут таким образом, чтобы в него входили только те узлы, которые не участвуют в доставке других потоков.
5. GPSR (Greedy Perimeter Stateless Routing)
GPSR относится к классу алгоритмов, использующих географическую информацию о местоположении узла в пространстве [5]. Каждый узел знает о расположении самого себя и ближайших соседей. Пересылка сообщения
осуществляется узлом тому соседу, который находится ближе всего к адресату (так называемый «жадный» метод). Для обхода зон отсутствия связи («holes», «dead-ends»), образовавшихся, например, при отказе узлов, применяется маршрутизация по периметру, когда выбираются по правилу «правой руки» узлы, находящиеся дальше от узла-адресата, чем исходный узел (рис. З). В целях контроля топологии алгоритм требует построения планарного графа БСС. Эффективность энергопотребления узлов не учитывается.
6. MCF (Minimum Cost Forwarding)
Алгоритм MCF [6] исходит из допущения, что направление маршрутизации всегда известно, например, от узла-источника к центральному узлу сбора данных (базовой станции). Поэтому нет необходимости использовать для маршрутизации адресную схему с уникальной идентификацией каждого узла. Вместо идентификатора узел хранит параметр наименьшей цены (least cost), который оценивает минимальное расстояние от данного узла до центрального в заданной метрике. Цена доставки может быть определена в терминах энергопотребления, количества ретрансляций (hops), единиц линейного расстояния и т.д. При получении сообщения каждый узел осуществляет его ретрансляцию (перенаправляет соседним узлам) только в том случае, если он находится на маршруте с минимальной ценой. Такой маршрут включает все те промежуточные узлы от источника к центру, в которых выполняется условие: сумма накопленной уже расходованной цены для доставки сообщения в узел с наименьшей ценой узла должна быть эквивалентна наименьшей цене источника.
До начала непосредственной маршрутизации требуется проведение предварительного этапа по вычислению в каждом узле параметра наименьшей цены (рис. 4). Первоначально центральный узел инициализирует свой параметр нулевым значением, а все остальные узлы - значением «бесконечность». Затем центральный узел передает значение своего параметра всем соседним узлам. Каждый из соседей получает это значение, корректирует его с учетом возросшей цены доставки для данного направления (например, если параметр обозначает число hops, то значение увеличивается на единицу) и сравнивает со своим хранящимся параметром. Новое (полученное) значение заменяет старое (хранящееся) только в том случае, если оно меньше старого. Повторная ретрансляция полученного сообщения соседним узлам выполняется только тогда, когда происходит обновление параметра.
№ 1 (21), 2012 Технические науки. Информатика, вычислительная техника
(О + 3) = 3
+i
х. (1+2)=3
+1 (з)
(2 + 3) = 5\ +1
Г 2 1 +1
-----------( 1 )
Рис. 4. Иллюстрация метода MCF
7. LEACH (Low Energy Adaptive Clustering Hierarchy)
LEACH относится к классу иерархических методов маршрутизации с балансировкой энергетической нагрузки [7]. Вводится следующая модель взаимодействия. Близлежащие узлы, находящиеся в одной зоне радиодоступа, объединяются в отдельную коммуникационную группу - кластер. Кластер состоит из обычных узлов низшего ранга (Cluster Members - CM) и одного узла высшего ранга (Cluster Head - CH), выполняющего функции маршрутизации для всех остальных узлов кластера. Множество главных узлов (CH) образуют основу коммуникационной инфраструктуры сети. Взаимодействие внутри кластера происходит непосредственно между обычными узлами и главой кластера, далее передачу сообщений узлам других кластеров на себя берут главы кластеров (рис. 5). Глава кластера выбирается случайным образом и периодически сменяется таким образом, чтобы равномерно распределить энергетическую нагрузку по всем узлам кластера, поскольку функции маршрутизации, возложенные на главу кластера, являются причиной интенсивного расхода им энергии на ретрансляцию сообщений от всех узлов кластера.
8. TEEN (Threshold sensitive Energy Efficient Sensor Network)
TEEN базируется на методике кластеризации LEACH, также имеет иерархическую структуру на основе кластерной организации [8]. Алгоритм оперирует параметрами порога измеряемых значений. Сенсорные узлы не занимаются постоянным сбором данных и отправкой их в центральный узел. Вместо этого они контролируют изменение измеряемой величины. В том случае, когда она выходит за пределы пороговых значений, направляется соответствующее сообщение об этом в центральный узел. Такой подход значительно снижает коммуникационную нагрузку на сеть (и соответственно энергетические затраты) и обеспечивает более гибкую обработку информации. Модифицированная версия данного протокола, названная APTEEN (Adaptive Periodic), добавляет более гибкую логику, позволяя передавать данные не только при выходе измеряемых величин за пределы порогов, но также с определенной частотой через заданные промежутки времени.
9. GAF (Geographic Adaptive Fidelity)
GAF также основывается на кластерном разбиении сети, использует информацию о пространственном расположении узлов [9]. Кроме того, алгоритм позволяет сокращать затраты энергопотребления сети за счет возможности временного отключения узлов (перехода в неактивный режим «сна»).
Вся территория, покрываемая БСС, разбивается на фиксированные зоны, которые формируют так называемую «виртуальную сетку» (virtual grid). Эти зоны ассоциируются с кластером, в который входят узлы, находящиеся в пределах радиодоступа друг к другу и узлам соседних зон (рис. 6). Внутри кластера путем голосования происходят выборы узла-«лидера», отвечающего за поддержание связанности сети и маршрутизацию трафика в условиях, когда все остальные узлы деактивированы и находятся в «спящем» режиме. Он также выполняет обязанности по мониторингу состояния узлов. Таким образом, устраняется избыточность ретранслирующих узлов в сети и минимизируется расход энергии. Имеется версия алгоритма для стационарных узлов и адаптированная версия для мобильных узлов (когда топология сети может со временем динамически изменяться).
10. TTDD (Two-Tier Data Dissemination)
Представляет двухзвенный механизм доставки данных в БСС [10]. Для работы алгоритма требуется построить сетку (grid) звеньев. Модель взаимодействия предполагает, что сенсорные узлы являются стационарными, а базовые станции (центры сбора данных) мобильными, т.е. имеют возможность динамически изменять свое положение. Например, основу инфраструктуры БСС могут составлять сенсорные узлы, равномерно статически распределенные по ограниченной территории и отслеживающие перемещение каких-либо объектов, а базовыми станциями могут выступать люди или транспортные единицы, получающие информацию о передвижениях заданных объектов по территории.
R2
R2
І вО о 2 з • о °о
•о о і о
-----------------------------------^ Ri - радиус
R1 ^____________________________R3 радиодосту-
па
«лидера» i-
Рис. 6. Иллюстрация метода GAF
Сеточная структура формируется теми узлами, которые наиболее близко расположены к точкам пересечения линий сетки. Данные узлы образуют звенья пути маршрутизации верхнего уровня (higher-tier) и носят название «узлы распространения» (dissemination nodes). Узлы, находящиеся внутри ячеек сетки, передают свои данные через ближайший узел-распространитель посредством звеньев нижнего уровня (lower-tier). При построении сетки используются сведения о местоположении узлов. Доставка запросов к источникам данных от базовых станций и ответов в обратном направлении происходит в два этапа. Первоначально - внутри ячейки от соседа к соседу, затем -по узлам сетки (рис. 7).
Рис. 7. Иллюстрация метода TTDD
Заключение
Таким образом, рассмотренные методы маршрутизации дают некоторое представление о разнообразии и специфике способов обмена данными в БСС. Использование той или иной стратегии и метода маршрутизации обусловлено в первую очередь выполняемыми задачами, структурой и организацией сети, в некоторых случаях существующие алгоритмы модифицируют с учетом конкретных требований. Следует также отметить, что единого универсального похода к маршрутизации в БСС не существует, каждый раз в зависимости от приложения выбирается наиболее оптимальный метод, позволяющий достичь частных показателей, заданных определенными техническими условиями или имеющимися ограничениями.
Список литературы
1. Kulik, J. Negotiation-Based Protocols for Disseminating Information in Wireless Sensor Networks / J. Kulik, W. R. Heinzelman, H. Balakrishnan // Wireless Networks, 2002. - V. 8. - P. 169-185.
2. Intanagonwiwat, C. Directed Diffusion for Wireless Sensor Networking / C. In-tanagonwiwat, R. Govindan, D. Estrin, J. Heidemann, F. Silva // IEEE/ACM Transactions on Networking. - 2003. - V. 11, № 1. - P. 2-16.
3. Braginsky, D. Rumor Routing Algorithm for Sensor Networks / D. Braginsky, D. Estrin // Proceedings of the First ACM International Workshop on Sensor Networks and Applications (WSNA), October 2002. - Atlanta GA, 2002. - P. 22-31.
4. Schurgers, C. Energy Efficient Routing in Sensor Networks / C. Schurgers, M. Sri-vastava // The MILCOM Proceedings on Communications for Network-Centric Operations: Creating the Information Force, McLean VA, 2001. - P. 357-361.
5. Karp, B. GPSR: Greedy Perimeter Stateless Routing for Wireless Sensor Networks /
B. Karp, H. T. Kung // Proceedings of the 6th Annual ACM/IEEE International Conference on Mobile Computing and Networking (MobiCom’00), August 2000. - Boston MA, 2000. - P. 243-254.
6. Ye, F. A Scalable Solution to Minimum Cost Forwarding in Large Scale Sensor Networks / F. Ye, A. Chan, S. Lu, L. Zhang // Proceedings of the 10th International Conference on Computer Communications and Networks (ICCCN), October 2001. -Scottsdale, Arizona, 2001. - P. 304-309.
7. Biradar, R. Inter-Intra Cluster Multihop-LEACH Routing In Self-Organizing Wireless Sensor Networks / R. Biradar, S. R. Sawant, R. Mudholkar, V. C. Patil // International Journal of Research and Reviews in Computer Science (IJRRCS). - 2011. -March. - V. 2, № 1. - P. 124-130.
8. Manjeshwar, A. TEEN: A Routing Protocol for Enhanced Effeciency in Wireless Sensor Networks / A. Manjeshwar, D. P. Agarwal // Proceedings of the 15th International Symposium on Parallel and Distributed Processing. - 2001. - April. - P. 20092015.
9. Roychowdhury, S. Geographic Adaptive Fidelity and Geographic Energy Aware Routing in Ad Hoc Routing / S. Roychowdhury, C. Patra // International Journal of Computer and Communication Technology (IJCCT) for International Conference on Advances in Computer, Communication Technology and Applications (ACCTA-2010) (August 2010). - 2010. - V. 1, № 2-4. - P. 309-313.
10. Ye, F. A Two-tier Data Dissemination Model for Large-scale Wireless Sensor Networks / F. Ye, H. Luo, J. Cheng, S. Lu, L. Zhang // Proceedings of the 8th annual international ACM/IEEE conference on Mobile computing and networking (MO-BICOM’02) (September 2002). - Atlanta, Georgia, 2002. - P. 148-159.
Бершадский Александр Моисеевич доктор технических наук, профессор, заведующий кафедрой систем автоматизированного проектирования, Пензенский государственный университет
E-mail: bam@pnzgu.ru
Курилов Леонид Сергеевич кандидат технических наук, кафедра систем автоматизированного проектирования, Пензенский государственный университет
E-mail: kleon@gmail.ru
Финогеев Алексей Германович доктор технических наук, профессор, кафедра систем автоматизированного проектирования, Пензенский государственный университет
E-mail: sashanikitkin@rambler.ru
Bershadsky Alexander Moiseevich Doctor of engineering sciences, professor, head of sub-department of CAD systems, Penza State University
Kurilov Leonid Sergeevich Candidate of engineering sciences, sub-departmnet of CAD systems, Penza State University
Finogeev Aleksey Germanovich
Doctor of engineering sciences, professor, sub-department of CAD systems,
Penza State University
УДК 681.3 Бершадский, А. М.
Обзор методов маршрутизации в беспроводных сенсорных сетях /
А. М. Бершадский, Л. С. Курилов, А. Г. Финогеев // Известия высших учебных заведений. Поволжский регион. Технические науки. - 2012. - № 1 (21). -
С.47-57.