O Google está comprometido em promover a equidade racial para as comunidades negras. Veja como.
Esta página foi traduzida pela API Cloud Translation.
Switch to English

Monitoramento de canal

Este módulo inclui funções para o recurso de monitoramento de canais.

Resumo

As funções neste módulo estão disponíveis quando o recurso de monitor de canal ( OPENTHREAD_CONFIG_CHANNEL_MONITOR_ENABLE ) está ativado.

O monitoramento de canais monitorará periodicamente todos os canais para ajudar a determinar os canais mais limpos (canais com menos interferência).

Quando o monitoramento de canal está ativo, é realizada uma verificação de energia com duração zero, coletando uma única amostra RSSI em cada canal por intervalo de amostra. As amostras de RSSI são comparadas com um limite de RSSI pré-especificado. Como um indicador da qualidade do canal, o módulo de monitoramento de canais mantém e fornece a taxa / porcentagem média de amostras de RSSI que estão acima do limite dentro de (aproximadamente) uma janela de amostra especificada (referida como ocupação de canal).

Funções

otChannelMonitorGetChannelOccupancy ( otInstance *aInstance, uint8_t aChannel)
uint16_t
Obtém a ocupação atual do canal para um determinado canal.
otChannelMonitorGetRssiThreshold ( otInstance *aInstance)
int8_t
Obtenha o limite de RSSI de monitoramento de canal em dBm.
otChannelMonitorGetSampleCount ( otInstance *aInstance)
uint32_t
Obtenha o número total de amostras de RSSI de monitoramento de canais (por canal).
otChannelMonitorGetSampleInterval ( otInstance *aInstance)
uint32_t
Obtenha o intervalo de amostra do monitoramento de canal em milissegundos.
otChannelMonitorGetSampleWindow ( otInstance *aInstance)
uint32_t
Obtenha o monitoramento médio do comprimento médio da janela de amostra (número de amostras).
otChannelMonitorIsEnabled ( otInstance *aInstance)
bool
Esta função indica se a operação de Monitoramento de canal está ativada e em execução.
otChannelMonitorSetEnabled ( otInstance *aInstance, bool aEnabled)
Esta função ativa / desativa a operação de Monitoramento de Canal.

Funções

otChannelMonitorGetChannelOccupancy

uint16_t otChannelMonitorGetChannelOccupancy(
  otInstance *aInstance,
  uint8_t aChannel
)

Obtém a ocupação atual do canal para um determinado canal.

O valor de ocupação do canal representa a taxa / porcentagem média de amostras de RSSI que estavam acima do limite de RSSI (amostras "ruins" de RSSI).

Para as primeiras amostras da "janela de amostra", a média é mantida como a porcentagem real (ou seja, a proporção do número de amostras "ruins" pelo número total de amostras). Após amostras de "janela", a média usa uma média móvel ponderada exponencialmente. Na prática, isso significa que a média é representativa das últimas amostras de até 3 * window com maior peso dado às amostras mais recentes do kSampleWindow .

O valor máximo de 0xffff indica que todas as amostras de RSSI estavam acima do limite de RSSI (ou seja, 100% das amostras eram "ruins").

Detalhes
Parâmetros
[in] aInstance
Um ponteiro para uma instância do OpenThread.
[in] aChannel
O canal para o qual obter a ocupação do link.
Devoluções
A ocupação atual do canal para o canal fornecido.

otChannelMonitorGetRssiThreshold

int8_t otChannelMonitorGetRssiThreshold(
  otInstance *aInstance
)

Obtenha o limite de RSSI de monitoramento de canal em dBm.

Detalhes
Parâmetros
[in] aInstance
Um ponteiro para uma instância do OpenThread.
Devoluções
O limite de RSSI em dBm.

otChannelMonitorGetSampleCount

uint32_t otChannelMonitorGetSampleCount(
  otInstance *aInstance
)

Obtenha o número total de amostras de RSSI de monitoramento de canais (por canal).

A contagem indica o número total de amostras por canal por módulo de monitoramento de canais desde o início (desde que a interface de rede Thread foi ativada).

Detalhes
Parâmetros
[in] aInstance
Um ponteiro para uma instância do OpenThread.
Devoluções
Número total de amostras de RSSI (por canal) coletadas até o momento.

otChannelMonitorGetSampleInterval

uint32_t otChannelMonitorGetSampleInterval(
  otInstance *aInstance
)

Obtenha o intervalo de amostra do monitoramento de canal em milissegundos.

Detalhes
Parâmetros
[in] aInstance
Um ponteiro para uma instância do OpenThread.
Devoluções
O intervalo de amostra do monitor de canal em milissegundos.

otChannelMonitorGetSampleWindow

uint32_t otChannelMonitorGetSampleWindow(
  otInstance *aInstance
)

Obtenha o monitoramento médio do comprimento médio da janela de amostra (número de amostras).

Detalhes
Parâmetros
[in] aInstance
Um ponteiro para uma instância do OpenThread.
Devoluções
A janela de amostra média.

otChannelMonitorIsEnabled

bool otChannelMonitorIsEnabled(
  otInstance *aInstance
)

Esta função indica se a operação de Monitoramento de canal está ativada e em execução.

Detalhes
Parâmetros
[in] aInstance
Um ponteiro para uma instância do OpenThread.
Devoluções
TRUE se a operação de Monitoramento de Canal estiver ativada, FALSE caso contrário.

otChannelMonitorSetEnabled

 otError otChannelMonitorSetEnabled(
  otInstance *aInstance,
  bool aEnabled
)

Esta função ativa / desativa a operação de Monitoramento de Canal.

Após o início da operação, todos os dados coletados anteriormente são limpos. No entanto, após a operação ser desativada, os dados coletados anteriormente ainda são válidos e podem ser lidos.

Detalhes
Parâmetros
[in] aInstance
Um ponteiro para uma instância do OpenThread.
[in] aEnabled
TRUE para habilitar / iniciar a operação de Monitoramento de Canal, FALSE para desabilitar / parar.
Retornar valores
OT_ERROR_NONE
Estado do Monitoramento de Canal alterado com sucesso
OT_ERROR_ALREADY
O monitoramento de canais já está no mesmo estado.