Bei einem ZigBee-Mesh-Netzwerk mit mehreren Knoten. Es gibt Verbindungen zwischen jedem Knoten über Routerknoten.
Wenn Knoten A zum ersten Mal eine Nachricht an Knoten Z senden möchte, muss Knoten A eine Routenerkennung durchführen, um zu bestimmen, welche Zwischenknoten seine Nachricht weiterleiten.
Der Routenerkennungsmechanismus wird hier beschrieben . Demnach wird die Route mit den niedrigsten Kosten in einer Routing-Tabelle der Knoten gespeichert.
Bisher ist alles in Ordnung, jeder Knoten weiß, was zu tun ist, er kann sich gegenseitig erreichen.
Jetzt bricht ein Zwischenknoten zwischen Knoten A und Knoten B zusammen, sodass die aktuell gespeicherte Route unbrauchbar wird.
Was passiert in diesem Fall? Ich stelle mir vor, dass Knoten A , wenn er eine Nachricht senden möchte, bis zu dem defekten Link fährt, wo er stecken bleibt. Der letzte Knoten in der Route sendet eine Nachricht über den Fehler zurück, der eine neue Routenerkennung durch Knoten A auslöst. Dann wird eine neue Route gefunden und alles ist wieder in Ordnung.
Es ist im Allgemeinen in Ordnung (vorausgesetzt, ich hatte Recht); Das Netzwerk wird wiederhergestellt. Ich frage mich jedoch, ob es Algorithmen oder Methoden gibt, die eine Netzwerküberwachungsfunktion bereitstellen, die den Status der in den Routing-Tabellen dargestellten Links kontinuierlich überprüft. So kann Knoten A über den Fehler benachrichtigt werden, bevor er eine weitere Nachricht an Knoten Z senden möchte , und anstatt in eine Sackgasse zu geraten, kann er sofort mit einer Routenerkennung beginnen. Ich denke also im Grunde genommen an einen Dienst, der die Links regelmäßig überprüft.
Ich verstehe, dass ein solcher Mechanismus nicht energieeffizient wäre, da ZigBee normalerweise bei batteriebetriebenen Geräten mit geringem Stromverbrauch verwendet wird.
Was sind nun im Allgemeinen die effektivsten Mechanismen zur Erkennung von Verbindungsfehlern, die in einem drahtlosen Sensornetzwerk mit geringem Stromverbrauch verwendet werden können, insbesondere in einem ZigBee-Mesh-Netzwerk?