Google se compromete a impulsar la igualdad racial para las comunidades afrodescendientes. Obtén información al respecto.

Router de borde

Este módulo incluye funciones para administrar datos de red local con el router de borde de OpenThread.

Resumen

Functions

otBorderRouterAddOnMeshPrefix(otInstance *aInstance, const otBorderRouterConfig *aConfig)
Agregue una configuración de router de borde a los datos de la red local.
otBorderRouterAddRoute(otInstance *aInstance, const otExternalRouteConfig *aConfig)
Agregar una configuración de ruta externa a los datos de la red local
otBorderRouterGetNetData(otInstance *aInstance, bool aStable, uint8_t *aData, uint8_t *aDataLength)
Este método proporciona una copia completa o estable de los datos de la red Thread.
otBorderRouterGetNextOnMeshPrefix(otInstance *aInstance, otNetworkDataIterator *aIterator, otBorderRouterConfig *aConfig)
Esta función obtiene el siguiente prefijo de malla en los datos de red locales.
otBorderRouterGetNextRoute(otInstance *aInstance, otNetworkDataIterator *aIterator, otExternalRouteConfig *aConfig)
Esta función obtiene la siguiente ruta externa en los datos de la red local.
otBorderRouterRegister(otInstance *aInstance)
Registra de inmediato los datos de la red local con el líder.
otBorderRouterRemoveOnMeshPrefix(otInstance *aInstance, const otIp6Prefix *aPrefix)
Quite una configuración del router de borde de los datos de la red local.
otBorderRouterRemoveRoute(otInstance *aInstance, const otIp6Prefix *aPrefix)
Quita una configuración de ruta externa de los datos de la red local.
otBorderRoutingGetNat64Prefix(otInstance *aInstance, otIp6Prefix *aPrefix)
Esta función muestra el prefijo local NAT64.
otBorderRoutingGetOmrPrefix(otInstance *aInstance, otIp6Prefix *aPrefix)
Este método muestra el prefijo enrutable sin malla (OMR).
otBorderRoutingGetOnLinkPrefix(otInstance *aInstance, otIp6Prefix *aPrefix)
Este método muestra el prefijo en el vínculo de la infraestructura adyacente.
otBorderRoutingInit(otInstance *aInstance, uint32_t aInfraIfIndex, bool aInfraIfIsRunning)
Este método inicializa el administrador de enrutamiento fronterizo en una interfaz de infraestructura determinada.
otBorderRoutingSetEnabled(otInstance *aInstance, bool aEnabled)
Este método habilita o inhabilita el administrador de enrutamiento fronterizo.

Functions

otBorderRouterAddOnMeshPrefix

otError otBorderRouterAddOnMeshPrefix(
  otInstance *aInstance,
  const otBorderRouterConfig *aConfig
)

Agregue una configuración de router de borde a los datos de la red local.

Detalles
Parámetros
[in] aInstance
Un puntero para una instancia de OpenThread.
[in] aConfig
Un puntero para la configuración del router de borde.
Valores que se muestran
OT_ERROR_NONE
Se agregó correctamente la configuración a los datos de la red local.
OT_ERROR_INVALID_ARGS
Uno o más parámetros de configuración no son válidos.
OT_ERROR_NO_BUFS
No hay suficiente espacio disponible para agregar la configuración a los datos de la red local.
Consulta también:
otBorderRouterRemoveOnMeshPrefix
otBorderRouterRegister

otBorderRouterAddRoute

otError otBorderRouterAddRoute(
  otInstance *aInstance,
  const otExternalRouteConfig *aConfig
)

Agregar una configuración de ruta externa a los datos de la red local

Detalles
Parámetros
[in] aInstance
Un puntero para una instancia de OpenThread.
[in] aConfig
Un puntero para la configuración de ruta externa.
Valores que se muestran
OT_ERROR_NONE
Se agregó correctamente la configuración a los datos de la red local.
OT_ERROR_INVALID_ARGS
Uno o más parámetros de configuración no son válidos.
OT_ERROR_NO_BUFS
No hay suficiente espacio disponible para agregar la configuración a los datos de la red local.
Consulta también:
otBorderRouterRemoveRoute
otBorderRouterRegister

otBorderRouterGetNetData

