Diagnóstico da rede mesh
Este módulo inclui definições e funções para diagnósticos de malha.
Resumo
As APIs Mesh Diagnostics exigem OPENTHREAD_CONFIG_MESH_DIAG_ENABLE
e OPENTHREAD_FTD
.
Typedefs |
|
---|---|
otMeshDiagChildEntry
|
typedefstruct otMeshDiagChildEntry
Representa informações sobre uma entrada filha de otMeshDiagQueryChildTable() . |
otMeshDiagChildInfo
|
typedefstruct otMeshDiagChildInfo
Representa informações sobre um filho descoberto na malha Thread usando otMeshDiagDiscoverTopology() . |
otMeshDiagChildIp6AddrsCallback)(otError aError, uint16_t aChildRloc16, otMeshDiagIp6AddrIterator *aIp6AddrIterator, void *aContext)
|
typedefvoid(*
Representa o callback usado por otMeshDiagQueryChildrenIp6Addrs() para fornecer informações sobre um filho do MTD e a lista de endereços IPv6 dele. |
otMeshDiagChildIterator
|
typedefstruct otMeshDiagChildIterator
Um iterador opaco para iterar a lista de filhos de um roteador. |
otMeshDiagDiscoverCallback)(otError aError, otMeshDiagRouterInfo *aRouterInfo, void *aContext)
|
typedefvoid(*
O tipo de ponteiro representa o callback usado pelo otMeshDiagDiscoverTopology() para fornecer informações sobre um roteador descoberto. |
otMeshDiagDiscoverConfig
|
typedefstruct otMeshDiagDiscoverConfig
Representa o conjunto de configurações usado ao descobrir a topologia de malha indicando quais itens descobrir. |
otMeshDiagIp6AddrIterator
|
typedefstruct otMeshDiagIp6AddrIterator
Um iterador opaco para iterar a lista de endereços IPv6 de um roteador. |
otMeshDiagQueryChildTableCallback)(otError aError, const otMeshDiagChildEntry *aChildEntry, void *aContext)
|
typedefvoid(*
Representa o callback usado por otMeshDiagQueryChildTable() para fornecer informações sobre entradas da tabela filha. |
otMeshDiagQueryRouterNeighborTableCallback)(otError aError, const otMeshDiagRouterNeighborEntry *aNeighborEntry, void *aContext)
|
typedefvoid(*
Representa o callback usado pelo otMeshDiagQueryRouterNeighborTable() para fornecer informações sobre as entradas da tabela do roteador vizinho. |
otMeshDiagRouterInfo
|
typedefstruct otMeshDiagRouterInfo
Representa informações sobre um roteador na malha Thread descobertas usando otMeshDiagDiscoverTopology() . |
otMeshDiagRouterNeighborEntry
|
typedef Representa informações sobre uma entrada vizinha do roteador de otMeshDiagQueryRouterNeighborTable() . |
remotas |
|
---|---|
otMeshDiagCancel(otInstance *aInstance)
|
void
Cancela uma descoberta de topologia em andamento, se houver uma. Caso contrário, nenhuma ação.
|
otMeshDiagDiscoverTopology(otInstance *aInstance, const otMeshDiagDiscoverConfig *aConfig, otMeshDiagDiscoverCallback aCallback, void *aContext)
|
Inicia a descoberta da topologia de rede.
|
otMeshDiagGetNextChildInfo(otMeshDiagChildIterator *aIterator, otMeshDiagChildInfo *aChildInfo)
|
Itera pelos filhos descobertos de um roteador.
|
otMeshDiagGetNextIp6Address(otMeshDiagIp6AddrIterator *aIterator, otIp6Address *aIp6Address)
|
Itera por meio dos endereços IPv6 descobertos de um roteador ou de um filho MTD.
|
otMeshDiagQueryChildTable(otInstance *aInstance, uint16_t aRloc16, otMeshDiagQueryChildTableCallback aCallback, void *aContext)
|
Inicia a consulta da tabela filha de um determinado roteador.
|
otMeshDiagQueryChildrenIp6Addrs(otInstance *aInstance, uint16_t aRloc16, otMeshDiagChildIp6AddrsCallback aCallback, void *aContext)
|
Envia uma consulta a um pai para recuperar os endereços IPv6 de todos os filhos MTD.
|
otMeshDiagQueryRouterNeighborTable(otInstance *aInstance, uint16_t aRloc16, otMeshDiagQueryRouterNeighborTableCallback aCallback, void *aContext)
|
Inicia a consulta da tabela vizinha do roteador de um determinado roteador.
|
Estruturas |
|
---|---|
otMeshDiagChildEntry |
Representa informações sobre uma entrada filha de |
otMeshDiagChildInfo |
Representa informações sobre um filho descoberto na malha Thread usando |
otMeshDiagDiscoverConfig |
Representa o conjunto de configurações usado ao descobrir a topologia de malha indicando quais itens descobrir. |
otMeshDiagRouterInfo |
Representa informações sobre um roteador na malha Thread descobertas usando |
otMeshDiagRouterNeighborEntry |
Representa informações sobre uma entrada vizinha do roteador de |
Typedefs
otMeshDiagChildEntry
struct otMeshDiagChildEntry otMeshDiagChildEntry
Representa informações sobre uma entrada filha de otMeshDiagQueryChildTable()
.
mSupportsErrRate
indica se o recurso de rastreamento de erros é compatível e os valores mFrameErrorRate
e mMessageErrorRate
são válidos. A taxa de erros de frame rastreia erros de tx de frame (em direção ao filho) na camada MAC, enquanto o mMessageErrorRate
rastreia a taxa de erro de mensagens do IPv6 (acima da camada do MAC e após novas tentativas do MAC) quando uma mensagem IPv6 é descartada. Por exemplo, se a mensagem for grande e exigir fragmentação 6LoWPAN, a mensagem tx será considerada com falha se uma das tx do frame de fragmento falhar (por exemplo, nunca confirmada).
otMeshDiagChildInfo
struct otMeshDiagChildInfo otMeshDiagChildInfo
Representa informações sobre um filho descoberto na malha Thread usando otMeshDiagDiscoverTopology()
.
otMeshDiagChildIp6AddrsCallback
void(* otMeshDiagChildIp6AddrsCallback)(otError aError, uint16_t aChildRloc16, otMeshDiagIp6AddrIterator *aIp6AddrIterator, void *aContext)
Representa o callback usado por otMeshDiagQueryChildrenIp6Addrs()
para fornecer informações sobre um filho do MTD e a lista de endereços IPv6 dele.
Quando aError
for OT_ERROR_PENDING
, isso indica que há mais filhos e que o callback será invocado novamente.
Detalhes | |||||||||
---|---|---|---|---|---|---|---|---|---|
Parâmetros |
|
otMeshDiagChildIterator
struct otMeshDiagChildIterator otMeshDiagChildIterator
Um iterador opaco para iterar a lista de filhos de um roteador.
Ponteiros para instância desse tipo são fornecidos em otMeshDiagRouterInfo
.
otMeshDiagDiscoverCallback
void(* otMeshDiagDiscoverCallback)(otError aError, otMeshDiagRouterInfo *aRouterInfo, void *aContext)
O tipo de ponteiro representa o callback usado pelo otMeshDiagDiscoverTopology()
para fornecer informações sobre um roteador descoberto.
Quando aError
for OT_ERROR_PENDING
, isso indica que a descoberta ainda não foi concluída e que haverá mais roteadores para descobrir, e o callback será invocado novamente.
Detalhes | |||||||
---|---|---|---|---|---|---|---|
Parâmetros |
|
otMeshDiagDiscoverConfig
struct otMeshDiagDiscoverConfig otMeshDiagDiscoverConfig
Representa o conjunto de configurações usado ao descobrir a topologia de malha indicando quais itens descobrir.
otMeshDiagIp6AddrIterator
struct otMeshDiagIp6AddrIterator otMeshDiagIp6AddrIterator
Um iterador opaco para iterar a lista de endereços IPv6 de um roteador.
Ponteiros para instância desse tipo são fornecidos em otMeshDiagRouterInfo
.
otMeshDiagQueryChildTableCallback
void(* otMeshDiagQueryChildTableCallback)(otError aError, const otMeshDiagChildEntry *aChildEntry, void *aContext)
Representa o callback usado por otMeshDiagQueryChildTable()
para fornecer informações sobre entradas da tabela filha.
Quando aError
é OT_ERROR_PENDING
, isso indica que a tabela ainda tem mais entradas e que o callback será invocado novamente.
Detalhes | |||||||
---|---|---|---|---|---|---|---|
Parâmetros |
|
otMeshDiagQueryRouterNeighborTableCallback
void(* otMeshDiagQueryRouterNeighborTableCallback)(otError aError, const otMeshDiagRouterNeighborEntry *aNeighborEntry, void *aContext)
Representa o callback usado pelo otMeshDiagQueryRouterNeighborTable()
para fornecer informações sobre as entradas da tabela do roteador vizinho.
Quando aError
é OT_ERROR_PENDING
, isso indica que a tabela ainda tem mais entradas e que o callback será invocado novamente.
Detalhes | |||||||
---|---|---|---|---|---|---|---|
Parâmetros |
|
otMeshDiagRouterInfo
struct otMeshDiagRouterInfo otMeshDiagRouterInfo
Representa informações sobre um roteador na malha Thread descobertas usando otMeshDiagDiscoverTopology()
.
otMeshDiagRouterNeighborEntry
struct otMeshDiagRouterNeighborEntry otMeshDiagRouterNeighborEntry
Representa informações sobre uma entrada vizinha do roteador de otMeshDiagQueryRouterNeighborTable()
.
mSupportsErrRate
indica se o recurso de rastreamento de erros é compatível e os valores mFrameErrorRate
e mMessageErrorRate
são válidos. A taxa de erros de frame rastreia erros de tx de frame (em direção ao filho) na camada MAC, enquanto o mMessageErrorRate
rastreia a taxa de erro de mensagens do IPv6 (acima da camada do MAC e após novas tentativas do MAC) quando uma mensagem IPv6 é descartada. Por exemplo, se a mensagem for grande e exigir fragmentação 6LoWPAN, a mensagem tx será considerada com falha se uma das tx do frame de fragmento falhar (por exemplo, nunca confirmada).
remotas
otMeshDiagCancel
void otMeshDiagCancel( otInstance *aInstance )
Cancela uma descoberta de topologia em andamento, se houver uma. Caso contrário, nenhuma ação.
Quando a descoberta em andamento for cancelada, o callback de otMeshDiagDiscoverTopology()
não será mais chamado.
otMeshDiagDiscoverTopology
otError otMeshDiagDiscoverTopology( otInstance *aInstance, const otMeshDiagDiscoverConfig *aConfig, otMeshDiagDiscoverCallback aCallback, void *aContext )
Inicia a descoberta da topologia de rede.
Detalhes | |||||||||
---|---|---|---|---|---|---|---|---|---|
Parâmetros |
|
||||||||
Valores de retorno |
|
otMeshDiagGetNextChildInfo
otError otMeshDiagGetNextChildInfo( otMeshDiagChildIterator *aIterator, otMeshDiagChildInfo *aChildInfo )
Itera pelos filhos descobertos de um roteador.
Essa função PRECISA ser usada no callback otMeshDiagDiscoverCallback()
e usar o mChildIterator
do struct aRouterInfo
fornecido como entrada para o callback.
Detalhes | |||||
---|---|---|---|---|---|
Parâmetros |
|
||||
Valores de retorno |
|
otMeshDiagGetNextIp6Address
otError otMeshDiagGetNextIp6Address( otMeshDiagIp6AddrIterator *aIterator, otIp6Address *aIp6Address )
Itera por meio dos endereços IPv6 descobertos de um roteador ou de um filho MTD.
DEVE ser usado
- do callback
otMeshDiagDiscoverCallback()
e use omIp6AddrIterator
do structaRouterInfo
fornecido como entrada para o callback. - do callback
otMeshDiagChildIp6AddrsCallback()
com oaIp6AddrIterator
fornecido.
Detalhes | |||||
---|---|---|---|---|---|
Parâmetros |
|
||||
Valores de retorno |
|
otMeshDiagQueryChildTable
otError otMeshDiagQueryChildTable( otInstance *aInstance, uint16_t aRloc16, otMeshDiagQueryChildTableCallback aCallback, void *aContext )
Inicia a consulta da tabela filha de um determinado roteador.
Detalhes | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
Parâmetros |
|
||||||||||
Valores de retorno |
|
otMeshDiagQueryChildrenIp6Addrs
otError otMeshDiagQueryChildrenIp6Addrs( otInstance *aInstance, uint16_t aRloc16, otMeshDiagChildIp6AddrsCallback aCallback, void *aContext )
Envia uma consulta a um pai para recuperar os endereços IPv6 de todos os filhos MTD.
Detalhes | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
Parâmetros |
|
||||||||||
Valores de retorno |
|
otMeshDiagQueryRouterNeighborTable
otError otMeshDiagQueryRouterNeighborTable( otInstance *aInstance, uint16_t aRloc16, otMeshDiagQueryRouterNeighborTableCallback aCallback, void *aContext )
Inicia a consulta da tabela vizinha do roteador de um determinado roteador.
Detalhes | |||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
Parâmetros |
|
||||||||||
Valores de retorno |
|
Macros
OT_MESH_DIAG_VERSION_UNKNOWN
OT_MESH_DIAG_VERSION_UNKNOWN 0xffff
Especifica que a versão do Thread é desconhecida.
É usado no otMeshDiagRouterInfo
da propriedade mVersion
quando o dispositivo não fornece a própria versão. Isso indica que o dispositivo provavelmente está executando a versão 1.3.0 (valor da versão 4) ou anterior.
Recursos
Os tópicos de Referência da API OpenThread são originados do código-fonte, disponível no GitHub. Para mais informações ou para contribuir com nossa documentação, consulte Recursos.