मेश कमीशन

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

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

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

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

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

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

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

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

विकल्प ब्यौरा
-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 कमीशन के दौरान, किसी डिवाइस की पुष्टि करने के लिए किया जाता है. हर डिवाइस के लिए, 'जॉइनर क्रेडेंशियल' अलग होना चाहिए.

commissioner joiner add * J01NME
Done

किसी खास तरह के लोगों को शामिल करें

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

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

eui64
2f57d222545271f1
Done

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

commissioner joiner add 2f57d222545271f1 J01NME
Done

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

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

factoryreset
ifconfig up
Done
joiner start J01NME
Done

पुष्टि होने तक कुछ सेकंड इंतज़ार करें:

Join success!

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

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

thread start
Done

पुष्टि करना

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

state
child
Done
...
state
router
Done