You are on page 1of 8

‫تقنية الــــ ‪ " MPLS‬الجزء الثانى "‬

‫فى الجزء األول لما كنا اتكلمنا على الــ ‪MPLS Forwarding structure‬‬
‫ووضعنا الصورة دى‬
‫‪Ma‬‬
‫‪d‬‬‫‪eBY‬‬
‫‪Moh‬‬‫‪a‬‬
‫‪me‬‬‫‪dAb‬‬
‫‪d‬‬‫‪e‬‬‫‪l‬‬
‫‪n‬‬‫‪a‬‬‫‪s‬‬
‫‪s‬‬‫‪e‬‬‫‪r‬‬

‫قلنا وقتها إن راوتر ‪ A‬لما هيستلم الــ ‪ packet‬من غير ‪ label‬هيبدأ يبص على‬
‫الــ ‪ FIB‬ويضع ليها ‪ label‬وبعدين الـــ ‪ packet‬تروح لراوتر ‪ B‬وهنا هيبدأ يبص‬
‫على الــ ‪ LFIB‬وبعدين يعملها ‪ swap‬ويغير قيمة الـ ‪ label‬لغاية أما توصل لراوتر‬
‫‪ C‬واللى هيعملها ‪ pop‬ويزيل الــ ‪label‬‬

‫طيب يعنى إيه ‪ FIB‬ويعنى ‪ LFIB‬وبناء على إيه الــ ‪ label‬بيتم وضعها وتغييرها ؟‬
‫علشان أفهم الموضوع ده عندى حاجتين الزم أفهمهم‬
‫حاجة إسمها الـــ ‪ Data plane‬وحاجة إسمها الـــ ‪control plane‬‬

‫طيب يعنى إيه الـــ ‪ Data plane‬؟‬


‫تقدر تقول إن إزاى الــ ‪ MPLS Traffic‬هيتعمله ‪ forwarded‬من خالل شبكة‬
‫الـــ ‪MPLS‬‬
‫طيب والــ ‪ control plane‬؟‬
‫ودى بتعنى إزاى الــ ‪ label‬بيتعملها أصال ‪ assign‬و ‪ exchange‬داخل شبكة‬
‫‪Ma‬‬
‫‪d‬‬‫‪eBY‬‬
‫‪Moh‬‬‫‪a‬‬
‫‪me‬‬‫‪dAb‬‬
‫‪d‬‬‫‪e‬‬‫‪l‬‬
‫‪n‬‬‫‪a‬‬‫‪s‬‬
‫‪s‬‬‫‪e‬‬‫‪r‬‬ ‫الــ ‪MPLS‬‬

‫حاول تشوف الصورة دى بحيث الدنيا تبدأ توضح أكتر معاك‬

‫فى الـــ ‪: control plane‬‬


‫عندى مصطلح إسمه الـــ ‪ RIB‬وده اختصار لـــ ‪Routing Information Base‬‬
‫لو محتاج أعمل ‪ lookup‬ليه بستخدم ‪show ip route = command‬‬
‫عندى مصطلح إسمه الــ ‪ LIB‬وده اختصار لـــ ‪Label Information Base‬‬
‫لو محتاج أعمل ‪ lookup‬ليه بستخدم ‪show mpls ldp = command‬‬
‫‪bindings‬‬
‫فى الـــ ‪: Data plane‬‬
‫عندى مصطلح إسمه الـــ ‪ FIB‬وده اختصار ‪forwarding information Base‬‬
‫لو محتاج أعمل ‪ lookup‬ليه بستخدم ‪show ip cef = command‬‬
‫‪Ma‬‬
‫‪d‬‬‫‪eBY‬‬ ‫عندى مصطلح إسمه الـــ ‪ LFIB‬وده اختصار ‪Label forwarding‬‬
‫‪Moh‬‬‫‪a‬‬
‫‪me‬‬‫‪dAb‬‬
‫‪d‬‬‫‪e‬‬‫‪l‬‬
‫‪n‬‬‫‪a‬‬‫‪s‬‬
‫‪s‬‬‫‪e‬‬‫‪r‬‬
‫‪information Base‬‬
‫لو محتاج أعمل ‪ lookup‬ليه بستخدم ‪show mpls = command‬‬
‫‪forwarding-table‬‬

‫لسه الدنيا مش واضحة ‪!....‬؟‬

