Vous êtes sur la page 1sur 29

IEEE 802.15.

4/Zigbee

Généralités sur les réseaux sans fils

ZigBee Alliance:
http://www.ZigBee.org

IEEE 802.15.4:
http://www.ieee802.org/15/pub/TG4.html
Le routage
 Étant donné: un réseau / un graphe
 Chaque nœud possède un identifiant unique (ID)
 Objectif: concevoir un mécanisme qui permet à un paquet
envoyé par un nœud donné, d’arriver à une destination donnée
 Construire des structures de données (exp. tables de routage) qui
contiennent informations indiquant comment une destination
donnée peut être atteinte
 Consultez ces structures de données pour transférer un paquet
donné à son prochain saut
 Challenge
 Les nœuds peuvent se déplacer, le voisinage change
 Les métriques de routage peuvent être plus compliqué que le plus-
court-chemin - par exemple, considération de la consommation
d’énergie

2
Protocoles de routage
 Les protocoles de routage standards (Internet) ne sont pas
applicables
 trop lent à réagir aux changements due à leur complexité
 Besoin de protocoles de routage spécifiques pour les réseaux de
capteurs

 Plusieurs solutions de routage :


 Solutions propriétaires (WirelessHART) vs open standard (WiFi,
ZigBee, 6LowPAN, THREAD)
 Solutions spécifique vs non spécifique (agnostique) à une application
 Exp ZWAVE pour home automation, WirelessHART pour les applications
industrielles, 6LowPAN/THREAD pour toute application
 IP-compliant vs non-IP-compliant

3
Zigbee
 Créé par l'Alliance ZigBee
 Standard de haut niveau (couche 3 et plus) permettant la communication de
petits dispositifs sans fil, à faile consommation,
 Faible débit: 250 Kbit/s
 Faible portée 1 – 100 m
 Protocol stack: 32 KBytes
 Topologie : Etoile, hiérarchique, maillée
 Bande fréquentielle : "ISM band"
 Europe 868 MHz; USA + Australie : 915 MHz; Monde :2.4 GHz
 Délai de réveil : 30 ms
 Nombre de noeuds: 264
 Dédié pour les réseaux WPAN (Wireless Personal Area Networks).
 En particulier les réseaux de capteurs

 basée sur la norme IEEE 802.15.4

4
Bref historique
 1998 : les premières ébauches de réseaux de type ZigBee car il y
a des applications où les technologies Wi-Fi et Bluetooth ne sont
pas utilisables.

 Mai 2003 : Le standard IEEE 802.15.4 est annoncé (souvent


associé au protocole ZigBee).

 Juin 2005 : La ZigBee Alliance publie les premières spécifications


officielles de la version ZigBee 1.0

 Novembre 2014 : La ZigBee Alliance annonce l'unification de ses


spécifications en un seul standard nommé ZigBee 3.0.

5
Applications

6
Pile

Application Customer

API
Security
32- / 64- / 128-bit encryption ZigBee
Alliance
Network
Star / Mesh / Cluster-Tree

MAC
IEEE
PHY 802.15.4
868MHz / 915MHz / 2.4GHz

7
Types de nœuds
 Le coordinateur ZigBee (ZC) :
 Un et un seul
 Racine du réseau et passerelle vers les autres réseaux
 Equivalent du PAN coordinator (FFD)
 Le routeur ZigBee (ZR) :
 Route les paquets au sein du réseau
 Equivalent du coordinator (FFD)
 L'équipement terminal Zigbee (ZED)
 Ne communique qu'avec le routeur ou le coordinateur
 En sommeil la plupart du temps
 Equivalent du device (RFD)
8
Types de topologies

9
Les services de la couche Réseau de Zigbee
 Configuration d’un nouveau noeud:
 this is the ability to sufficiently configure the stack for operation as required.
 Démarrage du reseau :
 this is the ability to establish a new network.
 Joindre, rejoindre et quitter un réseau
 this is the ability to join, rejoin or leave a network as well as the ability of a ZigBee coordinator
