Google is committed to advancing racial equity for Black communities. See how.
本頁面由 Cloud Translation API 翻譯而成。
Switch to English

骨幹路由器

該模塊包括OpenThread骨幹路由器服務的功能。

概要

枚舉

otBackboneRouterDomainPrefixEvent {
OT_BACKBONE_ROUTER_DOMAIN_PREFIX_ADDED = 0,
OT_BACKBONE_ROUTER_DOMAIN_PREFIX_REMOVED = 1,
OT_BACKBONE_ROUTER_DOMAIN_PREFIX_CHANGED = 2
}
枚舉
表示域前綴事件。
otBackboneRouterMulticastListenerEvent {
OT_BACKBONE_ROUTER_MULTICAST_LISTENER_ADDED = 0,
OT_BACKBONE_ROUTER_MULTICAST_LISTENER_REMOVED = 1
}
枚舉
表示多播偵聽器事件。
otBackboneRouterNdProxyEvent {
OT_BACKBONE_ROUTER_NDPROXY_ADDED = 0,
OT_BACKBONE_ROUTER_NDPROXY_REMOVED = 1,
OT_BACKBONE_ROUTER_NDPROXY_RENEWED = 2,
OT_BACKBONE_ROUTER_NDPROXY_CLEARED = 3
}
枚舉
表示ND代理事件。
otBackboneRouterState {
OT_BACKBONE_ROUTER_STATE_DISABLED = 0,
OT_BACKBONE_ROUTER_STATE_SECONDARY = 1,
OT_BACKBONE_ROUTER_STATE_PRIMARY = 2
}
枚舉
表示骨幹路由器狀態。

類型定義

