Материал: конспект-лекций

Внимание! Если размещение файла нарушает Ваши авторские права, то обязательно сообщите нам

236

Способность к многошаговой передаче помогает обеспечить живучесть сети (способность к самовосстановлению). Если одно из устройств отказывает или оказывается под воздействием по-

мех, сеть способна перемаршрутизироваться, используя оставшиеся устройства.

Рисунок 3. Ячеистая сеть ZigBee

Принципиальное отличие сетей ZigBee от других беспроводных сетей, таких как IEEE 802.11/WiFi, в том, что вместо централизованной звездообразной структуры сети ZigBee допуска-

ют иерархию присоединения к сети. В результате может быть достигнуто несколько уровней при-

соединения. Такая иерархия устройств служит для создания истинно беспроводных сетей.

Для сравнения, IEEE 802.11/WiFi предлагает технологию точки беспроводного доступа:

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

Преимущества

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

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

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

Формирование сети ZigBee

237

Любая сеть ZigBee начинается с ее формирования. Устройство, способное быть координа-

тором (оно назначается при проектировании сети), определяет свободный от помех канал и настраивает себя в качестве координатора. В ZigBee это устройство называется PAN координато-

ром – координатором персональной (в отличие от локальной – LAN) сети.

Устройства, которые хотели бы присоединиться к сети (подключиться, войти в состав се-

ти), рассылают широковещательный запрос. Первоначально на этот запрос отвечает только PAN

координатор. В дальнейшем кроме PAN координатора предоставить присоединение к сети могут маршрутизаторы ZigBee, которые уже присоединились к PAN координатору непосредственно или через другие маршрутизаторы. После того, как устройство, желающее присоединится к сети, по-

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

может ли устройство присоединиться к сети. Ключевым фактором определения возможности яв-

ляется способность маршрутизатора обслужить новые устройства в дополнение к ранее подклю-

ченным.

Вступление в сеть

Существует два пути вступления устройств в сеть ZigBee: МАС ассоциация и повторное сетевое присоединение (NWK rejoin).

МАС ассоциация

Как очевидно из названия, МАС ассоциация осуществляется на МАС уровне. Способно-

стью к МАС ассоциации должно по умолчанию обладать каждое устройство ZigBee. Механизм МАС ассоциации следующий:

Координатор или маршрутизатор, который собирается позволить другим устрой-

ствам присоединиться к нему, должен выставить на свой МАС уровень разрешение на присоеди-

нение NLME-PERMIT-JOINING.request.

В свою очередь, устройство, желающее вступить в сеть, выставляет на свой МАС уровень запрос на присоединение NLME-NETWORK-DISCOVERY.request.

После этого вступающее в сеть устройство передает в эфир широковещательный за-

прос маячка и получает этот маячок от маршрутизатора(ов), готового(ых) подключить новое

устройство.

Получив маячок (маячки), устройство определяет, в какую сеть оно желает вступить

ик какому конкретно устройству присоединиться, после чего выставляет на свой МАС уровень требование NLME-JOIN.request с установленным в значение FALSE флажком «повторное присо-

единение» (rejoin).

Сделав это, вступающее устройство направляет на выбранный маршрутизатор за-

прос на присоединение и получает ответ, содержащий присвоенный ему сетевой адрес.

Отметим, что МАС ассоциация не является безопасной, так как все сообщения передаются в открытом (не зашифрованном) виде.

238

Повторное сетевое присоединение (NWK rejoin)

Повторное сетевое присоединение (NWK rejoin) вопреки названию может использоваться и при первом подключении устройства к сети. И, как ясно из названия, осуществляется на сетевом уровне. Это означает, во-первых, что стандартный механизм МАС ассоциации в этом случае мо-

жет либо применяться (в этом случае ZigBee маршрутизатор выставит разрешение на присоедине-

ние NLME-PERMIT-JOINING.request), либо нет. Во-вторых, это означает, что обмен пакетами может быть безопасным, если вступающее устройство знает текущий сетевой ключ. Это возмож-

но, если устройство действительно переподключается, либо если оно включается впервые, но по-

лучило сетевой ключ через какой-то сторонний механизм (например, при настройке).

При таком подключении устройство, желающее вступить в сеть, выставляет на свой сете-

вой уровень (NWK) запрос на присоединение NLME-JOIN.request и обменивается с подключаю-

щим его маршрутизатором пакетами «запрос подключения» – «ответ на запрос подключения».

Динамика сети

Помимо процесса подключения новых устройств к изменению структуры сети могут при-

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

Рисунок 4 показывает пример переподключения. В этом примере устройство с коротким адресом «0E3B» переподключается к сети, как «097D» и впоследствии как «0260». На каждом эта-

пе это устройство присоединяется к другому маршрутизатору, который выделяет адрес из имею-

щегося в его распоряжении диапазона адресов.

Одно из важных достоинств сети ZigBee – способность отслеживать устройства и тополо-

гию сети в режиме частых подключений, отключений и переподключений устройств.

Рисунок 4. Переподключение конечного устройства в древовидной сети

Маршрутизация в сетях ZigBee

Основной алгоритм маршрутизации в сетях ZigBee – «Ad hoc On Demand Distance Vector» (AODV) основан на понятии «вектор расстояния» маршрута, когда каждый маршрутизатор, участ-

239

вующий в трансляции запроса маршрута от конкретного источника к конкретному пункту назна-

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

Алгоритм работает следующим образом:

когда устройству «источник» (И) необходимо отправить пакет на устрой-

ство «адресат» (А), источник инициирует процесс обнаружения маршрута путем рассылки широ-

ковещательного пакета «запрос маршрута», запрашивая маршрут к устройству А (см. рис.5);

каждое устройство, которое получило этот запрос маршрута, вносит свою запись в таблицу маршрутизации и может транслировать этот запрос, включив в него таблицу со своей за-

писью (см. рис. 6);

следующие устройства, получившие ретранслированный запрос, транслируют его дальше, и с каждым шагом «логическое расстояние», пройденное запросом, увеличивается на ве-

личину, зависящую от качества связи на очередном участке;

процесс продолжается пока запрос не достигает устройства А, причем обычно устройства Адостигает несколько ретранслированных запросов (от разных маршрутизаторов) и «логические расстояния» (ЛР) маршрутов этих пакетов различны;

устройство А отправляет ответ по маршруту, имеющему минимальное «логическое

расстояние»;

ответ будет возвращаться в соответствие с таблицей маршрута по пути, пройденно-

му первоначальным запросом, пока не прибудет на устройство И (рис. 7).

Эта серия передаваемых в обратном направлении ответов формирует прямой маршрут для будущей передачи пакетов от И до А (рис. 8). Механизм «логического расстояния» позволяет ис-

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

Рисунок 5. Поиск маршрута. Шаг 1

240

Рисунок 6. Поиск маршрута. Шаг 2 (ЛР – логическое расстояние)

Рисунок 7. Поиск маршрута. Шаг 3

Рисунок 8. Поиск маршрута. Шаг 4

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

Поэтому в сетях ZigBee реализован и другой алгоритм, которые позволяет снизить требо-

вания к объему памяти, а иногда и уменьшить сетевой трафик, необходимый для поиска маршру-

тов. Действие алгоритма основано на том, что адреса в ZigBee сети распределяются иерархически,

начиная с координатора. Устройство, не имеющее возможностей маршрутизации или устройство,

Источник: https://studfile.net/preview/16436030/