Matter ใช้ IPv6 สำหรับการสื่อสารด้านการดำเนินงาน และใช้ประโยชน์จากทั้งการระบุ IPv6 Unicast และ Multicast เพื่อเข้าถึงโหนดและกลุ่มตามลำดับ
พลังงานต่ำ
Matterโหนดบางตัวเป็นแบบใช้สายและมีงบประมาณพลังงานที่ช่วยให้เปิดสัญญาณวิทยุได้อย่างต่อเนื่อง นอยด์ประเภทอื่นๆ เช่น เซ็นเซอร์ มีข้อกำหนดให้ทำงานได้นานหลายปีโดยใช้แบตเตอรี่ ใช้งานสัญญาณวิทยุในเครือข่ายพลังงานต่ำ เช่น Thread สถาปัตยกรรมพร็อกซี รวมถึงThreadอุปกรณ์ปลายทางที่เข้าสู่โหมดสลีป ช่วยให้โหนดที่ทำงานเต็มประสิทธิภาพสามารถให้บริการทั้งฟังก์ชันระดับเครือข่ายและระดับแอปพลิเคชัน ซึ่งจะช่วยปกป้องโหนดย่อยจากธุรกรรมที่สิ้นเปลืองพลังงาน
สิ่งสำคัญประการหนึ่งของ Matter คือสามารถทำงานได้ทั้งในสื่อเครือข่ายที่มีแบนด์วิดท์สูง เช่น Wi-Fi และอีเทอร์เน็ต และสื่อที่มีแบนด์วิดท์ต่ำและเวลาในการตอบสนองต่ำ เช่น Thread หากมีการสร้างบริดจ์แพ็กเก็ต Multicast ทั้งหมดจาก Wi-Fi ไปยัง Thread เครือข่ายจะรับภาระมากเกินไปและอาจทำให้เครือข่ายทำงานหนักเกินไป เป้าหมายของ Thread คือเปิดใช้ IPv6 ในเครือข่าย Mesh แบบใช้พลังงานต่ำและเวลาในการตอบสนองต่ำ ไม่ใช่การโอนข้อมูลที่มีแบนด์วิดท์สูง แม้ว่าโดยทั่วไปแล้วการ ping ICMPv6 ของ Thread ในเครือข่ายภายในจะมี RTT น้อยกว่า 20-30 มิลลิวินาที แต่แบนด์วิดท์ทั้งหมดจะจํากัดอยู่ที่ 250 Kbps ที่ PHY ของ IEEE 802.15.4 เมื่อมีการส่งแพ็กเก็ตซ้ำและค่าใช้จ่ายเพิ่มเติม แบนด์วิดท์สูงสุดโดยประมาณจะอยู่ที่ประมาณ 125 Kbps กล่าวคือ ช้ากว่า Wi-Fi หลายเท่า
เฟรมใน PHY ของ IEEE 802.15.4 มีความยาว 127 ไบต์ แต่หน่วยการส่งข้อมูลสูงสุด (MTU) ของแพ็กเก็ต IPv6 ที่ใหญ่ที่สุด (และตามปกติ) ใน Thread มีขนาด 1, 280 ไบต์ ดังนั้นจึงมักจะต้องแบ่งแพ็กเก็ต IPv6 ออกเป็นหลายเฟรม PHY กระบวนการนี้กำหนดโดย RFC4944
ดูข้อมูลเพิ่มเติมได้ที่การกำหนดที่อยู่ IPv6 ในThread Primer บน openthread.io
Border Router
โหนดจะอยู่ในทั้ง 2 สื่อการขนส่งได้ขณะที่อยู่ใน Fabric เดียวกันได้อย่างไร แม้ว่าทั้ง 2 เครือข่ายจะใช้Matter ข้อมูลเข้าสู่ระบบระดับแอปพลิเคชันร่วมกัน แต่ก็ไม่ได้ใช้เทคโนโลยีการลิงก์เดียวกัน ในกรณีนี้ เครือข่ายต้องมีThread Border Router (BR) เพื่อเปิดใช้การเชื่อมต่อ BR คือเราเตอร์ IPv6 แบบ Stub
Stub Router ช่วยให้เครือข่าย Stub เชื่อมต่อกับเครือข่ายปกติได้ เครือข่าย Stub คือเครือข่าย "สุดท้าย" ที่ให้บริการการเชื่อมต่อภายนอกแก่สมาชิก แต่ไม่ได้ทำหน้าที่เป็นเส้นทางเครือข่ายขนส่งระหว่างเครือข่ายอื่นๆ โดยทั่วไปแล้วMatterเครือข่ายจำลองจะอิงตามThread ดูข้อมูลเพิ่มเติมเกี่ยวกับเครือข่าย Stub ได้ที่ร่าง RFC
ดังนั้น BR จึงมีหน้าที่เป็นลิงก์ระหว่างเครือข่าย Stub กับเครือข่ายโครงสร้างพื้นฐานที่อยู่ติดกัน ซึ่งเป็นเครือข่าย Wi-Fi หรืออีเทอร์เน็ตในพื้นที่ โดยจะส่งต่อเฉพาะแพ็กเก็ตที่เกี่ยวข้องกับเครือข่าย Thread เท่านั้น
กระบวนการนี้ทำได้โดยการกําหนดพรอคซิมา IPv6 ที่แตกต่างกันให้กับ Thread และเครือข่ายโครงสร้างพื้นฐานที่อยู่ติดกัน ดังนั้น BR จะส่งต่อเฉพาะยูนิแคสต์ไปยังหรือจากคำนำหน้า IPv6 Thread
Border Router ยังมีหน้าที่ดังต่อไปนี้ด้วย
- กำหนดค่าส่วนนำหน้าและเส้นทาง IPv6 โดยอัตโนมัติสำหรับทั้ง Thread และเครือข่ายโครงสร้างพื้นฐานที่อยู่ติดกันเพื่อให้โฮสต์ทั้งสองฝั่งของเราเตอร์ Border ของ Thread สื่อสารกันได้
- เผยแพร่แพ็กเก็ตการค้นพบ mDNS DNS-SD ในนามของโหนด Thread เพื่อให้ระบบค้นพบโหนดเหล่านั้นในเครือข่ายโครงสร้างพื้นฐานที่อยู่ใกล้เคียง
ดูข้อมูลเพิ่มเติมได้ที่คู่มือBorder Router ใน openthread.io
IPv6 Multicast
ข้อความกลุ่มก็มีความสำคัญเช่นกัน เนื่องจากช่วยให้ควบคุมMatterโหนดหลายโหนดพร้อมกันผ่าน Multicast ได้ หากต้องการกำหนดเส้นทางการรับส่งข้อมูลนี้ไปยังเครือข่าย Thread ทั้ง Matter และ Thread ต้องใช้Unicastรูปแบบการกำหนดที่อยู่ IPv6 MulticastUnicastตามคำนำหน้าที่ระบุไว้ใน RFC 3306
วิธีนี้ช่วยให้เลือกโหนดปลายทางของแพ็กเก็ตMulticastตามคำนำหน้า IPv6Unicast ที่แชร์ได้
ตัวอย่างเช่น ที่อยู่ Matter Multicast อาจมีลักษณะดังนี้
FF35:0040:FD<Fabric ID>00:<Group ID>
ตารางที่ 1 แสดงรายละเอียดการสร้างที่อยู่นี้
Bits | คำอธิบาย |
12 บิต | 0xFF3 |
4 บิต | 0x05
ขอบเขต: site-local |
8 บิต | 0x00
สงวนไว้ |
8 บิต | 0x40
ระบุคำนำหน้ายาว 64 บิต |
8 บิต | 0xFD
กำหนดคำนำหน้า ULA |
56 บิต | รหัส Fabric |
8 บิต | 0x00 |
16 บิต | รหัสกลุ่ม |
ดูข้อมูลเพิ่มเติมได้ในส่วนMulticastของThread Primer และใน RFC เอง
เมื่อสร้างที่อยู่ Multicast ของ IPv6 ที่อยู่ดังกล่าวจะมีบิต 56 บิตบนสุดของรหัส Fabric ด้วย ผลที่ตามมาที่สําคัญคือขอบเขตของ Multicast จะอยู่ใน Fabric หนึ่งๆ ขณะที่ที่อยู่ Unicast จะแชร์ระหว่าง Fabric โหนดที่มี Fabric หลายรายการอาจมีที่อยู่ Multicast หลายรายการที่กําหนดกลุ่มโหนดที่ทับซ้อนกันซึ่งกําหนดขอบเขตไว้ในแต่ละ Fabric
พอร์ต
Matter ใช้พอร์ต 5540 สำหรับมัลติแคสต์