Chuyển tiếp UDP

Mô-đun này bao gồm các chức năng dành cho tính năng chuyển tiếp UDP.

Tóm tắt

Bạn có thể dùng các hàm trong mô-đun này khi bật tính năng chuyển tiếp udp (OPENTHREAD_CONFIG_UDP_FORWARD_ENABLE).

Typedef

otUdpForwarder)(otMessage *aMessage, uint16_t aPeerPort, otIp6Address *aPeerAddr, uint16_t aSockPort, void *aContext) typedef
void(*
Con trỏ phân phối gói UDP đến máy chủ và máy chủ lưu trữ sẽ gửi gói này thông qua ngăn xếp mạng riêng.

Hàm

otUdpForwardReceive(otInstance *aInstance, otMessage *aMessage, uint16_t aPeerPort, const otIp6Address *aPeerAddr, uint16_t aSockPort)
void
Xử lý gói UDP nhận được từ máy chủ.
otUdpForwardSetForwarder(otInstance *aInstance, otUdpForwarder aForwarder, void *aContext)
void
Thiết lập lệnh gọi lại chuyển tiếp UDP để phân phối gói UDP tới máy chủ.
otUdpIsPortInUse(otInstance *aInstance, uint16_t port)
bool
Xác định xem cổng UDP đã cho có được mở độc quyền bằng API OpenThread hay không.

Typedef

otUdpForwarder

void(* otUdpForwarder)(otMessage *aMessage, uint16_t aPeerPort, otIp6Address *aPeerAddr, uint16_t aSockPort, void *aContext)

Con trỏ phân phối gói UDP đến máy chủ và máy chủ lưu trữ sẽ gửi gói này thông qua ngăn xếp mạng riêng.

Thông tin chi tiết
Thông số
[in] aMessage
Con trỏ đến Thông báo UDP.
[in] aPeerPort
Cổng UDP đích.
[in] aPeerAddr
Con trỏ tới địa chỉ IPv6 đích.
[in] aSockPort
Cổng UDP nguồn.
[in] aContext
Con trỏ đến ngữ cảnh dành riêng cho ứng dụng.

Hàm

otUdpForwardReceive

void otUdpForwardReceive(
  otInstance *aInstance,
  otMessage *aMessage,
  uint16_t aPeerPort,
  const otIp6Address *aPeerAddr,
  uint16_t aSockPort
)

Xử lý gói UDP nhận được từ máy chủ.

Bất kể cuộc gọi có thành công hay không, tin nhắn sẽ được giải phóng.

Thông tin chi tiết
Thông số
[in] aInstance
Con trỏ đến một thực thể OpenThread.
[in] aMessage
Con trỏ đến Thông báo UDP.
[in] aPeerPort
Cổng UDP nguồn.
[in] aPeerAddr
Con trỏ đến địa chỉ nguồn.
[in] aSockPort
Cổng UDP đích.

otUdpForwardSetForwarder

void otUdpForwardSetForwarder(
  otInstance *aInstance,
  otUdpForwarder aForwarder,
  void *aContext
)

Thiết lập lệnh gọi lại chuyển tiếp UDP để phân phối gói UDP tới máy chủ.

Thông tin chi tiết
Thông số
[in] aInstance
Con trỏ đến một thực thể OpenThread.
[in] aForwarder
Con trỏ đến một hàm được gọi để chuyển tiếp gói UDP đến máy chủ.
[in] aContext
Con trỏ đến ngữ cảnh dành riêng cho ứng dụng.

otUdpIsPortInUse

bool otUdpIsPortInUse(
  otInstance *aInstance,
  uint16_t port
)

Xác định xem cổng UDP đã cho có được mở độc quyền bằng API OpenThread hay không.

Thông tin chi tiết
Thông số
[in] aInstance
Con trỏ đến một thực thể OpenThread.
[in] port
Số cổng UDP để xác minh.
Giá trị trả về
true
OpenThread chỉ sử dụng cổng này.
false
Cổng này không được bất kỳ API OpenThread nào sử dụng hoặc được chia sẻ (ví dụ: cổng xương sống).

Tài nguyên

Các chủ đề tham khảo API OpenThread bắt nguồn 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 Tài nguyên.