आइए देखें कि Thread नेटवर्क के हर डिवाइस की पहचान कैसे करता है और वे एक-दूसरे से किस तरह बातचीत करते हैं.
बंदूक पर लगने वाली दूरबीन

यूनिकोड के पते के लिए, थ्रेड नेटवर्क में तीन दायरे हैं:
- लिंक-स्थानीय — सभी इंटरफ़ेस में एक ही रेडियो ट्रांसमिशन से पहुंचा जा सकता है
- मेश-लोकल — सभी इंटरफ़ेस एक ही थ्रेड नेटवर्क में ऐक्सेस किए जा सकते हैं
- ग्लोबल — सभी इंटरफ़ेस को थ्रेड नेटवर्क के बाहर से ऐक्सेस किया जा सकता है
पहले दो दायरे, थ्रेड के नेटवर्क से तय किए गए प्रीफ़िक्स के मुताबिक हैं.
लिंक-लोकल में fe80::/16
के प्रीफ़िक्स हैं, जबकि मेश-लोकल में
fd00::/8
के प्रीफ़िक्स हैं.
Unicast
ऐसे कई IPv6 यूनीकास्ट पते हैं जो एक थ्रेड डिवाइस की पहचान करते हैं. दायरे और इस्तेमाल के उदाहरण के आधार पर हर फ़ंक्शन का फ़ंक्शन अलग होता है.
इससे पहले कि हम हर तरह की जानकारी के बारे में बात करें, चलिए एक जैसे आम रूटीन के बारे में ज़्यादा जान पाते हैं. इसे रूटिंग लोकेटर (आरएलओसी) कहा जाता है. RLOC, नेटवर्क टोपोलॉजी में अपनी जगह के आधार पर, थ्रेड इंटरफ़ेस की पहचान करता है.
रूटिंग लोकेटर जनरेट करने का तरीका
सभी डिवाइसों को एक राऊटर आईडी और चाइल्ड आईडी दिया जाता है. हर राऊटर अपने सभी बच्चों का एक टेबल रखता है. यह टेबल वगैरह टोपोलॉजी में डिवाइस की खास तौर पर पहचान करता है. उदाहरण के लिए, नीचे दिए गए टोपोलॉजी में हाइलाइट किए गए नोड पर विचार करें, जहां राऊटर का नाम (पेटेंटन) राऊटर आईडी है और एंड डिवाइस (सर्कल) का नंबर चाइल्ड आईडी है:

हर बच्चे का राऊटर आईडी अपने पैरंट (रूटर) से जुड़ा होता है. राऊटर कोई बच्चा नहीं होता, इसलिए राऊटर का चाइल्ड आईडी हमेशा 0 होता है. कुल मिलाकर, ये मान थ्रेड नेटवर्क के हर डिवाइस के लिए अलग होते हैं और उनका इस्तेमाल RLOC16 बनाने के लिए किया जाता है, जो RLOC के आखिरी 16 बिट का प्रतिनिधित्व करता है.
उदाहरण के लिए, ऊपर-बाएं नोड के लिए RLOC16 की गिनती करने का तरीका यहां बताया गया है (रूटर आईडी = 1 और चाइल्ड आईडी = 1):

RLOC16, इंटरफ़ेस पहचानकर्ता (IID) का हिस्सा है, जो कि IPv6 पते के आखिरी 64 बिट से मेल खाता है. कुछ IID का इस्तेमाल, थ्रेड इंटरफ़ेस के कुछ प्रकार की पहचान करने में किया जा सकता है. उदाहरण के लिए, आरएलओसी का आईआईडी हमेशा इस फ़ॉर्म में होता है:
0000:00ff:fe00:RLOC16
IID के साथ, मेश-लोकल प्रीफ़िक्स के साथ RLOC होता है. उदाहरण के लिए, fde5:8dba:82e1:1::/64
के मेश-लोकल प्रीफ़िक्स का इस्तेमाल करके, उस नोड के लिए आरएलओसी जहां
RLOC16 = 0x401
है:

ऊपर दिए गए सैंपल टोपोलॉजी में हाइलाइट किए गए सभी नोड के लिए, आरएलओसी का पता लगाने के लिए यही लॉजिक इस्तेमाल किया जा सकता है:

