เทรดและ IPv6

Matter ใช้ IPv6 สำหรับการสื่อสารด้านการดำเนินการ และใช้ประโยชน์จากทั้งที่อยู่ IPv6 Unicast และ Multicast สำหรับการเข้าถึงโหนดและกลุ่มตามลำดับ

พลังงานต่ำ

Matter บางโหนดเป็นแบบใช้สายและมีงบประมาณด้านพลังงานที่ทำให้เปิดวิทยุได้อย่างต่อเนื่อง โหนดประเภทอื่นๆ เช่น เซ็นเซอร์ มีข้อกำหนดให้ทำงานโดยใช้แบตเตอรี่เป็นเวลาหลายปี โดยจะทำงานวิทยุในเครือข่ายที่ใช้พลังงานต่ำ เช่น Thread สถาปัตยกรรมพร็อกซีร่วมกับ Thread Sleepy End Devices ช่วยให้โหนดที่ขับเคลื่อนด้วยเต็มรูปแบบมีฟังก์ชันการทำงานทั้งระดับเครือข่ายและระดับแอปพลิเคชัน ซึ่งจะป้องกันโหนดย่อยจากการทำธุรกรรมที่ใช้พลังงานมาก

แง่มุมพื้นฐานของ Matter คือใช้งานได้ทั้งในสื่อของเครือข่ายที่มีอัตราการส่งข้อมูลสูง เช่น Wi-Fi และอีเทอร์เน็ต แต่ยังใช้งานได้กับเวลาในการตอบสนองต่ำหรือแบนด์วิดท์ต่ำด้วย เช่น Thread หากมีการบริดจ์แพ็กเก็ต Multicast รายการจาก Wi-Fi ทั้งหมดไปยัง Thread เราจะสร้างภาระให้เครือข่ายมากเกินไปและอาจทำให้เครือข่ายท่วมท้น เป้าหมายของ Thread คือการเปิดใช้ IPv6 ในเครือข่ายที่ทำงานร่วมกันซึ่งใช้พลังงานต่ำและมีเวลาในการตอบสนองต่ำ ไม่ใช่การโอนข้อมูลที่ใช้แบนด์วิดท์สูง แม้ว่าการใช้คำสั่ง ping ของ ICMPv6 ในเครือข่ายภายในมักจะใช้ RTT ต่ำกว่าหลายสิบมิลลิวินาที แต่แบนด์วิดท์รวมจะจำกัดอยู่ที่ 250 kbps ที่ PHY ของ IEEE 802.15.4Thread เมื่อใช้การส่งแพ็กเก็ตซ้ำและค่าใช้จ่ายต่างๆ แบนด์วิดท์สูงสุดโดยทั่วไปจะอยู่ที่ประมาณ 125 kbps หรือพูดอีกอย่างก็คือ ขนาดของอุปกรณ์ดังกล่าวจะน้อยกว่า Wi-Fi

เฟรมบน IEEE 802.15.4 PHY มีขนาด 127 ไบต์ แต่หน่วยการส่งข้อมูล (MTU) สูงสุด (MTU) ที่ใหญ่ที่สุดของแพ็กเก็ต IPv6 ใน Thread คือ 1280 ไบต์ ดังนั้น แพ็กเก็ต IPv6 จึงมักต้องแยกออกเป็นเฟรม PHY หลายเฟรม กระบวนการนี้กำหนดโดย RFC4944

ดูข้อมูลเพิ่มเติมได้ที่การกำหนดที่อยู่ IPv6 ใน Primer ของ Thread บน openthread.io

เครื่องเซาะร่อง

แล้วโหนดจะทำงานร่วมกันได้อย่างไรในสื่อลำเลียงทั้งสองเมื่ออยู่ในผ้าเดียวกัน แม้ว่าเครือข่ายทั้งสองจะใช้ข้อมูลเข้าสู่ระบบ Matter ระดับแอปพลิเคชันร่วมกัน แต่ทั้ง 2 เครือข่ายจะใช้เทคโนโลยีลิงก์เดียวกัน ในสถานการณ์นี้ เครือข่ายจะต้องมี Thread Border Router (BR) เพื่อเปิดใช้การเชื่อมต่อ BR คือเราเตอร์ IPv6 ของ Stub

