Google cam kết thúc đẩy công bằng chủng tộc cho Cộng đồng người da đen. Xem cách thực hiện.

Bộ định tuyến biên

Mô-đun này bao gồm các chức năng quản lý dữ liệu mạng cục bộ bằng Bộ định tuyến biên của chuỗi mở.

Tóm tắt

Hàm

otBorderRouterAddOnMeshPrefix(otInstance *aInstance, const otBorderRouterConfig *aConfig)
Thêm cấu hình bộ định tuyến biên vào dữ liệu mạng cục bộ.
otBorderRouterAddRoute(otInstance *aInstance, const otExternalRouteConfig *aConfig)
Thêm cấu hình tuyến đường bên ngoài vào dữ liệu mạng cục bộ.
otBorderRouterGetNetData(otInstance *aInstance, bool aStable, uint8_t *aData, uint8_t *aDataLength)
Phương thức này cung cấp một bản sao đầy đủ hoặc ổn định của Dữ liệu mạng theo chuỗi cục bộ.
otBorderRouterGetNextOnMeshPrefix(otInstance *aInstance, otNetworkDataIterator *aIterator, otBorderRouterConfig *aConfig)
Hàm này nhận tiền tố On Mesh tiếp theo trong Dữ liệu mạng cục bộ.
otBorderRouterGetNextRoute(otInstance *aInstance, otNetworkDataIterator *aIterator, otExternalRouteConfig *aConfig)
Hàm này nhận tuyến đường bên ngoài tiếp theo trong Dữ liệu mạng cục bộ.
otBorderRouterRegister(otInstance *aInstance)
Đăng ký ngay dữ liệu mạng cục bộ với Trưởng nhóm.
otBorderRouterRemoveOnMeshPrefix(otInstance *aInstance, const otIp6Prefix *aPrefix)
Xóa cấu hình bộ định tuyến biên khỏi dữ liệu mạng cục bộ.
otBorderRouterRemoveRoute(otInstance *aInstance, const otIp6Prefix *aPrefix)
Xóa cấu hình tuyến đường bên ngoài khỏi dữ liệu mạng cục bộ.
otBorderRoutingGetNat64Prefix(otInstance *aInstance, otIp6Prefix *aPrefix)
Hàm này trả về tiền tố NAT64 cục bộ.
otBorderRoutingGetOmrPrefix(otInstance *aInstance, otIp6Prefix *aPrefix)
Phương thức này trả về tiền tố có thể định tuyến, không định tuyến (OMR).
otBorderRoutingGetOnLinkPrefix(otInstance *aInstance, otIp6Prefix *aPrefix)
Phương thức này trả về tiền tố trên đường liên kết cho đường liên kết cơ sở hạ tầng liền kề.
otBorderRoutingInit(otInstance *aInstance, uint32_t aInfraIfIndex, bool aInfraIfIsRunning)
Phương thức này sẽ khởi chạy Trình quản lý định tuyến biên trên giao diện cơ sở hạ tầng cho trước.
otBorderRoutingSetEnabled(otInstance *aInstance, bool aEnabled)
Phương pháp này bật/tắt Trình quản lý định tuyến biên.

Hàm

otBorder phírAddOnMeshPrefix

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

Thêm cấu hình bộ định tuyến biên vào dữ liệu mạng cục bộ.

Thông tin chi tiết
Thông số
[in] aInstance
Con trỏ đến một bản sao OpenThread.
[in] aConfig
Con trỏ đến cấu hình bộ định tuyến biên.
Giá trị trả về
OT_ERROR_NONE
Đã thêm thành công cấu hình vào dữ liệu mạng cục bộ.
OT_ERROR_INVALID_ARGS
Một hoặc nhiều thông số cấu hình không hợp lệ.
OT_ERROR_NO_BUFS
Không có đủ phòng để thêm cấu hình vào dữ liệu mạng cục bộ.
Xem thêm:
otBorder phírRemoveOnMeshPrefix
otBorder phírregister

otBorder phírAdd phí

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

Thêm cấu hình tuyến đường bên ngoài vào dữ liệu mạng cục bộ.

Thông tin chi tiết
Thông số
[in] aInstance
Con trỏ đến một bản sao OpenThread.
[in] aConfig
Con trỏ đến cấu hình tuyến đường bên ngoài.
Giá trị trả về
OT_ERROR_NONE
Đã thêm thành công cấu hình vào dữ liệu mạng cục bộ.
OT_ERROR_INVALID_ARGS
Một hoặc nhiều thông số cấu hình không hợp lệ.
OT_ERROR_NO_BUFS
Không có đủ phòng để thêm cấu hình vào dữ liệu mạng cục bộ.
Xem thêm:
otBorder phírRemoveRoute
otBorder phírSubscription

