כדי להפעיל את המכשיר, צריך מכשיר אחד עם התפקיד 'מפעיל' ומכשיר אחד עם התפקיד 'מצטרף'. הקומשינר הוא מכשיר Thread ברשת Thread קיימת, או מכשיר חיצוני לרשת Thread (כמו טלפון נייד) שמבצע את התפקיד של הקומשינר. המכשיר המצטרף הוא המכשיר שרוצה להצטרף לרשת עם פרוטוקול Thread.
מכשיר Thread Commissioner משמש לאימות מכשיר ברשת. הוא לא מעביר או מחזיק בפרטי כניסה לרשת Thread, כמו מפתח הרשת.
במדריך הזה מוסבר איך לבצע הפעלה בסיסית של רשת Mesh בלי נתב גבול או Commissioner חיצוני. במאמר הפעלת שרשור חיצוני מוסבר איך משתמשים בנציב חיצוני.
דוגמה להוספה של מכשירים באמצעות מכשירים וירטואליים מופיעה ב-OpenThread Simulation Codelab.
הפעלת תפקידים
כדי להפעיל את התפקידים Commissioner ו-Joiner, משתמשים באפשרויות cmake הבאות:
| אפשרות | תיאור |
|---|---|
-DOT_COMMISSIONER=ON |
הפעלה של תפקיד הנציב |
-DOT_JOINER=ON |
הפעלת התפקיד 'משתתף' |
לדוגמה, כדי ליצור את פלטפורמת הדוגמה CC2538 לשימוש רק כ-Joiner:
./script/build -DOT_JOINER=ON
מבצעים Flash לכל קובץ בינארי במכשיר הרצוי. מכשיר אחד משמש כ-Commissioner (מכשיר שמוסיף מכשירים לרשת) והשני כ-Joiner (מכשיר שמצטרף לרשת).
הוראות ספציפיות לגבי בנייה והפעלה של פלטפורמות נתמכות זמינות במאגר OpenThread של כל פלטפורמה. כדי למצוא את המאגר, אפשר לעיין בארגון OpenThread ב-GitHub.
יצירת רשת
יוצרים רשת במכשיר שפועל כמרכז בקרה:
dataset init newDonedatasetActive 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 Donedataset commit activeDoneifconfig upDonethread startDone
ממתינים כמה שניות ומוודאים שהמכשיר הפך ל-Thread Leader:
state
leader
Done
הפעלת התפקיד 'נציב'
באותו מכשיר, מפעילים את התפקיד של הנציב:
commissioner start
Done
משתמשים בתו הכללי '*' כדי לאפשר לכל משתמש עם פרטי הכניסה שצוינו להצטרף לרשת. פרטי הכניסה של המצטרף משמשים (יחד עם מזהה ה-PAN המורחב ושם הרשת) ליצירת המפתח ששותף מראש למכשיר (PSKd). לאחר מכן משתמשים ב-PSKd כדי לאמת מכשיר במהלך ההקצאה של Thread. האישורים של המצטרף צריכים להיות ייחודיים לכל מכשיר.
commissioner joiner add * J01NME
Done
הגבלה למצטרף ספציפי
כדי להגביל את ההפעלה למכשיר מצטרף ספציפי, משתמשים בפרמטר eui64, שהוא מזהה IEEE EUI-64 שהוקצה למכשיר על ידי היצרן.
במכשיר שמשמש כמצטרף, מקבלים את ה-EUI-64:
eui64
2f57d222545271f1
Done
משתמשים בערך הזה במקום בתו הכללי * בפקודה commissioner joiner במכשיר של המפקח:
commissioner joiner add 2f57d222545271f1 J01NME
Done
הפעלת התפקיד של המצטרף
במכשיר שמשמש כמצטרף, מבצעים איפוס להגדרות המקוריות, ואז מפעילים את התפקיד 'מצטרף' עם אותם פרטי כניסה של המצטרף שצוינו במכשיר המקצה:
factoryresetifconfig upDonejoiner start J01NMEDone
ממתינים כמה שניות לאישור:
Join success!
מכשיר ה-Joiner עבר אימות בהצלחה אצל מכשיר ה-Commissioner וקיבל פרטי כניסה לרשת Thread.
עכשיו מפעילים את Thread במכשיר המצטרף:
thread start
Done
אימות האימות
בודקים את המצב במכשיר של המצטרף כדי לוודא שהוא הצטרף לרשת. תוך שתי דקות, המצב משתנה מ'ילד' ל'נתב':
statechild Done ...staterouter Done