Diagnóstico de mallas
En este módulo, se incluyen definiciones y funciones del diagnóstico de malla.
Resumen
Las APIs de diagnóstico de malla requieren OPENTHREAD_CONFIG_MESH_DIAG_ENABLE
y OPENTHREAD_FTD
.
Typedefs |
|
---|---|
otMeshDiagChildEntry
|
typedefstruct otMeshDiagChildEntry
Representa información sobre una entrada secundaria de otMeshDiagQueryChildTable() . |
otMeshDiagChildInfo
|
typedefstruct otMeshDiagChildInfo
Representa la información sobre un elemento secundario descubierto en la malla de Thread con otMeshDiagDiscoverTopology() . |
otMeshDiagChildIp6AddrsCallback)(otError aError, uint16_t aChildRloc16, otMeshDiagIp6AddrIterator *aIp6AddrIterator, void *aContext)
|
typedefvoid(*
Representa la devolución de llamada que usa otMeshDiagQueryChildrenIp6Addrs() para proporcionar información sobre un elemento secundario de MTD y su lista de direcciones IPv6. |
otMeshDiagChildIterator
|
typedefstruct otMeshDiagChildIterator
Un iterador opaco para iterar en una lista de elementos secundarios de un router. |
otMeshDiagDiscoverCallback)(otError aError, otMeshDiagRouterInfo *aRouterInfo, void *aContext)
|
typedefvoid(*
El tipo de puntero representa la devolución de llamada que usa otMeshDiagDiscoverTopology() para proporcionar información sobre un router detectado. |
otMeshDiagDiscoverConfig
|
typedefstruct otMeshDiagDiscoverConfig
Representa el conjunto de parámetros de configuración que se usan cuando se descubre la topología de malla, en la que se indica qué elementos se deben descubrir. |
otMeshDiagIp6AddrIterator
|
typedefstruct otMeshDiagIp6AddrIterator
Un iterador opaco para iterar en una lista de direcciones IPv6 de un router. |
otMeshDiagQueryChildTableCallback)(otError aError, const otMeshDiagChildEntry *aChildEntry, void *aContext)
|
typedefvoid(*
Representa la devolución de llamada que usa otMeshDiagQueryChildTable() para proporcionar información sobre las entradas de tablas secundarias. |
otMeshDiagQueryRouterNeighborTableCallback)(otError aError, const otMeshDiagRouterNeighborEntry *aNeighborEntry, void *aContext)
|
typedefvoid(*
Representa la devolución de llamada que usa otMeshDiagQueryRouterNeighborTable() para proporcionar información sobre las entradas de la tabla del router vecino. |
otMeshDiagRouterInfo
|
typedefstruct otMeshDiagRouterInfo
Representa la información sobre un router en la malla de Thread que se descubrió mediante otMeshDiagDiscoverTopology() . |
otMeshDiagRouterNeighborEntry
|
typedef Representa la información sobre la entrada de un vecino del router desde otMeshDiagQueryRouterNeighborTable() . |
remotas |
|
---|---|
otMeshDiagCancel(otInstance *aInstance)
|
void
Cancela un descubrimiento de topología continuo si hay uno; de lo contrario, no se realizará ninguna acción.
|
otMeshDiagDiscoverTopology(otInstance *aInstance, const otMeshDiagDiscoverConfig *aConfig, otMeshDiagDiscoverCallback aCallback, void *aContext)
|
Inicia el descubrimiento de la topología de red.
|
otMeshDiagGetNextChildInfo(otMeshDiagChildIterator *aIterator, otMeshDiagChildInfo *aChildInfo)
|
Itera a través de los elementos secundarios descubiertos de un router.
|
otMeshDiagGetNextIp6Address(otMeshDiagIp6AddrIterator *aIterator, otIp6Address *aIp6Address)
|
Itera a través de las direcciones IPv6 descubiertas de un router o un elemento secundario de MTD.
|
otMeshDiagQueryChildTable(otInstance *aInstance, uint16_t aRloc16, otMeshDiagQueryChildTableCallback aCallback, void *aContext)
|
Inicia la consulta en la tabla secundaria de un router determinado.
|
otMeshDiagQueryChildrenIp6Addrs(otInstance *aInstance, uint16_t aRloc16, otMeshDiagChildIp6AddrsCallback aCallback, void *aContext)
|
Envía una consulta a un elemento superior para recuperar las direcciones IPv6 de todos sus elementos secundarios de MTD.
|
otMeshDiagQueryRouterNeighborTable(otInstance *aInstance, uint16_t aRloc16, otMeshDiagQueryRouterNeighborTableCallback aCallback, void *aContext)
|
Inicia la consulta de la tabla de vecino de router de un router determinado.
|
Structs |
|
---|---|
otMeshDiagChildEntry |
Representa información sobre una entrada secundaria de |
otMeshDiagChildInfo |
Representa la información sobre un elemento secundario descubierto en la malla de Thread con |
otMeshDiagDiscoverConfig |
Representa el conjunto de parámetros de configuración que se usan cuando se descubre la topología de malla, en la que se indica qué elementos se deben descubrir. |
otMeshDiagRouterInfo |
Representa la información sobre un router en la malla de Thread que se descubrió mediante |
otMeshDiagRouterNeighborEntry |
Representa la información sobre la entrada de un vecino del router desde |
Typedefs
otMeshDiagChildEntry
struct otMeshDiagChildEntry otMeshDiagChildEntry
Representa información sobre una entrada secundaria de otMeshDiagQueryChildTable()
.
mSupportsErrRate
indica si se admite la función de seguimiento de errores y si los valores mFrameErrorRate
y mMessageErrorRate
son válidos. La tasa de errores de trama realiza un seguimiento de los errores de fotogramas (hacia el elemento secundario) en la capa de MAC, mientras que mMessageErrorRate
rastrea la tasa de errores de mensajes IPv6 (por encima de la capa de MAC y después de los reintentos de MAC) cuando se descarta un mensaje IPv6. Por ejemplo, si el mensaje es grande y requiere fragmentación 6LoWPAN, se considera que el mensaje tx falló si uno de sus fotogramas de fragmento falla (por ejemplo, nunca se confirma).
otMeshDiagChildInfo
struct otMeshDiagChildInfo otMeshDiagChildInfo
Representa la información sobre un elemento secundario descubierto en la malla de Thread con otMeshDiagDiscoverTopology()
.
otMeshDiagChildIp6AddrsCallback
void(* otMeshDiagChildIp6AddrsCallback)(otError aError, uint16_t aChildRloc16, otMeshDiagIp6AddrIterator *aIp6AddrIterator, void *aContext)
Representa la devolución de llamada que usa otMeshDiagQueryChildrenIp6Addrs()
para proporcionar información sobre un elemento secundario de MTD y su lista de direcciones IPv6.
Cuando aError
es OT_ERROR_PENDING
, indica que hay más elementos secundarios y se volverá a invocar la devolución de llamada.
Detalles | |||||||||
---|---|---|---|---|---|---|---|---|---|
Parámetros |
|
otMeshDiagChildIterator
struct otMeshDiagChildIterator otMeshDiagChildIterator
Un iterador opaco para iterar en una lista de elementos secundarios de un router.
Los punteros a instancia de este tipo se proporcionan en otMeshDiagRouterInfo
.
otMeshDiagDiscoverCallback
void(* otMeshDiagDiscoverCallback)(otError aError, otMeshDiagRouterInfo *aRouterInfo, void *aContext)
El tipo de puntero representa la devolución de llamada que usa otMeshDiagDiscoverTopology()
para proporcionar información sobre un router detectado.
Cuando aError
es OT_ERROR_PENDING
, indica que la detección aún no finalizó y que habrá más routers para descubrir, y se invocará la devolución de llamada nuevamente.
Detalles | |||||||
---|---|---|---|---|---|---|---|
Parámetros |
|
otMeshDiagDiscoverConfig
struct otMeshDiagDiscoverConfig otMeshDiagDiscoverConfig
Representa el conjunto de parámetros de configuración que se usan cuando se descubre la topología de malla, en la que se indica qué elementos se deben descubrir.
otMeshDiagIp6AddrIterator
struct otMeshDiagIp6AddrIterator otMeshDiagIp6AddrIterator
Un iterador opaco para iterar en una lista de direcciones IPv6 de un router.
Los punteros a instancia de este tipo se proporcionan en otMeshDiagRouterInfo
.
otMeshDiagQueryChildTableCallback
void(* otMeshDiagQueryChildTableCallback)(otError aError, const otMeshDiagChildEntry *aChildEntry, void *aContext)
Representa la devolución de llamada que usa otMeshDiagQueryChildTable()
para proporcionar información sobre las entradas de tablas secundarias.
Cuando aError
es OT_ERROR_PENDING
, indica que la tabla todavía tiene más entradas y se invocará la devolución de llamada nuevamente.
Detalles | |||||||
---|---|---|---|---|---|---|---|
Parámetros |
|
otMeshDiagQueryRouterNeighborTableCallback
void(* otMeshDiagQueryRouterNeighborTableCallback)(otError aError, const otMeshDiagRouterNeighborEntry *aNeighborEntry, void *aContext)
Representa la devolución de llamada que usa otMeshDiagQueryRouterNeighborTable()
para proporcionar información sobre las entradas de la tabla del router vecino.
Cuando aError
es OT_ERROR_PENDING
, indica que la tabla todavía tiene más entradas y se invocará la devolución de llamada nuevamente.
Detalles | |||||||
---|---|---|---|---|---|---|---|
Parámetros |
|
otMeshDiagRouterInfo
struct otMeshDiagRouterInfo otMeshDiagRouterInfo
Representa la información sobre un router en la malla de Thread que se descubrió mediante otMeshDiagDiscoverTopology()
.
otMeshDiagRouterNeighborEntry
struct otMeshDiagRouterNeighborEntry otMeshDiagRouterNeighborEntry
Representa la información sobre la entrada de un vecino del router desde otMeshDiagQueryRouterNeighborTable()
.
mSupportsErrRate
indica si se admite la función de seguimiento de errores y si los valores mFrameErrorRate
y mMessageErrorRate
son válidos. La tasa de errores de trama realiza un seguimiento de los errores de fotogramas (hacia el elemento secundario) en la capa de MAC, mientras que mMessageErrorRate
rastrea la tasa de errores de mensajes IPv6 (por encima de la capa de MAC y después de los reintentos de MAC) cuando se descarta un mensaje IPv6. Por ejemplo, si el mensaje es grande y requiere fragmentación 6LoWPAN, se considera que el mensaje tx falló si uno de sus fotogramas de fragmento falla (por ejemplo, nunca se confirma).
remotas
otMeshDiagCancel
void otMeshDiagCancel( otInstance *aInstance )
Cancela un descubrimiento de topología continuo si hay uno; de lo contrario, no se realizará ninguna acción.
Cuando se cancele la detección en curso, ya no se llamará a la devolución de llamada de otMeshDiagDiscoverTopology()
.
otMeshDiagDiscoverTopology
otError otMeshDiagDiscoverTopology( otInstance *aInstance, const otMeshDiagDiscoverConfig *aConfig, otMeshDiagDiscoverCallback aCallback, void *aContext )
Inicia el descubrimiento de la topología de red.
Detalles | |||||||||
---|---|---|---|---|---|---|---|---|---|
Parámetros |
|
||||||||
Valores que se muestran |
|
otMeshDiagGetNextChildInfo
otError otMeshDiagGetNextChildInfo( otMeshDiagChildIterator *aIterator, otMeshDiagChildInfo *aChildInfo )
Itera a través de los elementos secundarios descubiertos de un router.
Esta función se DEBE usar desde la devolución de llamada otMeshDiagDiscoverCallback()
y usar el mChildIterator
de la estructura aRouterInfo
que se proporciona como entrada para la devolución de llamada.
Detalles | |||||
---|---|---|---|---|---|
Parámetros |
|
||||
Valores que se muestran |
|
otMeshDiagGetNextIp6Address
otError otMeshDiagGetNextIp6Address( otMeshDiagIp6AddrIterator *aIterator, otIp6Address *aIp6Address )
Itera a través de las direcciones IPv6 descubiertas de un router o un elemento secundario de MTD.
DEBE usarse
- desde la devolución de llamada
otMeshDiagDiscoverCallback()
y usa elmIp6AddrIterator
del structaRouterInfo
que se proporciona como entrada para la devolución de llamada. - desde la devolución de llamada
otMeshDiagChildIp6AddrsCallback()
junto con losaIp6AddrIterator
proporcionados.
Detalles | |||||
---|---|---|---|---|---|
Parámetros |
|
||||
Valores que se muestran |
|
otMeshDiagQueryChildTable
otError otMeshDiagQueryChildTable( otInstance *aInstance, uint16_t aRloc16, otMeshDiagQueryChildTableCallback aCallback, void *aContext )
Inicia la consulta en la tabla secundaria de un router determinado.
Detalles | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
Parámetros |
|
||||||||||
Valores que se muestran |
|
otMeshDiagQueryChildrenIp6Addrs
otError otMeshDiagQueryChildrenIp6Addrs( otInstance *aInstance, uint16_t aRloc16, otMeshDiagChildIp6AddrsCallback aCallback, void *aContext )
Envía una consulta a un elemento superior para recuperar las direcciones IPv6 de todos sus elementos secundarios de MTD.
Detalles | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
Parámetros |
|
||||||||||
Valores que se muestran |
|
otMeshDiagQueryRouterNeighborTable
otError otMeshDiagQueryRouterNeighborTable( otInstance *aInstance, uint16_t aRloc16, otMeshDiagQueryRouterNeighborTableCallback aCallback, void *aContext )
Inicia la consulta de la tabla de vecino de router de un router determinado.
Detalles | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
Parámetros |
|
||||||||||
Valores que se muestran |
|
Macros
OT_MESH_DIAG_VERSION_UNKNOWN
OT_MESH_DIAG_VERSION_UNKNOWN 0xffff
Especifica que la versión de Thread es desconocida.
Se usa en otMeshDiagRouterInfo
para la propiedad mVersion
cuando el dispositivo no proporciona su versión. Indica que el dispositivo probablemente ejecuta la versión 1.3.0 (valor de versión 4) o una anterior.
Recursos
Los temas de referencia de la API de OpenThread se originan a partir del código fuente, disponible en GitHub. Para obtener más información o contribuir a nuestra documentación, consulta Recursos.