הטכניון -מכון טכנולוגי לישראל הפקולטה להנדסת חשמל המעבדה למערכות תוכנה מיתוג וניתוב ברשתות מחשבים חוברת הכנה קומה 3חדר 318 החדר נמצא במסדרון בין פישבך למאייר חשוב :יש למלא טופס משוב בתום הניסוי!!! המאחר ביותר מ – 51דקות לא יורשה לבצע את הניסוי! המעבדה למערכות תוכנה מרושתות רועי מטרני -טל 0223: .דוא"לroym@ee : יוסי ילוז – טל 0220 .דוא"לjose@tx : 1 תדריך כללי מסמך זה מכיל תדריך והכנה לניסוי מיתוג וניתוב ברשתות מחשבים .הניסוי כולל את הנושאים האלה :ניתוב סטאטי ,ניתוב דינאמי בעזרת פרוטוקול OSPFומיתוג בשכבה . 2אלו נושאים יחסית כבדים שראויים לקורס שלם ,ובניסוי זה אנחנו רק נטעם מכל נושא כדי להבין את החלקים הבסיסיים שלו בלבד .עיקר התדריך נותן רקע תיאורטי לנושאי הניסוי .יש לקרוא אותו על מנת להגיע לניסוי מוכנים. קורס קדם לניסוי :מבוא לרשתות מחשבים 300000 מסמכי הניסוי מסמך זה נותן רקע כללי לניסוי ורקע תיאורטי לנושאים המועברים בו .יש לקרוא את המסמך הזה לפני המפגש הראשון ולענות על שאלות ההכנה שבסופו. המסמך השני יסופק לכם בפורמט .Wordהוא כולל את מהלך הניסוי ,ואת התשובות לרוב השאלות תכתבו בגוף המסמך .אין צורך לקרוא אותו לפני הניסוי ,אלא אם אתם רוצים לראות ממה הניסוי מורכב. מבנה הניסוי הניסוי מורכב מ 2-מפגשים בני 0שעות. מפגש ראשון: - הכרת הציוד איתו משתמשים לאורך הניסוי ,וניתוב סטאטי (שעה וחצי) ניתוב בפרוטוקול ( OSPFשעתיים וחצי) מפגש שני - מיתוג ב 0-0( Layer 2-שעות) מבנה הציון - תשובות לשאלות ההכנה למפגש ראשון – 1% ניתוב סטאטי – 23% ניתוב דינאמי – 03% תשובות לשאלות ההכנה למפגש שני – 1% מיתוג – 03% 2 מבוא הניסוי מבוסס על קורס שפותח באוניברסיטת UCIבארצות הברית ,ושהתפרסם בספר Mastering Networks: An Internet .Lab Manualבמקור הקורס כלל הרצאה פרונטאלית ועבודה עצמית במעבדה של 0שעות כל שבוע .הניסוי שלנו עבר המרה לפורמט המקובל בטכניון של 2פגישות בנות 0שעות ,ובמקום ההרצאות החומר מוסבר בחוברת ההכנה ,וברובו המכריע נלמד בקורס מבוא לרשתות .עוד פרטים על המקור ניתן למצוא כאןhttp://www.tcpip-lab.net/ : מטרת הניסוי היא לאפשר לסטודנטים להתנסות בהקמת מגוון של רשתות בפרוטוקולים שונים .לצורך כך עומד לרשות הסטודנטים ארון ציוד תקשורת הכולל: - 0תחנות עבודה מבוססות לינוקס 0נתבים של ( Ciscoחברת ציוד התקשורת המובילה בעולם) 0מתגים פשוטים בכל חלק של הניסוי תתודרכו להקים רשת בטופולוגיה שונה המשתמשת בפרוטוקולים שונים .אתם תידרשו לגלות הבנה בסיסית בלבד בפרוטוקולים בהם אתם משתמשים (גם בתעשייה מעטים הם האנשים שיגלו הבנה בכל הפרוטוקולים האלה). 3 מפגש ראשון -ניתוב עקרונות הניתוב תזכורת קצרה לגבי מהות רשת . IP רשת IPהיא יחידה לוגית שמיוצגת באמצעות מספר של 02ביט .אנחנו רגילים להציג את המספר הזה בפורמט של ארבעה מספרים עם הערך , 3-211מופרדים בנקודה ביניהם .חבילות שמועברות בעזרת פרוטוקול IPאדישות לשכבה הפיזית שמתחת ל .IP-כתובת ה IP-היא היררכית ,ומורכבת מ 2-חלקים :חלק הרשת וחלק התחנה .חלק הרשת מגדיר לאיזו רשת הכתובת שייכת ,על מנת שנתבים יוכלו להעביר חבילות עבור התחנה לרשת המתאימה (קצת דומה לאיזור חיוג בטלפון). חלק התחנה מזהה את התחנה בתוך הרשת. כדי שאפשר יהיה להבחין בין חלק הרשת וחלק התחנה בכתובת ה IP-נהוג להצמיד לכל כתובת "מסכה" (,)Subnet Mask שמאפשרת ,באמצעות פעולה לוגית פשוטה ,למצוא את כתובת הרשת של כתובת IPמסוימת .המסכה ,כמו כתובת הIP- מורכבת מארבע קבוצות של שמונה סיביות .בייצוג בינארי ,עבור כל סיבית בכתובת ה IP-שמייצגת את הרשת יופיע ,5ועבור כל סיבית בכתובת ה IP-שמייצגת את המחשב המסוים יופיע .3 כתובת מיוחדת נוספת ברשת ה IP-היא כתובת ה .Broadcast-כאשר חבילה נשלחת לכתובת זו ,החבילה מיועדת להיקרא ע"י כל תחנות ה IP-הנמצאות באותה רשת .כתובת ה broadcast -עבור רשת מסויימת היא הכתובת הגבוהה ביותר עבור אותה רשת ,כלומר זו ש בייצוג בינארי ,חלק התחנה בכתובת הוא כולו .5 למשל -בכתובת 512.586.3.51החלק 512.586.3מייצג את הרשת והמספר 51מייצג את המחשב המסוים .מסכת הרשת של כתובת זו תהיה ,211.211.211.3או בייצוג בינארי – .11111111 11111111 1111111 00000000שימו לב שהמסכה תמיד מורכבת מסדרה של " "5שאחריה באה סדרה של " ."3לכן נהוג גם להגדיר רשת ע"י כתובת הרשת ומספר הביטים שהם .5במקרה הזה הייצוג הוא 512.586.3.3220 מבחינת הפרוטוקול ,אוסף תחנות שנמצאות באותה רשת IPהן סוג של "ענן רשת" ,וכך מתייחסים אל זה נתבים שתפקידם להעביר חבילות IPמרשת לרשת. כל מעבר כזה דרך "ענן" רשת IPנקרא .Hopבדוגמא למטה חבילת ה IP-עוברת hops 0מ H1-ל.H2- IP IP IP IP 4 כתובת IPמחולקת ל 2-חלקים :חלק הרשת (שהוא למעשה כתובת הרשת) ,וחלק המחשב .לדוגמא ,בכתובת ,53.3.3.552220כתובת הרשת היא ,53.3.3.3והמספר שמייצג את המחשב בתוך הרשת הוא .552 על מנת שחבילה תוכל להגיע מהמקור אל היעד ,צריכים להתקיים התנאים הבאים: .5חלק הרשת בכתובת היעד של החבילה צריך להיות מזוהה עם רשת LANקיימת בעלת תשתית פיזית (למשל .)Ethernet .2נתבים ותחנות קצה השייכים לאותה רשת IPיכולים להעביר בינהם חבילות בעזרת פרוטוקול בשכבה ,Ethernet( 2 PPPוכדומה) .0כל רשת בשכבה 2חייבת להיות מקושרת לפחות לרשת אחרת בשכבה 2בעזרת נתב. טבלאות ניתוב כל תחנת קצה ונתב מחזיקים טבלת ניתוב שמראה מה לעשות עם חבילת .IP העמודות העיקריות בטבלת הניתוב: .5כתובת יעד :לאיזו רשת או תחנת קצה מתייחסת הכניסה הזו בטבלה :Next hop .2מה הנתב הבא בדרך ליעד :interface .0דרך איזה יציאת רשת לשדר את החבילה יש חפיפה מסויימת בין Next hopל interface-ולמעשה ניתן לצמצם את המידע שהם מייצגים לעמודה אחת. הנה טבלת הניתוב עבור הנתב R3מתוך הרשת המצויירת בדוגמא למעלה .כפי שניתן לראות 0 ,רשתות מחוברות ישירות לנתב ,והניתוב ל 0-הרשתות האחרות עובר דרך .R4כאשר יש חיבור ישיר ,הנתב יודע לשדר את החבילה לכתובת שרשומה ככתובת היעד של החבילה .אם אין חיבור ישיר ,החבילה משודרת אל הנתב שרשום כ.next hop- 5 Interface eth0 eth0 serial0 eth1 eth0 eth0 Next Hop direct direct R4 direct R4 R4 Destination 10.1.0.0/24 10.1.2.0/24 10.2.1.0/24 10.3.0.0/16 20.1.0.0/16 20.2.1.0/28 והנה טבלאות הניתוב עבור 0הנתבים ו 2-המחשבים ברשת הזו: חיפוש בטבלת הניתוב החיפוש בטבלת הניתוב נעשה לפי כתובת היעד של החבילה .מטרת החיפוש הוא למצוא את הכתובת של הנתב הבא שאליו יש לשלוח את החבילה על מנת שתתקרב ליעדה .אם כתובת היעד נמצאת ברשת שמחוברת ישירות לנתב ,החבילה תישלח לכתובת היעד. 6 סוגים של כניסות בטבלת הניתוב - ניתוב רשת :כתובת היעד היא כתובת רשת (לדוגמא .)53.3.2.3220רוב הכניסות בטבלת ניתוב הן מהסוג הזה ניתוב לתחנת קצה :כתובת היעד היא כתובת של תחנה בודדת (לדוגמא .)53.3.5.2202בשימוש אם צריך ניתוב מיוחד עבור שרת ,וכן בדרך כלל בניתוב עצמי. : default routeהניתוב שיהיה בשימוש במידה וכתובת היעד של החבילה לא מתאימה לאף אחת מהכניסות האחרות בטבלה כתובת עצמית ( :)loopbackכניסה עבור הכתובת .127.0.0.1 חיפוש הכניסה המתאימה ביותר טבלת ניתוב יכול להכיל כמה כניסות עם חפיפה של כתובות ביניהם .למשל ,ניתן לנתב עבור רשת דרך יציאה אחת ,אבל עבור שרת מאותה רשת דרך יציאה אחרת .הנתב במקרה כזה צריך להתייחס לכניסה היותר ספציפית ,כלומר זו שכתובת המסכה היא גדולה יותר .שיטה זאת נקראת .Long Prefix Match לדוגמא ,נניח שחבילה עם כתוב היעד 526.500.15.25מגיעה לנתב עם טבלת הניתוב הבאה: Next Hop R1 R2 R3 R3 R4 R4 R5 Destination 10.0.0.0/8 128.143.0.0/16 128.143.64.0/20 128.143.192.0/20 128.143.71.0/24 128.143.71.55/32 default השורה השנייה ,השלישית והחמישית כולן מתאימות לכתובת היעד .מכיוון שהשורה החמישית היא זו שהמסכה שלה הכי ארוכה ,זו השורה שהנתב יבחר ,ולכן החבילה תנותב לכיוון .R4 שורת ה default-מקבלת תמיד את המסכה 3.3.3.3על מנת שתהיה התאמה לכל כתובת עד שהיא ,אולם השורה תיבחר כעדיפות אחרונה ,כלומר כאשר אין אף התאמה אחרת. עדכון טבלאות ניתוב בהמשך נסקור בהרחבה פרוטוקולי ניתוב ,אשר תפקידן לעדכן את טבלאות הניתוב באופן דינאמי ובהתאם למצב הרשת. אולם נוסף לפרוטוקולי הניתוב יש עוד אמצעים לעדכון טבלאות ניתוב: - הוספת כרטיס רשת .ברגע שמוסיפים כרטיס רשת ומשייכים לו כתובת ,IPנוספת כניסה לטבלת הניתוב הכוללת את הרשת אליה שייכת הכתובת החדשה הוספה ידנית של default gateway הוספה ידנית של ניתוב עבור רשת או מחשב תגובה להודעת ICMP redirect 7 - קבלה ועיבוד של חבילת IP עקרונית תהליך העיבוד של חבילת IPעבור נתב הוא די דומה לזה של תחנת עבודה רגילה .הציור הבא ממחיש את תהליך העיבוד: חבילה מגיעה משכבת ה data link-לשכבת ה( IP-האזור האפור) ,לתוך תור הכניסה .כאשר תורה להיות מעובדת ,התחנה מסתכלת קודם כל האם החבילה מיועדת אליה .אם כן ,מקלפים ממנה את שכבת ה IP-ומעבירים אותה לשכבות הגבוהות. אם לא ,החבילה מיועדת לניתוב .במידה והתחנה לא מאפשרת ניתוב ,החבילה נזרקת .אם התחנה מאפשרת ניתוב ,התחנה מסתכלת על טבלת הניתוב על מנת למצוא את ה .next hop-לפי הערך שנשלף ,החבילה משודרת לכיוון היעד הבא. 8 תהליך טיפול בחבילת IPבנתב הנתב מנתח את ה headerשל כל חבילה על פי הצעדים הבאים: .5 .2 .0 .0 .1 .8 .1 בדיקת נכונות של ה IP header -עפ"י header checksum קריאת כתובת היעד של החבילה חיפוש התאמה בטבלת הניתוב הורדת ה TTL-ב5- במידת הצורך ,ביצוע פרגמנטציה (שבירת החבילה לכמה מסגרות בהתאם למגבלות הפרוטוקול הפיזי) שידור החבילה לnext hop- במידת הצורך ,שליחת הודעת ICMP 9 נתבים ( ) ROUTERS תפקידו של הנתב הוא להעביר חבילות IPמרשת IPאחת לרשת אחרת .ישנם נתבים בגדלים שונים ובקצבים שונים ,בהתאם לתפקידם ומיקומם .נתבים ביתיים למשל ,הם זולים ופשוטים ,מכיוון שהם משרתים מספר קטן מאד של תחנות קצה .נתבים נפוצים מהסוג הזה הם של LinkSysושל .D-Linkבקצה השני של הסקאלה נמצא את הנתבים המשמשים את שדרת האינטרנט ,שהם עוצמתיים במיוחד ויקרים מאד .השולטים בשוק הזה הם חברות Ciscoו .Juniper-בין לבין ניתן למצוא נתבים המשרתים רשתות בינוניות וגדולות .חברת Ciscoהיא השליטה הכמעט בלעדית בשוק זה. מרכיבים פונקציונאלים מבחינה פונקציונאלית קיימים 2מרכיבים ראשיים: - - קביעת החלטות ניתוב ( :)Routing Functionsקבלת נתונים על מבנה הרשת וביצוע אלגוריתמים לפיהם נקבעים כללי ניתוב שונים .מרכיב זה נקרא גם .control plane הניתוב בפועל ( :)IP Forwardingקליטת חבילות ב interface-מסויים, ושידורן דרך interfaceאחר שמקרב אותן ליעד .מרכיב זה נקרא גם .data plane החוליה המקשרת בין 2החלקים היא טבלת הניתוב .החלק העליון מזין את טבלת הניתוב ,ואילו החלק התחתון משתמש בטבלה הזו. מרכיב ה ROUTING FUNCTIONS - כאמור תפקידו של חלק זה בנתב הוא להזין בסופו של דבר את טבלת הניתוב בנתונים .לשם כך הוא: - מפיץ נתונים ברשת על החיבורים שלו לרשתות סמוכות ולנתבים שכנים ,בהתאם לפרוטוקול הניתוב הממומש באותה רשת. קורא נתונים על מצב הרשת מנתבים אחרים. מעבד את הנתונים על מצב הרשת ,ומפעיל אלגוריתמים על מנת למצוא נתיבים לרשתות אחרות (לאו דווקא שכנות) מעדכן את טבלת הניתוב בהתאם לחישובים שלו כל התהליך החישובי הזה נעשה במעבד מרכזי מרכיב הניתוב חלק זה עוסק אך ורק בקליטת חבילות וניתובן לכיוון היעד .כאשר חבילה מגיעה ,היא מועברת ל interface-היציאה ,נעטפת ב header-של שכבה 2ומשודרת לכיוון היעד הבא .על מנת שהנתב יוכל לעבוד בקצבים גבוהים ,חלק זה יותר פשוט לוגית. כל חבילה שמתקבלת מועברת ליעד בהתאם לטבלה ,אחרי שה Header-של החבילה עובר התאמות. 10 מרכיבים פיזיים: נתב מורכב מ: - :Network Interfacesיציאות פיזיות או ממשק אלחוטי .בעזרתו מקושרים לתחנות אחרות :Interconnection Networkהמרכיב המקשר בין הinterfaces- השונים ומעביר את החבילות מהם ואליהם מעבד וזיכרון לביצוע פעולות חישוב שונות לשם ביצוע החלטות ניתוב ושמירה של טבלאות ניתוב. אם משתמשים למשל במחשב בתור נתב ,כרטיסי הרשת מספקים את ממשק הרשת ,ה PCI bus-משמש לקישוריות והמעבד משמש להחלטות על הניתוב. בנתבים מסחריים כמו של סיסקו למשל ,ממשקי הרשת והחומרה המקשרת ביניהם הרבה יותר מתוחכמים ,כך שלמעבד נשארת הרבה פחות עבודה. שיטות ניתוב מבוא אזורי ניתוב אוטונומיי ם ( ) AS אזורי ניתוב ( Autonomous Systemsאו בקיצור )ASהינם אזורים באינטרנט שמהווים יחידה שמנהלת את עצמה בכל הנוגע לניתוב .דוגמא טובה לכך היא למשל הרשת של קמפוס הטכניון .דוגמא אחרת היא רשת של ספק אינטרנט כמו נטוויז'ן (כולל תשתית פלוס כל המשתמשים המחוברים כרגע). בתוך ASהניתוב מתנהל בצורה שונה מאשר בין ASשונים ,וגם הפרוטוקולים שבהם משתמשים שונים בין 2המקרים. פרוטוקולים שעובדים בתוך ASנקראים )Interior Gateway Protocols ( IGPואילו הפרוטוקולים שעובדים בין ה AS-השונים נקראים .)Exterior Gareway Protocols( EGP הטבלה הבאה מציגה את ההבדלים בין שני המקרים. ניתוב פנימי ניתוב חיצוני היכן פועל בתוך AS מנתב בין , ASובכך למעשה מקשר את כל חלקי האינטרנט ממה מתעלם לא מתייחס כלל לשיקולי ניתוב מחוץ ל AS-בו הוא עובד לא מתייחס למה שקורה בתוך AS פרוטוקולים נפוצים OSPFהנפוץ ביותר RIP ,ישן ופשוט יותר IS-IS ,שדומה ל OSPF-אבל יותר פשוט BGPהוא הפרוטוקול הבלעדי 11 שיטות ניתוב קיימות 2שיטות ניתוב עיקריות Distance Vector :ו . Link State-כאן נרחיב את הדיבור רק על ,Link Stateעליו מתבסס פרוטוקול ,OSPFאבל בכל זאת נדגיש מה ההבדלים בין שתי השיטות. בשיטת ה ,Link State-כל נתב רואה את התמונה של הרשת ,כולל כל הנתבים ברשת והקשרים בין הנתבים השונים .כאשר הנתב צריך להחליט על הדרך הקצרה ביותר ליעד ,הוא מריץ אלגוריתם למציאת הנתיב הקצר ביותר אל היעד ,ובהתאם לתוצאות האלגוריתם מחליט מהי התחנה הבאה לכיוון היעד .כדי שהשיטה הזו תעבוד כהלכה ,לכל הנתבים ברשת צריכה להיות תמונה אחידה על מבנה הרשת ,ולשם כך מושקע מאמץ רב בסינכרון בין הנתבים. בשיטת ה , Distance Vector-אין לכל נתב תמונה של הרשת .במקום זאת כל נתב מספר לשכנים שלו לאילו יעדים הוא יכול להגיע ,ומה המרחק שלו לכל יעד .נתב המקבל הודעה בקשר ליעד מסויים ,מפיץ אותה הלאה ,כמובן עם תוספת המרחק בינו לבין הנתב דרכו הוא יגיע לאותו יעד .שיטה זו פשוטה יותר למימוש אך נחשבת פחות אמינה ופחות אפקטיבית ככל שהרשת גדלה. כאמור ,אנו נתמקד רק בשיטת ה Distance Vector-אשר בה נעסוק בניסוי. מטרתו של אלגוריתם ניתוב הוא למצוא את הדרך הזולה ביותר להעביר חבילה בין 2נקודות. המונח "זול" מתייחס למהירות וזמינות של הקו .קו מהיר יותר ובעל רוחב פס גדול ייחשב זול יותר מאשר קו איטי בעל פס יותר צר .לכן ,לכל יציאה בנתב מדביקים משקל ( )metricבהתאם לסוג הקו .מכאן מתבצע התהליך הבא: - נתבים מעבירים ביניהם מידע על קשרים בין נתבים והמשקלים של כל קשר כל נתב בונה גרף עם משקלים בהתאם למידע ,שמשקף את מבנה הרשת כל נתב ,בהתאם לתמונת הגרף שהוא יצר ,מריץ אלגוריתם למציאת הנתיב הקצר ביותר לכל תת-רשת. הנתב מעדכן את טבלת הניתוב בהתאם לתוצאות הריצה של האלגוריתם. לדוגמא ,הרשת הזו: מתורגמת לגרף כזה: )Net (E,F F 1 )Net (C,E 1 E 2 C 2 5 1 )Net (B,C )Net (D,E 5 D 1 )Net (B,D 1 12 1 B )Net (A,B 2 2 A יש לזכור שקשר בין 2נתבים יכול להיות קו serialאו רשת מקומית שבו 2הנתבים מחוברים ביניהם דרך מתג אחד או יותר. כאשר נעשית ההמרה לגרף אין הבחנה בין שני המקרים האלה. )OPEN SHOTEST PATH FISRT (OSPF פרוטוקול ניתוב זה הוא הנפוץ ביותר במשפחת ה ,Link State-וקרוב לודאי הפרוטוקול הנפוץ ביותר בקבוצת הOSPF .IGP- עבר כמה גרסאות עד שהגיע לגרסא הנוכחית שנקראת ( OSPFv2למרות שהיו לפחות 1גרסאות שונות). כיצד עובד הפרוטוקול בשיטת Link Stateלכל נתב יש תמונה מלאה של הרשת .מצד אחד שיטה זו מאפשרת להגיב מהר על שינויים ברשת ,אבל מצד שני זה מציב אתגר מסוג שונה ,מפני שעל מנת שהרשת תתפקד לכל הנתבים צריכה להיות תמונה עקבית ,כלומר שתמונת הרשת של נתב א' לא תסתור את זו של נתב ב'. - - כל נתב יוצר קשר עם השכנים שלו (נתבים אחרים שנמצאים עם אותו LANכמוהו) כל נתב מייצר הודעת ) Link State Advertisement (LSAשמופצת לכל הנתבים האחרים ברשת .ה LSA-כולל: Link ID o State of Link o Cost o neighbors of link o כל נתב מחזיק מאגר נתונים שנבנה מתוך ה .LSA-מאגר זה נקרא Link State Databaseוהוא מתאר את הרשת בצורה של גרף עם משקלים כל נתב משתמש במאגר הנתונים של ה LSA-ומריץ אלגוריתם דיאקסטרה למציאת הנתיב הקצר ביותר לכל תת רשת .תוצאות ההרצה מוזנות לתוך טבלת הניתוב. חלוקה לאזורים על מנת להיות מסוגלים לתמוך ברשתות גדולות OSPF ,מאפשר חלוקה לאזורים ( .)Areaבכל אזור יש לפחות נתב אחד שמתקשר אל מחוץ לאזור ונקרא .ABRכל שאר הנתבים הם נתבים פנימים לאזור ,ונקראים .Internal Routersנתבים אלה מכירים רק את האזור עצמו ,כלומר גרף הרשת שהם מחזיקים מכיל רק נתבים מהאזור שלהם .לשאר אזורי הרשת הם מגיעים דרך ה ABR-שמהווה ה default gateway-שלהם .בצורה כזו ,ה Link State Database-קטן באופן משמעותי. Area 0נקרא גם . Backbone Areaכל האזורים האחרים מחוברים אליו ,וכל התקשורת שנעשית בין האזורים עוברת דרכו. לכל רשת OSPFחייב להיות .area 0נתב ששייך ל Area 0-נקרא .backbone router סוג נוסף של נתב הוא .ASBRנתב כזה מתקשר לא רק ב OSPF-אלא גם בפרוטוקולים אחרים עם רשתות שכנות. 13 הציור הבא מסכם את כל סוגי האזורים והרשתות: סוגי הודעות OSPF הודעה יכולה להיות אחד מהסוגים הבאים: .5 .2 .0 .0 .1 – Helloהנתב מודיע שהוא קיים ומתפקד .ע"י שליחה וקבלה של הודעות אלה נוצרים יחסי שכנות בין נתבים באותו איזור .זו הודעה עם מעט אינפורמציה שנשלחת לעיתים תכופות (כל 53שניות) ואם עבור נתב מסויים לא מקבלים Helloתוך 03שניות הוא נחשב מנותק – Database Descriptionבעיקר משמש להחלפה של LSA headersבין 2מחשבים. – Link State Requestכאשר לנתב חסר LSAמסויים או שעומד לפוג תוקפו ,הוא מבקש אותו מהנתב שסיפק לו את ה LSA-מלכתחילה :Link State Updateעדכון של LSAאחד או יותר .יכול גם להישלח כתשובה ל.Link State Request :Link State Acknowledgementסוג 1ואחרון נשלח כחיווי ל.Link State Update- )DESIGNATED ROUTER (DR בכל איזור יש נתב אחד שנקרא DRואחד אחר לגיבוי שנקרא .BDRהנתב הזה נבחר ע"י הנתבים באופן מבוזר .כאשר נתב מזהה שינוי ברשת ושולח עדכון ,העדכון נשלח רק ל DR-ו .BDR-ה DR-דואג לשלוח את העדכון הזה לנתבים האחרים. סוגי LSA ROUTER LSA כל נתב מייצר LSAכזה ,בו הוא מספק רשימה של כל ה Links-שנמצאים באזור שלו ,כולל המשקלים שלהם והסוג שלהם. נתב המקבל LSAמסוג כזה יעביר אותו הלאה ,אבל רק בתוך האזור בו נמצא הנתב .לכן ABRלא יעביר מידע מסוג כזה מאזור אחד לאזור אחר. 14 NETWORK LSA ה DR-מייצר LSAמסוג זה .הוא מכיל רשימה של הרשתות באזור של הנתב ,ואילו נתבים מחוברים לכל רשת .גם LSAזה לא יוצא מתחומי האזור בו הוא מתפרסם. SUMMARY LSA נתבי ABRמפיצים הודעות מסוג Summary LSAעל מנת לפרסם את כל הרשתות אשר נמצאות מחוץ לאזור ,שהם עדיין חלק מה .AS-סוג זה יהיה קיים רק ברשת בו מוגדרים כמה אזורים ,כאשר Area 0מקשר ביניהם .אין כאן מידע על לינקים ,אלא במקום זה רשימה של רשתות ועבור כל רשת הנתב שמקשר אליו. דוגמא : Area 1 10.0.103.1 10.0.102.1 10.0.103.0 10.0.100.2/24 10.0.100.3/24 10.0.102.0 10.0.101.1/24 10.0.100.1/24 10.0.10.2/24 ABR Area 0 10.0.10.1/24 10.0.11.1/24 10.0.12.1/24 10.0.12.2/24 10.0.122.0 10.0.11.2/24 נתב ה( ABR-מסומן בחץ) ישלח עדכוני Link Stateאל הנתבים ב Area 0-ואל הנתבים ב .Area 1-המידע שמפורסם לאזור הראשון שונה מזה שמפורסם באזור השני ,מכיוון שלכל אזור הנתב מעדכן רק מה שרלוונטי אליו. הנה ה Link States-עבור :Area 1 :Router Link State 15 יש רק אחד ,זה המחובר ליציאה עם הכתובת 53.3.533.5 :Network Link State גם כאן הנתב יפרסם רק אחד .זוהי הרשת 53.3.533.3אליה מחוברים 0הנתבים ב.area 1- :Summary Link State הנתב יפרסם שאל הרשתות 53.3.52.3 ,53.3.55.3 ,53.3.53.3 :ו 53.3.522.3-ניתן להגיע דרכו בכתובת .53.3.533.5 הנה ה Link States-עבור :Area 0 :Route Link State הנתב יפרסם רק אחד ,זה המחובר ליציאה עם הכתובת 53.3.53.2 :Network Link State גם כאן הנתב יפרסם רק אחד .זוהי הרשת 53.3.53.3אליה מחוברים נתב ה ABR-והנתב המרכזי. :Summary Link State הנתב יפרסם שאל הרשתות 53.3.532.3 ,53.3.533.3 :ו 53.3.530.3-ניתן להגיע דרכו בכתובת .53.3.53.2 LINK STATE DATABASE - לכל ה Internal Routers-של אותו איזור יש LSDBזהה. כאשר 2נתבים מזהים זה את זה לראשונה ,הם מחליפים ביניהם את כל ה LSDB-שלהם עדכון Link Stateנעשה דרך כתובות .multicast מבנה הודעת OSPF OSPFמורכב מ header-וגוף ההודעה .הפורמט של גוף ההודעה משתנה בהתאם לסוג ההודעה ,אולם מבנה ה header -זהה בכולם. מבנה ה HEADER - OSPF Message Header Body of OSPF Message type message length version source router IP address Area ID authentication type checksum authentication 16 authentication 32 bits - :Typeמהו סוג ההודעה. :message lengthאורך הודעת ה OSPF-כולל הheader- : IP Addressמכיוון שלנתב יש יותר מכתובת אחת ,בדרך כלל תילקח הכתובת הגבוהה ביותר :Area IDמספר ה area-כפי שהוסבר למעלה :Checksumשל כל החבילה כולל .headers :Au Typeיכול לקבל 3,5או 2בהתאם לרמת האוטנטיקציה - מי שרוצה להתעמק יותר בפורמט של כל הודעה יכול להסתכל כאןhttp://cisco.iphelp.ru/faq/5/ch08lev1sec1.html : שאלות הכנה לחלק א' .5מה ההבדל בין מתג לנתב? מתי משתמשים בכל אחד מהם? .2מה התפקיד של ?default gateway .0אילו מבין כניסות הניתוב הבאות משמשת בפועל כ( default gateway-יכולה להיות יותר מתשובה אחת נכונה)? network mask 0.0.0.0 10.0.0.0 255.0.0.0 0.0.0.0 0.0.0.0 0.0.0.0 1 2 3 נמקו את תשובתכם .0נתונה טבלת הניתוב הבאה .העמודה השמאלית מייצגת את הרשת המנותבת ,והעמודה הימנית את הנתב המתאים לכל רשת. Next Hop R1 R2 R3 R4 R5 R6 R7 Destination 10.0.0.0/8 512.168.0.0/16 512.168.1.0/24 512.168.2.0/23 512.168.4.0/22 512.168.4.64/26 512.168.5.0/32 17 512.168.10.0/24 default R8 R9 לאיזה נתב ינותבו הכתובות הבאות? נמקו בקצרה את תשובתכם. .a .b .c .d .e .f .g 192.168.1.34 192.168.3.34 192.168.4.102 192.168. 5.102 192.168.7.102 192.168.9.102 192.168.11.102 18 OSPF נתונה הרשת הבאה: Area 1 10.0.103.1 10.0.102.1 10.0.103.0 10.0.100.3/24 10.0.100.2/24 10.0.102.0 10.0.101.1/24 10.0.100.1/24 10.0.10.2/24 Area 3 Area 0 10.0.11.2/24 10.0.112.0 10.0.10.1/24 10.0.11.1/24 10.0.12.1/24 10.0.12.2/24 Area 2 10.0.122.0 .5כמה ABRיש ברשת הזו? .2אילו רשתות יפרסם הנתב בגבול Area 3ב Summary LSA-לכיוון ?Area 3 .0כמה לינקים יפרסם הנתב שכתובתו ?53.3.532.5כמה נתבים יקבלו את המידע הזה? 19 מפגש שני – מיתוג הערה :מבוא זה הוא אמנם קצר ,אבל חשוב להשקיע בו זמן ולהבין אותו כהלכה ,על מנת לבצע את הניסוי כראוי. מתגים ( ) SWITCHES תפקידו של המתג הינו לקשר בין מחשבים ברשת המקומית .המונח באנגלית הוא .Network Switchבעבר נהוג היה להשתמש במונח bridgeאו transparent bridgeומונחים זהים לחלוטין .מתגים פועלים בשכבה .2ברוב הרשתות המקומיות הפרוטוקול הינו .Ethernetמהירות הקו הנפוצה ביותר היא ,100Mbpsאולם מהירות 1Gbpsחודרת במהירות ותוך שנים ספורות רוב הרשתות יעבדו במהירות זו. ברשתות ביתיות וקטנות יותקנו בדרך כלל מתגים מאד פשו טים וזולים .במתגים אלו אין כלל צורך בהגדרות .כל שצריך לעשות הוא לחבר כבלים בין המתג למחשבים או לנתב ,והמתג יקשר בין כולם. מתג פשוט ברשתות גדולות יותר יש צורך במתגים יותר מתוחכמים שניתן לקנפג ולנהל .מתגים אלו כוללים יישומים מורחבים של פרוטוקולים לשכבה ( 2כמו למשל STPו ) VLAN-וכן יישומים נוספים ולעיתים גם מימוש פרוטוקולים בשכבות היותר גבוהות עד רמת האפליקציה .במסגרת הניסוי אנו נתמקד בתפקידו הבסיסי בלבד של מתג ,ולא נגלוש לפונקציונאליות הנוספת. מתג מתוחכם טופולוגיות בראשית ה Ethernet-הגיע בטופולוגיה של .busהרבה מחשבים היו מחוברים לאותו סגמנט ,וכאשר אחד היה משדר כל המחשבים האחרים היו שומעים ולא היו מסוגלים לשדר גם הם באותו הזמן .לכן הטכנולוגיה של CSMA/CDהייתה משמעותית. זה נראה בערך כך: 20 היום ,ולמעשה כבר די הרבה שנים ,אין טופולוגיות כאלו .הרשת היא רשת ממותגת ,כלומר כל המחשבים מחוברים למתג. בטופולוגיה כזו ,כל חיבור בין מחשב למתג מהווה מעין Busמשלו .משמעות הדבר היא ש: .5כמה נקודות יכולות לשדר בו זמנית .2כאשר נקודה אחד משדרת ,לא בהכרח כל הנקודות האחרות יקבלו את התשדורת הזו .0נקודות שונות על אותו LANיכולות להשתמש בקצבים שונים של הפרוטוקול (.)Mbps 5333 ,533 ,53 הטופולוגיה נראית בערך כך: D H C G B F A E LEARNING SWITCH הזכרנו כבר בסעיף הקודם ,שבטופולוגיה של היום כאשר מחשב אחד משדר למחשב שני ,לא בהכרח כל המחשבים האחרים שומעים את התעבורה הזו .כיצד זה נעשה? הנה ההסבר. נניח שבציור למעלה ,מחשב Aמחובר לפורט 5במתג ,מחשב Bלפורט 2וכך הלאה .המתג מחזיק טבלה שממפה בין כתובות MACלבין הפורט שמאחוריו הם נמצאים (טבלת .)forwardingאם מגיעה למתג חבילה שמיועדת לכתובת מסוימת שמופיעה בטבלה ,המתג ישדר את החבילה רק לאותו פורט שמאחוריו נמצא המחשב .אם החבילה מיועדת לכתובת שלא מופיעה בטבלה ,או שזו חבילת ,multicastהמתג מבצע פעולה שנקראת floodingשבה החבילה משודרת דרך כל הפורטים. נניח לדוגמא שעשינו RESETלמתג ,וטבלת המיפוי ריקה. כאשר מחשב Aמשדר חבילה למחשב ,Eמכיוון שמחשב Eאינו ממופה בטבלה ,מתבצע floodingוכל המחשבים האחרים מקבלים גם הם את החבילה (הם יזרקו אותה מהר מאד כי יגלו שה Destination MAC address-אינו מתאים לכתובת שלהם). בנוסף ,כתובת של מחשב Aממופת בטבלה על פי הפורט שממנו הגיעה החבילה. 21 כאשר Eעונה ל A ,A-כבר נמצא בטבלה כי הוא שידר חבילה מקודם .לכן החבילה מועברת רק לפורט .5שאר המחשבים לא יראו את החבילה הזו. טבלת ה Forwarding-אינה חד-חד ערכית .ברוב הרשתות מתגים משורשרים אחד לשני .במצב כזה ,פורט שמשמש לחיבור עם מתג אחר יהיה ממופה למספר גדול של כתובות. הציור למטה הוא דוגמא לכך .נניח שהמתגים מחוברים ביניהם בפורט 20בשני המתגים .טבלת ה forwarding-במתג הימני תמפה את המחשבים B ,Aו C-עם פורט .20 G F E C D 22 B A לולאות ברשת ממותגת נניח שקיימת הרשת הבאה ,וכל טבלאות ה forward -במתגים ריקות. S2 S4 S1 B A S3 נניח שמחשב Aמשדר חבילה אחת ל .B-החבילה מגיעה למתג .S1המתג מבצע Floodingושולח את החבילה ל S2-ול.S3- הם שולחים את החבילה ל S4-וגם אחד לשני .בשלב הזה כבר 0חבילות משוכפלות .השכפול ממשיך ומתעצם ואותה חבילה עוברת אינספור פעמים ממתג למתג עד שהרשת קורסת. הפיתרון לבעיה כזו – מניעת לולאות ברשת .לצורך כך קיים פרוטוקול ,Spanning Treeאו בקיצור .STPבמסגרת פרוטוקול זה מתגים מחליפים ביניהם מידע בעזרת ).Bridge Protocol Data Units (BPDU הנה עיקרי הפרוטוקול: - המתגים מסכימים על מתג שיהווה שורש העץ .Root Bridge - כל מתג מחשב את ה ,Designated Cost-שהוא המרחק ממנו ל.Root Bridge- 1 כל מקטע בוחר את ה ,Designated Bridge-שהוא המתג דרכו ניתן להגיע ל .Root Bridge-יציאת הרשת של שמחברת את ה Designated Bridge-למקטע נקראת .Designated port כל מתג בוחר את ה Root Port-שלו ,דרכו ניתן להגיע ל root bridgeבדרך הקצרה ביותר. כל יציאת רשת שהיא לא Designated Portאו Root Portתהפוך ל Blocked Port-ולא תעבור דרכה תעבורת רשת. בחירת ה ROOT BRIDGE - לכל מתג מוגדר .Bridge IDה Bridge ID-מורכב מ 2-בתים של Priorityועוד 8בתים של MAC Addressשל יציאת הרשת עם הכתובת הנמוכה ביותר .המתג עם ה Bridge ID-הנמוך ביותר יבחר כ .root-בהרבה מקרים מנהל הרשת לא נוגע בערך של ה ,priority-ומכיוון שערך ברירת המחדל הוא שווה בכל המתגים ,התוצאה היא שהמכשיר בעל כתובת ה MAC-הנמוכה ביותר הוא זה שנבחר כ.Root Bridge- 1 מקטע הוא אוסף נקודות רשת שאין bridgeשמפריד ביניהן .הפרוטוקול מאפשר לנקודות רשת אלה להחליף ביניהן מידע, עד שיוחלט דרך איזה bridgeמגיעים ל .root-בדוגמא שלנו כל לינק בין 2מתגים מהווה מקטע ,אולם במציאות אין זה כך, ונראה את זה בניסוי עצמו. 23 אם נחזור לדוגמא שלנו ,נניח שנתב S1נבחר כ ,root-וה cost-של כל לינק הוא ,53תיווצר התמונה הבאה: BP DP RP RP DP BP DP BP B RP BP A ואם נוציא מהציור את 2הלינקים החסומים נקבל את הרשת הזו שהיא נטולת מעגלים: 24 שאלות הכנה לחלק ב' פרוטוקול עץ פורס נתונה הרשת הבאה: B C 3 A 3 2 2 4 4 1 4 1 F 3 1 E 2 3 2 4 4 4 1 1 I 3 D 1 H 3 2 G 2 .5מה יקרה אם על המתגים לא ירוץ פרוטוקול ?Spanning Tree על הרשת הזו רץ פרוטוקול .Spanning Treeנניח שמתג Dזכה להיות ה.Root- .2הציעו עץ פורס (יש הרבה אפשרויות) .העתיקו את הציור וסמנו את הלינקים בהם לא תהיה תעבורת רשת. .0מלאו את הטבלא הבאה .עבור כל portאם הוא Blocking Portציינו ,BPאם הוא Root Portציינו RPואם הוא Designated Portציינו .DPזיכרו שכל פורט יכול להיות בדיוק אחד מהאפשרויות האלה. Switch I Switch H Switch G Switch F Switch E Switch D Switch C Switch B Switch A Port 1 Port 2 Port 3 Port 4 25 .5לפי מה שציירתם מהו ה Designated Bridge-של: Port E1 .a Port I3 .b Port G1 .c .2אם כל מתג מקפיץ את ה cost-ב ,0-מהו ה cost-של כל פורט במתג ?C 26
© Copyright 2024