Dada uma rede em malha ZigBee com vários nós. Existem links estabelecidos entre cada nó via nós do roteador.
Se o Nó A desejar enviar uma mensagem ao Nó Z pela primeira vez, o Nó A deverá executar uma Descoberta de Rota para determinar quais nós intermediários encaminharão sua mensagem.
O mecanismo de descoberta de rota é descrito aqui . Segundo ele, a rota com o menor custo será armazenada nas Tabelas de Roteamento dos nós.
Até agora tudo está bem, todo nó sabe o que fazer, eles podem se encontrar.
Agora, um nó intermediário, entre o Nó A e o Nó B, quebra, para que a rota armazenada no momento se torne inutilizável.
O que acontece nesse caso? Imagino que quando o Nó A quiser enviar uma mensagem, ele percorrerá todo o caminho até o link quebrado, onde ficará preso. O último nó na rota enviará de volta uma mensagem sobre a falha que acionará uma nova Descoberta de Rota pelo Nó A , em seguida, uma nova rota será encontrada e tudo ficará bem novamente.
Geralmente é bom (dado que eu estava correto); a rede se recupera. Mas estou me perguntando se existem algoritmos ou métodos que fornecem um recurso de monitoramento de rede que verifica continuamente o estado dos links apresentados nas Tabelas de roteamento. Assim, o Nó A pode ser notificado sobre a falha antes de enviar outra mensagem ao Nó Z. Em vez de chegar a um beco sem saída, ele pode começar com uma Descoberta de Rota de uma só vez. Então, basicamente, o que estou pensando é um serviço que verifica periodicamente os links.
Entendo que, como o ZigBee geralmente é usado em dispositivos alimentados por bateria e de baixa potência, esse mecanismo não seria eficiente em termos de energia.
Então, em geral, quais são agora os mecanismos mais eficazes de detecção de falha de link que podem ser usados em uma rede de sensores sem fio de baixa potência, especialmente em uma rede em malha ZigBee?