LDP - Label Distribution Protocol
2 נתבים להחלפת תוית ב- MPLS חייבים להסכים על משמעות התויות הניתנות לשימוש על מנת
לקדם תנועה ביניהם ובתוכם.
LDP הוא פרוטוקול חדש שמגדיר סט של פרוצדורות והודעות בהן כל נתב מיתוג תוית (LSR) מודיע לנתב מיתוג תוית אחר על כריכות התוית שהוא יצר.
ה- LSR משתמש בפרוטוקול זה על מנת ליצור מסלולי מיתוג תוית דרך הרשת בעזרת מיפוי מידע לניתוב בשכבת הרשת ישירות למסלולי המיתוג בשכבת קישור הנתונים.
ייתכן של- LSP’s האלה יש נקודת סיום אצל שכן המסופח ישירות (כמו קידום hop by hop) , או נקודת סיום בצומת יציאה ברשת, המאפשרת מיתוג דרך כל צמתי הביניים.
מחלקת הקידום השקולה (FEC) מקושרת לכל LSP שנוצר, והיא מתארת אילו מנות ימופו ל- LSP הזה.
שני LSR’s אשר משתמשים ב- LDP למתג מידע אודות מיפוי התוית ידועים כעמיתים (peers) ומתבצעת ביניהם שיחה.
בשיחה יחידה כל עמית יכול ללמוד על מיפויי התוית של האחרים, ובמילים אחרות הפרוטוקול הוא דו- כיווני.
יש 4 מיונים של הודעות LDP:
1. הודעות גילוי.
2. הודעות שיחה.
3. הודעות פרסום.
4. הודעות על מסירת הודעה.
באמצעות השימוש בהודעות גילוי ה- LSR’s מודיעים שהם נוכחים ברשת על ידי שליחת הודעות Hello תקופתיות.
הודעות Hello אלה משודרות כמנת UDP וכאשר צריכה להיווצר שיחה חדשה נשלת הודעת ה- Hello דרך TCP.
חוץ מהודעת הגילוי כל ההודעות האחרות נשלחות דרך TCP.
ההודעה על מסירת הודעה מאותת על שגיאות ועל שאר תחומי התעניינות.
יש 2 סוגים של הודעה על מסירת הודעה:
א) מסירת הודעות שגיאה – איתות על שגיאות קטלניות והשמדת השיחה.
ב) מסירת הודעות ייעוץ על מנת להעביר קדימה מידע LSR על שיחת ה- LDP או מצבם של כמה הודעות קודמות אשר התקבלנה מהעמית.
לכל הודעות ה- LDP יש מבנה נפוץ המשתמש בתבנית קידוד ערך-סוג-אורך (TLV).
משתמשים בקידוד TLV על מנת לקודד את רוב המידע הנישא בהודעות ה- LDP.
חלק הערך באובייקט המקודד יכול בעצמו להכיל אחד או יותר TLV’s.
ההודעות נשלחות כ- PDU’s LDP , כאשר כל PDU יכול להכיל יותר מהודעת LDP אחת.
כל PDU LDP הוא כותר LDP אשר אחריו יש הודעת LDP אחת או יותר.
מבנה כותרת ה- LDP היא כדלקמן:
בתים 2 |
בתים 2 |
PDU אורך ה- |
גרסה |
LDP מזהה ה- בתים 6 | |
מבנה כותרת ה- LDP |
גרסה
מספר גרסת הפרוטוקול, במספר הנוכחי הוא 1.
אורך ה- PDU
האורך הכולל של ה- PDU בשלילת הגרסה ושדה אורך ה- PDU.
מזהה ה- LDP
שדה זה מזהה באופן ייחודי את תוית הרווח של ה- LSR הנשלח אשר אליו מופנה ה- PDU הזה.
ארבעת האוקטטים הראשונים מקודדים את כתובת ה- IP המוקצת ל- LSR, כאשר השניים הראשונים מסמנים את תוית הרווח ב- LSR.
הודעות LDP
לכל הודעות ה-LDP יש את התבנית הבאה:
אורך ההודעה |
סוג ההודעה |
U |
מזהה ההודעה | ||
פרמטרים | ||
LDP תבנית הודעת |
U
ביט ה- U היא ביט הודעה לא ידועה.
סוג ההודעה
סוגי ההודעה הקיימים:
0x001 - מסירת הודעה.
0x100 - Hello.
0x200 - אתחול.
0x201 - שמירה בחיים.
0x300 - כתובת.
0x301 - כתובת נסיגה.
0x400 - מיפוי תוית.
0x401 - בקשת תוית.
0x404 - בקשת כשלון תוית.
0x402 - תוית נסיגה.
0x403 - שחרור תוית.
default - שם הודעה לא ידוע.
אורך ההודעה
אורך באוקטטים של מזהה ההודעה, פרמטרים הכרחיים ופרמטרים אפשריים:
* מזהה ההודעה – ערך בן 32 ביטים המשמש לזיהוי ההודעה.
* פרמטרים - הפרמטרים מכילים TLV’s . יש גם פרמטרים הכרחיים וגם אפשריים.
בכמה הודעות אין פרמטרים הכרחיים ובכמה אין פרמטרים אפשריים.
תבנית TLV
U F סוג אורך
ערך
TLV תבנית
U – ביט ה- U היא ביט TLV לא ידועה.
F – ביט TLV לא ידועה לקידום.
סוג - קידוד כיצד יש לפרש את שדה הערך.
ערך – מחרוזת של אורך אוקטטים אשר מקודד מידע שיכול להתפרש כמתואר בשדה הסוג.
פרמטרי TLV אפשריים:
100 – Fec.
101 – רשימת כתובת.
103 – סופר קפיצה.
104 – וקטור מסלול.
200 – תוית כללית.
201 – תוית ATM.
202 – תוית Frame Relay.
300 - מצב.
301 - מצב מורחב.
302 - PDU מוחזר.
303 - הודעה מוחזרת.
400 - פרמטרי Hello נפוצים.
401 - כתובת העברה.
402 - מספר תצורת רצף.
500 - פרמטרי שיחה נפוצים.
501 - פרמטרי שיחה של ATM.
502 - פרמטרי שיחה של Frame Relay.
600 - מזהה הודעת בקשת תוית.
LDP – Constraint-based LDP-CR
מכיל תוספות ל- LDP על מנת להרחיב את היכולות שלו, דבר המאפשר להרחיב את המידע המשמש לארגן מסלולים מעבר למה שפנוי עבור פרוטוקול הניתוב.
LDP-CR הוא כמו LDP אך יש בו פרמטרי TLV נוספים:
הערך הפרמטר
821 LSPID
822 ResCIs
503 פרמטרי שיחה אופטיים
800 נתב ברור
801-804 ER-Hop TLVS
810 פרמטרי תנועה
820 זכות קדימה ברכישה
823 נתב Pinning
910 סוג מנשק אופטי
920 נתיב יורד אופטי
930 תוית אופטית
940 סט למבדה