中樞路由器
這個模組包含 OpenThread Backbone Router Service 的功能。
摘要
列舉 |
|
---|---|
otBackboneRouterDomainPrefixEvent{
|
列舉 代表網域前置字串事件。 |
otBackboneRouterMulticastListenerEvent{
|
列舉 代表多播監聽器事件。 |
otBackboneRouterNdProxyEvent{
|
列舉 代表 ND Proxy 事件。 |
otBackboneRouterState{
|
列舉 代表骨幹路由器狀態。 |
Typedefs |
|
---|---|
otBackboneRouterConfig
|
typedefstruct otBackboneRouterConfig
這個結構代表 Backbone Router 設定。 |
otBackboneRouterDomainPrefixCallback)(void *aContext, otBackboneRouterDomainPrefixEvent aEvent, const otIp6Prefix *aDomainPrefix)
|
typedefvoid(*
每當網域前置字串變更時,系統就會呼叫這個函式指標。 |
otBackboneRouterMulticastListenerCallback)(void *aContext, otBackboneRouterMulticastListenerEvent aEvent, const otIp6Address *aAddress)
|
typedefvoid(*
每當多播監聽器變更時,系統會呼叫這個函式指標。 |
otBackboneRouterMulticastListenerInfo
|
typedef 此結構代表骨幹路由器多播監聽器資訊。 |
otBackboneRouterMulticastListenerIterator
|
typedefuint16_t
用於透過 Multicast 事件監聽器疊代。 |
otBackboneRouterNdProxyCallback)(void *aContext, otBackboneRouterNdProxyEvent aEvent, const otIp6Address *aDua)
|
typedefvoid(*
只要 NN Proxy 變更,系統就會呼叫這個函式指標。 |
otBackboneRouterNdProxyInfo
|
typedefstruct otBackboneRouterNdProxyInfo
代表 Backbone Router ND Proxy 資訊。 |
結構 |
|
---|---|
otBackboneRouterConfig |
這個結構代表 Backbone Router 設定。 |
otBackboneRouterMulticastListenerInfo |
此結構代表骨幹路由器多播監聽器資訊。 |
otBackboneRouterNdProxyInfo |
代表 Backbone Router ND Proxy 資訊。 |
列舉
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 Proxy 事件。
屬性 | |
---|---|
OT_BACKBONE_ROUTER_NDPROXY_ADDED
|
已新增 ND Proxy。 |
OT_BACKBONE_ROUTER_NDPROXY_CLEARED
|
已清除所有 ND Prox。 |
OT_BACKBONE_ROUTER_NDPROXY_REMOVED
|
已移除 ND Proxy。 |
OT_BACKBONE_ROUTER_NDPROXY_RENEWED
|
ND Proxy 已更新。 |
otBackboneRouterState
otBackboneRouterState
代表骨幹路由器狀態。
屬性 | |
---|---|
OT_BACKBONE_ROUTER_STATE_DISABLED
|
已停用中樞函式。 |
OT_BACKBONE_ROUTER_STATE_PRIMARY
|
主要中樞路由器。 |
OT_BACKBONE_ROUTER_STATE_SECONDARY
|
次要中樞路由器。 |
Typedefs
otBackboneRouterConfig
struct otBackboneRouterConfig otBackboneRouterConfig
這個結構代表 Backbone Router 設定。
otBackboneRouterDomainPrefixCallback
void(* otBackboneRouterDomainPrefixCallback)(void *aContext, otBackboneRouterDomainPrefixEvent aEvent, const otIp6Prefix *aDomainPrefix)
每當網域前置字串變更時,系統就會呼叫這個函式指標。
詳情 | |||||||
---|---|---|---|---|---|---|---|
參數 |
|
otBackboneRouterMulticastListenerCallback
void(* otBackboneRouterMulticastListenerCallback)(void *aContext, otBackboneRouterMulticastListenerEvent aEvent, const otIp6Address *aAddress)
每當多播監聽器變更時,系統會呼叫這個函式指標。
詳情 | |||||||
---|---|---|---|---|---|---|---|
參數 |
|
otBackboneRouterMulticastListenerInfo
struct otBackboneRouterMulticastListenerInfo otBackboneRouterMulticastListenerInfo
此結構代表骨幹路由器多播監聽器資訊。
otBackboneRouterMulticastListenerIterator
uint16_t otBackboneRouterMulticastListenerIterator
用於透過 Multicast 事件監聽器疊代。
otBackboneRouterNdProxyCallback
void(* otBackboneRouterNdProxyCallback)(void *aContext, otBackboneRouterNdProxyEvent aEvent, const otIp6Address *aDua)
只要 NN Proxy 變更,系統就會呼叫這個函式指標。
詳情 | |||||||
---|---|---|---|---|---|---|---|
參數 |
|
otBackboneRouterNdProxyInfo
struct otBackboneRouterNdProxyInfo otBackboneRouterNdProxyInfo
代表 Backbone Router ND Proxy 資訊。
Functions
otBackboneRouterConfigNextDuaRegistrationResponse
void otBackboneRouterConfigNextDuaRegistrationResponse( otInstance *aInstance, const otIp6InterfaceIdentifier *aMlIid, uint8_t aStatus )
這個方法會設定下一個 DUA 註冊的回應狀態。
注意:必須啟用 OPENTHREAD_CONFIG_REFERENCE_DEVICE_ENABLE
,才能使用此功能。僅用於測試和認證。
待辦事項:(DUA) 支援差距錯誤代碼和相應的程序認證。
詳情 | |||||||
---|---|---|---|---|---|---|---|
參數 |
|
otBackboneRouterConfigNextMulticastListenerRegistrationResponse
void otBackboneRouterConfigNextMulticastListenerRegistrationResponse( otInstance *aInstance, uint8_t aStatus )
設定下一次多播監聽器註冊的回應狀態。
啟用OPENTHREAD_CONFIG_BACKBONE_ROUTER_ENABLE
、OPENTHREAD_CONFIG_BACKBONE_ROUTER_MULTICAST_ROUTING_ENABLE
和OPENTHREAD_CONFIG_REFERENCE_DEVICE_ENABLE
後才能使用。
詳情 | |||||
---|---|---|---|---|---|
參數 |
|
otBackboneRouterGetConfig
void otBackboneRouterGetConfig( otInstance *aInstance, otBackboneRouterConfig *aConfig )
取得本機 Backbone Router 設定。
必須啟用 OPENTHREAD_CONFIG_BACKBONE_ROUTER_ENABLE
才能使用此功能。
詳情 | |||||
---|---|---|---|---|---|
參數 |
|
otBackboneRouterSetEnabled
otBackboneRouterGetState
otBackboneRouterSetConfig
otBackboneRouterRegister
otBackboneRouterGetDomainPrefix
otError otBackboneRouterGetDomainPrefix( otInstance *aInstance, otBorderRouterConfig *aConfig )
這個方法會取得本機網域前置字串設定。
詳情 | |||||
---|---|---|---|---|---|
參數 |
|
||||
傳回值 |
|
otBackboneRouterGetNdProxyInfo
otError otBackboneRouterGetNdProxyInfo( otInstance *aInstance, const otIp6Address *aDua, otBackboneRouterNdProxyInfo *aNdProxyInfo )
這個方法會取得 Backbone Router ND Proxy 資訊。
詳情 | |||||||
---|---|---|---|---|---|---|---|
參數 |
|
||||||
傳回值 |
|
otBackboneRouterGetPrimary
otError otBackboneRouterGetPrimary( otInstance *aInstance, otBackboneRouterConfig *aConfig )
這個函式會在 Thread 網路中取得主要中樞路由器資訊。
詳情 | |||||
---|---|---|---|---|---|
參數 |
|
||||
傳回值 |
|
otBackboneRouterGetRegistrationJitter
uint8_t otBackboneRouterGetRegistrationJitter( otInstance *aInstance )
otBackboneRouterGetState
otBackboneRouterState otBackboneRouterGetState( otInstance *aInstance )
取得 Backbone RouterotBackboneRouterState。
詳情 | |||||||
---|---|---|---|---|---|---|---|
參數 |
|
||||||
傳回值 |
|
otBackboneRouterSetEnabled
otBackboneRouterGetConfig
otBackboneRouterSetConfig
otBackboneRouterRegister
otBackboneRouterMulticastListenerAdd
otError otBackboneRouterMulticastListenerAdd( otInstance *aInstance, const otIp6Address *aAddress, uint32_t aTimeout )
新增含有逾時值的多播監聽器 (以秒為單位)。
使用 0
,即可使用預設的 MLR 逾時。
啟用OPENTHREAD_CONFIG_BACKBONE_ROUTER_ENABLE
、OPENTHREAD_CONFIG_BACKBONE_ROUTER_MULTICAST_ROUTING_ENABLE
和OPENTHREAD_CONFIG_REFERENCE_DEVICE_ENABLE
後才能使用。
詳情 | |||||||
---|---|---|---|---|---|---|---|
參數 |
|
||||||
傳回值 |
|
otBackboneRouterMulticastListenerClear
otBackboneRouterMulticastListenerGetNext
otBackboneRouterMulticastListenerClear
void otBackboneRouterMulticastListenerClear( otInstance *aInstance )
清除多播監聽器。
啟用OPENTHREAD_CONFIG_BACKBONE_ROUTER_ENABLE
、OPENTHREAD_CONFIG_BACKBONE_ROUTER_MULTICAST_ROUTING_ENABLE
和OPENTHREAD_CONFIG_REFERENCE_DEVICE_ENABLE
後才能使用。
詳情 | |||
---|---|---|---|
參數 |
|
otBackboneRouterMulticastListenerAdd
otBackboneRouterMulticastListenerGetNext
otBackboneRouterMulticastListenerGetNext
otError otBackboneRouterMulticastListenerGetNext( otInstance *aInstance, otBackboneRouterMulticastListenerIterator *aIterator, otBackboneRouterMulticastListenerInfo *aListenerInfo )
此函式會取得下一個多播監聽器資訊 (使用疊代器)。
詳情 | |||||||
---|---|---|---|---|---|---|---|
參數 |
|
||||||
傳回值 |
|
otBackboneRouterMulticastListenerClear
otBackboneRouterMulticastListenerAdd
otBackboneRouterRegister
otError otBackboneRouterRegister( otInstance *aInstance )
明確註冊本機返回的路由器設定。
系統會為連接的裝置觸發伺服器資料要求訊息 SRV_DATA.ntf
。
必須啟用 OPENTHREAD_CONFIG_BACKBONE_ROUTER_ENABLE
才能使用此功能。
詳情 | |||||
---|---|---|---|---|---|
參數 |
|
||||
傳回值 |
|
otBackboneRouterSetEnabled
otBackboneRouterGetState
otBackboneRouterGetConfig
otBackboneRouterSetConfig
otBackboneRouterSetConfig
otError otBackboneRouterSetConfig( otInstance *aInstance, const otBackboneRouterConfig *aConfig )
設定本機 Backbone Router 設定 otBackboneRouterConfig。
如果主要中樞路由器的 BBR 資料集有所變更,伺服器資料要求訊息 SRV_DATA.ntf
將會自動啟動。
必須啟用 OPENTHREAD_CONFIG_BACKBONE_ROUTER_ENABLE
才能使用此功能。
詳情 | |||||
---|---|---|---|---|---|
參數 |
|
||||
傳回值 |
|
otBackboneRouterSetEnabled
otBackboneRouterGetState
otBackboneRouterGetConfig
otBackboneRouterRegister
otBackboneRouterSetDomainPrefixCallback
void otBackboneRouterSetDomainPrefixCallback( otInstance *aInstance, otBackboneRouterDomainPrefixCallback aCallback, void *aContext )
這個方法會設定 Backbone Router Domain Prefix 回呼。
詳情 | |||||||
---|---|---|---|---|---|---|---|
參數 |
|
otBackboneRouterSetEnabled
void otBackboneRouterSetEnabled( otInstance *aInstance, bool aEnable )
啟用或停用 Backbone 功能。
啟用這項設定後,如果 Thread 網路資料中沒有骨骼路由器服務,則系統會針對附加的裝置觸發伺服器資料要求訊息 SRV_DATA.ntf
。
如果停用這個選項,則如果中樞路由器處於主要狀態,就會觸發 SRV_DATA.ntf
。
必須啟用 OPENTHREAD_CONFIG_BACKBONE_ROUTER_ENABLE
才能使用此功能。
詳情 | |||||
---|---|---|---|---|---|
參數 |
|
otBackboneRouterGetState
otBackboneRouterGetConfig
otBackboneRouterSetConfig
otBackboneRouterRegister
otBackboneRouterSetMulticastListenerCallback
void otBackboneRouterSetMulticastListenerCallback( otInstance *aInstance, otBackboneRouterMulticastListenerCallback aCallback, void *aContext )
這個方法會設定 Backbone Router Multicast Listener 回呼。
詳情 | |||||||
---|---|---|---|---|---|---|---|
參數 |
|
otBackboneRouterSetNdProxyCallback
void otBackboneRouterSetNdProxyCallback( otInstance *aInstance, otBackboneRouterNdProxyCallback aCallback, void *aContext )
這個方法會設定 Backbone Router ND Proxy 回呼。
詳情 | |||||||
---|---|---|---|---|---|---|---|
參數 |
|
otBackboneRouterSetRegistrationJitter
void otBackboneRouterSetRegistrationJitter( otInstance *aInstance, uint8_t aJitter )
這個方法會設定 Backbone Router 註冊時基誤差值。
詳情 | |||
---|---|---|---|
參數 |
|
otBackboneRouterGetEnrollmentJitter
巨集
OT_BACKBONE_ROUTER_MULTICAST_LISTENER_ITERATOR_INIT
OT_BACKBONE_ROUTER_MULTICAST_LISTENER_ITERATOR_INIT 0
otBackboneRouterMulticastListenerIterator 的初始化器。
資源
OpenThread API 參考資料主題出自原始碼,可於 GitHub 取得。如需更多資訊,或想參閱我們的說明文件,請參閱資源。