Google은 흑인 공동체를 위한 인종적 평등을 추구하기 위해 노력하고 있습니다. 자세히 알아보기

국경 라우터

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

요약

기능

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)
이 함수는 로컬 네트워크 데이터에서 다음 On Mesh 접두사를 가져옵니다.
otBorderRouterGetNextRoute ( otInstance *aInstance, otNetworkDataIterator *aIterator, otExternalRouteConfig *aConfig)
이 함수는 로컬 네트워크 데이터에서 다음 외부 경로를 가져옵니다.
otBorderRouterRegister ( otInstance *aInstance)
리더에 즉시 로컬 네트워크 데이터를 등록하십시오.
otBorderRouterRemoveOnMeshPrefix ( otInstance *aInstance, const otIp6Prefix *aPrefix)
로컬 네트워크 데이터에서 경계 라우터 구성을 제거합니다.
otBorderRouterRemoveRoute ( otInstance *aInstance, const otIp6Prefix *aPrefix)
로컬 네트워크 데이터에서 외부 경로 구성을 제거합니다.
otBorderRoutingGetOmrPrefix ( otInstance *aInstance, otIp6Prefix *aPrefix)
이 메서드는 OMR(오프 메시 라우팅 가능) 접두사를 반환합니다.
otBorderRoutingGetOnLinkPrefix ( otInstance *aInstance, otIp6Prefix *aPrefix)
이 메서드는 인접 인프라 링크에 대한 온링크 접두사를 반환합니다.
otBorderRoutingInit ( otInstance *aInstance, uint32_t aInfraIfIndex, bool aInfraIfIsRunning)
이 메서드는 지정된 인프라 인터페이스에서 경계 라우팅 관리자를 초기화합니다.
otBorderRoutingSetEnabled ( otInstance *aInstance, bool aEnabled)
이 방법은 경계 라우팅 관리자를 활성화/비활성화합니다.

기능

otBorderRouterAddOnMeshPrefix

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

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

세부
매개변수
[in] aInstance
OpenThread 인스턴스에 대한 포인터입니다.
[in] aConfig
경계 라우터 구성에 대한 포인터입니다.
반환 값
OT_ERROR_NONE
로컬 네트워크 데이터에 구성을 성공적으로 추가했습니다.
OT_ERROR_INVALID_ARGS
하나 이상의 구성 매개변수가 잘못되었습니다.
OT_ERROR_NO_BUFS
로컬 네트워크 데이터에 구성을 추가할 공간이 충분하지 않습니다.
또한보십시오:
otBorderRouterRemoveOnMeshPrefix
otBorderRouter등록

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
otBorderRouter등록

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 . 종료 시 복사된 바이트 수입니다.

otBorderRouterGetNextOnMeshPrefix

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

이 함수는 로컬 네트워크 데이터에서 다음 On Mesh 접두사를 가져옵니다.

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

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
스레드 네트워크 데이터에 후속 외부 경로 항목이 없습니다.

otBorderRouter등록

otError otBorderRouterRegister(
  otInstance *aInstance
)

리더에 즉시 로컬 네트워크 데이터를 등록하십시오.

세부
매개변수
[in] aInstance
OpenThread 인스턴스에 대한 포인터입니다.
반환 값
OT_ERROR_NONE
배달을 위해 서버 데이터 요청 메시지를 성공적으로 큐에 넣었습니다.
또한보십시오:
otBorderRouterAddOnMeshPrefix
otBorderRouterRemoveOnMeshPrefix
otBorderRouterAddRoute
otBorderRouter경로 제거

otBorderRouterRemoveOnMeshPrefix

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

로컬 네트워크 데이터에서 경계 라우터 구성을 제거합니다.

세부
매개변수
[in] aInstance
OpenThread 인스턴스에 대한 포인터입니다.
[in] aPrefix
IPv6 접두사에 대한 포인터입니다.
반환 값
OT_ERROR_NONE
로컬 네트워크 데이터에서 구성을 성공적으로 제거했습니다.
OT_ERROR_NOT_FOUND
경계 라우터 항목을 찾을 수 없습니다.
또한보십시오:
otBorderRouterAddOnMeshPrefix
otBorderRouter등록