otError otBorderRouterGetNetData(
  otInstance *aInstance,
  bool aStable,
  uint8_t *aData,
  uint8_t *aDataLength
)

Este método proporciona una copia completa o estable de los datos de la red Thread.

Detalles
Parámetros
[in] aInstance
Un puntero para una instancia de OpenThread.
[in] aStable
Se le asigna el valor TRUE cuando se copia la versión estable. El valor es FALSE al copiar la versión completa.
[out] aData
Un puntero para el búfer de datos.
[in,out] aDataLength
En la entrada, es el tamaño del búfer de datos al que apunta aData. Al salir, la cantidad de bytes copiados.

Prefijo otBorderRouterGetNextOnMeshPrefix

otError otBorderRouterGetNextOnMeshPrefix(
  otInstance *aInstance,
  otNetworkDataIterator *aIterator,
  otBorderRouterConfig *aConfig
)

Esta función obtiene el siguiente prefijo de malla en los datos de red locales.

Detalles
Parámetros
[in] aInstance
Un puntero para una instancia de OpenThread.
[in,out] aIterator
Un puntero al contexto de iteradores de datos de red. Para obtener la primera entrada en la malla, debe configurarse en OT_NETWORK_DATA_ITERATOR_INIT.
[out] aConfig
Un puntero para la información del prefijo de malla.
Valores que se muestran
OT_ERROR_NONE
Se encontró correctamente el siguiente prefijo de malla.
OT_ERROR_NOT_FOUND
No existe ningún prefijo de malla posterior en los datos de red de Thread.

otBorderRouterGetNextRoute

otError otBorderRouterGetNextRoute(
  otInstance *aInstance,
  otNetworkDataIterator *aIterator,
  otExternalRouteConfig *aConfig
)

Esta función obtiene la siguiente ruta externa en los datos de la red local.

Detalles
Parámetros
[in] aInstance
Un puntero para una instancia de OpenThread.
[in,out] aIterator
Un puntero al contexto de iteradores de datos de red. Para obtener la primera entrada de ruta externa, se debe configurar en OT_NETWORK_DATA_ITERATOR_INIT.
[out] aConfig
Un puntero para la información de la ruta externa
Valores que se muestran
OT_ERROR_NONE
Se encontró correctamente la siguiente ruta externa.
OT_ERROR_NOT_FOUND
No hay ninguna entrada de ruta externa posterior en los datos de la red de Thread.

otBorderRouterRegister

otError otBorderRouterRegister(
  otInstance *aInstance
)

Registra de inmediato los datos de la red local con el líder.

Detalles
Parámetros
[in] aInstance
Un puntero para una instancia de OpenThread.
Valores que se muestran
OT_ERROR_NONE
Se agregó correctamente a la cola un mensaje de solicitud de datos del servidor para la entrega.
Consulta también:
otBorderRouterAddOnMeshPrefix
otBorderRouterRemoveOnMeshPrefix
otBorderRouterAddRoute
otBorderRouterRemoveRoute

otBorderRouterRemoveOnMeshPrefix

otError otBorderRouterRemoveOnMeshPrefix(
  otInstance *aInstance,
  const otIp6Prefix *aPrefix
)

Quite una configuración del router de borde de los datos de la red local.

Detalles
Parámetros
[in] aInstance
Un puntero para una instancia de OpenThread.
[in] aPrefix
Un puntero para un prefijo IPv6.
Valores que se muestran
OT_ERROR_NONE
Se quitó correctamente la configuración de los datos de la red local.
OT_ERROR_NOT_FOUND
No se pudo encontrar la entrada de router de borde.
Consulta también:
otBorderRouterAddOnMeshPrefix
otBorderRouterRegister

otBorderRouterRemoveRoute

otError otBorderRouterRemoveRoute(
  otInstance *aInstance,
  const otIp6Prefix *aPrefix
)

Quita una configuración de ruta externa de los datos de la red local.

Detalles
Parámetros
[in] aInstance
Un puntero para una instancia de OpenThread.
[in] aPrefix
Un puntero para un prefijo IPv6.
Valores que se muestran
OT_ERROR_NONE
Se quitó correctamente la configuración de los datos de la red local.
OT_ERROR_NOT_FOUND
No se pudo encontrar la entrada de router de borde.
Consulta también:
otBorderRouterAddRoute
otBorderRouterRegister