or ZigBee router to request that a device leave the network.
 Adressage:
 this is the ability of ZigBee coordinators and routers to assign addresses to devices joining the
network.
 Découverte de voisins:
 this is the ability to discover, record, and report information pertaining to the one-hop
neighbors of a device.
 Découverte de route :
 this is the ability to discover and record paths through the network, whereby messages may be
efficiently routed.
 Routage:
 this is the ability to use different routing mechanisms such as unicast, broadcast, multicast or
many to one to efficiently exchange data in the network

10
Les protocoles de routage Zigbee

 Routage hiérarchique
 Cluster-tree
 Routage selon l’arbre (up ou down)

 Routage réactif
 AODV : Ad-hoc On-demand Distance Vector
 Routage en se basant sur les tables de routage + découverte de
routes

11
Routage hiérarchique Zigbee
 La topologie est en arbre
 Tout noeud a au plus un père
 Le routage utilise la structure arborescente
 Pas la table de routage
 Le routage est défini lors de l'attribution des adresses
 n'est pas souple

12
Formation du réseau
 Un FFD lance la procédure de formation du réseau
 Il analyse les canaux disponibles à travers les fonctionnalités appropriées
des couches inférieures
 Choisit un canal (par exemple, le moins brouillé)
 Définit l'identifiant PAN
 Définit sa propre adresse réseau à 0 (coordinateur PAN)
 D'autres périphériques peuvent désormais s'associer au
coordinateur PAN via les procédures d'association des couches
inférieures.
 Les nœuds associés peuvent être ZR ou ZER
 L’attribution d’adresses (adresses courtes de 16 bits) est effectuée
avec la procédure d’association
 Chaque nœud parent (ZC ou ZR) attribue les adresses à ses
descendants
13
Allocation des adresses (1/2)
 En fonction de sa profondeur (d) dans l’arbre, un ZR obtient de son
parent une plage d’adresses consécutives
 Adresse = entier de 16 bits
 Le premier entier dans la plage correspond à l’adresse du nœud ZR
 Le reste des entiers/adresses sont affectées au descendants du nœud ZR

 Le ZC fixe les constants suivantes:


- Rm: maximum number of routers
devices that each router may
have as children
- Dm: maximum number of end
devices that each router may have
as children
- Lm: maximum depth of the tree

14
Allocation des adresses (2/2)
 La plage d’adresses associé à un routeur (ZR ou ZC) ayant comme
profondeur d est de taille A(d), définie par :
A(d) = 1 + Dm + Rm if d = Lm – 1
A(d) = 1 + Dm + Rm.A(d+1) if 0 ≤ d < Lm – 1
 Règles d’affectation des adresses
 Un noeud ayant comme profondeur d obtient
 x comme adresse
 [x, x + A(d)-1] comme plage d’adresse
 Ce noeud attribute les addresses à ses descendants:
 La plage [x+(i-1)A(d+1)+1, x+iA(d+1)] est attribué au i-ème descendant de
type routeur (1≤i ≤Rm)
 l’adresse x+Rm A(d+1)+j est attribuée au j-ème descendant non-routeur cad
ZED (1 ≤j ≤Dm)

15
Exemple

Rm = 2,
Dm = 2
Lm= 3
Le ZC a la plage [0,28]

16
Routage
 Routing only along parent-child links

 Routers maintain their address


and the address info associated with their
children and parent

 Given an address assignment


in tree based network, router
can determine if the destination
belongs to a tree rooted at one
of its router children or is one of
its end device children
 If destination belongs to one of
its children, it routes the packet
to its appropriate child (down)
 If destination does not belong to
one of its children, it routes the
packet to its parent (up)

17
Exemple
 Le noeud 14:
 Parent 0
 Plage [15, 19] =>15
 Plage [20, 24] => 20
 Terminaux = {25, 26}
 S'il reçoit un message pour 29
 29 n'est pas élément de [14, 26]
 Retransmet vers 0
 S'il reçoit un message pour 23
 23 est élement de [20, 24]
 Retransmet vers 20

