เครือข่ายและการสํารวจ

ดูซอร์สโค้ดใน GitHub

เครือข่าย Thread

เครือข่าย Thread จะระบุด้วยตัวระบุที่ไม่ซ้ำกัน 3 รายการ ได้แก่

  • รหัสเครือข่ายส่วนบุคคล (PAN ID) ขนาด 2 ไบต์
  • รหัสเครือข่ายส่วนบุคคลแบบขยาย (XPAN ID) ขนาด 8 ไบต์
  • ชื่อเครือข่ายที่มนุษย์อ่านได้

ตัวอย่างเช่น เครือข่าย Thread อาจมีตัวระบุต่อไปนี้

ตัวระบุ ค่า
PAN ID 0xBEEF
XPAN ID 0xBEEF1111CAFE2222
ชื่อเครือข่าย yourThreadCafe
การสแกน OT ที่ใช้งานอยู่

เมื่อสร้างเครือข่าย Thread ใหม่หรือค้นหาเครือข่ายที่มีอยู่เพื่อเข้าร่วม อุปกรณ์ Thread จะทำการสแกนแบบแอ็กทีฟเพื่อหาเครือข่าย 802.15.4 ภายในระยะสัญญาณวิทยุ ดังนี้

  1. อุปกรณ์จะบรอดแคสต์คำขอ Beacon ของ 802.15.4 ในแชนแนลที่เฉพาะเจาะจง
  2. อุปกรณ์ที่รองรับการขยายสัญญาณ (ECD) ที่อยู่ในระยะจะบรอดแคสต์ Beacon ที่มี PAN ID, XPAN ID และชื่อเครือข่าย Thread ของตนเอง
  3. อุปกรณ์จะทำ 2 ขั้นตอนก่อนหน้าซ้ำสำหรับแต่ละแชนแนล

เมื่ออุปกรณ์ Thread ค้นพบเครือข่ายทั้งหมดที่อยู่ในระยะแล้ว อุปกรณ์จะเชื่อมต่อกับเครือข่ายที่มีอยู่หรือสร้างเครือข่ายใหม่หากไม่พบเครือข่ายใดๆ

Thread ใช้โปรโตคอลการสร้างลิงก์ Mesh (MLE) เพื่อกำหนดค่าลิงก์และเผยแพร่ข้อมูลเกี่ยวกับเครือข่ายไปยังอุปกรณ์ Thread

ในการกำหนดค่าลิงก์ ระบบจะใช้ MLE เพื่อดำเนินการต่อไปนี้

  • ค้นหาลิงก์ไปยังอุปกรณ์ข้างเคียง
  • กำหนดคุณภาพของลิงก์ไปยังอุปกรณ์ข้างเคียง
  • สร้างลิงก์ไปยังอุปกรณ์ข้างเคียง
  • เจรจาพารามิเตอร์ลิงก์ (ประเภทอุปกรณ์ ตัวนับเฟรม การหมดเวลา) กับอุปกรณ์เพียร์

MLE จะเผยแพร่ข้อมูลประเภทต่อไปนี้ไปยังอุปกรณ์ที่ต้องการสร้างลิงก์

  • ข้อมูลผู้นำ (RLOC ของผู้นำ, รหัสพาร์ติชัน, น้ำหนักพาร์ติชัน)
  • ข้อมูลเครือข่าย (คำนำหน้าใน Mesh, การกำหนดค่าที่อยู่โดยอัตโนมัติ, เส้นทางที่เฉพาะเจาะจงมากขึ้น)
  • การเผยแพร่เส้นทาง

การเผยแพร่เส้นทางใน Thread ทำงานคล้ายกับโปรโตคอลข้อมูลเส้นทาง (RIP) ซึ่งเป็นโปรโตคอลการกำหนดเส้นทางแบบเวกเตอร์ระยะทาง

สร้างเครือข่ายใหม่

หากอุปกรณ์เลือกที่จะสร้างเครือข่ายใหม่ อุปกรณ์จะเลือกแชนแนลที่มีการใช้งานน้อยที่สุดและ PAN ID ที่เครือข่ายอื่นไม่ได้ใช้ จากนั้นจะกลายเป็น Mesh Extender และเลือกตัวเองเป็นผู้นำ อุปกรณ์นี้จะส่งข้อความ MLE Advertisement ไปยังอุปกรณ์ 802.15.4 อื่นๆ เพื่อแจ้งสถานะลิงก์ของตนเอง และตอบกลับคำขอ Beacon จากอุปกรณ์ Thread อื่นๆ ที่ทำการสแกนแบบแอ็กทีฟ

เข้าร่วมเครือข่ายที่มีอยู่

