バックボーン ルーター

このモジュールでは、OpenThread バックボーン ルーター サービス用の関数について説明します。

まとめ

列挙型

otBackboneRouterDomainPrefixEvent{
  OT_BACKBONE_ROUTER_DOMAIN_PREFIX_ADDED = 0,
  OT_BACKBONE_ROUTER_DOMAIN_PREFIX_REMOVED = 1,
  OT_BACKBONE_ROUTER_DOMAIN_PREFIX_CHANGED = 2
}
enum
ドメイン プレフィックス イベントを表します。
otBackboneRouterMulticastListenerEvent{
  OT_BACKBONE_ROUTER_MULTICAST_LISTENER_ADDED = 0,
  OT_BACKBONE_ROUTER_MULTICAST_LISTENER_REMOVED = 1
}
enum
マルチキャスト リスナーのイベントを表します。
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
}
enum
ND プロキシ イベントを表します。
otBackboneRouterState{
  OT_BACKBONE_ROUTER_STATE_DISABLED = 0,
  OT_BACKBONE_ROUTER_STATE_SECONDARY = 1,
  OT_BACKBONE_ROUTER_STATE_PRIMARY = 2
}
enum
バックボーン ルーターのステータスを表します。

Typedef

otBackboneRouterConfig typedef
バックボーン ルーター構成を表します。
otBackboneRouterDomainPrefixCallback)(void *aContext, otBackboneRouterDomainPrefixEvent aEvent, const otIp6Prefix *aDomainPrefix) typedef
void(*
ポインタは、ドメインのプレフィックスが変更されるたびに呼び出されます。
otBackboneRouterMulticastListenerCallback)(void *aContext, otBackboneRouterMulticastListenerEvent aEvent, const otIp6Address *aAddress) typedef
void(*
ポインタは、マルチキャスト リスナーが変更されるたびに呼び出されます。
otBackboneRouterMulticastListenerInfo typedef
バックボーン ルーターのマルチキャスト リスナーの情報を表します。
otBackboneRouterMulticastListenerIterator typedef
uint16_t
マルチキャスト リスナーの反復処理に使用されます。
otBackboneRouterNdProxyCallback)(void *aContext, otBackboneRouterNdProxyEvent aEvent, const otIp6Address *aDua) typedef
void(*
Nd プロキシが変更されるたびに、ポインタが呼び出されます。
otBackboneRouterNdProxyInfo typedef
バックボーン ルーターの 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)
Thread ネットワークのプライマリ バックボーン ルーター情報を取得します。
otBackboneRouterGetRegistrationJitter(otInstance *aInstance)
uint8_t
バックボーン ルーターの登録ジッター値を返します。
otBackboneRouterGetState(otInstance *aInstance)
バックボーン ルーター otBackboneRouterState を取得します。
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)
ローカルの Backbone Router 構成 otBackboneRouterConfig を設定します。
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

セカンダリ バックボーン ルーター。

Typedef

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
マルチキャスト リスナーの IPv6 マルチキャスト アドレス。

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 プロキシのドメイン ユニキャスト アドレス。aEventOT_BACKBONE_ROUTER_NDPROXY_CLEARED の場合は nullptr

otBackboneRouterNdProxyInfo

struct otBackboneRouterNdProxyInfo otBackboneRouterNdProxyInfo

バックボーン ルーターの ND プロキシ情報を表します。

関数

otBackboneRouterConfigNextDuaRegistrationResponse

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

次回の DUA 登録のレスポンス ステータスを構成します。

注: OPENTHREAD_CONFIG_REFERENCE_DEVICE_ENABLE が有効になっている場合にのみ使用できます。テストと認定にのみ使用します。

TODO(DUA)は、認証用の Coap エラーコードと対応するプロセスをサポートします。

詳細
パラメータ
[in] aInstance
OpenThread インスタンスへのポインタ。
[in] aMlIid
メッシュ ローカル IID へのポインタ。NULL の場合は、今後の DUA.req について aStatus で応答し、それ以外の場合は、一致する aMlIid を持つもののみを返します。
[in] aStatus
応答するステータス。

otBackboneRouterConfigNextMulticastListenerRegistrationResponse

void otBackboneRouterConfigNextMulticastListenerRegistrationResponse(
  otInstance *aInstance,
  uint8_t aStatus
)

次のマルチキャスト リスナー登録のレスポンス ステータスを設定します。

OPENTHREAD_CONFIG_BACKBONE_ROUTER_ENABLEOPENTHREAD_CONFIG_BACKBONE_ROUTER_MULTICAST_ROUTING_ENABLEOPENTHREAD_CONFIG_REFERENCE_DEVICE_ENABLE が有効な場合に使用できます。

詳細
パラメータ
[in] aInstance
OpenThread インスタンスへのポインタ。
[in] aStatus
応答するステータス。

otBackboneRouterGetConfig

void otBackboneRouterGetConfig(
  otInstance *aInstance,
  otBackboneRouterConfig *aConfig
)

ローカルのバックボーン ルーター構成を取得します。

OPENTHREAD_CONFIG_BACKBONE_ROUTER_ENABLE が有効な場合に利用できます。

詳細
パラメータ
[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
)

