Sélection du routeur

Afficher le code source sur GitHub

Ensemble dominant connecté

Ensemble connecté OT
Exemple d'ensemble dominant connecté

Les routeurs doivent former un ensemble dominant, qui signifie:

  1. Il existe un chemin d'accès de routeur uniquement entre deux routeurs.
  2. Chaque routeur d'un réseau Thread peut atteindre n'importe quel autre routeur en restant entièrement dans l'ensemble de routeurs.
  3. Chaque appareil final d'un réseau Thread est directement connecté à un routeur.

Un algorithme distribué gère la CDS, ce qui garantit un niveau minimal de redondance. Chaque appareil se connecte initialement au réseau en tant qu'appareil final (enfant). À mesure que l'état du réseau Thread change, l'algorithme ajoute ou supprime des routeurs pour maintenir la CDS.

Thread ajoute des routeurs à:

  • Augmenter la couverture si le réseau est inférieur au seuil de routeur (16)
  • Diversifier les chemins
  • Maintenir un niveau minimal de redondance
  • Étendre la connectivité et aider plus d'enfants

Thread supprime les routeurs pour:

  • Réduisez l'état de routage sous la limite de 32 routeurs
  • Autoriser de nouveaux routeurs dans d'autres parties du réseau si nécessaire

Passer à un routeur

Une fois associé à un réseau Thread, l'appareil enfant peut choisir de devenir routeur. Avant de lancer le processus de demande d'association de MLE, l'enfant envoie un message de demande d'adresse au responsable, lui demandant un ID de routeur. Si le responsable accepte, il renvoie un ID de routeur et l'enfant passe à un routeur.

Le processus de requête de lien MLE est ensuite utilisé pour établir des liens routeur-routeur bidirectionnels avec les routeurs voisins.

  1. Le nouveau routeur envoie une requête d'association multicast aux routeurs voisins.
  2. Les routeurs répondent avec des messages Accepter et demander l'association.
  3. Le nouveau routeur répond à chaque routeur avec une instruction Link Accept unicast pour établir le lien routeur-routeur.

Une requête d'association est une requête envoyée par le routeur à tous les autres routeurs du réseau Thread. Lorsqu'il devient un routeur, l'appareil envoie une requête d'association multicast à ff02::2. Plus tard, après avoir découvert les autres routeurs via des annonces de MLE, les appareils envoient des requêtes d'association monocast.

Demande d'association de ML OT
Contenu du message de la demande d'association
Version Version du protocole Thread
Défi Teste le caractère opportun de la réponse du lien pour éviter les attaques par relecture
Adresse source RLOC 16 de l'expéditeur
Leader Data Informations sur la variante optimale du routeur, telles qu'elles sont stockées sur l'expéditeur (RLOC, ID de partition, poids de la partition)

Une demande d'association et une demande d'association combinent les messages d'acceptation et de demande d'association. Thread utilise cette optimisation dans le processus de demande d'association MLE pour réduire le nombre de messages de quatre à trois.

OT MLE Link Accept and Request

Une acceptation de lien est une réponse unicast à une requête de lien d'un routeur voisin qui fournit des informations sur elle-même et accepte le lien vers le routeur voisin.

OT MLE : lien accepté
Lien : accepter le contenu du message
Version Version du protocole Thread
Response (Réponse) Teste le caractère opportun de la réponse du lien pour éviter les attaques par relecture
Compteur de cadres de liaison Compteur d'images 802.15.4 sur l'expéditeur
Compteur de cadres MLE Compteur d'images MLE sur l'expéditeur
Adresse source RLOC 16 de l'expéditeur
Leader Data Informations sur la variante optimale du routeur, telles qu'elles sont stockées sur l'expéditeur (RLOC, ID de partition, poids de la partition)

Passer à un REED

Lorsqu'un routeur repasse à un REED, ses liens routeur-routeur sont déconnectés et l'appareil lance le processus d'association MLE pour établir une liaison enfant-parent.