otBorderLinerGetNetData

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

Phương thức này cung cấp một bản sao đầy đủ hoặc ổn định của Dữ liệu mạng theo chuỗi cục bộ.

Thông tin chi tiết
Thông số
[in] aInstance
Con trỏ đến một bản sao OpenThread.
[in] aStable
TRUE khi sao chép phiên bản ổn định, FALSE khi sao chép phiên bản đầy đủ.
[out] aData
Con trỏ tới bộ đệm dữ liệu.
[in,out] aDataLength
Khi nhập, kích thước của vùng đệm dữ liệu mà aData trỏ đến. Khi thoát, số byte đã sao chép.

otBorderLinerGetNextOnMeshPrefix

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

Hàm này nhận tiền tố On Mesh tiếp theo trong Dữ liệu mạng cục bộ.

Thông tin chi tiết
Thông số
[in] aInstance
Con trỏ đến một bản sao OpenThread.
[in,out] aIterator
Con trỏ đến ngữ cảnh lặp lại Dữ liệu mạng. Để nhập mục đầu tiên trên lưới, bạn phải đặt mục nhập này là OT_NETWORK_DATA_ITERATOR_INIT.
[out] aConfig
Con trỏ tới thông tin Tiền tố trên lưới.
Giá trị trả về
OT_ERROR_NONE
Đã tìm thấy tiền tố On Mesh tiếp theo.
OT_ERROR_NOT_FOUND
Không có tiền tố On Mesh tiếp theo trong Dữ liệu mạng chuỗi.

otBorderLinerGetNextNext

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

Hàm này nhận tuyến đường bên ngoài tiếp theo trong Dữ liệu mạng cục bộ.

Thông tin chi tiết
Thông số
[in] aInstance
Con trỏ đến một bản sao OpenThread.
[in,out] aIterator
Con trỏ đến ngữ cảnh lặp lại Dữ liệu mạng. Để nhập mục nhập đường đi bên ngoài đầu tiên, bạn phải đặt mục nhập OT_NETWORK_DATA_ITERATOR_INIT.
[out] aConfig
Con trỏ tới thông tin Tuyến đường bên ngoài.
Giá trị trả về
OT_ERROR_NONE
Đã tìm thấy thành công Tuyến đường bên ngoài tiếp theo.
OT_ERROR_NOT_FOUND
Không có mục tuyến đường bên ngoài nào tiếp theo trong Dữ liệu mạng chuỗi.

otBorderBrowserrregister

otError otBorderRouterRegister(
  otInstance *aInstance
)

Đăng ký ngay dữ liệu mạng cục bộ với Trưởng nhóm.

Thông tin chi tiết
Thông số
[in] aInstance
Con trỏ đến một bản sao OpenThread.
Giá trị trả về
OT_ERROR_NONE
Đã gửi thành công thông báo Yêu cầu dữ liệu máy chủ để gửi.
Xem thêm:
otBorder phírAddOnMeshPrefix
otBorder phírRemoveOnMeshPrefix
otBorder phírAddTuyến
otBorder phírRemove routes

otBorderorderrRemoveOnMeshPrefix

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

Xóa cấu hình bộ định tuyến biên khỏi dữ liệu mạng cục bộ.

Thông tin chi tiết
Thông số
[in] aInstance
Con trỏ đến một bản sao OpenThread.
[in] aPrefix
Con trỏ đến tiền tố IPv6.
Giá trị trả về
OT_ERROR_NONE
Đã xóa thành công cấu hình khỏi dữ liệu mạng cục bộ.
OT_ERROR_NOT_FOUND
Không tìm thấy mục nhập Bộ định tuyến biên.
Xem thêm:
otBorder phírAddOnMeshPrefix
otBorder phírregister

otBorderorderrRemove routes

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

Xóa cấu hình tuyến đường bên ngoài khỏi dữ liệu mạng cục bộ.

Thông tin chi tiết
Thông số
[in] aInstance
Con trỏ đến một bản sao OpenThread.
[in] aPrefix
Con trỏ đến tiền tố IPv6.
Giá trị trả về
OT_ERROR_NONE
Đã xóa thành công cấu hình khỏi dữ liệu mạng cục bộ.
OT_ERROR_NOT_FOUND
Không tìm thấy mục nhập Bộ định tuyến biên.
Xem thêm:
otBorder phírAdd phí
otBorder phír phí đăng ký

otBorderRoutingGetNat64Prefix

