ICMPV6

โมดูลนี้มีฟังก์ชันที่ควบคุมการสื่อสารของ ICMPv6

สรุป

คําอธิบาย

otIcmp6Code{
  OT_ICMP6_CODE_DST_UNREACH_NO_ROUTE = 0,
  OT_ICMP6_CODE_FRAGM_REAS_TIME_EX = 1
}
enum
รหัสข้อความ ICMPv6
otIcmp6EchoMode{
  OT_ICMP6_ECHO_HANDLER_DISABLED = 0,
  OT_ICMP6_ECHO_HANDLER_UNICAST_ONLY = 1,
  OT_ICMP6_ECHO_HANDLER_MULTICAST_ONLY = 2,
  OT_ICMP6_ECHO_HANDLER_ALL = 3
}
enum
ICMPv6 โหมดสะท้อนกลับเสียงสะท้อน
otIcmp6Type{
  OT_ICMP6_TYPE_DST_UNREACH = 1,
  OT_ICMP6_TYPE_PACKET_TO_BIG = 2,
  OT_ICMP6_TYPE_TIME_EXCEEDED = 3,
  OT_ICMP6_TYPE_PARAMETER_PROBLEM = 4,
  OT_ICMP6_TYPE_ECHO_REQUEST = 128,
  OT_ICMP6_TYPE_ECHO_REPLY = 129,
  OT_ICMP6_TYPE_ROUTER_SOLICIT = 133,
  OT_ICMP6_TYPE_ROUTER_ADVERT = 134
}
enum
ประเภทข้อความ ICMPv6

พิมพ์ดีด

