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 apenas em uma versão FTD.
Functions |
|
---|---|
otChannelManagerGetAutoChannelSelectionEnabled(otInstance *aInstance)
|
bool
Esta função indica se a funcionalidade de seleção automática de canais está ativada ou não.
|
otChannelManagerGetAutoChannelSelectionInterval(otInstance *aInstance)
|
uint32_t
Essa função recebe o intervalo de tempo (em segundos) usado pela funcionalidade de seleção automática de canal.
|
otChannelManagerGetCcaFailureRateThreshold(otInstance *aInstance)
|
uint16_t
Essa função recebe o limite da taxa de falha da CCA.
|
otChannelManagerGetDelay(otInstance *aInstance)
|
uint16_t
Essa função recebe o atraso (em segundos) usado pelo administrador do canal em uma mudança de canal.
|
otChannelManagerGetFavoredChannels(otInstance *aInstance)
|
uint32_t
Essa função recebe a máscara do canal favorecida.
|
otChannelManagerGetRequestedChannel(otInstance *aInstance)
|
uint8_t
Esta função recebe o canal da última chamada bem-sucedida para
otChannelManagerRequestChannelChange() . |
otChannelManagerGetSupportedChannels(otInstance *aInstance)
|
uint32_t
Essa função recebe a máscara de canal compatível.
|
otChannelManagerRequestChannelChange(otInstance *aInstance, uint8_t aChannel)
|
void
Essa função solicita uma mudança no canal da rede Thread.
|
otChannelManagerRequestChannelSelect(otInstance *aInstance, bool aSkipQualityCheck)
|
Esta função solicita que
ChannelManager verifique e selecione um novo canal e inicie uma mudança de canal. |
otChannelManagerSetAutoChannelSelectionEnabled(otInstance *aInstance, bool aEnabled)
|
void
Esta função ativa/desativa a funcionalidade de seleção automática de canal.
|
otChannelManagerSetAutoChannelSelectionInterval(otInstance *aInstance, uint32_t aInterval)
|
Esta função define o intervalo de tempo (em segundos) usado pela funcionalidade de seleção automática de canal.
|
otChannelManagerSetCcaFailureRateThreshold(otInstance *aInstance, uint16_t aThreshold)
|
void
Essa função define o limite da taxa de falha na CCA.
|
otChannelManagerSetDelay(otInstance *aInstance, uint16_t aDelay)
|
Essa função define o atraso (em segundos) usado em uma mudança de canal.
|
otChannelManagerSetFavoredChannels(otInstance *aInstance, uint32_t aChannelMask)
|
void
Essa função define a máscara do canal favorecida.
|
otChannelManagerSetSupportedChannels(otInstance *aInstance, uint32_t aChannelMask)
|
void
Essa função define a máscara de canal compatível.
|
Functions
OtChannelManagerGetAutoChannelSelectionEnabled
bool otChannelManagerGetAutoChannelSelectionEnabled( otInstance *aInstance )
Esta função 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 )
Essa função recebe 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 )
Essa função recebe o limite da taxa de falha da CCA.
Detalhes | |||
---|---|---|---|
Parâmetros |
|
||
Retorna |
O limite de taxa de falha da CCA. O valor "0" mapeia para 0% e "0xffff" para 100%.
|
OtChannelManagerGetDelay
uint16_t otChannelManagerGetDelay( otInstance *aInstance )
Essa função recebe o atraso (em segundos) usado pelo administrador do canal em uma mudança de canal.
Detalhes | |||
---|---|---|---|
Parâmetros |
|
||
Retorna |
O atraso (em segundos) para mudar de canal.
|
OtChannelManagerGetFavoriteedChannels
uint32_t otChannelManagerGetFavoredChannels( otInstance *aInstance )
Essa função recebe a máscara do canal favorecida.
Detalhes | |||
---|---|---|---|
Parâmetros |
|
||
Retorna |
Os canais favorecidos como uma máscara de bits.
|
OtChannelManagerGetRequestedChannel
uint8_t otChannelManagerGetRequestedChannel( otInstance *aInstance )
Esta função recebe o canal da última chamada bem-sucedida para otChannelManagerRequestChannelChange()
.
Detalhes | |
---|---|
Retorna |
O último canal solicitado ou zero se ainda não houver solicitação de alteração de canal.
|
OtChannelManagerGetSupportedChannels
uint32_t otChannelManagerGetSupportedChannels( otInstance *aInstance )
Essa função recebe a máscara de canal compatível.
Detalhes | |||
---|---|---|---|
Parâmetros |
|
||
Retorna |
Os canais compatíveis como uma máscara de bits.
|
OtChannelManagerRequestChannelChange
void otChannelManagerRequestChannelChange( otInstance *aInstance, uint8_t aChannel )
Essa função solicita uma mudança no 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 para esta função cancelará uma alteração de canal solicitada anteriormente que está em andamento.
Detalhes | |||||
---|---|---|---|---|---|
Parâmetros |
|
OtChannelManagerRequestChannelSelect
otError otChannelManagerRequestChannelSelect( otInstance *aInstance, bool aSkipQualityCheck )
Esta função solicita que ChannelManager
verifique e selecione um novo canal e inicie uma mudança 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 de qualidade do canal coletadas).
Depois de chamá-lo, o administrador do canal executará as três etapas a seguir:
1) ChannelManager
decide se a mudança de canal será útil. Essa verificação poderá ser ignorada se aSkipQualityCheck
for definida como verdadeira (forçando a seleção de um canal para ocorrer e pulando a verificação de qualidade). Essa etapa usa as métricas coletadas de qualidade de link no dispositivo (como taxa de falha de CCA, frame rate e erro de mensagem por vizinho etc.) para determinar se a qualidade atual do canal está no nível que justifica uma mudança de canal.
2) Se a primeira etapa for aprovada, ChannelManager
selecionará um canal possivelmente melhor. Ele usa os dados de qualidade do canal coletados por módulo ChannelMonitor
. Os canais compatíveis e favorecidos são usados nesta etapa. Consulte otChannelManagerSetSupportedChannels() e otChannelManagerSetFavoriteedChannels().
3) Se o canal selecionado recentemente for diferente do canal atual, o ChannelManager
solicitará/iniciará o processo de mudança do canal (invocando internamente um RequestChannelChange()
).
Detalhes | |||||
---|---|---|---|---|---|
Parâmetros |
|
||||
Valores de retorno |
|
OtChannelManagerSetAutoChannelSelectionEnabled
void otChannelManagerSetAutoChannelSelectionEnabled( otInstance *aInstance, bool aEnabled )
Esta função ativa/desativa a funcionalidade de seleção automática de canal.
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 )
Esta função 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 )
Essa função define o limite da taxa de falha na CCA.
Detalhes | |||||
---|---|---|---|---|---|
Parâmetros |
|
OtChannelManagerSetDelay
otError otChannelManagerSetDelay( otInstance *aInstance, uint16_t aDelay )
Essa função define o atraso (em segundos) usado em uma mudança de canal.
De preferência, o atraso precisa ser maior que o intervalo máximo da pesquisa de dados usado por todos os dispositivos com suspensão de sono na rede Thread.
Detalhes | |||||
---|---|---|---|---|---|
Parâmetros |
|
||||
Valores de retorno |
|
OtChannelManagerSetFavoredChannels
void otChannelManagerSetFavoredChannels( otInstance *aInstance, uint32_t aChannelMask )
Essa função define a máscara do canal favorecida.
Detalhes | |||||
---|---|---|---|---|---|
Parâmetros |
|
OtChannelManagerSetSupportedChannels
void otChannelManagerSetSupportedChannels( otInstance *aInstance, uint32_t aChannelMask )
Essa função 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 saber mais ou contribuir com nossa documentação, consulte Recursos.