otBackboneRouterConfig類型定義
此結構表示骨幹路由器配置。
otBackboneRouterDomainPrefixCallback )(void *aContext, otBackboneRouterDomainPrefixEvent aEvent, const otIp6Prefix *aDomainPrefix)類型定義
void(*
每當域前綴更改時,都會調用此函數指針。
otBackboneRouterMulticastListenerCallback )(void *aContext, otBackboneRouterMulticastListenerEvent aEvent, const otIp6Address *aAddress)類型定義
void(*
只要多播偵聽器發生更改,就會調用此函數指針。
otBackboneRouterMulticastListenerInfo類型定義
此結構表示骨幹路由器多播偵聽器信息。
otBackboneRouterMulticastListenerIterator類型定義
uint16_t
用於遍歷多播偵聽器。
otBackboneRouterNdProxyCallback )(void *aContext, otBackboneRouterNdProxyEvent aEvent, const otIp6Address *aDua)類型定義
void(*
每當Nd代理更改時,都會調用此函數指針。

職能

otBackboneRouterConfigNextDuaRegistrationResponse ( otInstance *aInstance, const otIp6InterfaceIdentifier *aMlIid, uint8_t aStatus)
void
此方法為下一個DUA註冊配置響應狀態。
otBackboneRouterConfigNextMulticastListenerRegistrationResponse ( otInstance *aInstance, uint8_t aStatus)
void
此方法為下一個多播偵聽器註冊配置響應狀態。
otBackboneRouterGetConfig ( otInstance *aInstance, otBackboneRouterConfig *aConfig)
void
此功能獲取本地骨幹路由器配置。
otBackboneRouterGetDomainPrefix ( otInstance *aInstance, otBorderRouterConfig *aConfig)
此方法獲取本地域前綴配置。
otBackboneRouterGetNdProxyInfo ( otInstance *aInstance, const otIp6Address *aDua,otBackboneRouterNdProxyInfo *aNdProxyInfo)
此方法獲取骨幹路由器ND代理信息。
otBackboneRouterGetPrimary ( otInstance *aInstance, otBackboneRouterConfig *aConfig)
此功能獲取線程網絡中的主要骨幹路由器信息。
otBackboneRouterGetRegistrationJitter ( otInstance *aInstance)
uint8_t
此方法返回骨幹路由器註冊抖動值。
otBackboneRouterGetState ( otInstance *aInstance)
此功能獲取骨幹路由器狀態。
otBackboneRouterMulticastListenerAdd ( otInstance *aInstance, const otIp6Address *aAddress, uint32_t aTimeout)
此方法添加一個多播偵聽器。
otBackboneRouterMulticastListenerClear ( otInstance *aInstance)
void
此方法清除多播偵聽器。
otBackboneRouterMulticastListenerGetNext ( otInstance *aInstance, otBackboneRouterMulticastListenerIterator *aIterator, otBackboneRouterMulticastListenerInfo *aListenerInfo)
此函數獲取下一個多播偵聽器信息(使用迭代器)。
otBackboneRouterRegister ( otInstance *aInstance)
此功能顯式註冊本地骨幹路由器配置。
otBackboneRouterSetConfig ( otInstance *aInstance, const otBackboneRouterConfig *aConfig)
此功能設置本地骨幹路由器配置。
otBackboneRouterSetDomainPrefixCallback ( otInstance *aInstance, otBackboneRouterDomainPrefixCallback aCallback, void *aContext)
void
此方法設置骨幹路由器域前綴回調。
otBackboneRouterSetEnabled ( otInstance *aInstance, bool aEnable)
void
此功能啟用或禁用骨幹網功能。
otBackboneRouterSetMulticastListenerCallback ( otInstance *aInstance, otBackboneRouterMulticastListenerCallback aCallback, void *aContext)
void
此方法設置骨幹路由器多播偵聽器回調。
otBackboneRouterSetNdProxyCallback ( otInstance *aInstance, otBackboneRouterNdProxyCallback aCallback, void *aContext)
void
此方法設置骨幹路由器ND代理回調。
otBackboneRouterSetRegistrationJitter ( otInstance *aInstance, uint8_t aJitter)
void
此方法設置骨幹路由器註冊抖動值。

結構

otBackboneRouterConfig

此結構表示骨幹路由器配置。

otBackboneRouterMulticastListenerInfo

此結構表示骨幹路由器多播偵聽器信息。

otBackboneRouterNdProxyInfo

表示骨幹路由器ND代理信息。

枚舉

otBackboneRouterDomainPrefixEvent

 otBackboneRouterDomainPrefixEvent

表示域前綴事件。

物產
OT_BACKBONE_ROUTER_DOMAIN_PREFIX_ADDED

域前綴已添加。

OT_BACKBONE_ROUTER_DOMAIN_PREFIX_CHANGED

域前綴已更改。

OT_BACKBONE_ROUTER_DOMAIN_PREFIX_REMOVED

域前綴已刪除。

otBackboneRouterMulticastListenerEvent

 otBackboneRouterMulticastListenerEvent

表示多播偵聽器事件。

物產
OT_BACKBONE_ROUTER_MULTICAST_LISTENER_ADDED

多播偵聽器已添加。

OT_BACKBONE_ROUTER_MULTICAST_LISTENER_REMOVED

多播偵聽器已刪除或已過期。

otBackboneRouterNdProxyEvent

 otBackboneRouterNdProxyEvent

表示ND代理事件。

物產
OT_BACKBONE_ROUTER_NDPROXY_ADDED

ND代理增加了。

OT_BACKBONE_ROUTER_NDPROXY_CLEARED

所有ND代理均已清除。

OT_BACKBONE_ROUTER_NDPROXY_REMOVED

ND代理已刪除。

OT_BACKBONE_ROUTER_NDPROXY_RENEWED

ND代理服務器已續訂。

otBackboneRouterState

 otBackboneRouterState

表示骨幹路由器狀態。

物產
OT_BACKBONE_ROUTER_STATE_DISABLED

骨幹功能已禁用。

OT_BACKBONE_ROUTER_STATE_PRIMARY

主幹路由器。

OT_BACKBONE_ROUTER_STATE_SECONDARY

備用骨幹路由器。

類型定義

otBackboneRouterConfig

struct otBackboneRouterConfig otBackboneRouterConfig

此結構表示骨幹路由器配置。

otBackboneRouterDomainPrefixCallback

void(* otBackboneRouterDomainPrefixCallback)(void *aContext, otBackboneRouterDomainPrefixEvent aEvent, const otIp6Prefix *aDomainPrefix)

每當域前綴更改時,都會調用此函數指針。

細節
參量
[in] aContext
用戶上下文指針。
[in] aEvent
域前綴事件。
[in] aDomainPrefix
新的域前綴(如果已添加或更改),否則為nullptr。

otBackboneRouterMulticastListenerCallback

void(* otBackboneRouterMulticastListenerCallback)(void *aContext, otBackboneRouterMulticastListenerEvent aEvent, const otIp6Address *aAddress)

只要多播偵聽器發生更改,就會調用此函數指針。

細節
參量
[in] aContext
用戶上下文指針。
[in] aEvent
多播偵聽器事件。
[in] aAddress
組播偵聽器的Ip6組播地址。

otBackboneRouterMulticastListenerInfo

struct otBackboneRouterMulticastListenerInfo otBackboneRouterMulticastListenerInfo

此結構表示骨幹路由器多播偵聽器信息。

otBackboneRouterMulticastListenerIterator

uint16_t otBackboneRouterMulticastListenerIterator

用於遍歷多播偵聽器。

otBackboneRouterNdProxyCallback

void(* otBackboneRouterNdProxyCallback)(void *aContext, otBackboneRouterNdProxyEvent aEvent, const otIp6Address *aDua)

每當Nd代理更改時,都會調用此函數指針。

細節
參量
[in] aContext
用戶上下文指針。
[in] aEvent
ND代理事件。
[in] aDua
在ND代理的域名單播地址,或nullptr如果aEventOT_BACKBONE_ROUTER_NDPROXY_CLEARED

職能

otBackboneRouterConfigNextDuaRegistrationResponse

void otBackboneRouterConfigNextDuaRegistrationResponse(
  otInstance *aInstance,
  const otIp6InterfaceIdentifier *aMlIid,
  uint8_t aStatus
)

此方法為下一個DUA註冊配置響應狀態。

注意:僅在啟用OPENTHREAD_CONFIG_REFERENCE_DEVICE_ENABLE可用。僅用於測試和認證。

TODO:(DUA)支持驗證碼錯誤代碼和相應的過程。

細節
參量
[in] aInstance
指向OpenThread實例的指針。
[in] aMlIid
指向網格本地IID的指針。如果為NULL,則對即將到來的DUA.req用aStatus進行響應,否則僅使用匹配的aMlIid響應。
[in] aStatus
響應狀態。

otBackboneRouterConfigNextMulticastListenerRegistrationResponse

void otBackboneRouterConfigNextMulticastListenerRegistrationResponse(
  otInstance *aInstance,
  uint8_t aStatus
)

此方法為下一個多播偵聽器註冊配置響應狀態。

注意:僅在啟用OPENTHREAD_CONFIG_REFERENCE_DEVICE_ENABLE可用。僅用於測試和認證。

細節
參量
[in] aInstance
指向OpenThread實例的指針。
[in] aStatus
響應狀態。

otBackboneRouterGetConfig

void otBackboneRouterGetConfig(
  otInstance *aInstance,
  otBackboneRouterConfig *aConfig
)

此功能獲取本地骨幹路由器配置。

細節
參量
[in] aInstance
指向OpenThread實例的指針。
[out] aConfig
放置本地骨幹路由器配置的指針。
也可以看看:
otBackboneRouterSetEnabled
otBackboneRouterGetState
otBackboneRouterSetConfig
otBackboneRouterRegister

otBackboneRouterGetDomainPrefix

otError otBackboneRouterGetDomainPrefix(
  otInstance *aInstance,
  otBorderRouterConfig *aConfig
)

此方法獲取本地域前綴配置。

細節
參量
[in] aInstance
指向OpenThread實例的指針。
[out] aConfig
指向域前綴配置的指針。
返回值
OT_ERROR_NONE
成功獲取域前綴配置。
OT_ERROR_NOT_FOUND
沒有配置域前綴。

otBackboneRouterGetNdProxyInfo

otError otBackboneRouterGetNdProxyInfo(
  otInstance *aInstance,
  const otIp6Address *aDua,
  otBackboneRouterNdProxyInfo *aNdProxyInfo
)

此方法獲取骨幹路由器ND代理信息。

細節
參量
[in] aInstance
指向OpenThread實例的指針。
[in] aDua
域單播地址。
[out] aNdProxyInfo
指向ND代理信息的指針。
返回值
OT_ERROR_NONE
成功獲取ND代理信息。
OT_ERROR_NOT_FOUND
在ND代理表中找不到域單播地址。

otBackboneRouterGetPrimary

otError otBackboneRouterGetPrimary(
  otInstance *aInstance,
  otBackboneRouterConfig *aConfig
)

此功能獲取線程網絡中的主要骨幹路由器信息。

細節
參量
[in] aInstance
指向OpenThread實例的指針。
[out] aConfig
指向將主骨幹路由器信息放在何處的指針。
返回值
OT_ERROR_NONE
成功獲取主骨幹路由器信息。
OT_ERROR_NOT_FOUND
不存在主幹路由器。

otBackboneRouterGetRegistrationJitter

uint8_t otBackboneRouterGetRegistrationJitter(
  otInstance *aInstance
)

此方法返回骨幹路由器註冊抖動值。

細節
退貨
骨幹路由器註冊抖動值。
也可以看看:
otBackboneRouterSetRegistrationJitter

otBackboneRouterGetState

otBackboneRouterState otBackboneRouterGetState(
  otInstance *aInstance
)

此功能獲取骨幹路由器狀態。

細節
參量
[in] aInstance
指向OpenThread實例的指針。
返回值
OT_BACKBONE_ROUTER_STATE_DISABLED
骨幹功能已禁用。
OT_BACKBONE_ROUTER_STATE_SECONDARY
備用骨幹路由器。
OT_BACKBONE_ROUTER_STATE_PRIMARY
主幹路由器。
也可以看看:
otBackboneRouterSetEnabled
otBackboneRouterGetConfig
otBackboneRouterSetConfig
otBackboneRouterRegister

otBackboneRouterMulticastListenerAdd

otError otBackboneRouterMulticastListenerAdd(
  otInstance *aInstance,
  const otIp6Address *aAddress,
  uint32_t aTimeout
)

此方法添加一個多播偵聽器。

注意:僅在啟用OPENTHREAD_CONFIG_REFERENCE_DEVICE_ENABLE可用。僅用於測試和認證。

細節
參量
[in] aInstance
指向OpenThread實例的指針。
[in] aAddress
多播偵聽器地址。
[in] aTimeout
多播偵聽器的超時(以秒為單位),或者為0以使用默認的MLR超時。
返回值
OT_ERROR_NONE
如果成功添加了多播偵聽器。
OT_ERROR_INVALID_ARGS
如果多播偵聽器地址無效。
OT_ERROR_NO_BUFS
沒有可用空間來保存多播偵聽器。
也可以看看:
otBackboneRouterMulticastListenerClear
otBackboneRouterMulticastListenerGetNext

otBackboneRouterMulticastListenerClear

void otBackboneRouterMulticastListenerClear(
  otInstance *aInstance
)

此方法清除多播偵聽器。

注意:僅在啟用OPENTHREAD_CONFIG_REFERENCE_DEVICE_ENABLE可用。僅用於測試和認證。

細節
參量
[in] aInstance
指向OpenThread實例的指針。
也可以看看:
otBackboneRouterMulticastListenerAdd
otBackboneRouterMulticastListenerGetNext

otBackboneRouterMulticastListenerGetNext

otError otBackboneRouterMulticastListenerGetNext(
  otInstance *aInstance,
  otBackboneRouterMulticastListenerIterator *aIterator,
  otBackboneRouterMulticastListenerInfo *aListenerInfo
)

此函數獲取下一個多播偵聽器信息(使用迭代器)。

細節
參量
[in] aInstance
指向OpenThread實例的指針。
[in,out] aIterator
指向迭代器的指針。成功後,迭代器將更新為指向下一個多播偵聽器。要獲得第一個條目,迭代器應設置為OT_BACKBONE_ROUTER_MULTICAST_LISTENER_ITERATOR_INIT。
[out] aListenerInfo
指向otBackboneRouterMulticastListenerInfo的指針,成功放置下一個Multicast Listener的信息。
返回值
OT_ERROR_NONE
成功找到下一個多播偵聽器信息( aListenerInfo已成功更新)。
OT_ERROR_NOT_FOUND
找不到後續的多播偵聽器信息。
也可以看看:
otBackboneRouterMulticastListenerClear
otBackboneRouterMulticastListenerAdd

otBackboneRouterRegister

otError otBackboneRouterRegister(
  otInstance *aInstance
)

此功能顯式註冊本地骨幹路由器配置。

細節
參量
[in] aInstance
指向OpenThread實例的指針。
返回值
OT_ERROR_NO_BUFS
空間不足,無法添加骨幹路由器服務。
OT_ERROR_NONE
成功將服務器數據請求消息排隊等待傳遞。
也可以看看:
otBackboneRouterSetEnabled
otBackboneRouterGetState
otBackboneRouterGetConfig
otBackboneRouterSetConfig

otBackboneRouterSetConfig

otError otBackboneRouterSetConfig(
  otInstance *aInstance,
  const otBackboneRouterConfig *aConfig
)

此功能設置本地骨幹路由器配置。

細節
參量
[in] aInstance
指向OpenThread實例的指針。
[in] aConfig
指向骨幹路由器配置生效的指針。
返回值
OT_ERROR_NONE
成功更新配置。
OT_ERROR_INVALID_ARGS
aConfig的配置無效。
也可以看看:
otBackboneRouterSetEnabled
otBackboneRouterGetState
otBackboneRouterGetConfig
otBackboneRouterRegister

otBackboneRouterSetDomainPrefixCallback

void otBackboneRouterSetDomainPrefixCallback(
  otInstance *aInstance,
  otBackboneRouterDomainPrefixCallback aCallback,
  void *aContext
)

此方法設置骨幹路由器域前綴回調。

細節
參量
[in] aInstance
指向OpenThread實例的指針。
[in] aCallback
指向域前綴回調的指針。
[in] aContext
用戶上下文指針。

otBackboneRouterSetEnabled

void otBackboneRouterSetEnabled(
  otInstance *aInstance,
  bool aEnable
)

此功能啟用或禁用骨幹網功能。

細節
參量
[in] aInstance
指向OpenThread實例的指針。
[in] aEnable
啟用以啟用骨幹網功能,否則為FALSE。
也可以看看:
otBackboneRouterGetState
otBackboneRouterGetConfig
otBackboneRouterSetConfig
otBackboneRouterRegister

otBackboneRouterSetMulticastListenerCallback

void otBackboneRouterSetMulticastListenerCallback(
  otInstance *aInstance,
  otBackboneRouterMulticastListenerCallback aCallback,
  void *aContext
)

此方法設置骨幹路由器多播偵聽器回調。

細節
參量
[in] aInstance
指向OpenThread實例的指針。
[in] aCallback
指向多播偵聽器回調的指針。
[in] aContext
用戶上下文指針。

otBackboneRouterSetNdProxyCallback

void otBackboneRouterSetNdProxyCallback(
  otInstance *aInstance,
  otBackboneRouterNdProxyCallback aCallback,
  void *aContext
)

此方法設置骨幹路由器ND代理回調。

細節
參量
[in] aInstance
指向OpenThread實例的指針。
[in] aCallback
指向ND代理回調的指針。
[in] aContext
用戶上下文指針。

otBackboneRouterSetRegistrationJitter

void otBackboneRouterSetRegistrationJitter(
  otInstance *aInstance,
  uint8_t aJitter
)

此方法設置骨幹路由器註冊抖動值。

細節
參量
[in] aJitter
要設置的骨幹路由器註冊抖動值。
也可以看看:
otBackboneRouterGetRegistrationJitter

巨集

OT_BACKBONE_ROUTER_MULTICAST_LISTENER_ITERATOR_INIT

 OT_BACKBONE_ROUTER_MULTICAST_LISTENER_ITERATOR_INIT 0

otBackboneRouterMulticastListenerIterator的初始化程序。