หากอุปกรณ์เลือกที่จะเข้าร่วมเครือข่ายที่มีอยู่ อุปกรณ์จะกำหนดค่าแชนแนล, PAN ID, XPAN ID และชื่อเครือข่ายให้ตรงกับเครือข่ายเป้าหมายผ่านการเตรียมใช้งาน Thread จากนั้นจะผ่านกระบวนการ MLE Attach เพื่อเชื่อมต่อเป็นอุปกรณ์ย่อย (อุปกรณ์ปลายทาง) กระบวนการนี้ใช้สำหรับลิงก์ย่อย-หลัก

  1. อุปกรณ์ย่อยจะส่งคำขอหลักแบบมัลติแคสต์ไปยังอุปกรณ์ที่รองรับการขยายสัญญาณทั้งหมดที่อยู่ข้างเคียงในเครือข่ายเป้าหมาย
  2. Mesh Extender ทั้งหมดที่อยู่ข้างเคียง (และ ECD ที่สแตนด์บาย หากมาสก์การสแกนคำขอหลักมี ECD ที่สแตนด์บาย) จะส่ง การตอบกลับหลัก พร้อมข้อมูลเกี่ยวกับ ตัวเอง
  3. อุปกรณ์ย่อยจะเลือกอุปกรณ์หลักและส่งคำขอรหัสย่อย ไปยังอุปกรณ์นั้น
  4. อุปกรณ์หลักจะส่งการตอบกลับรหัสย่อยเพื่อยืนยันการสร้างลิงก์

1. คำขอหลัก

คำขอหลักเป็นคำขอแบบมัลติแคสต์จากอุปกรณ์ที่เชื่อมต่อ ซึ่งใช้เพื่อค้นหาอุปกรณ์ที่รองรับการขยายสัญญาณที่อยู่ข้างเคียงในเครือข่ายเป้าหมาย

OT MLE Attach Parent Request
เนื้อหาข้อความคำขอหลัก
โหมด อธิบายอุปกรณ์ที่เชื่อมต่อ
ภารกิจ ทดสอบความทันเวลาของการตอบกลับหลักเพื่อป้องกันการโจมตีแบบเล่นซ้ำ
มาสก์การสแกน จำกัดคำขอให้ส่งไปยัง Mesh Extender เท่านั้น หรือส่งไปยังอุปกรณ์ที่รองรับการขยายสัญญาณทั้งหมด

2. การตอบกลับหลัก

การตอบกลับหลักเป็นการตอบกลับแบบยูนิแคสต์ต่อคำขอหลัก ซึ่งให้ข้อมูลเกี่ยวกับอุปกรณ์ที่รองรับการขยายสัญญาณแก่อุปกรณ์ที่เชื่อมต่อ

OT MLE Attach Parent Response
เนื้อหาข้อความการตอบกลับหลัก
เวอร์ชัน เวอร์ชันโปรโตคอล Thread
การตอบกลับ สำเนาความท้าทายของคำขอหลัก
ตัวนับเฟรมลิงก์ ตัวนับเฟรม 802.15.4 ในอุปกรณ์ที่รองรับการขยายสัญญาณ
ตัวนับเฟรม MLE ตัวนับเฟรม MLE ในอุปกรณ์ที่รองรับการขยายสัญญาณ
แอดเดรส ต้นทาง RLOC16 ของอุปกรณ์ที่รองรับการขยายสัญญาณ
มาร์จิ้น ลิงก์ คุณภาพสัญญาณรับของอุปกรณ์ที่รองรับการขยายสัญญาณ
Connectivity อธิบายระดับการเชื่อมต่อของอุปกรณ์ที่รองรับการขยายสัญญาณ
ข้อมูล ผู้นำ ข้อมูลเกี่ยวกับผู้นำของอุปกรณ์ที่รองรับการขยายสัญญาณ
ภารกิจ ทดสอบความทันเวลาของคำขอรหัสย่อยเพื่อป้องกันการโจมตีแบบเล่นซ้ำ

3. คำขอรหัสย่อย

คำขอรหัสย่อยเป็นคำขอแบบยูนิแคสต์จากอุปกรณ์ที่เชื่อมต่อ (อุปกรณ์ย่อย) ซึ่งส่งไปยังอุปกรณ์ที่รองรับการขยายสัญญาณ (อุปกรณ์หลัก) เพื่อสร้างลิงก์ย่อย-หลัก หากส่งคำขอไปยัง อุปกรณ์ที่รองรับการขยายสัญญาณที่สแตนด์บาย อุปกรณ์จะอัปเกรดตัวเองเป็น Mesh Extenderก่อนที่จะยอมรับคำขอ

คำขอแนบรหัสย่อยของ OT MLE
เนื้อหาข้อความคำขอรหัสย่อย
เวอร์ชัน เวอร์ชันโปรโตคอล Thread
การตอบกลับ สำเนาภารกิจการตอบกลับหลัก
ตัวนับเฟรมลิงก์ ตัวนับเฟรม 802.15.4 ในอุปกรณ์ย่อย
ตัวนับเฟรม MLEตัวนับเฟรม MLE ในอุปกรณ์ย่อย
โหมด อธิบายอุปกรณ์ย่อย
การหมดเวลา ระยะเวลาที่ไม่มีการใช้งานก่อนที่อุปกรณ์หลักจะนำอุปกรณ์ย่อยออก
การลงทะเบียน ที่อยู่ (เฉพาะ MED และ SED) ลงทะเบียนที่อยู่ IPv6

