קבוצה דומיננטית מחוברת

הנתב חייב ליצור קבוצה דומיננטית מקושרת (CDS), כלומר:
- יש נתיב נתבים בלבד בין כל שני נתבים.
- כל נתב ברשת Thread יכול להגיע לכל נתב אחר, כל עוד הוא נשאר בתוך קבוצת הנתב.
- כל מכשיר קצה ברשת Thread מחובר ישירות לנתב.
אלגוריתם מבוזר שומר על ה-CDS, וכך מבטיח רמה מינימלית של יתירות. כל מכשיר מתחבר לרשת בהתחלה כמכשיר קצה (צאצא). כשהמצב של רשת Thread משתנה, האלגוריתם מוסיף או מסיר נתבים כדי לשמור על ה-CDS.
Thread מוסיף נתבים אל:
- הגדלת הכיסוי אם הרשת נמצאת מתחת לסף של הנתב (16)
- הגדלת המגוון של הנתיבים
- שמירה על רמה מינימלית של יתירות
- הרחבת הקישוריות ותמיכה בעוד ילדים
הסרת נתב מהשרשור:
- צמצום מצב הניתוב מתחת למספר המקסימלי של 32 נתבים
- לאפשר נתבים חדשים בחלקים אחרים של הרשת לפי הצורך
שדרוג לנתב
אחרי שמתחברים לרשת Thread, המכשיר הצאצא יכול לבחור להפוך לנתב. לפני שמתחילים את תהליך בקשת הקישור של MLE, הצאצא שולח הודעה של בקשת כתובת ל-Leader, שבה הוא מבקש מזהה נתב. אם המארח מקבל את הבקשה, הוא משיב עם מזהה נתב והצאצא משדרג את עצמו לנתב.
לאחר מכן, תהליך הבקשה לקישור MLE משמש ליצירת קישורים דו-כיווניים בין נתבים עם נתבים שכנים.
- הנתב החדש שולח בקשת קישור ב-multicast לנתב השכן.
- הנתב מגיב בהודעות Link Accept and Request.
- הנתב החדש משיב לכל נתב באמצעות Link Accept (אישור קישור) של unicast כדי ליצור את הקישור בין הנתב לנתב.
1. בקשת קישור
בקשת קישור היא בקשה מהנתב לכל שאר הנתבים ברשת Thread. כשהמכשיר הופך לנתב בפעם הראשונה, הוא שולח בקשת קישור ב-multicast אל ff02::2
. לאחר מכן, אחרי שהמכשירים מאתרים את הנתב האחר באמצעות מודעות MLE, הם שולחים בקשות קישור ל-unicast.

תוכן ההודעה של בקשת הקישור | |
---|---|
גרסה | גרסת הפרוטוקול של Thread |
אתגר | בדיקה של מהירות התגובה של הקישור כדי למנוע התקפות של שחזור (replay) |
כתובת המקור | RLOC16 של השולח |
Leader Data | מידע על המנהיג של הנתב, כפי שהוא מאוחסן בשולח (RLOC, Partition ID, Partition weight) |
2. אישור בקשות קישור ושליחת בקשות קישור
'בקשה לקישור ואישור קישור' היא שילוב של ההודעות 'בקשה לקישור' ו'אישור קישור'. Thread משתמש באופטימיזציה הזו בתהליך של בקשת הקישור ל-MLE כדי לצמצם את מספר ההודעות מ-4 ל-3.

3. אישור הקישור
'אישור קישור' הוא תגובה unicast לבקשת קישור מרשתת שכנה, שמספקת מידע על עצמה ומאשרת את הקישור לרשתת השכנה.

קישור תוכן ההודעה לאישור | |
---|---|
גרסה | גרסת הפרוטוקול של Thread |
תגובה | בדיקה של מהירות התגובה של הקישור כדי למנוע התקפות של שחזור (replay) |
מספר הפריימים בקישור | מונה פריימים 802.15.4 בשולח |
MLE Frame Counter | מונה הפריימים של MLE בשולח |
כתובת המקור | RLOC16 של השולח |
Leader Data | מידע על המנהיג של הנתב, כפי שהוא מאוחסן בשולח (RLOC, Partition ID, Partition weight) |
שדרוג לאחור ל-REED
כשנתב עובר לשדרוג לאחור ל-REED, הקישורים בין הנתב לנתב מתנתקים והמכשיר מתחיל את תהליך ה-MLE Attach כדי ליצור קישור בין הצאצא להורה.
מידע נוסף על תהליך הקישור של MLE זמין במאמר הצטרפות לרשת קיימת.
קישורים לקבלה בכיוון אחד
במקרים מסוימים, יכול להיות שתצטרכו ליצור קישור חד-כיווני לקבלת הודעות.
אחרי איפוס הנתב, יכול להיות שלנתבים שכנים עדיין יהיה קישור תקף לקבלת נתונים מהנתב המאפס. במקרה כזה, הנתב שהושבת שולח הודעה של בקשת קישור כדי ליצור מחדש את הקישור בין הנתב לנתב.
מכשיר קצה יכול גם ליצור קישור לקבלה עם נתבים שכנים שאינם נתבים הורים כדי לשפר את האמינות של ה-multicast. נרחיב על כך בהמשך, בקטע 'ניתוב Multicast'.
Recap
מה למדתם:
- הנתבנים ברשת Thread חייבים ליצור קבוצה דומיננטית מחוברת (CDS)
- מכשירים עם Thread משודרגים לנתב או מוחזרים למכשיר קצה כדי לשמור על CDS
- התהליך של בקשת הקישור ב-MLE משמש ליצירת קישורים בין נתבים