เทรดและ IPv6

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

แบตเตอรี่เหลือน้อย

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

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

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

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

Border Router

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

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

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

กระบวนการนี้ดำเนินการโดยการกำหนดคำนำหน้า IPv6 ที่แตกต่างกันให้กับ Threadและเครือข่ายโครงสร้างพื้นฐานที่อยู่ติดกัน ดังนั้น BR จะส่งต่อเฉพาะการส่งแบบ Unicast ไปยังหรือจากคำนำหน้า IPv6 ของ Thread เท่านั้น

นอกจากนี้ Border Router ยังมีหน้าที่ดังนี้

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

ดูข้อมูลเพิ่มเติมได้ที่คู่มือ Border Router ใน openthread.io

IPv6 Multicast

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

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

เช่น 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 เอง

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

พอร์ต

Matter ใช้พอร์ต 5540 สำหรับการออกอากาศแบบหลายผู้รับ