थ्रेड और IPv6

Matter, अपने ऑपरेशनल कम्यूनिकेशन के लिए IPv6 का इस्तेमाल करता है. साथ ही, अपने नोड और ग्रुप को ऐक्सेस करने के लिए, क्रमशः IPv6 Unicast और Multicast पते, दोनों का इस्तेमाल करता है.

कम पावर

कुछ Matter नोड वायर वाले होते हैं और उनके पास ऊर्जा बजट होता है, जिसकी मदद से वे अपने रेडियो को लगातार चालू रख सकते हैं. सेंसर जैसे अन्य नोड को बैटरी से सालों तक चलना चाहिए. साथ ही, उन्हें Thread जैसे कम पावर वाले नेटवर्क पर रेडियो चलाने चाहिए. Thread स्लीपी एंड डिवाइस के साथ-साथ, प्रोक्सी आर्किटेक्चर की मदद से, पूरी तरह से चालू नोड, नेटवर्क-लेवल और ऐप्लिकेशन-लेवल, दोनों तरह की सुविधाएं उपलब्ध कराते हैं. इससे उनके चाइल्ड नोड, ज़्यादा एनर्जी खर्च करने वाले लेन-देन से बच जाते हैं.

Matter का एक बुनियादी पहलू यह है कि यह वाई-फ़ाई और ईथरनेट जैसे ज़्यादा थ्रूपुट वाले नेटवर्क मीडियम के साथ-साथ, Thread जैसे कम इंतज़ार वाले और कम बैंडविड्थ वाले नेटवर्क पर भी काम करता है. अगर वाई-फ़ाई से मिले सभी Multicast पैकेट को Thread में ब्रिज किया जाता है, तो नेटवर्क पर ज़्यादा लोड पड़ेगा और हो सकता है कि वह काम करना बंद कर दे. Thread का मकसद, कम बैंडविड्थ वाले डेटा ट्रांसफ़र के बजाय, कम बिजली और कम इंतज़ार वाली मेश नेटवर्किंग में IPv6 को चालू करना है. आम तौर पर, किसी लोकल नेटवर्क में Thread के ICMPv6 पिंग का आरटीटी कुछ ही मिलीसेकंड होता है. हालांकि, इसकी कुल बैंडविड्थ, IEEE 802.15.4 PHY पर 250 केबीपीएस तक सीमित होती है. पैकेट को फिर से भेजने और ओवरहेड के साथ, आम तौर पर ज़्यादा से ज़्यादा बैंडविड्थ 125 केबीपीएस होती है. दूसरे शब्दों में, यह वाई-फ़ाई की तुलना में काफ़ी कम होता है.

IEEE 802.15.4 PHY पर फ़्रेम 127 बाइट के होते हैं. हालांकि, Thread में IPv6 पैकेट का सबसे बड़ा (और सामान्य) मैक्सिमम ट्रांसमिशन यूनिट (एमटीयू) 1,280 बाइट का होता है. इसलिए, IPv6 पैकेट को अक्सर कई PHY फ़्रेम में बांटना पड़ता है. इस प्रोसेस के बारे में RFC4944 में बताया गया है.

ज़्यादा जानने के लिए, Thread openthread.io पर मौजूद प्राइमर में IPv6 पते देखें.

बॉर्डर राऊटर

तो एक ही फ़ैब्रिक में, ट्रांसपोर्ट के दोनों तरीकों पर नोड कैसे मौजूद हो सकते हैं? हालांकि, दोनों नेटवर्क ऐप्लिकेशन-लेवल के Matter क्रेडेंशियल शेयर करते हैं, लेकिन वे एक ही लिंक टेक्नोलॉजी शेयर नहीं करते. इस स्थिति में, नेटवर्क को कनेक्टिविटी चालू करने के लिए, Thread बॉर्डर राउटर (बीआर) की ज़रूरत होती है. बीआर, स्टब IPv6 राउटर होते हैं.

स्टब राउटर, स्टब नेटवर्क और सामान्य नेटवर्क के बीच कनेक्टिविटी की सुविधा देते हैं. स्टब नेटवर्क एक "लास्ट-माइल" नेटवर्क है. यह अपने सदस्यों को बाहरी कनेक्टिविटी देता है, लेकिन अन्य नेटवर्क के बीच ट्रांज़िट नेटवर्क पाथ के तौर पर काम नहीं करता. आम तौर पर, Matter स्टब नेटवर्क Thread पर आधारित होते हैं. स्टब नेटवर्क के बारे में ज़्यादा जानकारी के लिए, आरएफ़सी ड्राफ़्ट देखें.

