Diagnostic du réseau maillé
Ce module comprend les définitions et les fonctions des diagnostics de réseau maillé.
Résumé
Les API de diagnostic du maillage nécessitent OPENTHREAD_CONFIG_MESH_DIAG_ENABLE
et OPENTHREAD_FTD
.
Typedefs |
|
---|---|
otMeshDiagChildEntry
|
typedefstruct otMeshDiagChildEntry
Représente les informations sur une entrée enfant de otMeshDiagQueryChildTable() . |
otMeshDiagChildInfo
|
typedefstruct otMeshDiagChildInfo
Représente les informations sur un enfant détecté dans le maillage Thread à l'aide de otMeshDiagDiscoverTopology() . |
otMeshDiagChildIp6AddrsCallback)(otError aError, uint16_t aChildRloc16, otMeshDiagIp6AddrIterator *aIp6AddrIterator, void *aContext)
|
typedefvoid(*
Représente le rappel utilisé par otMeshDiagQueryChildrenIp6Addrs() pour fournir des informations sur un enfant MTD et sa liste d'adresses IPv6. |
otMeshDiagChildIterator
|
typedefstruct otMeshDiagChildIterator
Itérateur opaque permettant d'itérer la liste des enfants d'un routeur. |
otMeshDiagDiscoverCallback)(otError aError, otMeshDiagRouterInfo *aRouterInfo, void *aContext)
|
typedefvoid(*
Le type de pointeur représente le rappel utilisé par otMeshDiagDiscoverTopology() pour fournir des informations sur un routeur détecté. |
otMeshDiagDiscoverConfig
|
typedefstruct otMeshDiagDiscoverConfig
Représente l'ensemble des configurations utilisées lors de la découverte de la topologie du maillage, indiquant les éléments à découvrir. |
otMeshDiagIp6AddrIterator
|
typedefstruct otMeshDiagIp6AddrIterator
Itérateur opaque permettant d'itérer la liste des adresses IPv6 d'un routeur. |
otMeshDiagQueryChildTableCallback)(otError aError, const otMeshDiagChildEntry *aChildEntry, void *aContext)
|
typedefvoid(*
Représente le rappel utilisé par otMeshDiagQueryChildTable() pour fournir des informations sur les entrées de la table enfant. |
otMeshDiagQueryRouterNeighborTableCallback)(otError aError, const otMeshDiagRouterNeighborEntry *aNeighborEntry, void *aContext)
|
typedefvoid(*
Représente le rappel utilisé par otMeshDiagQueryRouterNeighborTable() pour fournir des informations sur les entrées de la table de routeur voisines. |
otMeshDiagRouterInfo
|
typedefstruct otMeshDiagRouterInfo
Représente les informations sur un routeur du réseau maillé Thread découvertes à l'aide de otMeshDiagDiscoverTopology() . |
otMeshDiagRouterNeighborEntry
|
typedef Représente les informations sur l'entrée du voisin du routeur à partir de otMeshDiagQueryRouterNeighborTable() . |
distantes |
|
---|---|
otMeshDiagCancel(otInstance *aInstance)
|
void
Annule une découverte de topologie en cours s'il y en a une, sinon aucune action n'est requise.
|
otMeshDiagDiscoverTopology(otInstance *aInstance, const otMeshDiagDiscoverConfig *aConfig, otMeshDiagDiscoverCallback aCallback, void *aContext)
|
Démarre la découverte de la topologie du réseau.
|
otMeshDiagGetNextChildInfo(otMeshDiagChildIterator *aIterator, otMeshDiagChildInfo *aChildInfo)
|
Il itère les enfants découverts d'un routeur.
|
otMeshDiagGetNextIp6Address(otMeshDiagIp6AddrIterator *aIterator, otIp6Address *aIp6Address)
|
Itération des adresses IPv6 découvertes d'un routeur ou d'un enfant MTD.
|
otMeshDiagQueryChildTable(otInstance *aInstance, uint16_t aRloc16, otMeshDiagQueryChildTableCallback aCallback, void *aContext)
|
Lance une requête pour la table enfant pour un routeur donné.
|
otMeshDiagQueryChildrenIp6Addrs(otInstance *aInstance, uint16_t aRloc16, otMeshDiagChildIp6AddrsCallback aCallback, void *aContext)
|
Envoie une requête à un parent pour récupérer les adresses IPv6 de tous ses enfants MTD.
|
otMeshDiagQueryRouterNeighborTable(otInstance *aInstance, uint16_t aRloc16, otMeshDiagQueryRouterNeighborTableCallback aCallback, void *aContext)
|
Lance une requête pour la table des voisins du routeur pour un routeur donné.
|
Structs |
|
---|---|
otMeshDiagChildEntry |
Représente les informations sur une entrée enfant de |
otMeshDiagChildInfo |
Représente les informations sur un enfant détecté dans le maillage Thread à l'aide de |
otMeshDiagDiscoverConfig |
Représente l'ensemble des configurations utilisées lors de la découverte de la topologie du maillage, indiquant les éléments à découvrir. |
otMeshDiagRouterInfo |
Représente les informations sur un routeur du réseau maillé Thread découvertes à l'aide de |
otMeshDiagRouterNeighborEntry |
Représente les informations sur l'entrée du voisin du routeur à partir de |
Typedefs
otMeshDiagChildEntry
struct otMeshDiagChildEntry otMeshDiagChildEntry
Représente les informations sur une entrée enfant de otMeshDiagQueryChildTable()
.
mSupportsErrRate
indique si la fonctionnalité de suivi des erreurs est compatible ou non, et si les valeurs mFrameErrorRate
et mMessageErrorRate
sont valides. Le taux d'erreur de trame suit les erreurs de trame (vers l'enfant) au niveau de la couche MAC, tandis que mMessageErrorRate
suit le taux d'erreur des messages IPv6 (au-dessus de la couche MAC et après les nouvelles tentatives MAC) lorsqu'un message IPv6 est abandonné. Par exemple, si le message est volumineux et nécessite une fragmentation 6LoWPAN, le message tx est considéré comme ayant échoué si l'un de ses fragments de trame tx échoue (par exemple, jamais confirmé).
otMeshDiagChildInfo
struct otMeshDiagChildInfo otMeshDiagChildInfo
Représente les informations sur un enfant détecté dans le maillage Thread à l'aide de otMeshDiagDiscoverTopology()
.
otMeshDiagChildIp6AddrsCallback
void(* otMeshDiagChildIp6AddrsCallback)(otError aError, uint16_t aChildRloc16, otMeshDiagIp6AddrIterator *aIp6AddrIterator, void *aContext)
Représente le rappel utilisé par otMeshDiagQueryChildrenIp6Addrs()
pour fournir des informations sur un enfant MTD et sa liste d'adresses IPv6.
Lorsque aError
est défini sur OT_ERROR_PENDING
, cela signifie qu'il existe d'autres enfants et que le rappel est à nouveau invoqué.
Détails | |||||||||
---|---|---|---|---|---|---|---|---|---|
Paramètres |
|
otMeshDiagChildIterator
struct otMeshDiagChildIterator otMeshDiagChildIterator
Itérateur opaque permettant d'itérer la liste des enfants d'un routeur.
Les pointeurs vers une instance de ce type sont fournis dans otMeshDiagRouterInfo
.
otMeshDiagDiscoverCallback
void(* otMeshDiagDiscoverCallback)(otError aError, otMeshDiagRouterInfo *aRouterInfo, void *aContext)
Le type de pointeur représente le rappel utilisé par otMeshDiagDiscoverTopology()
pour fournir des informations sur un routeur détecté.
Lorsque aError
est défini sur OT_ERROR_PENDING
, cela signifie que la découverte n'est pas encore terminée, qu'il y aura d'autres routeurs à découvrir et que le rappel sera à nouveau invoqué.
Détails | |||||||
---|---|---|---|---|---|---|---|
Paramètres |
|
otMeshDiagDiscoverConfig
struct otMeshDiagDiscoverConfig otMeshDiagDiscoverConfig
Représente l'ensemble des configurations utilisées lors de la découverte de la topologie du maillage, indiquant les éléments à découvrir.
otMeshDiagIp6AddrIterator
struct otMeshDiagIp6AddrIterator otMeshDiagIp6AddrIterator
Itérateur opaque permettant d'itérer la liste des adresses IPv6 d'un routeur.
Les pointeurs vers une instance de ce type sont fournis dans otMeshDiagRouterInfo
.
otMeshDiagQueryChildTableCallback
void(* otMeshDiagQueryChildTableCallback)(otError aError, const otMeshDiagChildEntry *aChildEntry, void *aContext)
Représente le rappel utilisé par otMeshDiagQueryChildTable()
pour fournir des informations sur les entrées de la table enfant.
Si aError
est défini sur OT_ERROR_PENDING
, cela signifie que la table comporte encore d'autres entrées et que le rappel est à nouveau appelé.
Détails | |||||||
---|---|---|---|---|---|---|---|
Paramètres |
|
otMeshDiagQueryRouterNeighborTableCallback
void(* otMeshDiagQueryRouterNeighborTableCallback)(otError aError, const otMeshDiagRouterNeighborEntry *aNeighborEntry, void *aContext)
Représente le rappel utilisé par otMeshDiagQueryRouterNeighborTable()
pour fournir des informations sur les entrées de la table de routeur voisines.
Si aError
est défini sur OT_ERROR_PENDING
, cela signifie que la table comporte encore d'autres entrées et que le rappel est à nouveau appelé.
Détails | |||||||
---|---|---|---|---|---|---|---|
Paramètres |
|
otMeshDiagRouterInfo
struct otMeshDiagRouterInfo otMeshDiagRouterInfo
Représente les informations sur un routeur du réseau maillé Thread découvertes à l'aide de otMeshDiagDiscoverTopology()
.
otMeshDiagRouterNeighborEntry
struct otMeshDiagRouterNeighborEntry otMeshDiagRouterNeighborEntry
Représente les informations sur l'entrée du voisin du routeur à partir de otMeshDiagQueryRouterNeighborTable()
.
mSupportsErrRate
indique si la fonctionnalité de suivi des erreurs est compatible ou non, et si les valeurs mFrameErrorRate
et mMessageErrorRate
sont valides. Le taux d'erreur de trame suit les erreurs de trame (vers l'enfant) au niveau de la couche MAC, tandis que mMessageErrorRate
suit le taux d'erreur des messages IPv6 (au-dessus de la couche MAC et après les nouvelles tentatives MAC) lorsqu'un message IPv6 est abandonné. Par exemple, si le message est volumineux et nécessite une fragmentation 6LoWPAN, le message tx est considéré comme ayant échoué si l'un de ses fragments de trame tx échoue (par exemple, jamais confirmé).
distantes
otMeshDiagCancel
void otMeshDiagCancel( otInstance *aInstance )
Annule une découverte de topologie en cours s'il y en a une, sinon aucune action n'est requise.
Lorsque la découverte en cours est annulée, le rappel de otMeshDiagDiscoverTopology()
n'est plus appelé.
otMeshDiagDiscoverTopology
otError otMeshDiagDiscoverTopology( otInstance *aInstance, const otMeshDiagDiscoverConfig *aConfig, otMeshDiagDiscoverCallback aCallback, void *aContext )
Démarre la découverte de la topologie du réseau.
Détails | |||||||||
---|---|---|---|---|---|---|---|---|---|
Paramètres |
|
||||||||
Valeurs de retour |
|
otMeshDiagGetNextChildInfo
otError otMeshDiagGetNextChildInfo( otMeshDiagChildIterator *aIterator, otMeshDiagChildInfo *aChildInfo )
Il itère les enfants découverts d'un routeur.
Cette fonction DOIT être utilisée à partir du rappel otMeshDiagDiscoverCallback()
et utiliser mChildIterator
à partir de la struct aRouterInfo
fournie comme entrée pour le rappel.
Détails | |||||
---|---|---|---|---|---|
Paramètres |
|
||||
Valeurs de retour |
|
otMeshDiagGetNextIp6Address
otError otMeshDiagGetNextIp6Address( otMeshDiagIp6AddrIterator *aIterator, otIp6Address *aIp6Address )
Itération des adresses IPv6 découvertes d'un routeur ou d'un enfant MTD.
DOIT être utilisé
- à partir du rappel
otMeshDiagDiscoverCallback()
et utiliser l'mIp6AddrIterator
à partir de la structaRouterInfo
fournie comme entrée du rappel ; ou - à partir du rappel
otMeshDiagChildIp6AddrsCallback()
avec leaIp6AddrIterator
fourni.
Détails | |||||
---|---|---|---|---|---|
Paramètres |
|
||||
Valeurs de retour |
|
otMeshDiagQueryChildTable
otError otMeshDiagQueryChildTable( otInstance *aInstance, uint16_t aRloc16, otMeshDiagQueryChildTableCallback aCallback, void *aContext )
Lance une requête pour la table enfant pour un routeur donné.
Détails | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
Paramètres |
|
||||||||||
Valeurs de retour |
|
otMeshDiagQueryChildrenIp6Addrs
otError otMeshDiagQueryChildrenIp6Addrs( otInstance *aInstance, uint16_t aRloc16, otMeshDiagChildIp6AddrsCallback aCallback, void *aContext )
Envoie une requête à un parent pour récupérer les adresses IPv6 de tous ses enfants MTD.
Détails | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
Paramètres |
|
||||||||||
Valeurs de retour |
|
otMeshDiagQueryRouterNeighborTable
otError otMeshDiagQueryRouterNeighborTable( otInstance *aInstance, uint16_t aRloc16, otMeshDiagQueryRouterNeighborTableCallback aCallback, void *aContext )
Lance une requête pour la table des voisins du routeur pour un routeur donné.
Détails | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
Paramètres |
|
||||||||||
Valeurs de retour |
|
Macros
OT_MESH_DIAG_VERSION_UNKNOWN
OT_MESH_DIAG_VERSION_UNKNOWN 0xffff
Indique que la version de Thread est inconnue.
Utilisé dans otMeshDiagRouterInfo
pour la propriété mVersion
lorsque l'appareil ne fournit pas sa version. Cela indique que l'appareil est probablement équipé de la version 1.3.0 (valeur de version 4) ou d'une version antérieure.
Ressources
Les sujets de référence de l'API OpenThread proviennent du code source, disponible sur GitHub. Pour en savoir plus ou pour contribuer à notre documentation, consultez la section Ressources.