Étant donné un réseau maillé ZigBee avec plusieurs nœuds. Il existe des liens établis entre chaque nœud via des nœuds de routeur.
Si le nœud A souhaite envoyer un message au nœud Z pour la première fois, le nœud A doit effectuer une découverte d'itinéraire pour déterminer les nœuds intermédiaires qui transmettront son message.
Le mécanisme de découverte d'itinéraire est décrit ici . Selon lui, l'itinéraire avec le coût le plus bas sera stocké dans une table de routage des nœuds.
Jusqu'à présent, tout va bien, chaque nœud sait quoi faire, ils peuvent se rejoindre.
Maintenant, un nœud intermédiaire, entre le nœud A et le nœud B tombe en panne, de sorte que la route actuellement stockée devient inutilisable.
Que se passe-t-il dans ce cas? J'imagine que lorsque le nœud A veut envoyer un message, il se rendra jusqu'au lien cassé où il restera bloqué. Le dernier nœud de la route renverra un message sur l'échec qui déclenchera une nouvelle découverte de route par le nœud A , puis une nouvelle route sera trouvée et tout ira bien à nouveau.
C'est généralement bien (étant donné que j'avais raison); le réseau se rétablit. Mais je me demande s'il existe des algorithmes ou des méthodes qui fournissent une fonction de surveillance du réseau qui vérifie en permanence l'état des liens présentés dans les tables de routage. Ainsi, le nœud A peut être informé de l'échec avant de vouloir envoyer un autre message au nœud Z. Au lieu de se retrouver dans une impasse, il peut commencer par une découverte de route à la fois. Donc, à la base, je pense à un service qui vérifie périodiquement les liens.
Je comprends que comme ZigBee est généralement utilisé sur des appareils alimentés par batterie, un tel mécanisme ne serait pas économe en énergie.
Donc, en général, quels sont maintenant les mécanismes de détection de défaillance de liaison les plus efficaces qui peuvent être utilisés dans un réseau de capteurs sans fil à faible puissance, en particulier dans un réseau maillé ZigBee?