Download presentation
Presentation is loading. Please wait.
1
*מתוך מאמר מאת Lixing Gao בשם Stable Internet Routing Without Global Coordination 1 ניתוב יציב באינטרנט ללא תיאום גלובלי * מאת: אהרון יובל
2
2 מה לפנינו ? על מה מדובר ? תיאור הבעיה כיצד נתבים מחליטים ? מה הם היחסים בין AS ’ s ? מה משמעות יחסים אלו ? כללים לפתרון הבעיה יישום בשטח מסקנות
3
3 על מה מדובר ? BGP ה BGP מאפשר לנתבים לנקוט במדיניויות שונות בבחירת ויצוא מסלולים המדיניויות נובעות: שיקולים כלכליים – נתב יכול להעדיף מסלול מסוים בגלל עלות נמוכה יותר הסכמים בין AS ’ s – התחייבות למתן שירות מסוים רוחבי פס וכו'
4
4 הבעיות התכנסות – Convergence בעיות הנובעת מהתנגשויות במדיניות, יכולה לגרום לירידה משמעותית של הביצועים ברשת (בהמשך) הצורך במנגנון גלובלי שיבדוק התנגשויות במדיניות של נתביםInternet Routing Registry (IRR) גם אם יהיה מנגנון כזה הבעיה של התכנסות שייכת ל NP-Complete
5
5 אז מה הפתרון ? בהרצאה זו יוצג מודל שאינו מצריך מנגנון תיאום גלובלי המודל אינו מצריך ש AS ’ s יתאמו ביניהם את המדיניות מודל זה מסתמך על: האופן בו ה-BGP פועל המודל ההיררכי של האינטרנט היחסים בין AS ’ s ההנחה היא כי המודל צריך להיות מיושם ע"י כל ה-AS ’ s
6
6 תיאור הבעיה באופן תיאורטי, בעקבות מדיניות סותרת, לאחר שינוי מסלול נתב יכול לא להתכנס אף פעם דוגמא להלן מערכת BGP עם שלושה AS ’ s AS2 AS0 AS1 (2,0) (0) (1,0) (0)
7
7 AS1 מעדיף את המסלול הלא ישיר ל-0AS. 2AS מעדיף את המסלול הלא ישיר ל-0AS. AS2 AS0 AS1 (2,0) (0) (1,0) (0) (2,0) (1,0) (2,0) (1,0) (0) …
8
8 כיצד נתבים מחליטים ? נתבים (ROUTERS) מחזיקים את כל המסלולים שקיבלו מהחיבורים (HOP) הישירים אליהם טבלת הBGP הינה קבוצה חלקית של כל המסלולים האפשריים דרך החיבורים של אותו נתב Hop2 Hop1 Hop3 R1
9
9 הגדרות r – עדכון BGP r.prefix – היעד של המסלול r.as_path – המסלול r.local_pref – העדפה מקומית - ערך זה נקבע רק ע " י הנתב המקבל מסלול r.next_hop – היציאה ממנה יוצא המסלול r.med –Multiple exit discriminator r.c_set – community set first(r.as_path) – ה-AS הראשון במסלול - כאשר האחרון הוא היעד
10
10 כאשר יש צורך לעדכן מסלול – מסלול התבטל או התווסף – התהליך הבא יתבצע: יילקח המסלול ל-AS עם ה- r.local_pref הגבוה ביותר אם יש מספר מסלולים בעלי אותו ערך (הגבוה ביותר) ילקח המסלול הקצר ביותר אם עדיין יש שוויון בין כמה מסלולים ילקח המסלול בעל ה- r.med הנמוך ביותר יצוא מסלול יתבצע לפי מדיניות של כל AS
11
11 המודל ההיררכי של האינטרנט משמעות המשמעות היא שכל לקוח מחובר לספק, שמצדו מחובר גם כן לספק עד שמגיעים לספקים גדולים ול-Back Bone, ולא יווצר מצב שלקוח יחובר לספק, שבמסלול אחורה הוא גם לקוח קדמון שלו כלומר קיבלנו גרף מכוון חסר מעגלים (DAG)
12
12 דוגמא ההנחה היא שיחסי PEERING ו-UP BACK אינם פוגעים בהיררכיה של האינטרנט AS0 AS4 AS2 AS1 AS3 AS5 Provider to Customer
13
13 מה הם היחסים בין AS ’ s (Customer to Provider) לקוח ספק לקוח משלם לספק עבור השירות שהוא מקבל לקוח מפרסם לספק את כל המסלולים שלו, שנלמדו מלקוחות שלו אבל לא את המסלולים שנלמדו מספקים אחרים שלו
14
14 (Provider to Customer) ספק לקוח ספק מקבל תשלום מהלקוח עבור שירות החיבור שהוא נותן ספק מפרסם ללקוח את כל המסלולים שלו, כולל את כל המסלולים מספקים שלו ולקוחות שלו Peer to Peer בין AS אחד ל-AS שני יש הסכם הדדיות, בו הם אינם משלמים עבור החיבור שכל אחד מהם מעניק לשני היחס כאן הוא זהה לזה של לקוח ספק: רק המסלולים שנלמדו מלקוחות יפורסמו
15
*מתוך מאמר מאת Lixing Gao בשם On Inferring Autonomous System Relationships in the Internet 15 מה משמעות היחסים בין AS ’ s * מהיחסים בין AS ’ s ניתן לאפיין במדויק מסלולים נגדיר מאפיינים למסלול: Downhill - ירידה Uphill – עליה מסלול יכול להתאפיין באחד מהסוגים הבאים: 1. Uphill Path 2. Downhill Path 3. Uphill path -> Downhill path
16
16 4. Uphill Path -> peer to peer path 5. Uphill path -> peer to peer -> Downhill path AS2 AS4 AS1 AS6 AS3 AS5 Type 1 Type 2 Type 3 Type 4 Type 5 Invalid Provider to Customer Peer to Peer
17
17 כללים לפתרון הבעיה הגדרות (המשך) טופולוגיה – ניתן לייצג את המערכת ע"י גרף G G = (N,V,E) N – קבוצת כל ה-AS ’ s V – דוברי BGP (speakers) E – מסלולים בין AS ’ s a(i) – הפונקציה מייצגת את ה - AS אליו שייך נתב i eBGP – external BGP – חיבור בין AS ’ s iBGP – internal BGP – חיבור בין נתבים באותו AS
18
18 עבור a N : Customer(a) – לקוחות של a Provider(a) – ספקים של a Peer(a) – ה Peers של a
19
19 כלל ראשון - כלל A בלי הנחות לגבי יחסי Peer- to-Peer הכלל: העדפת מסלול לקוח על פני כל מסלול אחר
20
20 תזכורת – כל העדכונים נשמרים הכלל ממיין את כל המסלולים כלל זה מתאים לשאיפות הכלכליות של ספק משאיר גמישות ל-AS לקבוע מדיניות ניתן להוכיח כי ע"י יישום הכלל המערכת נשארת יציבה והיא מתכנסת, כלומר: הכלל בטוח
21
21 הוכחה: הנחת יסוד: כולם משתמשים בכלל הנ"ל צריך להוכיח שהמערכת מתכנסת אחרי זמן סופי ההוכחה מתבססת על כך שמבצעים שני שלבים 1.הפעל את הנתבים לפי סדר ה DAG של לקוח ספק 2.הפעל את הנתבים לפי סדר ה DAG של לספק לקוח נוכיח בצורה סכמתית
22
22 הוכחת שלב ראשון AS2 AS4 AS1 AS6 AS3 AS5 AS9AS8AS7 AS10 AS11 AS0 Update Initiator Pahse 1 As’s AS3 Accepted the update Stable state AS6 Accepted the updateDeclined the Update
23
23 שלב שני AS2 AS4 AS1 AS5 AS9AS8AS7 AS10 AS11 AS0 AS3 AS6 Update Initiator Pahse 1 As’s Stable state Pahse 2 As’s All Routs are downhill AS9 Declined the Update Accepted the updateDeclined the Update AS7 Accepted the update AS11 Accepted the update AS5 Declined the Update...
24
24 כפי שהראינו הכלל מכריח התכנסות המערכת ישנה הוכחה פורמלית במאמר (מתייחסת גם ל- AS ’ s בתוך BGP – eBGP) נסכם ישנם שני סוגי עדכונים למעלה (Uphill) למטה (Downhill) ההתכנסות סופית מכיוון שמספר ה-AS ’ s סופי
25
25 כלל שני – כלל B בכלל A הנחנו כי ספק ו- Peer הם באותה רמת העדפה נניח הנחה לגבי Peer ההנחה תאפשר יותר גמישות, ועדיין המערכת תהיה בטוחה ותתכנס הנחת עזר P: אי אפשר ליצור מעגל באמצעות חיבור Peer הנחה זו מצריחה איזה שהו מנגנון רגיסטרציה הנחה זו מתבססת על כלכליות דוגמא למצב סותרת:
26
26 כפי שנאמר, כלל זה מאפשר להגמיש את כלל A כלל B:
27
27 שומר על יציבות והתכנסות ההוכחה דומה מאוד להוכחת כלל A גם כאן יוצרים שני שלבים 1.הפעל את הנתבים לפי סדר ה DAG של לקוח ספק, כאשר כבר כאן ניתן במידה וכל הספקים סופקו להשתמש ב Peer 2.הפעל את הנתבים לפי סדר ה-DAG של ספק לקוח (זהה לכלל 2 של A) מוכיחים כל שלב ומראים שהמערכת מתכנסת
28
28 כלל שלישי – כלל C עד כה לא התייחסנו למסלולי Back-up מאפייני מסלולי Back-up המסלול משמש לשעת חירום AS ’ s מעדיפים להשתמש במסלול המכיל Back-up רק במקרה ואין ברירה לרוב אין דרך לזהות עם במסלול יש חיבור Back-up במידה ואין דרך לזהות מסלול Back-up אפשר להשתמש כרגיל במאפיינים של כללי A ו-B למסלול המכיל Back-up אנו נרצה לתת ערך נמוך ב- r.local_pref
29
29 נציג את כלל C העונה על הדרישות הנ"ל: בכדי לידע נתבים על העובדה שמשתמשים ב-Back-up ניתן לתת ערך מוסכם ל r.c_set, ערך זה יאותחל ע"י בעל חיבור ה- Back-up במסלול
30
30 שוב ההוכחה דומה ההבדל הוא שכאן משתמשים ב חמישה שלבים ולא ב 2 כמו ב בכלל A וכלל B 1. זהה לכלל 1 של A 2. זהה לכלל 2 של A,B 3. הפעל את כל ה-AS ’ s שיש להם מסלול Back- Up עם ה-AS שיזם את ההפעלה שלא קיבלו מסלול ב -1 ו-2 לפי סדר ה DAG ספק לקוח 4. הפעל את כל המסלולים שלא קיבלו מסלול ב 1,2,3 לפי סדר ה-DAG לקוח ספק 5. הפעל את כל מסלולי ה Back-Up שלא הופעלו עד כה ואין להם מסלול עדיין כאשר הסדר לא חשוב
31
31 יישום בשטח המודל שהוצג עמיד בפני שינויים דחופים נותן מרחב גדול באופן יחסי לקבוע בדיניויות יוצר סדר שעוזר ליציבות המודל מתאים למדיניויות של הנתבים ברשת המודל ברוב המיקרים אינו סוטר צרכים של AS
32
32 מסכנה מציג כללים קלים ליישום מציג מודל שימנע Convergence המודל מסתמך על יחסים כלכליים בין AS ’ s מוצע כאן להשתמש במנגנון רישום גלובלי שיבדוק consistency (HUMANS)
33
33 The End
34
34
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.