otError otBorderRoutingGetNat64Prefix(
  otInstance *aInstance,
  otIp6Prefix *aPrefix
)

Hàm này trả về tiền tố NAT64 cục bộ.

Tiền tố này có thể không được quảng cáo trong mạng Chuỗi.

Hàm này chỉ dùng được khi bạn đã bật OPENTHREAD_CONFIG_BORDER_ROUTING_NAT64_ENABLE.

Thông tin chi tiết
Thông số
[in] aInstance
Con trỏ đến một bản sao OpenThread.
[out] aPrefix
Con trỏ đến nơi xuất tiền tố.
Giá trị trả về
OT_ERROR_INVALID_STATE
Trình quản lý định tuyến biên chưa được khởi chạy.
OT_ERROR_NONE
Đã truy xuất thành công tiền tố NAT64.

otBorderorderGetOmrPrefix

otError otBorderRoutingGetOmrPrefix(
  otInstance *aInstance,
  otIp6Prefix *aPrefix
)

Phương thức này trả về tiền tố có thể định tuyến, không định tuyến (OMR).

Tiền tố 64 bit được tạo ngẫu nhiên sẽ được xuất bản trong mạng Chuỗi nếu không có tiền tố OMR.

Thông tin chi tiết
Thông số
[in] aInstance
Con trỏ đến một bản sao OpenThread.
[out] aPrefix
Con trỏ đến nơi xuất tiền tố.
Giá trị trả về
OT_ERROR_INVALID_STATE
Trình quản lý định tuyến biên chưa được khởi chạy.
OT_ERROR_NONE
Đã truy xuất thành công tiền tố OMR.

otBorder thíchGetOnLinkPrefix

otError otBorderRoutingGetOnLinkPrefix(
  otInstance *aInstance,
  otIp6Prefix *aPrefix
)

Phương thức này trả về tiền tố trên đường liên kết cho đường liên kết cơ sở hạ tầng liền kề.

Tiền tố 64 bit được tạo ngẫu nhiên sẽ được quảng cáo trên đường liên kết đến cơ sở hạ tầng nếu không có tiền tố trong đường liên kết có thể sử dụng được quảng cáo trên đường liên kết đó.

Thông tin chi tiết
Thông số
[in] aInstance
Con trỏ đến một bản sao OpenThread.
[out] aPrefix
Con trỏ đến nơi xuất tiền tố.
Giá trị trả về
OT_ERROR_INVALID_STATE
Trình quản lý định tuyến biên chưa được khởi chạy.
OT_ERROR_NONE
Đã truy xuất thành công tiền tố trên đường liên kết.

otBorderorderInit

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

Phương thức này sẽ khởi chạy Trình quản lý định tuyến biên trên giao diện cơ sở hạ tầng cho trước.

Thông tin chi tiết
Thông số
[in] aInstance
Con trỏ đến một bản sao OpenThread.
[in] aInfraIfIndex
Chỉ mục giao diện cơ sở hạ tầng.
[in] aInfraIfIsRunning
Giá trị boolean cho biết giao diện cơ sở hạ tầng có đang chạy hay không.
Giá trị trả về
OT_ERROR_NONE
Đã khởi động thành công Trình quản lý định tuyến biên trên cơ sở hạ tầng đã cho.
OT_ERROR_INVALID_STATE
Trình quản lý định tuyến biên đã được khởi tạo.
OT_ERROR_INVALID_ARGS
Chỉ mục của giao diện cơ sở hạ tầng không hợp lệ.
OT_ERROR_FAILED
Lỗi nội bộ. Thường do không tạo được tiền tố ngẫu nhiên.
Xem thêm:
otPlatInfraIfStateChanged.

otBorderorderSetEnabled

otError otBorderRoutingSetEnabled(
  otInstance *aInstance,
  bool aEnabled
)

Phương pháp này bật/tắt Trình quản lý định tuyến biên.

Thông tin chi tiết
Thông số
[in] aInstance
Con trỏ đến một bản sao OpenThread.
[in] aEnabled
Boolean để bật/tắt trình quản lý định tuyến.
Giá trị trả về
OT_ERROR_INVALID_STATE
Trình quản lý định tuyến biên chưa được khởi chạy.
OT_ERROR_NONE
Đã bật/tắt thành công Trình quản lý định tuyến biên.

Nguồn lực

Các chủ đề trong API tham chiếu Openthread có nguồn gốc từ mã nguồn, có trên GitHub. Để biết thêm thông tin hoặc để đóng góp cho tài liệu của chúng tôi, hãy tham khảo phần Tài nguyên.