‫الــ ‪“ Routing information Base ” RIB‬ودى تقدر تقول عليها قاعدة بيتم فيها‬
‫تجميع المعلومات من الـــ ‪ Routing protocol‬اللى بيتم داخل الشبكة عندى وبناء‬
‫على المعلومات دى هيبدأ يتعمل عندى ‪ create‬للـــ ‪Forwarding " FIB‬‬
‫‪"information Base‬‬
‫يعنى تقدر تقول إن الـــ ‪ RIB‬هيبدأ يغذى الـــ ‪ FIB‬بالمعلومات‬
‫طيب بالنسبة للـــ ‪ " label Information Base " LIB‬وده تقدر تقول عليه زى‬
‫كده ‪ database‬بالـــ ‪ label‬يعنى كل راوتر عندى هيبدأ يخصص ‪ label‬لكل‬
‫شبكة عندى موجودة فى الــ ‪ routing table‬والــ ‪ label‬ده هيروح لكل الــ‬
‫‪ neighbour‬اللى معاه‬
‫‪Ma‬‬
‫‪d‬‬‫‪eBY‬‬
‫‪Moh‬‬‫‪a‬‬
‫‪me‬‬‫‪dAb‬‬
‫‪d‬‬‫‪e‬‬‫‪l‬‬
‫‪n‬‬‫‪a‬‬‫‪s‬‬
‫‪s‬‬‫‪e‬‬‫‪r‬‬

‫وبالتالى كل روتر هيجيله أكتر من ‪ label‬هنا هيبدأ يختار الــ ‪ label‬اللى صاحبه‬
‫أفضل مسار ويبدأ يضعه فى الـــ ‪ LFIB‬بعد كده واللى هيكون مسؤول عن نقل الـــ‬
‫‪ Label‬بين الروترات هو الـــ ‪ LDP‬زى موضحنا فى الجزء األول‬

‫بعد كده هيكون عندى الـــ ‪ LFIB‬وبناء على المعلومات اللى هتجيله هيبدأ يشوف‬
‫الــ ‪ packet‬ويعدل على الــ ‪ label‬بناء على المعلومات اللى جمعها‬

‫من الكالم اللى فوق أفهم إن الـــ ‪ control plane‬الزم تتم األول بعدين تبدأ مرحلة‬
‫الــ ‪ Data plane‬وبالتالى الـــ ‪ Data plane‬مبنية على الـــ ‪control plane‬‬

‫لو بصينا على الرسمة دى وحبينا نطبق الكالم اللى فوق عليها ؟‬
‫لو ‪ R1-PE‬محتاج يوصل الــ ‪ traffic‬من ‪ looped1‬إلى ‪looped2‬‬
‫ياترى إيه اللى هيتم هنا ؟‬
‫احنا اتفقنا إن أول حاجة الـــ ‪ control plane‬هتم يعنى العملية هتبدأ بالعكس‬

‫‪Ma‬‬
‫‪d‬‬‫‪eBY‬‬
‫‪Moh‬‬‫‪a‬‬
‫‪me‬‬‫‪dAb‬‬
‫‪d‬‬‫‪e‬‬‫‪l‬‬
‫‪n‬‬‫‪a‬‬‫‪s‬‬
‫‪s‬‬‫‪e‬‬‫‪r‬‬
‫مش فاهم تبدأ بالعكس إزاى ؟‬
‫يعنى ‪ R5-PE‬هيكون عنده معلومات‬
‫يعنى علشان يوصل لــ ‪ looped2‬هيخرج من الــ ‪fa1/0‬‬
‫والـــ ‪ R4-P‬هيكون عنده معلومات إن علشان يوصل لــ ‪ looped2‬هيخرج من‬
‫‪ fa1/0‬بإتجاه ‪ R5-PE‬وهكذا بالنسبة لـــ ‪ R3-P‬اللى علشان يوصل لــ ‪looped2‬‬
‫هيخرج من ‪ fa0/0‬بإتجاه ‪ R4-P‬غير معلومات عن الــ ‪ label‬فى اللحظة دى‬

‫وبالتالـــــــــــــــــى‬
‫لما ‪ R1-PE‬هيحتاج فى اللحظة دى يوصل الــ ‪ traffic‬من ‪ looped1‬إلى‬
‫‪ looped2‬هيبدأ يستلم الـــ ‪ packet‬من ‪ looped1‬ويبدأ يبص على الــ ‪FIB‬‬
‫واللى طبعا عنده معلومات من الــ ‪ RIB‬فمش هيالقى طبعا عليها ‪label‬‬
‫فهيضع قيمة الــ ‪ label‬واللى هتكون ‪ 201‬واللى وصلت ليه أصال من ‪R2-P‬‬
‫علشان يعرف يوصل وقلنا إن العملية دى بسميها ‪push‬‬