हालांकि, आरएलओसी टोपोलॉजी में नोड की जगह पर आधारित होती है. इसलिए, टोपोलॉजी के बदलने पर किसी नोड का आरएलसी बदल सकता है.
उदाहरण के लिए, शायद थ्रेड नेटवर्क से नोड 0x400
को हटाया जाए. नोड
0x401
और 0x402
अलग-अलग राऊटर के नए लिंक बनाते हैं. इस वजह से, दोनों को नए RLOC16 और RLOC असाइन किए जाते हैं:

Unicast पते के प्रकार
RLOC, उन सभी IPv6 यूनिकोड कास्ट पतों में से एक है जिन्हें Thread डिवाइस में इस्तेमाल किया जा सकता है. पतों की एक और कैटगरी को एंडपॉइंट आइडेंटिफ़ायर (ईआईडी) कहा जाता है. ये आइडेंटिफ़ायर, थ्रेड नेटवर्क पार्टी में यूनीक थ्रेड इंटरफ़ेस की पहचान करते हैं. ईआईडी, थ्रेड नेटवर्क टोपोलॉजी से अलग हैं.
सामान्य यूनीकास्ट के बारे में ज़्यादा जानकारी नीचे दी गई है.
लिंक-स्थानीय पता (LLA) |
|
---|---|
EID, जो ऐसे थ्रेड इंटरफ़ेस की पहचान करता है जिसे सिर्फ़ एक रेडियो ट्रांसमिशन से ऐक्सेस किया जा सकता है. | |
उदाहरण | fe80::54db:881c:3845:57f4 |
आईआईडी | 802.15.4 एक्सटेंडेड पते के आधार पर |
दायरा | लिंक-लोकल |
जानकारी |
|
मेश-लोकल ईआईडी (एमएल-ईआईडी) |
|
---|---|
एक ईआईडी, जो नेटवर्क टोपोलॉजी से अलग, थ्रेड इंटरफ़ेस की पहचान करता है. इसका इस्तेमाल उसी थ्रेड पार्टीशन में थ्रेड वाले इंटरफ़ेस तक पहुंचने के लिए किया जाता है. इसे यूनीक लोकल पता (यूएलए) भी कहा जाता है. | |
उदाहरण | fde5:8dba:82e1:1:416:993c:8399:35ab |
आईआईडी | बिना किसी तय नियम के, कमीशन पूरा होने के बाद चुना गया |
दायरा | मेश-लोकल |
जानकारी |
|
रूटिंग लोकेटर (RLOC) |
|
---|---|
नेटवर्क टोपोलॉजी में उसकी जगह के आधार पर, थ्रेड इंटरफ़ेस की पहचान करता है. | |
उदाहरण | fde5:8dba:82e1:1::ff:fe00:1001 |
आईआईडी | 0000:00ff:fe00:RLOC16 |
दायरा | मेश-लोकल |
जानकारी |
|
Anycast Locator (ALOC) |
|
---|---|
जब किसी डेस्टिनेशन का आरएलसी न पता हो, तब आरएलओसी लुकअप के ज़रिए थ्रेड इंटरफ़ेस की पहचान करता है. | |
उदाहरण | fde5:8dba:82e1:1::ff:fe00:fc01 |
आईआईडी | 0000:00ff:fe00:fcXX |
दायरा | मेश-लोकल |
जानकारी |
|
ग्लोबल यूनीकास्ट पता (GUA) |
|
---|---|
EID, जो थ्रेड नेटवर्क के अलावा, किसी ग्लोबल स्कोप पर थ्रेड इंटरफ़ेस की पहचान करता है. | |
उदाहरण | 2000::54db:881c:3845:57f4 |
आईआईडी |
|
दायरा | हर जगह लागू |
जानकारी |
|
एक से ज़्यादा कास्ट वाले ऐप्लिकेशन
मल्टीकास्ट का इस्तेमाल एक साथ कई डिवाइस पर जानकारी देने के लिए किया जाता है. किसी थ्रेड नेटवर्क में, खास पतों के आधार पर डिवाइस के अलग-अलग ग्रुप के साथ खास कास्ट को मल्टीकास्ट के इस्तेमाल के लिए रिज़र्व किया जाता है.
IPv6 पता | अनुमति देने का | इन्हें डिलीवर किया गया |
---|---|---|
ff02::1 |
लिंक-लोकल | सभी FTD और MED |
ff02::2 |
लिंक-लोकल | सभी एफ़टीपी |
ff03::1 |
मेश-लोकल | सभी FTD और MED |
ff03::2 |
मेश-लोकल | सभी एफ़टीपी |
आप देख सकते हैं कि ऊपर दिए गए मल्टीकास्ट टेबल में, स्लीपी एंड डिवाइस (एसईडी) को पाने वाले व्यक्ति के तौर पर शामिल नहीं किया गया है. इसके बजाय, थ्रेड SEDs के साथ, सभी थ्रेड नोड के लिए इस्तेमाल किए जाने वाले लिंक-स्थानीय और रेलम-स्थानीय दायरे के यूनिकोड प्रीफ़िक्स के आधार पर IPv6 मल्टीकास्ट पते की जानकारी देता है. ये कई कास्ट करने वाले पते, Thread नेटवर्क के हिसाब से अलग-अलग होते हैं, क्योंकि इन्हें यूनिकोड के लिए बनाया गया है मेश-लोकल प्रीफ़िक्स (आरएफ़सी 3306 देखें और यूनिकोड का इस्तेमाल करने वाले IPv6 मल्टीकास्ट पतों के बारे में ज़्यादा जानकारी पाएं).
पहले से सूची में दिए गए दायरे के अलावा, मध्यस्थता के दायरे थ्रेड वाले डिवाइस पर भी काम करते हैं.
ऐनकास्ट
किसी भी डेस्टिनेशन का आरएलसी पता न होने पर, थ्रेड को इंटरफ़ेस पर ट्रैफ़िक भेजने के लिए, Cast का इस्तेमाल किया जाता है. Anycast Locator (ALOC) थ्रेड के सेगमेंट में कई इंटरफ़ेस की जगह की पहचान करता है. एएलओसी के आखिरी 16 बिट, जिन्हें एएलओसी1 कहा जाता है, 0xfcXX
के फ़ॉर्मैट में होता है. यह ALOC का टाइप बताता है.
उदाहरण के लिए, 0xfc01
और 0xfc0f
के बीच का एएलओसी1 DHCPv6 एजेंट के लिए रिज़र्व होता है. अगर किसी खास DHCPv6 एजेंट आरएलओसी के बारे में जानकारी नहीं है (शायद इसलिए क्योंकि नेटवर्क टोपोलॉजी बदल गई है), तो आरएलसी को पाने के लिए एक मैसेज DHCPv6 एजेंट एएलओसी को भेजा जा सकता है.
थ्रेड, नीचे दिए गए ALOC16 मानों के बारे में बताती है:
एएलओसी | टाइप |
---|---|
0xfc00 |
आगे हैं |
0xfc01 – 0xfc0f |
DHCPv6 एजेंट |
0xfc10 – 0xfc2f |
सेवा |
0xfc30 – 0xfc37 |
कमिश्नर |
0xfc40 – 0xfc4e |
आस-पास के डिस्कवरी एजेंट |
0xfc38 – 0xfc3f 0xfc4f – 0xfcff |
बुक किया हुआ |
Recap
आपने क्या #39 सीखा:
- थ्रेड नेटवर्क के तीन दायरे होते हैं: लिंक-लोकल, मेश-लोकल, और ग्लोबल
- किसी थ्रेड डिवाइस में कई यूनिकोड कास्ट IPv6 पते हैं
- RLOC, थ्रेड नेटवर्क में डिवाइस का स्थान दिखाता है
- ML-EID, पार्टीशन में थ्रेड वाले डिवाइस के लिए खास होता है. ऐप्लिकेशन में इसका इस्तेमाल होना चाहिए
- थ्रेड, नोड और राऊटर के ग्रुप में डेटा फ़ॉरवर्ड करने के लिए मल्टीकास्ट का इस्तेमाल करता है
- किसी डेस्टिनेशन का आरएलसी की जानकारी न होने पर थ्रेड किसी भी कास्ट का इस्तेमाल करता है
Thread's IPv6 के बारे में ज़्यादा जानने के लिए, थ्रेड से जुड़ी खास जानकारी के सेक्शन 5.2 और 5.3 को देखें.
अपनी समझ की जांच करना
ff03::2
के मल्टीकास्ट पते से सदस्यता लेता है. इससे हमें डिवाइस के बारे में क्या पता चलता है?ff03::2
मल्टीकास्ट पते की सदस्यता लेते हैं. मेश-लोकल
दायरे में ऐसा होता है.