Thread ネットワークのプライマリ バックボーン ルーター情報を取得します。

詳細
パラメータ
[in] aInstance
OpenThread インスタンスへのポインタ。
[out] aConfig
プライマリ バックボーン ルーターの情報を配置する場所へのポインタ。
戻り値
OT_ERROR_NONE
プライマリ バックボーン ルーター情報を取得しました。
OT_ERROR_NOT_FOUND
プライマリ バックボーン ルーターが存在しません。

otBackboneRouterGetRegistrationJitter

uint8_t otBackboneRouterGetRegistrationJitter(
  otInstance *aInstance
)

バックボーン ルーターの登録ジッター値を返します。

詳細
戻り値
バックボーン ルーターの登録ジッター値。
関連項目:
otBackboneRouterSetRegistrationJitter

otBackboneRouterGetState

otBackboneRouterState otBackboneRouterGetState(
  otInstance *aInstance
)

バックボーン ルーター otBackboneRouterState を取得します。

詳細
パラメータ
[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
)

タイムアウト値(秒単位)でマルチキャスト リスナーを追加します。

デフォルトの MLR タイムアウトを使用するには、0 を渡します。

OPENTHREAD_CONFIG_BACKBONE_ROUTER_ENABLEOPENTHREAD_CONFIG_BACKBONE_ROUTER_MULTICAST_ROUTING_ENABLEOPENTHREAD_CONFIG_REFERENCE_DEVICE_ENABLE が有効な場合に使用できます。

詳細
パラメータ
[in] aInstance
OpenThread インスタンスへのポインタ。
[in] aAddress
マルチキャスト リスナーのアドレス。
[in] aTimeout
マルチキャスト リスナーのタイムアウト(秒単位)。デフォルトの MLR タイムアウトを使用する場合は 0。
戻り値
OT_ERROR_NONE
マルチキャスト リスナーが正常に追加されたかどうか。
OT_ERROR_INVALID_ARGS
マルチキャスト リスナーのアドレスが無効である場合。
OT_ERROR_NO_BUFS
マルチキャスト リスナーを保存するためのスペースがありません。
関連項目:
otBackboneRouterMulticastListenerClear
otBackboneRouterMulticastListenerGetNext

otBackboneRouterMulticastListenerClear

void otBackboneRouterMulticastListenerClear(
  otInstance *aInstance
)

マルチキャスト リスナーをクリアします。

OPENTHREAD_CONFIG_BACKBONE_ROUTER_ENABLEOPENTHREAD_CONFIG_BACKBONE_ROUTER_MULTICAST_ROUTING_ENABLEOPENTHREAD_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 へのポインタ。
戻り値
OT_ERROR_NONE
マルチキャスト リスナーの次の情報(aListenerInfo が正常に更新されました)が見つかりました。
OT_ERROR_NOT_FOUND
後続のマルチキャスト リスナー情報が見つかりませんでした。
関連項目:
otBackboneRouterMulticastListenerClear
otBackboneRouterMulticastListenerAdd

otBackboneRouterRegister

otError otBackboneRouterRegister(
  otInstance *aInstance
)

ローカルのバックボーン ルーター構成を明示的に登録します。

接続されているデバイスに対して、サーバーデータ リクエスト メッセージ SRV_DATA.ntf がトリガーされます。

OPENTHREAD_CONFIG_BACKBONE_ROUTER_ENABLE が有効な場合に利用できます。

詳細
パラメータ
[in] aInstance
OpenThread インスタンスへのポインタ。
戻り値
OT_ERROR_NO_BUFS
バックボーン ルーター サービスを追加するための十分な空き容量がありません。
OT_ERROR_NONE
サーバーデータのリクエスト メッセージを配信用にキューに追加しました。
関連項目:
otBackboneRouterSetEnabled
otBackboneRouterGetState
otBackboneRouterGetConfig
otBackboneRouterSetConfig

otBackboneRouterSetConfig

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

ローカルの Backbone Router 構成 otBackboneRouterConfig を設定します。

プライマリ バックボーン ルーターの BBR データセットが変更されると、サーバーデータ リクエスト メッセージ SRV_DATA.ntf が自動的に開始されます。

OPENTHREAD_CONFIG_BACKBONE_ROUTER_ENABLE が有効な場合に利用できます。

詳細
パラメータ
[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
)

バックボーン機能を有効または無効にします。

有効にした場合、Thread ネットワーク データにバックボーン ルーター サービスが存在しない場合、接続済みのデバイスに対してサーバーデータ リクエスト メッセージ SRV_DATA.ntf がトリガーされます。

無効にした場合、バックボーン ルーターがプライマリ状態になると、SRV_DATA.ntf がトリガーされます。

OPENTHREAD_CONFIG_BACKBONE_ROUTER_ENABLE が有効な場合に利用できます。

詳細
パラメータ
[in] aInstance
OpenThread インスタンスへのポインタ。
[in] aEnable
バックボーン機能を有効にする場合は TRUE、それ以外の場合は 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 のイニシャライザ。

リソース

OpenThread API リファレンスのトピックは、GitHub で入手可能なソースコードに基づいています。詳細やドキュメントの作成方法については、リソースをご覧ください。