मेश कमीशन

GitHub पर सोर्स देखें

कमिश्नर और जॉइनर

डिवाइस को कमिशन करने के लिए, एक डिवाइस पर कमिश्नर की भूमिका और एक डिवाइस पर जॉइनर की भूमिका ज़रूरी है. कमिश्नर, किसी मौजूदा Thread नेटवर्क में मौजूद Thread डिवाइस होता है. इसके अलावा, यह Thread नेटवर्क से बाहर का ऐसा डिवाइस भी हो सकता है जो कमिश्नर की भूमिका निभाता हो. जैसे, मोबाइल फ़ोन. जॉइनर एक ऐसा डिवाइस है जिसे Thread नेटवर्क में शामिल होना है.

Thread कमिश्नर का इस्तेमाल, नेटवर्क से किसी डिवाइस की पुष्टि करने के लिए किया जाता है. यह Thread नेटवर्क क्रेडेंशियल को ट्रांसफ़र नहीं करता है या इसके पास नेटवर्क कुंजी जैसे क्रेडेंशियल नहीं है.

इस गाइड में, बाहरी कमिश्नर या बॉर्डर राउटर के बिना, बुनियादी और मेश पर कमिशन करने के बारे में बताया गया है. बाहरी कमिश्नर का इस्तेमाल करने का तरीका जानने के लिए, बाहरी थ्रेड को कमिशन करना लेख पढ़ें.

वर्चुअल डिवाइसों का इस्तेमाल करके कमिशन करने का उदाहरण देखने के लिए, OpenThread सिम्युलेशन कोडलैब देखें.

भूमिकाएं चालू करना

कमिश्नर और जॉइनर की भूमिकाओं को चालू करने के लिए, इन सीमेक विकल्पों का इस्तेमाल करें:

विकल्प ब्यौरा
-DOT_COMMISSIONER=ON कमिश्नर की भूमिका चालू करता है
-DOT_JOINER=ON 'शामिल होने वाला' की भूमिका चालू करता है

उदाहरण के लिए, सिर्फ़ जॉइन करने वाले के तौर पर इस्तेमाल करने के लिए, CC2538 का उदाहरण प्लैटफ़ॉर्म बनाने के लिए:

./script/build -DOT_JOINER=ON

हर बाइनरी को सही डिवाइस पर फ़्लैश करें. एक डिवाइस, कमिश्नर के तौर पर काम करता है और दूसरा, जॉइनर के तौर पर.

काम करने वाले प्लैटफ़ॉर्म को बनाने और उन पर फ़्लैश करने के बारे में खास निर्देश, हर प्लैटफ़ॉर्म के OpenThread रिपॉज़िटरी में मिल सकते हैं. डेटा स्टोर करने की जगह ढूंढने के लिए, OpenThread GitHub संगठन देखें.

नेटवर्क बनाना

कमिश्नर के तौर पर काम करने वाले डिवाइस पर नेटवर्क बनाएं:

dataset init new
Done
dataset
Active Timestamp: 1
Channel: 13
Channel Mask: 07fff800
Ext PAN ID: d63e8e3e495ebbc3
Mesh Local Prefix: fd3d:b50b:f96d:722d/64
Network Key: dfd34f0f05cad978ec4e32b0413038ff
Network Name: OpenThread-8f28
PAN ID: 0x8f28
PSKc: c23a76e98f1a6483639b1ac1271e2e27
Security Policy: 0, onrcb
Done
dataset commit active
Done
ifconfig up
Done
thread start
Done

कुछ सेकंड इंतज़ार करें और पुष्टि करें कि डिवाइस, थ्रेड लीडर बन गया है:

state
leader
Done

कमिश्नर की भूमिका शुरू करना

उसी डिवाइस पर, कमिश्नर की भूमिका शुरू करें:

commissioner start
Done

* वाइल्डकार्ड का इस्तेमाल करके, किसी भी जॉइनर को नेटवर्क में शामिल होने की अनुमति दें. इसके लिए, ज़रूरी है कि जॉइनर के पास तय किए गए क्रेडेंशियल हों. डिवाइस के लिए पहले से शेयर की गई कुंजी (पीएसकेडी) जनरेट करने के लिए, जॉइनर क्रेडेंशियल का इस्तेमाल, एक्सटेंडेड पैन आईडी और नेटवर्क के नाम के साथ किया जाता है. इसके बाद, Thread कोमिस्सिंग के दौरान, किसी डिवाइस की पुष्टि करने के लिए PSKd का इस्तेमाल किया जाता है. हर डिवाइस के लिए, जॉइनर क्रेडेंशियल यूनीक होना चाहिए.

commissioner joiner add * J01NME
Done

किसी खास व्यक्ति के लिए पाबंदी लगाना

किसी खास जॉइनर डिवाइस के लिए कमीशन करने पर पाबंदी लगाने के लिए, eui64 पैरामीटर का इस्तेमाल करें. यह डिवाइस का फ़ैक्ट्री से असाइन किया गया IEEE EUI-64 होता है.

जॉइनर के तौर पर काम करने वाले डिवाइस पर, EUI-64 पाएं:

eui64
2f57d222545271f1
Done

कमिश्नर डिवाइस पर, commissioner joiner कमांड में * वाइल्डकार्ड के बजाय उस वैल्यू का इस्तेमाल करें:

commissioner joiner add 2f57d222545271f1 J01NME
Done

जॉइनर की भूमिका शुरू करना

जॉइनर के तौर पर काम करने वाले डिवाइस पर, फ़ैक्ट्री रीसेट करें. इसके बाद, कमिश्नर के बताए गए जॉइनर क्रेडेंशियल से जॉइनर की भूमिका चालू करें:

factoryreset
ifconfig up
Done
joiner start J01NME
Done

पुष्टि के लिए कुछ सेकंड इंतज़ार करें:

Join success!

जॉइनर डिवाइस ने कमिश्नर के साथ अपनी पुष्टि कर ली है और उसे Thread नेटवर्क के क्रेडेंशियल मिल गए हैं.

अब जॉइनर डिवाइस पर Thread शुरू करें:

thread start
Done

पुष्टि की प्रक्रिया की पुष्टि करना

यह पुष्टि करने के लिए कि वह डिवाइस नेटवर्क से जुड़ा है या नहीं, उस डिवाइस की स्थिति देखें जिसे शामिल किया गया है. दो मिनट के अंदर, बच्चे से राऊटर की स्थिति बदल जाएगी:

state
child
Done
...
state
router
Done