इसलिए, बीआर की यह ज़िम्मेदारी होती है कि वे स्टब नेटवर्क और आस-पास के इन्फ़्रास्ट्रक्चर नेटवर्क के बीच लिंक के तौर पर काम करें. आस-पास का इन्फ़्रास्ट्रक्चर नेटवर्क, स्थानीय वाई-फ़ाई या ईथरनेट नेटवर्क होता है. ये सिर्फ़ ऐसे पैकेट फ़ॉरवर्ड करते हैं जो Thread नेटवर्क के लिए काम के होते हैं.

यह प्रोसेस, Thread और आस-पास के इन्फ़्रास्ट्रक्चर नेटवर्क को अलग-अलग IPv6 प्रीफ़िक्स असाइन करके पूरी की जाती है. इसलिए, बीआर सिर्फ़ Thread IPv6 प्रीफ़िक्स पर या उससे यूनीकास्ट को फ़ॉरवर्ड करता है.

बॉर्डर राऊटर इनके लिए भी ज़िम्मेदार हैं:

  • Thread और आस-पास के इन्फ़्रास्ट्रक्चर नेटवर्क, दोनों के लिए IPv6 प्रीफ़िक्स और रास्तों को अपने-आप कॉन्फ़िगर करता है, ताकि Thread बॉर्डर राऊटर के दोनों तरफ़ मौजूद होस्ट, एक-दूसरे से कम्यूनिकेट कर सकें.
  • Thread नोड की ओर से mDNS डीएनएस-एसडी डिस्कवरी पैकेट पब्लिश करना, ताकि उन्हें आस-पास के इन्फ़्रास्ट्रक्चर नेटवर्क पर ढूंढा जा सके.

ज़्यादा जानने के लिए, openthread.io पर बॉर्डर राउटर के बारे में गाइड देखें.

IPv6 मल्टीकास्ट

ग्रुप मैसेज भी अहम होते हैं, क्योंकि इनकी मदद से Multicast की मदद से कई Matter नोड को एक साथ कंट्रोल किया जा सकता है. इस ट्रैफ़िक को Thread नेटवर्क में भेजने के लिए, Matter और Thread, दोनों आरएफ़सी 3306 के मुताबिक, Unicast प्रीफ़िक्स पर आधारित IPv6 Multicastपते का स्कीमा लागू करते हैं.

इस तरीके से, शेयर किए गए IPv6 Unicast प्रीफ़िक्स के आधार पर, किसी Multicast पैकेट के डेस्टिनेशन नोड चुने जा सकते हैं.

उदाहरण के लिए, Matter Multicast पता कुछ ऐसा दिख सकता है:

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

टेबल 1 में बताया गया है कि इस पते को कैसे बनाया गया है:

टेबल 1: Unicast प्रीफ़िक्स पर आधारित IPv6 पते
बिट जानकारी
12 बिट 0xFF3
चार बिट 0x05

स्कोप: साइट-लोकल

8 बिट 0x00

रिज़र्व किया गया

8 बिट 0x40

64-बिट लंबे प्रीफ़िक्स को दिखाता है

8 बिट 0xFD

यूएलए प्रीफ़िक्स तय करता है

56 बिट Fabric आईडी
8-बिट 0x00
16-बिट ग्रुप आईडी

ज़्यादा जानकारी के लिए, Thread प्राइमर के Multicast सेक्शन और आरएफ़सी पर जाएं.

IPv6 Multicast पते बनाते समय, उनमें Fabric आईडी के ऊपरी 56 बिट भी शामिल होते हैं. इसका अहम मतलब यह है कि Multicast का दायरा किसी फ़ैब्रिक में होता है, जबकि Unicast पते, फ़ैब्रिक के बीच शेयर किए जाते हैं. कई फ़ैब्रिक वाले नोड में, कई Multicast पते हो सकते हैं. ये पते, हर फ़ैब्रिक के स्कोप में ओवरलैप होने वाले नोड ग्रुप की जानकारी देते हैं.

पोर्ट

Matter अपने मल्टीकास्ट के लिए पोर्ट 5540 का इस्तेमाल करता है.