OpenThread Border Router

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

Thread Border Router จะเชื่อมต่อเครือข่าย Thread กับเครือข่ายอื่นๆ ที่ใช้ IP เช่น Wi-Fi หรืออีเทอร์เน็ต เครือข่ายเทรดต้องใช้ Border Router เพื่อเชื่อมต่อกับเครือข่ายอื่นๆ

สถาปัตยกรรม Border Agent ของ OTBR

Border Router ของเทรดรองรับฟังก์ชันต่อไปนี้เป็นอย่างน้อย

  • การเชื่อมต่อ IP แบบ 2 ทิศทางระหว่างเครือข่าย Thread กับ Wi-Fi/อีเทอร์เน็ต
  • การสำรวจบริการแบบ 2 ทิศทางผ่าน mDNS (ในลิงก์ Wi-Fi/อีเทอร์เน็ต) และ SRP (ในเครือข่ายเทรด)
  • เทรดผ่านโครงสร้างพื้นฐานที่ผสานพาร์ติชันเทรดผ่านลิงก์ที่อิงตาม IP
  • การจัดเตรียม Thread ภายนอก (เช่น โทรศัพท์มือถือ) เพื่อตรวจสอบสิทธิ์และเข้าร่วมอุปกรณ์เทรดกับเครือข่ายเทรด
ผ่านการรับรอง Thread

การใช้งาน Border Router ของ OpenThread เรียกว่า OpenThread Border Router (OTBR) ซึ่งรองรับการออกแบบตัวประมวลผลร่วมแบบวิทยุ (RCP) เมื่อเลือกแพลตฟอร์ม ให้พิจารณาประโยชน์ต่อไปนี้ของการใช้ RCP

  • ทรัพยากรเพิ่มเติม: OpenThread ใช้ประโยชน์จากทรัพยากรของโปรเซสเซอร์โฮสต์ได้ ซึ่งโดยทั่วไปจะมีมากกว่าที่ SoC 802.15.4 มีให้
  • คุ้มค่ากว่า: ลดความต้องการทรัพยากรใน SoC 802.15.4 ซึ่งอาจนำไปสู่โซลูชันที่คุ้มค่ากว่า
  • แก้ไขข้อบกพร่องได้ง่ายขึ้น: เนื่องจากมีการประมวลผลส่วนใหญ่ในโปรเซสเซอร์โฮสต์ คุณจึงสามารถใช้เครื่องมือแก้ไขข้อบกพร่องที่มีประสิทธิภาพมากขึ้นในโปรเซสเซอร์โฮสต์
  • เฟิร์มแวร์ SoC 802.15.4 ที่เสถียรมากขึ้น: RCP ใช้เฉพาะ MAC และ PHY ย่อย ซึ่งจะช่วยลดความถี่ที่ SoC 802.15.4 จำเป็นต้องอัปเดตเฟิร์มแวร์
  • ผสานรวมกับสแต็กเครือข่าย IPv6 ของโฮสต์ได้ง่ายขึ้น: การเปิดใช้ OpenThread ในโฮสต์ช่วยให้ผสานรวมกับสแต็ก IPv6 ของโฮสต์ได้โดยตรงมากขึ้น

ฟีเจอร์และบริการ

OTBR มีฟีเจอร์ต่างๆ มากมาย ซึ่งรวมถึง

  • Thread Border Agent เพื่อรองรับการจัดเตรียมอุปกรณ์ภายนอก
  • การมอบสิทธิ์คำนำหน้า DHCPv6 เพื่อรับคำนำหน้า IPv6 สำหรับเครือข่ายเทรด
  • NAT64 สำหรับการเชื่อมต่อกับเครือข่าย IPv4
  • DNS64 เพื่ออนุญาตให้อุปกรณ์เทรดเริ่มการสื่อสารด้วยชื่อกับเซิร์ฟเวอร์ IPv4 เท่านั้น
  • โปรแกรมควบคุมอินเทอร์เฟซเทรดที่ใช้ฟีเจอร์ในตัวของ OpenThread

บริการ Border Router

OTBR มีบริการต่อไปนี้

ไฟร์วอลล์ OTBR

OTBR ใช้ iptables และ ipset เพื่อใช้กฎการกรองขาเข้าต่อไปนี้

  • บล็อกแพ็กเก็ตขาเข้าที่เริ่มต้นด้วยแหล่งที่มาของที่อยู่ On-Link เช่น ที่อยู่แบบกำหนดเส้นทางนอก Mesh (OMR) และที่อยู่ตามคำนำหน้า Mesh-Local
  • บล็อกแพ็กเก็ต Unicast ขาเข้าซึ่งมีที่อยู่ปลายทางไม่ใช่ที่อยู่ OMR หรือที่อยู่ Unicast ของโดเมน (DUA)
  • บล็อกแพ็กเก็ตยูนิแคสต์ขาเข้าซึ่งมีที่อยู่ต้นทางหรือปลายทางเป็น Link-Local โปรดทราบว่าเคอร์เนลจะจัดการกฎนี้และไม่ได้ตั้งค่าไว้อย่างชัดเจน