18
Inconvénients du routage hiérarchique
 Routage non optimisé
 Le routage ne dépond pas de la qualité des routes
 Nombre de sauts, qualité des liens de communication etc

 Exemple: Si A veut envoyer un message à B?!

19
Problème de l’ordonnancement de la partie
active
 Beacon scheduling is necessary in a multihop topology to prevent the beacon
frames of one device from colliding with either the beacon frames or data
transmissions of its neighboring devices
 Only necessary in tree topology networks
 Idea is to have short active portions as compared to the beacon interval so, that
neighboring routers can start their superframe suitably offset with respect to
one other and avoid overlapping
 The density of devices that can be supported in the network depends on the
length of inactive periods in superframe. The larger the length, the more devices
that can transmit beacon frames in the same neighborhood

20
Exemple de solution
 les parties actives d’un noeud et de son père sont directement
consécutives.
 Le temps peut donc être découpé en pseudo-slots (de durée SD)
 la profondeur d’un noeud donne de façon déterministe le
pseudo-slot utilisé par sa partie active.
 nous avons nslot = 2BO-SO

21
Le routage Zigbee (global)

Routage AODV

Routage
22
hiérarchique
Routage AODV
 Variante du protocole AODV
 Chaque routeur possède une table de routage (RT)
 Un routeur utilise un algorithme de découverte de routes
 Pour construire et mettre à jour cette table de routage
 Une entrée de la table de routage (RT):
<Destination address, Next hop address, Entry status (active, discovery, inactive)>

 Un nœud souhaitant transmettre un message à une destination


 Consulte sa table de routage,
 si il y a une entrée vers cette destination dans la TR, le nœud envoie le
paquet vers le nœud prochain (next hop)
 Sinon, le nœud d'éclanche une procédure de recherche de routes (s'il a
suffisamment de ressources, sinon il utilise le routage hiérarchique)
23
La découverte de routes (1/2)
 Diffusion à travers le réseau (inondation/flooding) d’un RREQ (Route
Request)
 Chaque routeur possède une table de découverte de routes (RDT)
 Une entrée de la table de découverte de route (RDT):
<RREQID , Source Address, Sender Address, Forward Cost, Residual Cost>

 RREQID Unique ID (sequence number) given to every RREQ message being


broadcasted
 Source Address: Network address of the initiator of the route request
 Sender Address: Network address of the device that sent the most recent lowest
cost RREQ
 Forward Cost: The accumulated path cost from the RREQ originator to the current
device
 Residual Cost: The accumulated path cost from the current device to the RREQ
destination

24
La découverte de routes (2/2)
 Fonctionnement:
 Lorsqu'une source veut atteindre une destination, elle diffuse
par inondation un RREQ jusqu'à atteindre la destination
 Chaque routeur intermédiaire lorsqu'il reçoit un RREQ ne le
propage que s'il propose une meilleure route
 Il compare celui reçu avec le meilleur stocké dans la table de
découverte de routes
 Clef de recherche : Source add + RREQ ID + destination address,
 Valeur comparée : Forward cost
 La destination renvoie un RREP(route reply) sur le chemin
de moindre coût (moindre Forward cost) vers la source
 Lors de la réception d'un RREP, les routeurs et la source
mettent à jour leur table de routage à partir de la table de
découverte de routes ("changement du status")

25
Traitement du RREQ

26
Traitement du RREP

27
Cout de chemin/route
 (Path cost) Le cout d’une route P composées de L-1 liens
(Di, Di+1) est définit par :

 C(Di, Di+1) est le cout d’un lien.


 Dans l’intervalle [0,7]

 Défini par:

28
La maintenance de routes
 Lorsque un nœud remarque que le lien vers un
successeur sur une route a échoué, il envoie un
message spécial (network status command frame)
vers la source
 La source déclenche une nouvelle découverte de la
route

29

Vous aimerez peut-être aussi