otBorderRouterRemoveRoute

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

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

세부
매개변수
[in] aInstance
OpenThread 인스턴스에 대한 포인터입니다.
[in] aPrefix
IPv6 접두사에 대한 포인터입니다.
반환 값
OT_ERROR_NONE
로컬 네트워크 데이터에서 구성을 성공적으로 제거했습니다.
OT_ERROR_NOT_FOUND
경계 라우터 항목을 찾을 수 없습니다.
또한보십시오:
otBorderRouterAddRoute
otBorderRouter등록

otBorderRoutingGetOmrPrefix

otError otBorderRoutingGetOmrPrefix(
  otInstance *aInstance,
  otIp6Prefix *aPrefix
)

이 메서드는 OMR(오프 메시 라우팅 가능) 접두사를 반환합니다.

무작위로 생성된 64비트 접두사는 아직 OMR 접두사가 없는 경우 스레드 네트워크에 게시됩니다.

세부
매개변수
[in] aInstance
OpenThread 인스턴스에 대한 포인터입니다.
[out] aPrefix
접두사가 출력될 위치에 대한 포인터입니다.
반환 값
OT_ERROR_INVALID_STATE
Border Routing Manager가 아직 초기화되지 않았습니다.
OT_ERROR_NONE
OMR 접두사를 성공적으로 검색했습니다.

otBorderRoutingGetOnLinkPrefix

otError otBorderRoutingGetOnLinkPrefix(
  otInstance *aInstance,
  otIp6Prefix *aPrefix
)

이 메서드는 인접 인프라 링크에 대한 온링크 접두사를 반환합니다.

임의로 생성된 64비트 접두사는 링크에서 보급 중인 사용 가능한 온링크 접두사가 없는 경우 인프라 링크에서 보급됩니다.

세부
매개변수
[in] aInstance
OpenThread 인스턴스에 대한 포인터입니다.
[out] aPrefix
접두사가 출력될 위치에 대한 포인터입니다.
반환 값
OT_ERROR_INVALID_STATE
Border Routing Manager가 아직 초기화되지 않았습니다.
OT_ERROR_NONE
온링크 접두사를 성공적으로 검색했습니다.

otBorderRoutingInit

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

이 메서드는 지정된 인프라 인터페이스에서 경계 라우팅 관리자를 초기화합니다.

세부
매개변수
[in] aInstance
OpenThread 인스턴스에 대한 포인터입니다.
[in] aInfraIfIndex
인프라 인터페이스 인덱스.
[in] aInfraIfIsRunning
인프라 인터페이스가 실행 중인지 여부를 나타내는 부울입니다.
반환 값
OT_ERROR_NONE
주어진 인프라에서 Border Routing Manager를 성공적으로 시작했습니다.
OT_ERROR_INVALID_STATE
Border Routing Manager는 이미 초기화되었습니다.
OT_ERROR_INVALID_ARGS
인프라 인터페이스의 인덱스가 유효하지 않습니다.
OT_ERROR_FAILED
내부 오류입니다. 일반적으로 임의의 접두사 생성 실패로 인해 발생합니다.
또한보십시오:
otPlatInfraIfStateChanged .

otBorderRoutingSetEnabled

otError otBorderRoutingSetEnabled(
  otInstance *aInstance,
  bool aEnabled
)

이 방법은 경계 라우팅 관리자를 활성화/비활성화합니다.

세부
매개변수
[in] aInstance
OpenThread 인스턴스에 대한 포인터입니다.
[in] aEnabled
라우팅 관리자를 활성화/비활성화하는 부울입니다.
반환 값
OT_ERROR_INVALID_STATE
Border Routing Manager가 아직 초기화되지 않았습니다.
OT_ERROR_NONE
Border Routing Manager를 성공적으로 활성화/비활성화했습니다.