Muestra y administra conjuntos de datos con OT CLI

Ver código fuente en GitHub

Los parámetros de configuración de la red de subprocesos se administran mediante objetos de conjuntos de datos operativos activos y pendientes. La CLI de OT incluye comandos para obtener y configurar conjuntos de datos activos y pendientes.

ADVERTENCIA: restricciones para el uso en producción.

Es posible que los comandos de la CLI para escribir o cambiar los conjuntos de datos operativos activos y pendientes permitan configurar parámetros no válidos, o combinaciones de parámetros no válidos, con fines de prueba. Estos comandos de la CLI solo se pueden usar:

  • Para configurar los parámetros de red del primer dispositivo en una red Thread recién creada.
  • Para pruebas (no aplicable a dispositivos de producción).

En las redes Thread de producción, el método correcto para escribir o cambiar conjuntos de datos operativos es a través de un comisionado que realiza la comisionado. Los dispositivos de producción que no son comisionados activos y forman parte de una red de Thread NO DEBEN modificar los conjuntos de datos operativos de ninguna manera.

Conjunto de datos operativo activo

Este conjunto de datos incluye parámetros que se usan actualmente en una red de Thread completa. El conjunto de datos operativos activo contiene lo siguiente:

  • Marca de tiempo de actividad
  • Canal
  • Máscara del canal
  • ID PAN ampliado
  • Prefijo local de malla
  • Nombre de la red
  • ID PAN
  • PSKC
  • Política de seguridad

Si quieres configurar fácilmente un dispositivo para que sea miembro completo de la red Thread, puedes usar el comando dataset active -x para obtener un TLV con codificación hexadecimal y el comando dataset set active para configurar el conjunto de datos en un dispositivo nuevo.

En un dispositivo existente, obtén el TLV con codificación hexadecimal:

dataset active -x
0e080000000000010000000300001035060004001fffe00208e227ac6a7f24052f0708fdb753eb517cb4d3051062b2442a928d9ea3b947a1618fc4085a030f4f70656e5468726561642d393837330102987304105330d857354330133c05e1fd7ae81a910c0402a0f7f8
Done

En un dispositivo nuevo, configura el conjunto de datos activo:

dataset set active 0e080000000000010000000300001035060004001fffe00208e227ac6a7f24052f0708fdb753eb517cb4d3051062b2442a928d9ea3b947a1618fc4085a030f4f70656e5468726561642d393837330102987304105330d857354330133c05e1fd7ae81a910c0402a0f7f8
Done

Conjunto de datos operativo pendiente

El conjunto de datos operativos pendiente se usa para comunicar los cambios al conjunto de datos operativos activo antes de que entren en vigencia. El conjunto de datos operativos pendiente contiene todos los parámetros del conjunto de datos operativos activo, con la adición de lo siguiente:

  • Temporizador de retraso
  • Marca de tiempo pendiente

Comenzar

Para administrar conjuntos de datos desde la línea de comandos, completa nuestro codelab de simulación con Docker y revisa la referencia de comandos de CLI.

Ir al codelab de simulación

Ir a la referencia de comandos de la CLI

Para obtener una lista de comandos dataset, escribe help:

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

Asignaciones de argumentos

Política de seguridad

Los comandos de la política de seguridad usan asignaciones de argumentos para obtener y configurar miembros de otSecurityPolicy. Por ejemplo, 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

En este ejemplo, Security Policy: 0 indica mRotationTime.

A continuación, se muestra una lista de todos los argumentos de la CLI de políticas de seguridad y el miembro otSecurityPolicy correspondiente de cada uno:

Los comandos get y set de dataset securitypolicy también usan las mismas asignaciones de argumentos, por ejemplo, configurar securitypolicy y pasar o, n, r y c:

dataset securitypolicy 672 onrc
Done

Componentes del conjunto de datos y comandos de mgmt

Junto con otros parámetros, mgmtgetcommand y mgmtsetcommand para conjuntos de datos activos y pendientes te permiten obtener y configurar cualquier combinación de otOperationalDatasetComponents:

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

Para mgmtgetcommand, puedes especificar estos componentes en cualquier orden a fin de obtener los valores correspondientes. De manera opcional, también puedes pasar -x para usar una string hexadecimal que se trate como una representación de secuencia de bytes de los TLV. Pueden ser TLV específicos del proveedor que quizás desees agregar, además de otros parámetros.

mgmtgetcommand también te permite especificar de forma opcional la dirección IPv6 del líder. De lo contrario, se usa el ALOC líder.

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

Por ejemplo, para obtener activetimestamp y securitypolicy, usa los siguientes argumentos:

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

Para establecer componentes, también puedes proporcionar los componentes del conjunto de datos en cualquier orden, seguidos del valor del componente.

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

Para configurar activetimestamp y securitypolicy, usa los siguientes argumentos:

dataset mgmtsetcommand active activetimestamp 123 securitypolicy 1 onrc
Done