เราเตอร์ของสตับช่วยให้สามารถเชื่อมต่อระหว่างเครือข่ายสตับและเครือข่ายปกติได้ Stub Network เป็นเครือข่าย "ระยะสุดท้าย" ที่มอบการเชื่อมต่อจากภายนอกให้แก่สมาชิก แต่ไม่ได้ทำหน้าที่เป็นเส้นทางเครือข่ายการขนส่งระหว่างเครือข่ายอื่นๆ โดยปกติแล้ว เครือข่าย Stub ของ Matter จะอิงตามThread โปรดดูร่าง RFC สำหรับข้อมูลเพิ่มเติมเกี่ยวกับเครือข่ายสตับ

ดังนั้น BR จึงมีหน้าที่เป็นตัวเชื่อมโยงระหว่างเครือข่าย Stub กับเครือข่ายโครงสร้างพื้นฐานที่เกี่ยวข้อง ซึ่งก็คือ Wi-Fi หรือเครือข่ายอีเทอร์เน็ต โดยจะส่งต่อเฉพาะแพ็กเกตที่เกี่ยวข้องกับเครือข่าย Thread เท่านั้น

ขั้นตอนนี้ทำได้โดยกำหนดคำนำหน้า IPv6 ที่แตกต่างกันให้กับ Thread และ Adjacent Infrastructure Networks ดังนั้น BR จะส่งต่อ Unicast ไปยังหรือจากคำนำหน้า IPv6 ของ Thread เท่านั้น

Border Router ยังมีหน้าที่รับผิดชอบดังต่อไปนี้

  • กำหนดค่าคำนำหน้าและเส้นทางของ IPv6 โดยอัตโนมัติสำหรับทั้ง Thread และ Adjacent Infrastructure Networks เพื่อให้โฮสต์ทั้ง 2 ฝั่งของ Thread Border Router สื่อสารได้
  • การเผยแพร่แพ็กเก็ตการค้นหา DNS-SD ของ mDNS ในนามของ Thread โหนด ผู้ใช้จึงสามารถค้นพบได้ในเครือข่ายโครงสร้างพื้นฐานที่อยู่ติดกัน

ดูข้อมูลเพิ่มเติมได้ในคำแนะนำเราเตอร์ Border ใน openthread.io

IPv6 Multicast

ข้อความกลุ่มก็มีความสำคัญเช่นกัน เนื่องจากช่วยให้ควบคุม Matter โหนดต่างๆ พร้อมกันได้จนถึง Multicast ทั้ง Matter และ Thread ใช้Unicastรูปแบบการกำหนดที่อยู่ IPv6 Multicast ที่ใช้คำนำหน้าซึ่งกำหนดโดย RFC 3306 เพื่อกำหนดเส้นทางการรับส่งข้อมูลนี้ไปยังเครือข่าย Thread

เมธอดนี้ช่วยให้เลือกโหนดปลายทางของแพ็กเกต Multicast โดยอิงตามคำนำหน้า IPv6 Unicast ที่แชร์ได้

ตัวอย่างเช่น ที่อยู่ Matter Multicast อาจมีลักษณะเช่นนี้

FF35:0040:FD<Fabric ID>00:<Group ID>

ตารางที่ 1 แสดงรายละเอียดวิธีสร้างที่อยู่นี้

ตารางที่ 1: Unicast ที่อยู่ IPv6 ที่อิงตามคำนำหน้า
บิต คำอธิบาย
12 บิต 0XFF3
4 บิต 0x05

ขอบเขต: เว็บไซต์ภายใน

8 บิต 0x00

จองแล้ว

8 บิต 0X40

ระบุคำนำหน้ายาว 64 บิต

8 บิต 0XFD

กำหนดคำนำหน้า ULA

56 บิต รหัส Fabric
8 บิต 0x00
16 บิต รหัสกลุ่ม

ดูข้อมูลเพิ่มเติมได้ในส่วน Multicast ของ Thread Primer และใน RFC

เมื่อมีการสร้างที่อยู่ IPv6 Multicast ที่อยู่เหล่านี้จะรวมรหัส Fabric 56 บิตไว้ด้วย นัยสำคัญคือขอบเขตของ Multicast อยู่ภายใน Fabric ส่วนที่อยู่ Unicast รายการจะแชร์กันระหว่าง Fabric โหนดที่มี Fabric จำนวนมากอาจมีที่อยู่ Multicast หลายรายการที่เป็นตัวกำหนดกลุ่มโหนดที่ทับซ้อนกันซึ่งกำหนดขอบเขตสำหรับแต่ละ Fabric

พอร์ต

Matter ใช้พอร์ต 5540 สำหรับมัลติแคสต์