4. การตอบกลับรหัสย่อย

การตอบกลับรหัสย่อยเป็นการตอบกลับแบบยูนิแคสต์จากอุปกรณ์หลัก ซึ่งส่งไปยังอุปกรณ์ย่อยเพื่อยืนยันว่ามีการสร้างลิงก์ย่อย-หลักแล้ว

การตอบกลับ OT MLE Attach Child ID
เนื้อหาข้อความการตอบกลับรหัสย่อย
ที่อยู่ต้นทาง RLOC16 ของอุปกรณ์หลัก
Address16 RLOC16 ของอุปกรณ์ย่อย
ข้อมูลผู้นำ ข้อมูลเกี่ยวกับผู้นำของอุปกรณ์หลัก (RLOC, รหัสพาร์ติชัน, น้ำหนักพาร์ติชัน)
ข้อมูลเครือข่าย ข้อมูลเกี่ยวกับเครือข่าย Thread (คำนำหน้าใน Mesh, การกำหนดค่าที่อยู่โดยอัตโนมัติ เส้นทางที่เฉพาะเจาะจงมากขึ้น)
เส้นทาง (เฉพาะ ECD ที่สแตนด์บาย) การเผยแพร่เส้นทาง
การหมดเวลา ระยะเวลาที่ไม่มีการใช้งานก่อนที่อุปกรณ์หลักจะนำอุปกรณ์ย่อยออก
การลงทะเบียนที่อยู่ (เฉพาะ MED และ SED) ยืนยันที่อยู่ที่ลงทะเบียน

สรุป

สิ่งที่คุณได้เรียนรู้

  • อุปกรณ์ Thread จะทำการสแกนแบบแอ็กทีฟเพื่อหาเครือข่ายที่มีอยู่
  • Thread ใช้การสร้างลิงก์ Mesh เพื่อกำหนดค่าลิงก์และเผยแพร่ข้อมูลเกี่ยวกับอุปกรณ์เครือข่าย
  • ข้อความ MLE Advertisement จะแจ้งให้อุปกรณ์ Thread อื่นๆ ทราบเกี่ยวกับเครือข่ายและสถานะลิงก์ของอุปกรณ์
  • กระบวนการ MLE Attach จะสร้างลิงก์ย่อย-หลัก

ทดสอบความเข้าใจ

ตัวระบุใดที่ ไม่ได้ ใช้เพื่อระบุเครือข่าย Thread
รหัสเครือข่ายส่วนบุคคล (PAN ID) ขนาด 2 ไบต์
ผิด เครือข่าย Thread จะระบุด้วย PAN ID
รหัสเครือข่ายส่วนบุคคลแบบขยาย (XPAN ID) ขนาด 8 ไบต์
ผิด เครือข่าย Thread จะระบุด้วย XPAN ID
ชื่อเครือข่ายที่มนุษย์อ่านได้
ผิด เครือข่าย Thread จะระบุด้วย ชื่อเครือข่ายที่มนุษย์อ่านได้
SSID ขนาด 32 อักขระ
ถูกต้อง ตัวระบุเครือข่าย Thread จะไม่ใช้ SSID ซึ่งแตกต่างจากเครือข่าย WiFi 802.11
คำขอหลักใช้เพื่อวัตถุประสงค์ใด
เพื่อค้นหาอุปกรณ์ที่รองรับการขยายสัญญาณที่อยู่ข้างเคียงในเครือข่ายเป้าหมาย
ถูกต้อง คำขอหลักจะออกโดยอุปกรณ์ที่ต้องการเชื่อมต่อกับ เครือข่าย
เพื่อประกาศว่าอุปกรณ์ที่รองรับการขยายสัญญาณกำลังจะกลายเป็นอุปกรณ์หลัก
ผิด Mesh Extender จะไม่เริ่มความสัมพันธ์แบบหลัก-ย่อย กับอุปกรณ์เครือข่ายอื่น แต่จะเลือกอุปกรณ์ที่รองรับการขยายสัญญาณ ให้เป็นอุปกรณ์หลัก
เพื่อขอให้อุปกรณ์ที่รองรับการขยายสัญญาณได้รับการเลื่อนระดับเป็น Mesh Extender
ผิด
คำขอหลักใช้ที่อยู่ประเภทใด
ยูนิแคสต์
ผิด
Anycast
ผิด
มัลติแคสต์
ถูกต้อง
บรอดแคสต์
ผิด
เมื่ออุปกรณ์เชื่อมต่อกับเครือข่าย Thread เป็นครั้งแรก การจัดประเภทอุปกรณ์จะเป็นอย่างไร
อุปกรณ์ย่อย (อุปกรณ์ปลายทาง)
ถูกต้อง อุปกรณ์ที่เข้าร่วมเครือข่าย Thread จะเริ่มต้นเป็น อุปกรณ์ปลายทางในเครือข่ายนั้นเสมอ
FTD (อุปกรณ์ Thread แบบเต็ม)
ผิด
Mesh Extender
ผิด