gerente de canal
Este módulo inclui funções para o Gerenciador de canais.
Resumo
As funções deste módulo estão disponíveis quando o recurso Gerenciador de canais (OPENTHREAD_CONFIG_CHANNEL_MANAGER_ENABLE) está ativado. O Gerenciador de canais está disponível somente em uma versão FTD.
Funções |
|
|---|---|
otChannelManagerGetAutoChannelSelectionEnabled(otInstance *aInstance)
|
bool
Indica se a funcionalidade de seleção automática de canais está ativada ou não.
|
otChannelManagerGetAutoChannelSelectionInterval(otInstance *aInstance)
|
uint32_t
Obtém o intervalo de tempo (em segundos) usado pela funcionalidade de seleção automática de canal.
|
otChannelManagerGetCcaFailureRateThreshold(otInstance *aInstance)
|
uint16_t
Recebe o limite da taxa de falha da CCA.
|
otChannelManagerGetDelay(otInstance *aInstance)
|
uint16_t
Obtém o atraso (em segundos) usado pelo Gerenciador de canais para uma alteração de canal.
|
otChannelManagerGetFavoredChannels(otInstance *aInstance)
|
uint32_t
Recebe a máscara de canal favorecida.
|
otChannelManagerGetRequestedChannel(otInstance *aInstance)
|
uint8_t
Obtém o canal da última chamada bem-sucedida para
otChannelManagerRequestChannelChange() |
otChannelManagerGetSupportedChannels(otInstance *aInstance)
|
uint32_t
Recebe a máscara de canal compatível.
|
otChannelManagerRequestChannelChange(otInstance *aInstance, uint8_t aChannel)
|
void
Solicita uma alteração do canal da rede Thread.
|
otChannelManagerRequestChannelSelect(otInstance *aInstance, bool aSkipQualityCheck)
|
Solicita que
ChannelManager verifique e selecione um novo canal e inicie uma alteração de canal. |
otChannelManagerSetAutoChannelSelectionEnabled(otInstance *aInstance, bool aEnabled)
|
void
Ativa ou desativa a funcionalidade de seleção automática de canais.
|
otChannelManagerSetAutoChannelSelectionInterval(otInstance *aInstance, uint32_t aInterval)
|
Define o intervalo de tempo (em segundos) usado pela funcionalidade de seleção automática de canal.
|
otChannelManagerSetCcaFailureRateThreshold(otInstance *aInstance, uint16_t aThreshold)
|
void
Define o limite da taxa de falha da CCA.
|
otChannelManagerSetDelay(otInstance *aInstance, uint16_t aDelay)
|
Define o atraso (em segundos) usado para uma alteração de canal.
|
otChannelManagerSetFavoredChannels(otInstance *aInstance, uint32_t aChannelMask)
|
void
Define a máscara de canal favorecida.
|
otChannelManagerSetSupportedChannels(otInstance *aInstance, uint32_t aChannelMask)
|
void
Define a máscara de canal compatível.
|
Funções
OtChannelManagerGetAutoChannelSelectionEnabled
bool otChannelManagerGetAutoChannelSelectionEnabled( otInstance *aInstance )
Indica se a funcionalidade de seleção automática de canais está ativada ou não.
| Detalhes | |||
|---|---|---|---|
| Parâmetros |
|
||
| Retorna |
VERDADEIRO se ativado, FALSO se desativado.
|
||
OtChannelManagerGetAutoChannelSelectionInterval
uint32_t otChannelManagerGetAutoChannelSelectionInterval( otInstance *aInstance )
Obtém o intervalo de tempo (em segundos) usado pela funcionalidade de seleção automática de canal.
| Detalhes | |||
|---|---|---|---|
| Parâmetros |
|
||
| Retorna |
O intervalo em segundos.
|
||
OtChannelManagerGetCcaFailureRateThreshold
uint16_t otChannelManagerGetCcaFailureRateThreshold( otInstance *aInstance )
Recebe o limite da taxa de falha da CCA.
| Detalhes | |||
|---|---|---|---|
| Parâmetros |
|
||
| Retorna |
O limite da taxa de falha da CCA. O valor 0 mapeia para 0% e 0xffff é mapeado para 100%.
|
||
OtChannelManagerGetDelay
uint16_t otChannelManagerGetDelay( otInstance *aInstance )
Obtém o atraso (em segundos) usado pelo Gerenciador de canais para uma alteração de canal.
| Detalhes | |||
|---|---|---|---|
| Parâmetros |
|
||
| Retorna |
O atraso (em segundos) para a alteração de canal.
|
||
OtChannelManagerGetFavoredChannels
uint32_t otChannelManagerGetFavoredChannels( otInstance *aInstance )
Recebe a máscara de canal favorecida.
| Detalhes | |||
|---|---|---|---|
| Parâmetros |
|
||
| Retorna |
Os canais favoritos como uma bitmask.
|
||
OtChannelManagerGetRequestedChannel
uint8_t otChannelManagerGetRequestedChannel( otInstance *aInstance )
Obtém o canal da última chamada bem-sucedida para otChannelManagerRequestChannelChange()
| Detalhes | |
|---|---|
| Retorna |
O último canal solicitado ou zero, se ainda não houver uma solicitação de alteração de canal.
|
OtChannelManagerGetSupportedChannels
uint32_t otChannelManagerGetSupportedChannels( otInstance *aInstance )
Recebe a máscara de canal compatível.
| Detalhes | |||
|---|---|---|---|
| Parâmetros |
|
||
| Retorna |
Os canais compatíveis como uma bitmask.
|
||
OtChannelManagerRequestChannelChange
void otChannelManagerRequestChannelChange( otInstance *aInstance, uint8_t aChannel )
Solicita uma alteração do canal da rede Thread.
A rede muda para o canal especificado após um atraso especificado (consulte otChannelManagerSetDelay()). A alteração do canal é realizada atualizando o conjunto de dados operacional pendente.
Uma chamada subsequente cancelará uma alteração de canal solicitada anteriormente de maneira contínua.
| Detalhes | |||||
|---|---|---|---|---|---|
| Parâmetros |
|
||||
OtChannelManagerRequestChannelSelect
otError otChannelManagerRequestChannelSelect( otInstance *aInstance, bool aSkipQualityCheck )
Solicita que ChannelManager verifique e selecione um novo canal e inicie uma alteração de canal.
Ao contrário de otChannelManagerRequestChannelChange(), em que o canal precisa ser fornecido como um parâmetro, essa função pede ao ChannelManager para selecionar um canal sozinho (com base nas informações coletadas de qualidade do canal).
Depois de chamado, o gerente de canal executará as três etapas a seguir:
1) ChannelManager decide se a mudança do canal seria útil. Essa verificação poderá ser ignorada se aSkipQualityCheck for definida como verdadeira (forçando uma seleção de canais a acontecer e pulando a verificação de qualidade). Esta etapa usa as métricas de qualidade do link coletadas no dispositivo (como taxa de falhas de CCA, taxas de erro de frame e mensagem por vizinho etc.) para determinar se a qualidade atual do canal está no nível que justifica uma alteração de canal.
2) Se a primeira etapa for aprovada, ChannelManager selecionará um canal potencialmente melhor. Ele usa os dados de qualidade do canal coletados pelo módulo ChannelMonitor. Os canais compatíveis e favorecidos são usados nesta etapa. (consulte otChannelManagerSetSupportedChannels() e otChannelManagerSetFavoredChannels()).
3) Se o canal recém-selecionado for diferente do canal atual, ChannelManager solicita/inicia o processo de mudança de canal (invocando internamente um RequestChannelChange()).
| Detalhes | |||||
|---|---|---|---|---|---|
| Parâmetros |
|
||||
| Valores de retorno |
|
||||
OtChannelManagerSetAutoChannelSelectionEnabled
void otChannelManagerSetAutoChannelSelectionEnabled( otInstance *aInstance, bool aEnabled )
Ativa ou desativa a funcionalidade de seleção automática de canais.
Quando ativado, ChannelManager invoca um RequestChannelSelect(false) periodicamente. O intervalo do período pode ser definido por SetAutoChannelSelectionInterval().
| Detalhes | |||||
|---|---|---|---|---|---|
| Parâmetros |
|
||||
OtChannelManagerSetAutoChannelSelectionInterval
otError otChannelManagerSetAutoChannelSelectionInterval( otInstance *aInstance, uint32_t aInterval )
Define o intervalo de tempo (em segundos) usado pela funcionalidade de seleção automática de canal.
| Detalhes | |||||
|---|---|---|---|---|---|
| Parâmetros |
|
||||
| Valores de retorno |
|
||||
OtChannelManagerSetCcaFailureRateThreshold
void otChannelManagerSetCcaFailureRateThreshold( otInstance *aInstance, uint16_t aThreshold )
Define o limite da taxa de falha da CCA.
| Detalhes | |||||
|---|---|---|---|---|---|
| Parâmetros |
|
||||
OtChannelManagerSetDelay
otError otChannelManagerSetDelay( otInstance *aInstance, uint16_t aDelay )
Define o atraso (em segundos) usado para uma alteração de canal.
Preferencialmente, o atraso deve ser maior do que o intervalo máximo de pesquisa de dados usado por todos os dispositivos com sono suspenso na rede Thread.
| Detalhes | |||||
|---|---|---|---|---|---|
| Parâmetros |
|
||||
| Valores de retorno |
|
||||
OtChannelManagerSetFavoredChannels
void otChannelManagerSetFavoredChannels( otInstance *aInstance, uint32_t aChannelMask )
Define a máscara de canal favorecida.
| Detalhes | |||||
|---|---|---|---|---|---|
| Parâmetros |
|
||||
OtChannelManagerSetSupportedChannels
void otChannelManagerSetSupportedChannels( otInstance *aInstance, uint32_t aChannelMask )
Define a máscara de canal compatível.
| Detalhes | |||||
|---|---|---|---|---|---|
| Parâmetros |
|
||||
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.