Prefijo otBorderRouteGetNat64

otError otBorderRoutingGetNat64Prefix(
  otInstance *aInstance,
  otIp6Prefix *aPrefix
)

Esta función muestra el prefijo local NAT64.

Es posible que este prefijo no se anuncie en la red de Thread.

Esta función solo está disponible cuando OPENTHREAD_CONFIG_BORDER_ROUTING_NAT64_ENABLE está habilitado.

Detalles
Parámetros
[in] aInstance
Un puntero para una instancia de OpenThread.
[out] aPrefix
Un puntero al punto del resultado.
Valores que se muestran
OT_ERROR_INVALID_STATE
Aún no se inicializa el administrador de enrutamiento fronterizo.
OT_ERROR_NONE
Se recuperó correctamente el prefijo NAT64.

OtBorderRouteGetOmrPrefix

otError otBorderRoutingGetOmrPrefix(
  otInstance *aInstance,
  otIp6Prefix *aPrefix
)

Este método muestra el prefijo enrutable sin malla (OMR).

Si no existe un prefijo OMR, se publicará el prefijo aleatorio de 64 bits en la red Thread.

Detalles
Parámetros
[in] aInstance
Un puntero para una instancia de OpenThread.
[out] aPrefix
Un puntero al punto del resultado.
Valores que se muestran
OT_ERROR_INVALID_STATE
Aún no se inicializa el administrador de enrutamiento fronterizo.
OT_ERROR_NONE
Se recuperó correctamente el prefijo OMR.

otBorderRouteGetOnLinkPrefix

otError otBorderRoutingGetOnLinkPrefix(
  otInstance *aInstance,
  otIp6Prefix *aPrefix
)

Este método muestra el prefijo en el vínculo de la infraestructura adyacente.

El prefijo de 64 bits generado de manera aleatoria se anunciará en el vínculo de infraestructura si aún no se anuncia ese prefijo en el vínculo.

Detalles
Parámetros
[in] aInstance
Un puntero para una instancia de OpenThread.
[out] aPrefix
Un puntero al punto del resultado.
Valores que se muestran
OT_ERROR_INVALID_STATE
Aún no se inicializa el administrador de enrutamiento fronterizo.
OT_ERROR_NONE
Se recuperó correctamente el prefijo en el vínculo.

otBorderRouteInit

otError otBorderRoutingInit(
  otInstance *aInstance,
  uint32_t aInfraIfIndex,
  bool aInfraIfIsRunning
)

Este método inicializa el administrador de enrutamiento fronterizo en una interfaz de infraestructura determinada.

Detalles
Parámetros
[in] aInstance
Un puntero para una instancia de OpenThread.
[in] aInfraIfIndex
Es el índice de la interfaz de infraestructura.
[in] aInfraIfIsRunning
Un valor booleano que indica si la interfaz de infraestructura se está ejecutando.
Valores que se muestran
OT_ERROR_NONE
Se inició correctamente el administrador de enrutamiento fronterizo en la infraestructura determinada.
OT_ERROR_INVALID_STATE
Ya se inicializó el administrador de enrutamiento fronterizo.
OT_ERROR_INVALID_ARGS
El índice de la interfaz de infraestructura no es válido.
OT_ERROR_FAILED
Se produjo un error interno. Por lo general, debido a la falta de generación de prefijos aleatorios.
Consulta también:
otPlatInfraIfStateChanged.

otBorderRouteSetEnabled

otError otBorderRoutingSetEnabled(
  otInstance *aInstance,
  bool aEnabled
)

Este método habilita o inhabilita el administrador de enrutamiento fronterizo.

Detalles
Parámetros
[in] aInstance
Un puntero para una instancia de OpenThread.
[in] aEnabled
Un valor booleano para habilitar o inhabilitar el administrador de enrutamiento.
Valores que se muestran
OT_ERROR_INVALID_STATE
Aún no se inicializa el administrador de enrutamiento fronterizo.
OT_ERROR_NONE
Se habilitó o inhabilitó correctamente el administrador de enrutamiento fronterizo.

Recursos

Los temas de referencia de la API de OpenThread se originan en el código fuente, disponible en GitHub. Para obtener más información o colaborar con nuestra documentación, consulta Recursos.