Pour en savoir plus sur le processus MLE Attaching, consultez la page Rejoindre un réseau existant.

Dans certains cas, il peut être nécessaire d'établir un lien de réception à sens unique.

Après une réinitialisation, les routeurs voisins peuvent toujours disposer d'un lien de réception valide avec le routeur réinitialisé. Dans ce cas, le routeur de réinitialisation envoie un message de requête d'association pour rétablir le lien du routeur.

Un appareil final peut également souhaiter établir un lien de réception avec les routeurs non parents voisins afin d'améliorer la fiabilité de la multidiffusion. Nous reviendrons plus en détail sur le routage multicast.

Résumé

Connaissances acquises :

  • Les routeurs d'un réseau Thread doivent former un ensemble CD (Dominating Dominating)
  • Les appareils Thread sont mis à niveau en routeurs ou rétrogradés en appareils finaux pour la maintenance du CDS
  • Le processus de requête de lien MLE permet d'établir des liens routeur-routeur

Testez vos connaissances

Quelle règle n'est pas appliquée par un ensemble dominé ?
Il existe un chemin d'accès de routeur uniquement entre deux routeurs.
Mauvaise réponse.
Chaque routeur d'un réseau Thread peut atteindre tous les autres routeurs en restant dans l'ensemble des routeurs.
Mauvaise réponse.
Chaque appareil final d'un réseau Thread est directement connecté à un routeur.
Mauvaise réponse.
Un seul routeur de bordure dans un réseau Thread peut être un routeur.
Bonne réponse. Un réseau Thread peut avoir plusieurs routeurs de bordure.
Pourquoi un routeur peut-il être supprimé d'un réseau Thread ?
Pour réduire l'état de routage en dessous du maximum de 32 routeurs.
Bonne réponse. Les réseaux Thread s'efforcent de maintenir un nombre optimal de routeurs. Le nombre maximal de routeurs par réseau Thread doit être de 32.
Pour libérer des chaînes.
Mauvaise réponse. Le nombre de routeurs n'a aucun rapport avec l'utilisation ou la capacité du canal.
Autoriser l'élection de nouveaux routeurs dans d'autres parties du réseau si nécessaire
Bonne réponse. La réduction du nombre de routeurs actifs dans une partie d'un réseau Thread augmente sa capacité à augmenter la capacité de routage ailleurs.
Que doit-il se passer avant qu'un REED qui tente de devenir un routeur ne puisse établir des liens directs avec les autres routeurs ?
Le REED doit envoyer un message de demande d'adresse au responsable du réseau.
Bonne réponse.
Le responsable doit attribuer un ID de routeur au REED.
Bonne réponse. Sans ID de routeur, le REED reste un appareil enfant.
Le REED doit envoyer une demande d'association MLE.
Faux. La requête d'association MLE permet à l'appareil d'établir des liens avec d'autres routeurs lorsqu'il est devenu un routeur.
Quelle affirmation décrit le mieux la situation d'un routeur ?
L'appareil reste automatiquement sur le réseau, mais en tant qu'enfant (REED).
Faux. D'autres étapes sont nécessaires lorsqu'un routeur passe à une version antérieure.
L'appareil doit lancer le processus MLE Attachement pour établir une nouvelle connexion au réseau.
Bonne réponse. Un appareil qui fait passer son routeur à REED est déconnecté et doit renégocier sa connexion au réseau.
Quel processus est utilisé pour établir les liens de routeur et de routeur ?
Processus de demande d'association à MLE
Bonne réponse.
Processus d'acceptation et de demande d'association
Mauvaise réponse. Il n'y a pas de processus d'acceptation et de demande d'association. Les messages d'acceptation et de demande d'association sont envoyés par les routeurs en réponse aux messages de demande d'association dans le cadre du processus MLE.
Le processus MLE Attaching
Mauvaise réponse. Le processus MLE Attaching est le processus par lequel un appareil rejoint un réseau Thread existant.