2.2 עקרונות עבודה ברמה שניה 2 Layer כאשר אנו מתעסקים כיום ברשתות תקשורת מקומיות אנו רואים נטייה לצמיחה וגידול כמות המשתמשים ברשת. כאשר מדובר למשל בחברה קטנה בה כל התחנות מקושרות לרשת מסוג SHARED MEDIA כולם נהנים מהיתרונות של עבודה ברשת. מה קורה כאשר החברה מתרחבת ויותר אנשים משתמשים ברוחב הפס של הרשת? האם הוא מתחלק בין כולם? איזה בעיות נוצרות ואיך ניתן לפתור אותן? בחלק זה נבין את עקרונות הפעולה ברמה 2 של מודל OSI נבין גם את הדרישות לרוחב פס. ונזכר באופן השפעת ציודי LAN על רשת. נראה את אופן פעולת ה- Switch כאשר נתמקד בלמידה וסינון כתובות, נבדיל בין Switch ל-,Bridge נסביר את שיטות המיתוג במתג ונחשב את רוחב הפס הכללי. השימוש ב- SWITCH בח"א הוא חסר תקדים, כמות הרשתות גדלות וכן כמות המתגים, אתם תתקלו במתגים רמה 2 בעלי תפקיד ברמת הקישור ומתגי רמה 3 בעלי יכולת לראות עד רמת הרשת, תצטרכו להגדיר אותם ולהפעיל אותם לכן חשוב מאוד להבין את עקרון הפעולה שלהם. 2.2.1 הדרישה לרוחב סרט גבוה עד כה הכרנו את רשת ה- Ethernet לעמקה. רשת Ethernet פועלות על תווך משותף אחד ) Shared ( ) ( Media, או במילים אחרות רוחב הסרט של הרשת הוא משותף לכל התחנות ברשת. רכזת האטרנט Hub) (, לדוגמה, ברגע שהיא מקבלת מסגרת מאחד המבואות היא משדרת אותה לכל יתר המבואות ובאותו זמן אף תחנה אינה יכולה לשדר. Collision domain להתנגשות. : לסיכום מגדיר ברשת אתרנט ) המושג תווך בו שתי תחנות יכולות לשדר באותו זמן במרחב ההתנגשויות) "מרחב ההתנגשויות" לרשת ולגרום קיימת תחרות על רוחב סרט בין התחנות. נניח שרשת מסוג אתרנט מורכבת מ- 100 תחנות וארבעה שרתים כל זמן שהתעבורה ברשת נמוכה, כל תחנה יכולה לקבל למשך זמן קצר את כל רוחב הסרט ) Mbps10 (. אולם כאשר התעבורה ברשת עולה כאשר הרשת תגיעה לנצילות של 40%-30% ), מתחילות התנגשויות, ותחנות " מפריעות " אחת לשניה לשדר. 3-4) Mbps זמני התגובה יהיו ארוכים והרשת תהיה חסומה. במצב כזה כל תחנה ברשת תקבל רוחב סרט ממוצע של כ- 40Kbps בלבד ) 4Mbps מחולק ל 100 תחנות ברשת (. למעשה רוחב סרט נטו שכל תחנה מקבלת יהיה נמוך יותר, מכיוון שכל מסגרת Ethernet מכילה 26 בתים שאינם כלל מידע של המשתמש, ובנוסף לכך חלק מרוחב הסרט ברשת אינו מנוצל בגלל זמני ההמתנה של כיום ישנה דרישה הולכת וגדלה לרוחב-פס. 9.6µSec בין מסגרת למסגרת. כוח המחשוב גדל, כל עובד מקבל מחשב, ארגונים נהיים רחבים יותר,פיתוח המון אפליקציות אשר מספקות לנו שירותים שלא חלמנו אליהם, וזה רק חלק קטן מה"צרכנים" לרוחב פס.
עד כה הבנו את הצורך הגובר לרוחב פס ברשתות. הסברנו את ריבוי התחנות על BUS אחד. הפתרון לביקוש הגדל הנו להשתמש בהתקן שידע לחלק את ה- Colision Domain ובכך לספק רוחב פס גבוהה יותר לתחנות. אותו התקן הוא המתג.Switch 2.2.2 אופן העבודה של ה- Switch לפני שנפרט את אופן פעולתו של ה- Switch רצוי להזכר במבנה מסגרת.Ethernet המתג משתמש בכותרת מסגרת ה- Ethernet על מנת לבצע את שתי תפקידיו העיקריים שהן: למידת כתובות Learning Address העברת המידע Decisions Forward/Filter ותפקיד נוסף שאותו מבצע המתג הנו: מניעת לולאות Avoidance Loops תפקיד זה יפורט בסעיף 2.3 2.2.2.1 למידת כתובות Address Learning כאשר ה- Switch עולה לראשונה, טבלת כתובות ה- MAC שלו ריקה, כפי שניתן לראות באיור.2.11 איור 2.10 מבנה מסגרת Ethernet איור 2.11 טבלת כאשר התקן משדר ואחד הפורטים מקבל את המסגרת, המתג ימקם את כתובת המקור (מהכותרת של המסגרת) בטבלת ה-,MAC Forward/filter Table בהתאם לפורט ממנו נכנס המידע. מכאן ניתן להבין שהמתג מבצע את תהליך הלמידה Learning באמצעות כתובת המקור Source MAC ריקה..Address כעת על המתג להעביר את המידע שאותה תחנה שידרה ליעד (באמצעות כתובת היעד,(Destination Address אך מכיוון שכרגע המתג לא מכיר אף תחנה, מלבד התחנה ששידרה את המידע הוא יבצע-,Flooding כלומר יפיץ את המידע לכל הפורטים, מלבד אל הפורט ממנו נכנס
המידע, וזאת מכיוון שאינו יודע על סמך המצב הנוכחי של הטבלה היכן תחנת היעד ממוקמת ועל מנת שכל התחנות יוכלו לבדוק האם המידע מיועד אליהם. איור 2.12 תחנה A משדרת מידע לתחנה C. באיור 2.12 אנו רואים מצב בו לאחר שהמתג עלה לראשונה, תחנה A שכתובתה 0260.8c01.1111 שולחת מידע לתחנה C שכתובתה 0260.8c01.2222. המתג מקבל את המסגרת שמפורטת באיור.2.13 איור 2.13 המסגרת שתחנה A שלחה ל- C. כפי שניתן לראות באיור 2.12, המתג למד את הכתובת SA שבמסגרת על פי הפורט E0 ממנו נכנסה המסגרת הנ"ל. בנוסף המתג בודק האם הוא מכיר את ה- DA על-פי הטבלה, וניתן לראות באיור 2.12 שהמתג לא מכיר מכיוון שהתחנה שהכתובת מייצגת לא שידרה מעולם. לכן המתג יבצע Flooding לכל הפורטים מלבד הפורט שממנו נכנסה המסגרת ניתן לראות זאת באמצעות החיצים שמופיעים באיור 2.12. במידה ותחנה C לא תגיב לתשדורת, המתג לא ילמד אותה! יש לזכור שהלמידה מתבצעת כאשר מסגרת נכנסת דרך פורט מסויים והדבר מתבצע על-ידי התבוננות בשדה ה-.SA איור 2.14 תחנה D משדרת מידע לתחנה C. על פי איור 2.14 אנו רואים שלאחר שתחנה A שדרה מידע לתחנה C תחנה D מעוניינת גם היא לפנות לתחנה C. המתג מביט במסגרת ה- Ethernet המפורטת באיור 2.15 ולומד באמצעות כתובת
ה- SA כי בפורט E3 ממנו נכנסה המסגרת, מחוברת התחנה שכתובתה, 0260.8c01.4444 וכמובן שיזין את הפרטים הנ"ל בטבלה. מכיוון שעדיין תחנה C לא שדרה המתג לא מכיר אותה, ולכן יבצע שוב Flooding ויפיץ את המסגרת לכל הפורטים מלבד הפורט ממנו נקלטה המסגרת. איור 2.15 המסגרת שתחנה D שלחה ל- C. במצב שמתואר באיור 2.16 עבר זמן מסויים וכל התחנות שידרו, לפיכך, המתג למד את כל התחנות ויש לו טבלת כתובות מלאה. במצב זה, כאשר המתג מקבל מסגרת מידע ואמור להעבירה ליעד הוא אינו יבצע Flooding אלא יבצע Forwarding כלומר מיתוג המידע לפורט היעד הספציפי. איור 2.16 תחנה A משדרת מידע לתחנה C, לאחר שנלמדו הכתובות בדוגמה באיור 2.16 אנו רואים שלאחר שהמתג כבר למד את כל הכתובות, נשלחה מסגרת מתחנה A ל- C. מכיוון שהמתג מכיר את תחנה C וכתובתה מצויינת בטבלת ה-,MAC המתג לא צריך לבצע Flooding והוא מבצע תהליך שנקרא Filter כלומר לא מעביר את המידע לכל הפורטים אלא רק אל פורט היעד, תהליך זה נקרא גם.Forwarding 2.2.2.2 העברת המידע Decisions Forward/Filter כאשר מגיע ל- Switch מסגרת, כתובת היעד במסגרת תושווה לכתובות שישנן בטבלת ה-.MAC במידה וכתובת היעד ידועה והמתג כבר למד אותה, המסגרת תשלח רק אל הפורט שאליו מחוברת תחנת היעד.המתג לא יעביר את המידע לאף אחד מהפורטים האחרים. הדבר בא כדי למנוע בזבוז רוחב פס. תהליך זה נקרא בשם Frame Filtering וגם.Forwarding אך במידה והמתג לא מכיר את כתובת היעד, כלומר הוא אינו מוצא אותה בטבלת המיתוג, בטבלת ה-,MAC אזי כמו שכבר הוסבר המתג יבצע.Flooding במידה ותחנה או שרת ברשת שולחת הודעה מסוג,Broadcast המתג ילמד באמצעות כתובת היעד את התחנה על-פי הפורט ויבצע Flooding מכיוון שיעודה של מסגרת Broadcast שתגיע לכל התחנות באותה הרשת הלוגית. בטבלה 2.1 אנו רואים את ההבדלים בין המתג- Switch לגשר.Bridge
מתג - Switch מיתוג מבוסס חומרה.ASIC כמות פורטים גדולה יחסית. השהיות של כ- 6msec בהעברת המידע עבודה ב- Full Duplex גשר - Bridge מיתוג מבוסס תוכנה. כמות פורטים קטנה יחסית. השהיות של כ- 100msec בהעברת המידע עבודה ב- Half Duplex טבלה 2.1 השוואה בין Bridge ל-.Switch 2.2.3 שיטות למיתוג מידע ברשת מקומית ישנם כמה דרכים בהם המתג יכול לטפל במסגרת עם קליטתה במתג מהפורט אליו נכנסה. בהתאם לדרך בה יטפל המתג במסגרות, זמן ההשהיה עד הוצאת המסגרת מהמתג יכול להתארך או להתקצר, בתלות בפעולות אותן נדרש המתג לבצע. Forward) Cut Through (Fast המתג מקבל את מסגרת המידע, ולאחר שקולט את כתובת היעד מחפש אותה בטבלת ה- MAC שלו ומעבירה בהתאם לפורט היציאה תשמר בזכרון). בשיטה זו לא מבוצעת בדיקת שגיאות. (המסגרת כולה לא Cut-through) Fregment Free (Modified בשיטה זו המתג בודק את 64 הבתים הראשונים של המסגרת. לאחר 64 בתים המתג יכול להחליט אם מדובר במסגרת שגויה שנגרמה בעקבות התנגשות, בהתאם למנגנון.CSMA/CD המתג מקבל את המסגרת כולה, מבצע בדיקת CRC בהתאם לשדה ה- Store-and-forward,FCS ורק לאחר מכן במידה והבדיקה תקינה יבדוק את כתובת היעד במסגרת אל מול טבלת ה-.MAC באיור 2.17 אנו רואים את המיקום על-פי המסגרת שבו עושות שימוש שיטות המיתוג השונות. כעת נרחיב על השיטות השונות. איור 2.17 שיטות מיתוג שונות של מסגרות Cut-Through (Real Time) 2.2.3.1 ב- Cisco מכנים את שיטה זו גם בשם Fast Forward או בשם.Real Time בשיטה זו, המתג קורא לתוך ה- Buffer (זכרון) רק את כתובת היעד (ששת הבתים הראשונים לאחר ה-.(Preamble לאחר מכן המתג יחפש את כתובת ה- MAC הזו בטבלת ה- MAC ויחליט לאיזה פורט עליו להעביר את המידע. לאחר מכן על המתג לבצע Forwarding של המסגרת אל היעד.
מכיוון שבשיטה זו המתג לא מבצע פעולות שונות על מסגרת המידע מלבד קריאת כתובת היעד והחלטה לאיזה פורט להעביר את המידע, שנשלחת ליעד מתקצר Latency).(Low זמן ההשהיה מהרגע שהמסגרת מגיעה למתג ועד מכיוון שהמתג מעביר את המידע ישירות לאחר בדיקת כתובת היעד, הוא אינו מבצע בדיקת שגיאות CRC וזאת מכיוון שהוא אינו קורא את שאר השדות במסגרת ולכן לא מגיע לשדה ה- לצורך בדיקתו. FCS
Fragment Free (Modified Cut-Through) 2.2.3.2 בשיטת Cut-Through המתג לא ביצע בדיקת שגיאות. כלומר יכול מאוד להיות שהמסגרת שהמתג יקבל היא מסגרת שגויה, או לחילופין מסגרת שנוצרה לאחר התנגשות של שתי מסגרות ברשת. על מנת למנוע מהמתג להעביר מידע שגוי, ובכך להעמיס על ביצועי הרשת יש צורך לבצע בקרה על השגיאות. בשיטה זו עדיין לא מבוצעת בדיקת שגיאות מלאה באמצעות שדה ה-,FCS מכיוון שבשיטה זו נבדקים 64 הבתים הראשונים (עדיין המתג לא מגיע לשדה ה-.(FCS על פי עקרון CSMA/CD "חלון" ההתנגשות הנו ב- 64 הבתים הראשונים של המסגרת, כלומר לאחר בדיקה של 64 הבתים הראשונים, ניתן לדעת בהכרח אם מדובר במסגרת רגילה, או שמא במסגרת שנוצרה לאחר התנגשות. מטרת שיטה זו היא לוודא שלא יועברו מסגרות התנגשות ברשת. מופעל באופן ברירת מחדל במתגי Cisco Catalyst 1900 Store-and-Forward 2.2.3.3 שיטה זו היא השיטה העיקרית בה עובדים המתגים של חברת.Cisco בשיטה זו המתג מעתיק את כל המסגרת אל ה-.Buffer לאחר מכן המתג מבצע בדיקת CRC על המסגרת תוך השוואה אל מול שדה ה-.FCS מכיוון שהמתג מבצע העתקה מלאה של המסגרת אל ה- Buffer זמן ההשהיה גדל. במידה ובדיקת השגיאות אינה תקינה המתג "יזרוק" את המסגרת ולא יעביר אותה, המשמעות היא שהמתג ימחוק את המסגרת מהזכרון. במידה ואין שגיאות במסגרת, המתג יבדוק את שדה כתובת היעד, ויחפש בטבלת ה- MAC את כתובת היעד ועל פי הטבלה יחליט לאיזה פורט להעביר את המסגרת. 2.2.4 חישובי רוחב פס Bandwidth לפני חישוב רוחב פס יש לציין שני סוגים של תקשורת : Half Duplex צורה זאת היא ברירת המחדל בתקשורת ברשת שיתוף. שיטה זאת תומכת בתקן,CSMA/CD היא זולה ואינה דורשת התקנים מיוחדים. בדרך כלל מגיעים לנצילות של- 50~60 אחוז מרוחב פס של 10Mbps כאשר עובדים בשיטה זאת. Full Duplex שיטה זאת מיושמת אך ורק בין שני משתמשים (P P) T ולכן אין שימוש בתקן CSMA/CD.אין בדיקת שגיאות, בדרך כלל מנצלים את כל רוחב הפס בצורת עבודה זאת כלומר לשליחה ולקבלה.10Mbps באופן עקרוני כל הפורטים במתג יכולים לעבוד בתצורת Full Duplex במידה ומחוברת אליהם תחנה, אך אם אל הפורט מחובר התקן שיתופי כגון רכזת Hub אזי יש צורך לעבוד בתצורת.Full Duplex על מנת לחשב את רוחב הפס הכללי במתג יש לבצע הכפלה של כמות הפורטים במתג בקצב העבודה של כל פורט במידה ופורט מוגדר FD נכפיל פי 2. התוצאה שתתקבל היא רוחב הפס הכללי במתג,
חשוב לציין שלא כל הפורטים ממתגים מידע בכל רגע נתון ולכן בדרך כלל התחנות ישתמשו רק בחלק מרוחב הפס שקיים במתג. נבצע חישוב לדוגמה: מה יהיה רוחב הפס במתג בו ישנם 6 פורטים 10MB F.D ו- 2 פורטים H.D?100mb תחילה נכפיל את מספר הפורטים בקצב 60=10X6 מכיוון שפורטים אלו עובדים ב- Full Duplex יש צורך לבצע הכפלה פי 2 Mbps 120=60X2. חישוב זה הנו בעבור 6 הפורטים העובדים ב- Full.Duplex כעת יש לבצע חישוב בעבור שני הפורטים הנוספים, ולאחר מכן את שתי התוצאות לחבר. 200=2X100. Mbps כעת נחבר את הקצבים של כל הפורטים יחד ששת הפורטים שעובדים ב- Half ושני הפורטים העובדים ב- 120 Mbps מתפקדים יחד בקצב מקסימלי של Full Duplex Duplex מתפקדים יחד בקצב מקסימלי של 200. Mbps כל שמונת הפורטים עובדים סך-הכל בקצב של: 320=120+200. Mbps לקצב זה נקרא הקצב האפקטיבי, או רוחב הפס האפקטיבי. לכל מתג מוגדר רוחב פס מקסימלי בו הוא יכול לעמוד, וזאת על-פי ה- BUS הפנימי שממומש בתוך המתג עצמו (פרמטר זה תלוי בחומרה). מכיוון שאנו יכולים להחליט בעבור כל פורט באיזה קצב יעבוד, עלינו להכיר שני מונחים: Blocking במידה ורוחב הפס המקסימלי של המתג (בהתאם ל- (BUS נמוך מהקצב האפקטיבי המתג לא יכול לעמוד בכל התעבורה שהוא מקבל, ולכן יכנס למצב של.Blocking כלומר יהיו נתונים שהמתג לא יעביר ישירות אלא יאגור ב- Buffer ורק לאחר מכן יעבירם, כמובן שברגע בו ה- Buffer מלא, המתג יתחיל "לזרוק" מסגרות. Non Blocking במידה והקצב המקסימלי בו המתג יכול לעבוד, קטן מהקצב האפקטיבי בו הגדרנו את המתג לעבוד (בהתאם לקצבי הפורטים) לא תווצר בעייה של עומד על המתג ולא יווצר מצב.Blocking 2.3 טכנולוגיות ברמה שניה VLAN STP, בסעיף הקודם, עסקנו באופן פעולה עקרוני של המתג. מלבד העברת מידע המתג יכול לספק לנו שרותים נוספים, העובדים בשכבה השנייה של מודל.OSI שני הטכנולוגיות העיקריות בהם אעסוק בסעיף זה הנן פרוטוקול,STP וטכנולוגית.VLAN כאשר דיברנו על תפקידיו של המתג ראינו שיש לו שלושה תפקידים. למידת הכתובות, העברת המידע, ומניעת לולאות. על תפקיד זה עדיין לא דנו בהרחבה. 2.3.1 מניעת לולאות Avoidance Loop כאשר נבוא לתכנן רשת נשתדל למנוע מצב בו יהיו לנו נקודות תורפה ברשת שבמידה ויתפקדו בצורה פגומה, או בלתי רצויה, הן יגרמו להשבתת הרשת. נקודות תורפה ברשת יכולות להיות נקודות שאינן מגובות. למשל במידה ויש לנו שתי סגמנטים המחוברים באמצעות,Switch ה- Switch מהווה נקודת תורפה, מכיוון שבמידה והוא יפול אזי תיפול התקשורת בין שתי הסגמנטים.
לנקודות תורפה אלו אנו קוראים Failure.Single Point of הפתרון לאותו מצב הוא לחבר בין שני הסגמנטים שני Switch -ים וזאת על מנת שבמידה שאחד מהם יפול, ה- Switch השני יוכל להמשיך לתפקד. באיור 2.18 אנו רואים דוגמה לרשת בתצורה מגובה: איור 2.18 רשת בתצורה מגובה לכאורה הפתרון שהוצע למצב של Single Point of Failure נראה אידיאלי, אך הוא גורם לכמה מהחולאים הרעים שרשת תקשורת לא יכולה לסבול. 2.3.1.1 לולאות - Storm Broadcast במידה ולא מריצים ברשת בתצורה מגובה מנגנון למניעת לולאות המתגים יבצעו Flooding בלתי פוסק להודעות.Broadcast תופעה זו נקראת.Broadcast Storm נדגים מצב בו השרת מעוניין לשלוח מסגרת לתחנה כלשהי ברשת. בהנחה שהשרת זה עתה עלה, הוא לא מכיר את כתובת ה- MAC של התחנה ולכן יבצע.ARP כמו שאנו כבר יודעים מסגרות ARP מקבל את מסגרת ה- A על-פי שרטוט 2.19 אנו רואים כי מתג.Broadcast נשלחות ב- ARP ששלח השרת (כמובן שהיא מתפשטת על כל הסגמנט ומגיעה גם למתג B ולנתב). המתג רואה שמדובר במסגרת Broadcast (על-פי רצף של סיביות 1 בשדה כתובת היעד) ולכן מבצע Flooding כלומר שליחת המידע לכל הפורטים מלבד הפורט ממנו המידע הגיע. המסגרת תשודר לפיכך לפורט המחובר לסגמנט 2. מסגרת ה- Broadcast תתפשט על הסגמנט ותגיע בסופו של דבר גם למתג B. איור 2.19 השרת שולח Broadcast משמתג B מקבל את המסגרת, הוא רואה שמדובר במסגרת Broadcast (על-פי רצף של סיביות 1 בשדה כתובת היעד) ולכן מבצע Flooding כלומר שליחת המידע לכל הפורטים מלבד הפורט ממנו
המידע הגיע. המסגרת תשודר לפיכך לפורט המחובר לסגמנט 1. מסגרת ה- Broadcast תתפשט על הסגמנט ותגיע בסופו של דבר גם למתג A בשנית. את זאת ניתן לראות באיור 2.20. איור 2.20 ה- Broadcast מופץ ממתג B חזרה ל- A מתג A רואה שמדובר במסגרת Broadcast (על-פי רצף של סיביות 1 בשדה כתובת היעד) ולכן מבצע Flooding כלומר שליחת המידע לכל הפורטים מלבד הפורט ממנו המידע הגיע. המסגרת תשודר לפיכך לפורט המחובר לסגמנט 2. מסגרת ה- Broadcast תתפשט על הסגמנט ותגיע בסופו של דבר גם למתג B. וכך חוזר חלילה, עד קץ הדורות או לחילופין עד אשר אחד המתגים ינותק מהרשת. איור Broadcast Storm 2.20 איור 2.21 ריבוי לולאות ברשת ככל שיווצרו יותר לולאות ברשת, כך זמינות הרשת תפגע, וכך המתגים יתעסקו יותר בהעברת מסגרות.Broadcast Storm באיור 2.21 אנו רואים כיצד יכולים להווצר לולאות ברשת.
את הפתרון לבעיה זו אציג בהמשך. 2.3.1.2 אי יציבות בטבלאות MAC מכיוון שהמתג יכול לקבל את אותה מסגרת מידע מכמה פורטים שונים, יכול להווצר מצב של בלבול בטבלת ה- MAC של המתג. בנוסף המתג כל הזמן יעסיק את עצמו בללמוד מחדש את המיקום של התחנה, ובכך הזמינות של המתג להעברת המידע תפחת. 2.3.2 פרוטוקול Spanning Tree Protocol STP פרוטוקול STP נכתב לראשונה על-ידי חברת DEC כיום חברת.Compaq לאחר מכן נכתב כתקן.IEEE 802.1D בסעיף הקודם הזכרנו את החולאים הרעים שיכולים להווצר כאשר עובדים ברשת בתצורה מגובה. מטרתו של פרוטוקול זה הינו למנוע את הלולאות שנוצרות ברשת, ובכך למנוע מצב של Broadcast.Storm באופן עקרוני, הפרוטוקול בודק את כל העורקים, ומכבה עורקים יתירים. פרוטוקול STP משתמש ב- (SPA) Spanning Tree Algorithem על מנת ליצור טבלת טופולוגיה של הרשת, לאחר מכן באמצעות טבלה זו הוא מחפש את העורקים היתירים לצורך סגירתם.