פרוטוקול Spanning Tree, המכונה לפעמים רק Spanning Tree, הוא ה-Waze או MapQuest של רשתות Ethernet מודרניות, המפנה את התנועה לאורך המסלול היעיל ביותר בהתבסס על תנאי זמן אמת.
בהתבסס על אלגוריתם שיצרה מדענית המחשבים האמריקאית ראדיה פרלמן בזמן שעבדה עבור Digital Equipment Corporation (DEC) בשנת 1985, המטרה העיקרית של Spanning Tree היא למנוע קישורים מיותרים ולולאה של נתיבי תקשורת בתצורות רשת מורכבות. כפונקציה משנית, Spanning Tree יכול לנתב מנות סביב נקודות בעייתיות כדי להבטיח שהתקשורת תוכל לעבור דרך רשתות שעלולות לחוות שיבושים.
טופולוגיית עץ משתרעת לעומת טופולוגיה של הטבעת
כאשר ארגונים רק התחילו לרשת את המחשבים שלהם בשנות ה-80, אחת התצורות הפופולריות ביותר הייתה רשת הטבעת. לדוגמה, IBM הציגה את טכנולוגיית Token Ring הקניינית שלה ב-1985.
בטופולוגיה של רשת טבעת, כל צומת מתחבר לשניים אחרים, אחד שיושב לפניו על הטבעת ואחד שממוקם מאחוריו. אותות נעים רק סביב הטבעת בכיוון יחיד, כאשר כל צומת לאורך הדרך מוסר את כל החבילות שמסתובבות סביב הטבעת.
בעוד שרשתות צלצולים פשוטות עובדות מצוין כשיש רק קומץ מחשבים, טבעות הופכות לבלתי יעילות כאשר מאות או אלפי מכשירים מתווספים לרשת. ייתכן שמחשב יצטרך לשלוח מנות דרך מאות צמתים רק כדי לשתף מידע עם מערכת אחת אחרת בחדר סמוך. רוחב פס ותפוקה הופכים גם לבעיה כאשר התעבורה יכולה לזרום רק בכיוון אחד, ללא תוכנית גיבוי אם צומת בדרך נשבר או עמוס מדי.
בשנות ה-90, כשהאתרנט הפך מהר יותר (100Mbit/sec. Fast Ethernet הוצג ב-1995) והעלות של רשת Ethernet (גשרים, מתגים, כבלים) הפכה לזולה משמעותית מ-Token Ring, Spanning Tree ניצח במלחמות טופולוגיית ה-LAN וב-Token טבעת התפוגגה במהירות.
איך עובד עץ משתרע
Spanning Tree הוא פרוטוקול העברה עבור מנות נתונים. זה חלק אחד שוטר תנועה וחלק אחד מהנדס אזרחי עבור כבישי הרשת שהנתונים עוברים דרכם. הוא יושב בשכבה 2 (שכבת קישור נתונים), כך שהוא פשוט עוסק בהעברת מנות ליעד המתאים להן, לא איזה סוג מנות נשלחות או הנתונים שהן מכילות.
Spanning Tree הפך להיות כל כך נפוץ עד שהשימוש בו מוגדר ב-תקן רשת IEEE 802.1D. כפי שהוגדר בתקן, רק נתיב פעיל אחד יכול להתקיים בין כל שתי נקודות קצה או תחנות על מנת שיפעלו כראוי.
Spanning Tree נועד למנוע את האפשרות שהנתונים העוברים בין מקטעי רשת יתקעו בלולאה. באופן כללי, לולאות מבלבלות את אלגוריתם ההעברה המותקן בהתקני רשת, מה שהופך אותו כך שהמכשיר כבר לא יודע לאן לשלוח מנות. זה יכול לגרום לשכפול של מסגרות או להעברת מנות כפולות למספר יעדים. הודעות יכולות לחזור על עצמו. תקשורת יכולה לחזור לשולח. זה יכול אפילו לקרוס רשת אם יתחילו להתרחש יותר מדי לולאות, ולצרוך רוחב פס ללא רווחים ניכרים תוך חסימת תעבורה אחרת שאינה בלולאה לעבור.
פרוטוקול העץ המתפרשעוצר לולאות להיווצרעל ידי סגירת כל המסלול האפשרי פרט לאחד עבור כל חבילת נתונים. מתגים ברשת משתמשים ב- Spanning Tree כדי להגדיר נתיבי שורש וגשרים שבהם נתונים יכולים לעבור, ולסגור באופן פונקציונלי נתיבים כפולים, מה שהופך אותם ללא פעילים ובלתי ניתנים לשימוש בזמן שנתיב ראשי זמין.
התוצאה היא שתקשורת רשת זורמת בצורה חלקה ללא קשר למידת המורכבות או הענפה של הרשת. במובן מסוים, Spanning Tree יוצר נתיבים בודדים דרך רשת להעברת נתונים באמצעות תוכנה, כמעט כמו מהנדסי רשת שעשו שימוש בחומרה ברשתות הלולאה הישנות.
יתרונות נוספים של Spanning Tree
הסיבה העיקרית לשימוש ב- Spanning Tree היא כדי לבטל את האפשרות של ניתוב לולאות בתוך רשת. אבל יש גם יתרונות אחרים.
מכיוון ש- Spanning Tree מחפש ומגדיר כל הזמן אילו נתיבי רשת זמינים עבור חבילות נתונים לעבור דרכם, הוא יכול לזהות אם צומת שיושב לאורך אחד מאותם נתיבים ראשיים הושבת. זה יכול לקרות ממגוון סיבות, החל מכשל חומרה ועד לתצורת רשת חדשה. זה יכול להיות אפילו מצב זמני המבוסס על רוחב פס או גורמים אחרים.
כאשר Spanning Tree מזהה שנתיב ראשי אינו פעיל יותר, הוא יכול לפתוח במהירות נתיב אחר שנסגר בעבר. לאחר מכן, הוא יכול לשלוח נתונים מסביב לנקודה הבעייתית, בסופו של דבר להגדיר את המעקף כנתיב הראשי החדש, או לשלוח מנות בחזרה לגשר המקורי אם הוא יחזור להיות זמין.
בעוד ש-Spanning Tree המקורי היה מהיר יחסית ביצירת החיבורים החדשים הללו לפי הצורך, בשנת 2001 ה-IEEE הציג את פרוטוקול ה-Rapid Spanning Tree (RSTP). המכונה גם גרסת 802.1w של הפרוטוקול, RSTP תוכנן לספק התאוששות מהירה משמעותית בתגובה לשינויים ברשת, הפסקות זמניות או כשל מוחלט של רכיבים.
ולמרות ש-RSTP הציג התנהגויות חדשות של התכנסות נתיב ותפקידי יציאת גשר כדי להאיץ את התהליך, הוא תוכנן גם להיות תואם לאחור באופן מלא עם Spanning Tree המקורי. אז ייתכן שמכשירים עם שתי גרסאות הפרוטוקול יפעלו יחד באותה רשת.
חסרונות של Spanning Tree
בעוד Spanning Tree הפך לכל מקום במהלך השנים הרבות שלאחר הצגתו, יש מי שטוענים שזההגיע הזמן. התקלה הגדולה ביותר של Spanning Tree היא שהוא סוגר לולאות פוטנציאליות בתוך רשת על ידי השבתת מסלולים פוטנציאליים שבהם נתונים יכולים לעבור. בכל רשת נתונה המשתמשת ב- Spanning Tree, כ-40% מנתיבי הרשת הפוטנציאליים סגורים לנתונים.
בסביבות רשת מורכבות במיוחד, כמו אלו שנמצאות במרכזי נתונים, היכולת להתרחב במהירות כדי לענות על הביקוש היא קריטית. ללא המגבלות שמטיל Spanning Tree, מרכזי נתונים יכולים לפתוח הרבה יותר רוחב פס ללא צורך בחומרת רשת נוספת. זה סוג של מצב אירוני, כי סביבות רשת מורכבות הן הסיבה ש- Spanning Tree נוצר. ועכשיו ההגנה שמספק הפרוטוקול מפני לולאה מעכבת, במובן מסוים, את הסביבות הללו ממלוא הפוטנציאל שלהן.
גרסה מעודנת של הפרוטוקול בשם Multiple-Instance Spanning Tree (MSTP) פותחה כדי להפעיל רשתות LAN וירטואליות ולאפשר ליותר נתיבי רשת להיות פתוחים בו-זמנית, תוך מניעת היווצרות לולאות. אבל אפילו עם MSTP, לא מעט נתיבים פוטנציאליים נותרים סגורים בכל רשת נתונה המשתמשת בפרוטוקול.
היו הרבה ניסיונות בלתי סטנדרטיים ועצמאיים לשפר את מגבלות רוחב הפס של Spanning Tree לאורך השנים. בעוד שהמעצבים של כמה מהם טענו להצלחה במאמצים שלהם, רובם אינם תואמים לחלוטין לפרוטוקול הליבה, כלומר ארגונים צריכים להשתמש בשינויים הלא סטנדרטיים בכל המכשירים שלהם או למצוא דרך כלשהי לאפשר להם להתקיים עם מתגים הפועלים בעץ Spanning Tree. ברוב המקרים, העלויות של תחזוקה ותמיכה במספר טעמים של Spanning Tree אינן שוות את המאמץ.
האם Spanning Tree ימשיך בעתיד?
מלבד המגבלות ברוחב הפס עקב סגירת נתיבי הרשת של Spanning Tree, לא מושקעת הרבה מחשבה או מאמץ בהחלפת הפרוטוקול. למרות ש-IEEE משחרר מדי פעם עדכונים כדי לנסות ולהפוך אותו ליעיל יותר, הם תמיד תואמים לאחור עם גרסאות קיימות של הפרוטוקול.
במובן מסוים, Spanning Tree עוקב אחר הכלל של "אם זה לא שבור, אל תתקן את זה". Spanning Tree פועל באופן עצמאי ברקע של רוב הרשתות כדי לשמור על זרימת התעבורה, למנוע היווצרות של לולאות הגורמות להתרסקות, ולנתב תעבורה סביב נקודות בעייתיות, כך שמשתמשי קצה אף פעם לא ידעו אם הרשת שלהם חווה שיבושים זמניים כחלק מהיום ל- פעולות יום. בינתיים, בקצה האחורי, מנהלי מערכת יכולים להוסיף מכשירים חדשים לרשתות שלהם מבלי לחשוב יותר מדי אם הם יוכלו לתקשר או לא עם שאר הרשת או עם העולם החיצון.
בגלל כל זה, סביר להניח ש- Spanning Tree יישאר בשימוש עוד שנים רבות. ייתכן שיהיו כמה עדכונים קלים מדי פעם, אבל פרוטוקול הליבה של Spanning Tree וכל התכונות הקריטיות שהוא מבצע כנראה כאן כדי להישאר.
זמן פרסום: נובמבר-07-2023