Exibir e gerenciar conjuntos de dados com a CLI OT

Veja o código-fonte no GitHub

Os parâmetros de configuração de rede Thread são gerenciados com as opções Ativa e Pendente Objetos de conjunto de dados operacionais. A CLI OT inclui comandos para ativar e configurar e "Pendentes".

AVISO: restrições para uso na produção.

os comandos da CLI para escrever ou alterar os conjuntos de dados operacionais ativos e pendentes podem permitir a configuração de parâmetros inválidos; ou combinações inválidas de parâmetros, para fins de teste. Estes comandos da CLI só podem ser usados:

  • Configurar parâmetros de rede para o primeiro dispositivo em uma rede Thread recém-criada.
  • Para testes (não aplicável a dispositivos de produção).

Em redes Thread de produção, o método correto para gravar ou alterar conjuntos de dados operacionais é por meio de uma Comissário que realiza comissionamento. Dispositivos de produção que não são comissários ativos e fazem parte de uma rede Thread NÃO PODE modificar os conjuntos de dados operacionais de forma alguma.

Conjunto de dados operacional ativo

O conjunto de dados operacional ativo inclui parâmetros que estão em uso atualmente. em toda a rede Thread. O conjunto de dados operacional ativo contém:

  • Carimbo de data/hora da atividade
  • Canal
  • Máscara de canal
  • ID do PAN estendido
  • Prefixo local da malha
  • Nome da rede
  • Código PAN
  • PSKc
  • Política de segurança

Para configurar facilmente um dispositivo para que ele seja um membro pleno da rede Thread, pode usar o comando dataset Active -x para recebe um TLV codificado em hexadecimal, O comando dataset set Active como o conjunto de dados em um novo dispositivo.

Em um dispositivo atual, acesse o TLV codificado em hexadecimal:

dataset active -x
0e080000000000010000000300001035060004001fffe00208e227ac6a7f24052f0708fdb753eb517cb4d3051062b2442a928d9ea3b947a1618fc4085a030f4f70656e5468726561642d393837330102987304105330d857354330133c05e1fd7ae81a910c0402a0f7f8
Done

Em um novo dispositivo, defina o conjunto de dados ativo:

dataset set active 0e080000000000010000000300001035060004001fffe00208e227ac6a7f24052f0708fdb753eb517cb4d3051062b2442a928d9ea3b947a1618fc4085a030f4f70656e5468726561642d393837330102987304105330d857354330133c05e1fd7ae81a910c0402a0f7f8
Done

Conjunto de dados operacional pendente

O conjunto de dados operacional pendente é usado para comunicar alterações no conjunto de dados operacional antes de entrarem em vigor. O conjunto de dados operacional pendente contém todos os parâmetros do conjunto de dados operacional ativo, com o adição de:

  • Adiar o timer
  • Carimbo de data/hora pendente

Primeiros passos

Para gerenciar conjuntos de dados pela linha de comando, conclua nosso codelab de simulação com Docker e revise a referência de comandos da CLI.

Acessar o codelab de simulação

Acesse a referência de comandos da CLI

Para ver uma lista de comandos dataset, digite help:

dataset help
help
active
activetimestamp
channel
channelmask
clear
commit
delay
extpanid
init
meshlocalprefix
mgmtgetcommand
mgmtsetcommand
networkkey
networkname
panid
pending
pendingtimestamp
pskc
securitypolicy
Done

Mapeamentos de argumentos

Política de segurança

Os comandos da política de segurança usam mapeamentos de argumentos para receber e definir otSecurityPolicy membros. Por exemplo, dataset active:

dataset active
Active Timestamp: 1
Channel: 13
Channel Mask: 0x07fff800
Ext PAN ID: d63e8e3e495ebbc3
Mesh Local Prefix: fd3d:b50b:f96d:722d::/64
Network Key: dfd34f0f05cad978ec4e32b0413038ff
Network Name: OpenThread-8f28
PAN ID: 0x8f28
PSKc: c23a76e98f1a6483639b1ac1271e2e27
Security Policy: 0, onrcb
Done

Neste exemplo, Security Policy: 0 indica mRotationTime.

Confira uma lista de todos os argumentos da CLI da política de segurança e o membro otSecurityPolicy correspondente para cada argumento:

Os comandos dataset securitypolicy get e set também usam o mesmo argumento mapeamentos, por exemplo, definindo a securitypolicy e transmitindo o, n, r, e c:

dataset securitypolicy 672 onrc
Done

Componentes do conjunto de dados e comandos mgmt

Com outros parâmetros, o mgmtgetcommand e o mgmtsetcommand para conjuntos de dados ativos e pendentes, permite que você receba e defina qualquer combinação de otOperationalDatasetComponents:

  • activetimestamp
  • pendingtimestamp
  • networkkey
  • networkname
  • extpanid
  • localprefix
  • delaytimer
  • panid
  • channel
  • securitypolicy
.

Para a mgmtgetcommand, é possível especificar esses componentes em qualquer ordem para conseguir os valores correspondentes. Como opção, você também pode transmitir -x para usar um hexadecimal que é tratada como uma representação de sequência de bytes de TLVs. Pode ser um fornecedor TLVs específicos que convém adicionar além de outros parâmetros.

mgmtgetcommand também permite especificar opcionalmente o endereço IPv6 de o líder. Caso contrário, o ALOC líder será usado.

dataset mgmtgetcommand {active|pending} [address leader-address] [dataset-components] [-x tlv-list]

Por exemplo, para receber activetimestamp e securitypolicy, use o seguinte argumentos:

dataset mgmtgetcommand active address fdde:ad00:beef:0:558:f56b:d688:799 activetimestamp securitypolicy
Done

Para definir componentes, você também pode fornecer os componentes do conjunto de dados em qualquer ordem, seguido pelo valor do componente.

dataset mgmtgetcommand {active|pending} [dataset-components] [-x tlv-list]

Para definir activetimestamp e securitypolicy, use o seguinte: argumentos:

dataset mgmtsetcommand active activetimestamp 123 securitypolicy 1 onrc
Done