Afficher le code source sur GitHub
Les données du réseau Thread contiennent des informations sur les routeurs de bordure et les autres serveurs disponibles sur le réseau Thread. Les routeurs de bordure et les appareils qui proposent des services enregistrent leurs informations auprès du leader. Le leader collecte et structure ces informations dans les données du réseau Thread et les distribue à tous les appareils du réseau Thread.
Les routeurs de bordure peuvent enregistrer des préfixes attribués au réseau Thread et des préfixes pour lesquels ils proposent des routes. Les services peuvent enregistrer toute information pertinente.
Les informations sur le routeur de bordure et le service peuvent être stables ou temporaires. Les données du réseau Thread stable sont distribuées sur tous les appareils, y compris les appareils de fin de sommeil. Les données réseau temporaires sont réparties sur tous les nœuds, sauf les SED.
Commandes de données réseau
Pour obtenir la liste des commandes netdata
, saisissez help
:
netdata help
help
full
length
maxlength
publish
register
show
steeringdata
unpublish
Done
Commandes full
Les commandes full
signalent l'état de l'indicateur ou annulent le suivi de l'indicateur si le rappel "net total" a été appelé.
Cette commande nécessite OPENThread_CONFIG_BORDER_ROUTER_SIGNAL_NETWORK_DATA_FULL.
Commandes length
et maxlength
La commande length
obtient la longueur actuelle des données du réseau Thread, signalée en nombre d'octets. Les commandes maxlength
obtiennent la longueur maximale observée ou réinitialisent la longueur maximale suivie.
Commandes publish
L'éditeur de données réseau fournit des mécanismes permettant de limiter le nombre d'entrées de service et de préfixe similaires (préfixe sur réseau maillé ou route externe) dans les données réseau Thread en surveillant les données réseau et en déterminant quand ajouter ou supprimer des entrées.
L'éditeur a besoin de OPENTHREAD_CONFIG_NETDATA_PUBLISHER_ENABLE
.
Créer un réseau et configurer le préfixe
Générez une nouvelle configuration réseau.
dataset init new
DoneAffichez la configuration du réseau.
dataset
Active Timestamp: 1 Channel: 13 Channel Mask: 0x07fff800 Ext PAN ID: d63e8e3e495ebbc3 Mesh Local Prefix: fd3d:b50b:f96d:722d::/64 Network Key: dfd34f0f05cad978ec4e32b0413038ff Network Name: OpenThread-8f28 PAN ID: 0x8f28 PSKc: c23a76e98f1a6483639b1ac1271e2e27 Security Policy: 0, onrcb DoneValidez le nouvel ensemble de données dans l'ensemble de données opérationnel actif dans un espace de stockage non volatile.
dataset commit active
DoneActiver l'interface Thread
ifconfig up
Donethread start
DoneAffichez les adresses IPv6 attribuées à l'interface Thread.
ipaddr
fd3d:b50b:f96d:722d:0:ff:fe00:fc00 fd3d:b50b:f96d:722d:0:ff:fe00:dc00 fd3d:b50b:f96d:722d:393c:462d:e8d2:db32 fe80:0:0:0:a40b:197f:593d:ca61 DoneEnregistrer un préfixe IPv6 attribué au réseau Thread.
prefix add fd00:dead:beef:cafe::/64 paros med
Donenetdata register
DoneAfficher les données du réseau Thread
netdata show
Prefixes: fd00:dead:beef:cafe::/64 paros med dc00 Routes: fd49:7770:7fc5:0::/64 s med 4000 Services: 44970 5d c000 s 4000 44970 01 9a04b000000e10 s 4000 DoneLes préfixes et les routes incluent les mappages d'arguments et la valeur RLOC.
Les enregistrements de service incluent des valeurs otServiceConfig, y compris
mEnterpriseNumber
,mServiceData
,otServerConfig::mServerData
ets
pour indiquerotServerConfig::mStable
. Le RLOC est également ajouté à la fin de l'enregistrement.Affichez la longueur actuelle, en nombre d'octets, des données du réseau Thread de Partition.
netdata length
23 DoneAffichez les adresses IPv6 attribuées à l'interface Thread, y compris le préfixe ajouté.
ipaddr
fd00:dead:beef:cafe:4da8:5234:4aa2:4cfa fd3d:b50b:f96d:722d:0:ff:fe00:fc00 fd3d:b50b:f96d:722d:0:ff:fe00:dc00 fd3d:b50b:f96d:722d:393c:462d:e8d2:db32 fe80:0:0:0:a40b:197f:593d:ca61 Done
Associer au réseau existant
Seule la clé réseau est nécessaire pour qu'un appareil puisse être connecté à un réseau Thread.
Bien que cela ne soit pas obligatoire, spécifier le canal évite d'avoir à effectuer une recherche sur plusieurs canaux, ce qui améliore à la fois la latence et l'efficacité du processus d'association.
Une fois qu'un appareil est correctement associé à un réseau Thread, il récupère l'intégralité de l'ensemble de données opérationnel actif.
Créer un ensemble de données opérationnel actif partiel
dataset networkkey dfd34f0f05cad978ec4e32b0413038ff
Donedataset commit active
DoneActiver l'interface Thread
ifconfig up
Donethread start
DoneUne fois le réseau existant associé, affichez les données du réseau Thread.
netdata show
Prefixes: fd00:dead:beef:cafe::/64 paros med dc00 Routes: Services: DoneAffichez la longueur actuelle, en nombre d'octets, des données du réseau Thread de Partition.
netdata length
23 DoneAffichez les adresses IPv6 attribuées à l'interface Thread.
ipaddr
fd00:dead:beef:cafe:4da8:5234:4aa2:4cfa fd3d:b50b:f96d:722d:0:ff:fe00:fc00 fd3d:b50b:f96d:722d:0:ff:fe00:dc00 fd3d:b50b:f96d:722d:393c:462d:e8d2:db32 fe80:0:0:0:a40b:197f:593d:ca61 Done
Débogage et diagnostics
La taille des données réseau est limitée à 254 octets. Si les routeurs de bordure continuent d'ajouter des entrées (préfixes, routes ou entrées de service, par exemple) aux données réseau, elles peuvent être complètes. Dans ce cas, les nouvelles requêtes d'un routeur de bordure permettant d'ajouter des éléments sont refusées ou ignorées par le responsable. Le responsable n'indique pas nécessairement le rejet du routeur de bordure, auquel cas il peut ne pas se rendre immédiatement compte que les données réseau sont saturées. Toutefois, il existe une méthode permettant de détecter quand les données du réseau sont saturées.
La méthode de détection, mise en œuvre à la fois sur les routeurs Border et le leader, utilise un mécanisme d'API de rappel et permet aux utilisateurs d'être avertis lorsque les données réseau sont complètes. Le rappel peut être utilisé pour effectuer une action, comme supprimer des préfixes ou des entrées de service obsolètes. Les commandes netdata full
sont utilisées pour l'indicateur qui détermine si le rappel "net data full" (données net complètes) a été appelé. Ces commandes peuvent signaler l'état de l'indicateur ou le réinitialiser.
Pour les cas d'utilisation typiques de Thread, il est peu probable que les données réseau soient complètes, même dans le cas où de nombreux routeurs de bordure ajoutent tous des préfixes de route.
Il est techniquement possible que les données du réseau soient complètes, mais cela est souvent dû à une mauvaise configuration ou à un problème sur le routeur de bordure. Les commandes netdata length
et netdata maxlength
peuvent vous aider à déboguer les erreurs complètes liées aux données réseau.
length
obtient la longueur actuelle des données réseau, signalée en octets, et maxlength
obtient la longueur maximale observée, et peut également réinitialiser la longueur maximale suivie.