보더 라우터

이 모듈에는 OpenThread Border Router로 로컬 네트워크 데이터를 관리하는 함수가 포함되어 있습니다.

요약

Typedef

otBorderRouterNetDataFullCallback)(void *aContext) typedef
void(*
네트워크 데이터 (로컬 또는 리더)가 가득 차면 호출되는 함수 포인터 콜백입니다.

함수

otBorderRouterAddOnMeshPrefix(otInstance *aInstance, const otBorderRouterConfig *aConfig)
로컬 네트워크 데이터에 보더 라우터 구성을 추가합니다.
otBorderRouterAddRoute(otInstance *aInstance, const otExternalRouteConfig *aConfig)
로컬 네트워크 데이터에 외부 경로 구성을 추가합니다.
otBorderRouterGetNetData(otInstance *aInstance, bool aStable, uint8_t *aData, uint8_t *aDataLength)
로컬 스레드 네트워크 데이터의 전체 또는 안정적인 사본을 제공합니다.
otBorderRouterGetNextOnMeshPrefix(otInstance *aInstance, otNetworkDataIterator *aIterator, otBorderRouterConfig *aConfig)
로컬 네트워크 데이터에서 다음 메시 메시 접두사를 가져옵니다.
otBorderRouterGetNextRoute(otInstance *aInstance, otNetworkDataIterator *aIterator, otExternalRouteConfig *aConfig)
로컬 네트워크 데이터의 다음 외부 경로를 가져옵니다.
otBorderRouterRegister(otInstance *aInstance)
리더에 로컬 네트워크 데이터를 즉시 등록합니다.
otBorderRouterRemoveOnMeshPrefix(otInstance *aInstance, const otIp6Prefix *aPrefix)
로컬 네트워크 데이터에서 보더 라우터 구성을 삭제합니다.
otBorderRouterRemoveRoute(otInstance *aInstance, const otIp6Prefix *aPrefix)
로컬 네트워크 데이터에서 외부 경로 구성을 삭제합니다.
otBorderRouterSetNetDataFullCallback(otInstance *aInstance, otBorderRouterNetDataFullCallback aCallback, void *aContext)
void
네트워크 데이터가 가득 찰 때를 나타내는 콜백을 설정합니다.

Typedef

otBorderRouterNetDataFullCallback 클래스의 생성자

void(* otBorderRouterNetDataFullCallback)(void *aContext)

네트워크 데이터 (로컬 또는 리더)가 가득 차면 호출되는 함수 포인터 콜백입니다.

세부정보
매개변수
[in] aContext
임의의 컨텍스트 정보를 가리키는 포인터입니다.

함수

otBorderRouterAddOnMesh프리픽스

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

로컬 네트워크 데이터에 보더 라우터 구성을 추가합니다.

세부정보
매개변수
[in] aInstance
OpenThread 인스턴스에 대한 포인터입니다.
[in] aConfig
보더 라우터 구성에 대한 포인터입니다.
반환 값
OT_ERROR_NONE
로컬 네트워크 데이터에 구성을 추가했습니다.
OT_ERROR_INVALID_ARGS
하나 이상의 구성 매개변수가 잘못되었습니다.
OT_ERROR_NO_BUFS
로컬 네트워크 데이터에 구성을 추가하기 위한 공간이 부족합니다.
참고 항목:
otBorderRouterRemoveOnMeshPrefix
otBorderRouterRegister

otBorderRouterAddRoute 클래스의 생성자

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

로컬 네트워크 데이터에 외부 경로 구성을 추가합니다.

세부정보
매개변수
[in] aInstance
OpenThread 인스턴스에 대한 포인터입니다.
[in] aConfig
외부 경로 구성에 대한 포인터입니다.
반환 값
OT_ERROR_NONE
로컬 네트워크 데이터에 구성을 추가했습니다.
OT_ERROR_INVALID_ARGS
하나 이상의 구성 매개변수가 잘못되었습니다.
OT_ERROR_NO_BUFS
로컬 네트워크 데이터에 구성을 추가하기 위한 공간이 부족합니다.
참고 항목:
otBorderRouterRemoveRoute
otBorderRouterRegister

otBorderRouterGetNetData 클래스의 생성자

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

로컬 스레드 네트워크 데이터의 전체 또는 안정적인 사본을 제공합니다.

세부정보
매개변수
[in] aInstance
OpenThread 인스턴스에 대한 포인터입니다.
[in] aStable
정식 버전을 복사할 때는 TRUE, 정식 버전을 복사할 때는 FALSE로 설정합니다.
[out] aData
데이터 버퍼를 가리키는 포인터입니다.
[in,out] aDataLength
입력 시 aData가 가리키는 데이터 버퍼의 크기입니다. 종료 시 복사된 바이트 수입니다.

otBorderRouterGetNextOnMesh프리픽스

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

로컬 네트워크 데이터에서 다음 메시 메시 접두사를 가져옵니다.

세부정보
매개변수
[in] aInstance
OpenThread 인스턴스에 대한 포인터입니다.
[in,out] aIterator
네트워크 데이터 반복기 컨텍스트에 대한 포인터입니다. 첫 번째 메시 항목을 가져오려면 OT_NETWORK_DATA_ITERATOR_INIT로 설정해야 합니다.
[out] aConfig
On Mesh 프리픽스 정보에 대한 포인터입니다.
반환 값
OT_ERROR_NONE
다음 On Mesh 프리픽스를 찾았습니다.
OT_ERROR_NOT_FOUND
스레드 네트워크 데이터에 이후의 메시 메시 접두사가 없습니다.

otBorderRouterGetNextRoute 클래스의 생성자

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

로컬 네트워크 데이터의 다음 외부 경로를 가져옵니다.

세부정보
매개변수
[in] aInstance
OpenThread 인스턴스에 대한 포인터입니다.
[in,out] aIterator
네트워크 데이터 반복기 컨텍스트에 대한 포인터입니다. 첫 번째 외부 경로 항목을 가져오려면 OT_NETWORK_DATA_ITERATOR_INIT로 설정해야 합니다.
[out] aConfig
외부 경로 정보에 대한 포인터입니다.
반환 값
OT_ERROR_NONE
다음 외부 경로를 찾았습니다.
OT_ERROR_NOT_FOUND
스레드 네트워크 데이터에 후속 외부 경로 항목이 없습니다.

otBorderRouterRegister

otError otBorderRouterRegister(
  otInstance *aInstance
)

리더에 로컬 네트워크 데이터를 즉시 등록합니다.

세부정보
매개변수
[in] aInstance
OpenThread 인스턴스에 대한 포인터입니다.
반환 값
OT_ERROR_NONE
서버 데이터 요청 메시지를 전송을 위한 대기열에 추가했습니다.
참고 항목:
otBorderRouterAddOnMeshPrefix
otBorderRouterRemoveOnMeshPrefix
otBorderRouterAddRoute
otBorderRouterRemoveRoute

otBorderRouterRemoveOnMeshPrefix를

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

로컬 네트워크 데이터에서 보더 라우터 구성을 삭제합니다.

세부정보
매개변수
[in] aInstance
OpenThread 인스턴스에 대한 포인터입니다.
[in] aPrefix
IPv6 프리픽스를 가리키는 포인터입니다.
반환 값
OT_ERROR_NONE
로컬 네트워크 데이터에서 구성을 삭제했습니다.
OT_ERROR_NOT_FOUND
보더 라우터 항목을 찾을 수 없습니다.
참고 항목:
otBorderRouterAddOnMeshPrefix
otBorderRouterRegister

otBorderRouterRemoveRoute 클래스의 생성자

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

로컬 네트워크 데이터에서 외부 경로 구성을 삭제합니다.

세부정보
매개변수
[in] aInstance
OpenThread 인스턴스에 대한 포인터입니다.
[in] aPrefix
IPv6 프리픽스를 가리키는 포인터입니다.
반환 값
OT_ERROR_NONE
로컬 네트워크 데이터에서 구성을 삭제했습니다.
OT_ERROR_NOT_FOUND
보더 라우터 항목을 찾을 수 없습니다.
참고 항목:
otBorderRouterAddRoute
otBorderRouterRegister

otBorderRouterSetNetDataFullCallback 클래스의 생성자

void otBorderRouterSetNetDataFullCallback(
  otInstance *aInstance,
  otBorderRouterNetDataFullCallback aCallback,
  void *aContext
)

네트워크 데이터가 가득 찰 때를 나타내는 콜백을 설정합니다.

OPENTHREAD_CONFIG_BORDER_ROUTER_SIGNAL_NETWORK_DATA_FULL가 필요합니다.

콜백은 다음과 같은 경우에 호출됩니다.

  • 기기가 리더 역할을 하고 네트워크 데이터에 추가할 수 없는 Border Router (BR)로부터 네트워크 데이터 등록을 받습니다 (공간 부족).
  • 기기가 브라질 전용 역할을 하며 로컬 네트워크 데이터에 새 항목을 추가할 수 없습니다.
  • 기기가 브라질 게시자 역할을 하고 로컬 네트워크 데이터 항목을 리더에 등록하려고 하지만 로컬 항목이 맞지 않다고 판단합니다.

세부정보
매개변수
[in] aInstance
OpenThread 인스턴스에 대한 포인터입니다.
[in] aCallback
콜백.
[in] aContext
aCallback와 함께 사용되는 임의의 컨텍스트 정보를 가리키는 포인터입니다.

자료

OpenThread API 참조 주제는 GitHub에서 제공되는 소스 코드에서 비롯됩니다. 자세한 내용을 보거나 문서에 참여하려면 리소스를 참고하세요.