‫بعد كده الــ ‪ packet‬هتوصل لــ ‪ R2-P‬وهنا هيبدأ يشوف المعلومات اللى عنده‬
‫فهيالقى علشان يوصل للـــ ‪ looped2‬الزم يطلع لــ ‪ R3-P‬لكن المعلومات اللى‬
‫عنده بتقول إنه الزم يعمل ‪ swap‬لقيمة الــ ‪ label‬من ‪ 201‬إلى ‪301‬‬
‫وبعد كده ‪ R3-P‬هيبعتها لـــ ‪ R4-P‬بقيمة مختلفة بناء على المعلومات اللى عنده فى‬
‫الـــ ‪ LFIB‬وبعد كده ‪ R4-P‬هيعمل إزالة للــ ‪ label‬والعملية دى زى موضحنا قبل‬
‫كده إن إسمها ‪ pop‬وبعد كده هتوصل للـــ ‪ R5-PE‬واللى بدوره هيوصلها‬

‫مش فاهم لسه تقصد إيه ؟‬


‫‪Ma‬‬
‫‪d‬‬‫‪eBY‬‬
‫‪Moh‬‬‫‪a‬‬
‫‪me‬‬‫‪dAb‬‬
‫‪d‬‬‫‪e‬‬‫‪l‬‬
‫‪n‬‬‫‪a‬‬‫‪s‬‬
‫‪s‬‬‫‪e‬‬‫‪r‬‬ ‫طيب حاول كده تبص على الرسمة البسيطة دى مرة تانية‬

‫لما الـــ ‪ customer‬هيحتاج يبعت ترافيك أو ‪ data‬للـــ ‪ Branch‬بتاعه‬


‫بالعقل والمنطق إن الترافيك يمشى من ‪ customer‬للـــ ‪Branch‬‬
‫فالموضوع ده تقدر تقول عليه بكل بساطة هو الـــ ‪Data plane‬‬

‫طيب انته عمرك شفت حد بيوصل لمكان من غير ميعرف عنوانه ‪!.....‬؟‬
‫هنا بقى الزم يتعمل موضوع الـــ ‪control plane‬‬
‫علشان الـــ ‪ customer‬يقدر يوصل من خالل ‪ path‬معين‬
‫يعنى عملية الـــ ‪ control plane‬بتكون عكس الـــ ‪Data plane‬‬
‫وبالتالى انته محتاج تعمل ‪ routing‬بأى شكل‬
‫يعنى ‪ R4‬هيبعت لـــ ‪ R3‬يقوله لو انته عاوز توصل للــ ‪ Branch‬اللى الـــ ‪subnet‬‬
‫كذا انا هكون الطريق ليك و‪ R3‬هيبعت لــ ‪ R2‬هيقوله لو انته عاوز توصل للــ‬
‫‪ Branch‬هكون أنا الطريق بتاعك ‪ ...‬وهكذا‬
‫كده أنا بنيت الـــ ‪control plane‬‬
‫وبالتالى لما الــ ‪ customer‬يبدأ يبعت الترافيك كده هتبدأ عملية الــ ‪Data plane‬‬
‫‪Ma‬‬
‫‪d‬‬‫‪eBY‬‬
‫أتمنى تكون المعلومة وصلت‬
‫‪Moh‬‬‫‪a‬‬
‫‪me‬‬‫‪dAb‬‬
‫‪d‬‬‫‪e‬‬‫‪l‬‬
‫‪n‬‬‫‪a‬‬‫‪s‬‬
‫‪s‬‬‫‪e‬‬‫‪r‬‬

‫قلنا قبل كده إن فى الـــ ‪ MPLS‬إن الــ ‪ packet‬بيتعملها ‪ forward‬على أساس‬


‫الــ ‪ label‬يعنى الـــ ‪ packet‬هيضاف فى الــ ‪ header‬بتاعها ‪label‬‬
‫واللى من خالل الــ ‪ label‬دى هقدر أوصل للـــ ‪Destination‬‬
‫الـــ ‪ label‬عندى بيتكون من ‪32 Bits‬‬
‫عندى ‪ 20 Bits‬محجوزين للــ ‪ label‬نفسه‬
‫وعندى ‪ 3 Bits‬محجوزين للـــ ‪ experimental‬وده بيستخدم فى موضوع‬
‫الـــ ‪QOS‬‬
‫وعندى ‪ 8 Bits‬للــ ‪" Time-to-live " TTL‬‬
‫وعندى ‪ 1 Bit‬للـــ ‪Bottom-of-stack‬‬

‫ملحوظة ‪ :‬ممكن يتم إضافة أكتر من ‪ label‬على الــ ‪ packet‬على حسب‬


‫الــ ‪ service‬ولو فيه أكتر من ‪ label‬تم اضافته على الــ ‪ packet‬بسميهم هنا‬
‫‪label stack‬‬

‫‪Ma‬‬
‫‪d‬‬‫‪eBY‬‬
‫‪Moh‬‬‫‪a‬‬
‫‪me‬‬‫‪dAb‬‬
‫‪d‬‬‫‪e‬‬‫‪l‬‬
‫‪n‬‬‫‪a‬‬‫‪s‬‬
‫‪s‬‬‫‪e‬‬‫‪r‬‬

You might also like