otIcmp6Code typedef
รหัสข้อความ ICMPv6
otIcmp6EchoMode typedef
ICMPv6 โหมดสะท้อนกลับเสียงสะท้อน
otIcmp6Handler typedef
โครงสร้างนี้ใช้เครื่องจัดการข้อความ ICMPv6
otIcmp6Header typedef
struct otIcmp6Header
ประเภทนี้แสดงส่วนหัว ICMPv6
otIcmp6ReceiveCallback)(void *aContext, otMessage *aMessage, const otMessageInfo *aMessageInfo, const otIcmp6Header *aIcmpHeader) typedef
void(*
โค้ดเรียกกลับนี้ทําให้ OpenThread สามารถแจ้งแอปพลิเคชันของข้อความ ICMPv6 ที่ได้รับได้
otIcmp6Type typedef
ประเภทข้อความ ICMPv6

ตัวแปร

OT_TOOL_PACKED_END

ฟังก์ชัน

otIcmp6GetEchoMode(otInstance *aInstance)
ฟังก์ชันนี้ระบุว่ามีการเปิดใช้การประมวลผลเสียงสะท้อน ICMPv6 หรือไม่
otIcmp6RegisterHandler(otInstance *aInstance, otIcmp6Handler *aHandler)
ฟังก์ชันนี้จะลงทะเบียนเครื่องจัดการเพื่อให้รับข้อความ ICMPv6 ที่ได้รับ
otIcmp6SendEchoRequest(otInstance *aInstance, otMessage *aMessage, const otMessageInfo *aMessageInfo, uint16_t aIdentifier)
ฟังก์ชันนี้ส่งคําขอเสียงก้อง ICMPv6 ผ่านอินเทอร์เฟซชุดข้อความ
otIcmp6SetEchoMode(otInstance *aInstance, otIcmp6EchoMode aMode)
void
ฟังก์ชันนี้กําหนดว่ามีการเปิดใช้การประมวลผล eMPv6 Echo หรือไม่

โครงสร้าง

otIcmp6Handler

โครงสร้างนี้ใช้เครื่องจัดการข้อความ ICMPv6

otIcmp6Header

โครงสร้างนี้จะแสดงส่วนหัว ICMPv6

สหภาพ

otIcmp6Header:OT_TOOL_PACKED_FIELD

คําอธิบาย

รหัส IOT CMP6

 otIcmp6Code

รหัสข้อความ ICMPv6

พร็อพเพอร์ตี้
OT_ICMP6_CODE_DST_UNREACH_NO_ROUTE

ไม่สามารถเข้าถึงปลายทางได้

OT_ICMP6_CODE_FRAGM_REAS_TIME_EX

ใช้เวลาถึงเศษส่วนของการประกอบใหม่

OTIcmp6EchoMode

 otIcmp6EchoMode

ICMPv6 โหมดสะท้อนกลับเสียงสะท้อน

พร็อพเพอร์ตี้
OT_ICMP6_ECHO_HANDLER_ALL

มีการเปิดใช้การสะท้อนกลับ ICMPv6 สําหรับคําขอ unicast และมัลติแคสต์

OT_ICMP6_ECHO_HANDLER_DISABLED

ปิดใช้การประมวลผลเสียงก้องของ ICMPv6 อยู่

OT_ICMP6_ECHO_HANDLER_MULTICAST_ONLY

การประมวลผล ICMPv6 Echo ใช้ได้เฉพาะกับคําขอมัลติแคสต์เท่านั้น

OT_ICMP6_ECHO_HANDLER_UNICAST_ONLY

การประมวลผล ICMPv6 Echo เปิดใช้อยู่สําหรับคําขอ unicast เท่านั้น

ประเภท otIcmp6

 otIcmp6Type

ประเภทข้อความ ICMPv6

พร็อพเพอร์ตี้
OT_ICMP6_TYPE_DST_UNREACH

เข้าถึงปลายทางไม่ได้

OT_ICMP6_TYPE_ECHO_REPLY

ก้องตอบ

OT_ICMP6_TYPE_ECHO_REQUEST

เสียงก้อง

OT_ICMP6_TYPE_PACKET_TO_BIG

แพ็กใหญ่

OT_ICMP6_TYPE_PARAMETER_PROBLEM

ปัญหาเกี่ยวกับพารามิเตอร์

OT_ICMP6_TYPE_ROUTER_ADVERT

การโฆษณาเราเตอร์

OT_ICMP6_TYPE_ROUTER_SOLICIT

การร้องขอเราเตอร์

OT_ICMP6_TYPE_TIME_EXCEEDED

เกินเวลา

พิมพ์ดีด

รหัส IOT CMP6

enum otIcmp6Code otIcmp6Code

รหัสข้อความ ICMPv6

OTIcmp6EchoMode

enum otIcmp6EchoMode otIcmp6EchoMode

ICMPv6 โหมดสะท้อนกลับเสียงสะท้อน

เครื่องจัดการ Iotcmp6

struct otIcmp6Handler otIcmp6Handler

โครงสร้างนี้ใช้เครื่องจัดการข้อความ ICMPv6

ส่วนหัว Iotcmp6

struct otIcmp6Header otIcmp6Header

ประเภทนี้แสดงส่วนหัว ICMPv6

OTIcmp6ReceiveCallback

void(* otIcmp6ReceiveCallback)(void *aContext, otMessage *aMessage, const otMessageInfo *aMessageInfo, const otIcmp6Header *aIcmpHeader)

โค้ดเรียกกลับนี้ทําให้ OpenThread สามารถแจ้งแอปพลิเคชันของข้อความ ICMPv6 ที่ได้รับได้

รายละเอียด
พารามิเตอร์
[in] aContext
ตัวชี้ไปยังข้อมูลบริบทที่กําหนดเอง
[in] aMessage
ตัวชี้ไปยังข้อความที่ได้รับ
[in] aMessageInfo
ตัวชี้ไปยังข้อความที่เชื่อมโยงกับ aMessage
[in] aIcmpHeader
ตัวชี้ไปยังส่วนหัว ICMPv6 ที่ได้รับ

ประเภท otIcmp6

enum otIcmp6Type otIcmp6Type

ประเภทข้อความ ICMPv6

ตัวแปร

OT_TOOL_PACKED_END

OT_TOOL_PACKED_BEGIN struct otIcmp6Header OT_TOOL_PACKED_END

ฟังก์ชัน

OTIcmp6GetEchoMode

otIcmp6EchoMode otIcmp6GetEchoMode(
  otInstance *aInstance
)

ฟังก์ชันนี้ระบุว่ามีการเปิดใช้การประมวลผลเสียงสะท้อน ICMPv6 หรือไม่

รายละเอียด
พารามิเตอร์
[in] aInstance
ตัวชี้ไปยังอินสแตนซ์ OpenThread
แสดงผลค่า
OT_ICMP6_ECHO_HANDLER_DISABLED
การประมวลผล ICMPv6 Echo ปิดใช้อยู่
OT_ICMP6_ECHO_HANDLER_UNICAST_ONLY
การประมวลผล ICMPv6 Echo สําหรับคําขอ Unicast เท่านั้น
OT_ICMP6_ECHO_HANDLER_MULTICAST_ONLY
เปิดใช้เสียงสะท้อนของ ICMPv6 สําหรับคําขอมัลติแคสต์เท่านั้น
OT_ICMP6_ECHO_HANDLER_ALL
การประมวลผล ICMPv6 Echo สําหรับคําขอ unicast และมัลติแคสต์

otIcmp6RegisterHandler

otError otIcmp6RegisterHandler(
  otInstance *aInstance,
  otIcmp6Handler *aHandler
)

ฟังก์ชันนี้จะลงทะเบียนเครื่องจัดการเพื่อให้รับข้อความ ICMPv6 ที่ได้รับ

รายละเอียด
พารามิเตอร์
[in] aInstance
ตัวชี้ไปยังอินสแตนซ์ OpenThread
[in] aHandler
ตัวชี้ไปยังเครื่องจัดการที่มีโค้ดเรียกกลับที่จะได้รับข้อความ ICMPv6

OTIcmp6SendEchoRequest

otError otIcmp6SendEchoRequest(
  otInstance *aInstance,
  otMessage *aMessage,
  const otMessageInfo *aMessageInfo,
  uint16_t aIdentifier
)

ฟังก์ชันนี้ส่งคําขอเสียงก้อง ICMPv6 ผ่านอินเทอร์เฟซชุดข้อความ

รายละเอียด
พารามิเตอร์
[in] aInstance
ตัวชี้ไปยังอินสแตนซ์ OpenThread
[in] aMessage
ตัวชี้ไปยังบัฟเฟอร์ข้อความซึ่งมีเพย์โหลด ICMPv6
[in] aMessageInfo
การอ้างอิงข้อมูลข้อความที่เชื่อมโยงกับ aMessage
[in] aIdentifier
ตัวระบุที่จะช่วยในการจับคู่เสียงก้องของคําขอเสียงสะท้อนนี้ อาจเป็น 0

OTIcmp6SetEchoMode

void otIcmp6SetEchoMode(
  otInstance *aInstance,
  otIcmp6EchoMode aMode
)

ฟังก์ชันนี้กําหนดว่ามีการเปิดใช้การประมวลผล eMPv6 Echo หรือไม่

รายละเอียด
พารามิเตอร์
[in] aInstance
ตัวชี้ไปยังอินสแตนซ์ OpenThread
[in] aMode
โหมดการประมวลผล Echo ของ ICMPv6

มาโคร

OT_ICMP6_HEADER_DATA_SIZE

 OT_ICMP6_HEADER_DATA_SIZE 4

ขนาดข้อมูลเฉพาะของข้อความใน ICMPv6 Header

ทรัพยากร

หัวข้อการอ้างอิง OpenThread API มาจากซอร์สโค้ดซึ่งมีอยู่ใน GitHub โปรดดูข้อมูลเพิ่มเติมในหรือไปที่เอกสารประกอบที่แหล่งข้อมูล