عرض مشاركة واحدة
قديم 10-14-2013, 04:32 AM   #2
jal
:: سيسكو جديد ::
 
تاريخ التسجيل: Oct 2013
المشاركات: 11
شكراً: 7
تم شكره 0 مرة في 0 مشاركة
jal will become famous soon enough
افتراضي Re: بروتوكول جدييييييييييد !!! ؟؟


ما هو برتوكول الـBGP:من اهم واكثر البروتكولات المستخدمه فى عالم الانترنت وهو نواة بروتكولات التوجيه بدونه يقف كل شىء لانه هو المسئول عن ربط ما يسمى بى Autonomous System اى الربط بين شركات مذودى خدمه الانترنت الـ ISP

الموضوع الأصلى من هنا: منتديات سيسكو التعليمية | كن بين الخبراء ! http://www.ciscovb.com/vb/t7097.html#post35122


قبل الحديث عن بروتكول الـ BGP يجب شرح بعض المصطلحات مثل:

ما هو الـ Autonomous System: مجموعه من الروترات او مجموعه من الاجهزه تحت اداره واحده او نظام مستقل تسخدم البروتكولات الداخليه IGP للتوجيه بين اجهزتها داخل نظامها المستقل وتسخدم البروتكولات الخارجيه EGP للتوجيه بين اجهزتها وبين اجهزه نظام مستقل اخر AS - يميز الـ AS برقم 0-65535 من قبل منظمه الـ IANA

ما هى الـ IGP: هى البروتكولات التى تستخدم بين الاجهزه داخل النظام الادارى المستقل AS مثال على ذلك OSPF EIGRP RIP


ما هى الـ EGP: هى البروتكلات التى تستخدم بين الانظمه المستقله مثال على ذلك بروتكول الـ BGP


بروتكول الـ BGP يسخدم بين الانظمه المستقله كما هو موضح بالصوره


انقر على الصورة لعرضها في الحجم الكامل.


بعض النقاط الهامه التى يجب معرفتها حول بروتكول الـ BGP:




بروتكول الـ BGP مفتوح المصدر Standards based



البروتكول الذى نستخدمه بتاريخ اليوم هو الاصدار الرابع BGP v4 - اما البروتكول الخاص بـ IPv6 اسمه BGPv4+



بروتكول الـ BGP is classless معنى ذلك انه يدعم الـ VLSM ويرسل الـ Prefix/length ويدعم ايضا الـ Summarization



بروتكول الـ BGP لا يسعى الى السرعه فى اختيار افضل مسار ولكن عن طريق multiple BGP attributes سوف نتحدث عنها لاحقا



بروتكول الـ BGP عباره عن policy-based routing protocol يتيح الى الـ AS التحكم فى تدفيق البيانات والمسارات



تبادل البيانات فى بروتكول الـ BGP عن طريق شىء يسمى NLRI
Network Layer Reachability Information ويكون بداخل الـ Update message - الـ NLRI يحتوى على Prefix/length وايضا يسهل عمليه الـ aggregation لبروتكول الـ BGP , فى كل Update message توضع NLRI واحده



يعتبر البروتكول الـ Path vector routing يستخدم عده attributes لاتخاذ القرار فى اختيار افضل مسار




لماذا نتسخدم الـ BGP:


التدرج او الاتساع هذا المصطلح يسمى Scalability كمثال البروتكلات الداخله مثل الـ OSPF قادره على ان يتسع للاف المسارات لكن البروتكلات الخارجيه مثل BGP قادر ان يتسع لمئات الالاف من المسارات , جدول التوجيه الـ BGP يحتوى على 400 الف مسار


الاستقرار Stability


فرض سياسيات التوجيه Enforce routing policy: هذا البروتكول مرن جدا ويستخدم العديد من العوامل المؤثره فى اختيار كل مسار على حدى , لكن فى الـ OSPF تكون صعبه لان التغيير يكون على الـ Link يكون التأثير على كل المسارات التى تمر من خلال هذا اللينك

* Scalability
– IGPs can scale to thousands of routes
– BGP can scale to hundreds of thousands of routes
– Current Global (Internet) BGP table ~ 400,000 routes

* Stability
– Internet routing table never converges
– BGP stable enough to handle routing and decision making at the same time

*
Enforce routing policy

In OSPF you can't change metric of individual route u can change metric of the links but this gonna affect more than one destination
BGP uses attributes of the route itself Traffic engineering feasible and simple to implement




من يحتاج الى بروتكول الـ BGP:


– يستخدمه مذودى خدمه الانترنت ISP وتسمى
Transit networks عندما تريد الشركه مرور الـ Traffic من خلال اجهزتها او تبيع Bandwidth الى عملائها


– عندما نحتاج جدول توجيه الانترنت كامل لجعل القرارت دقيقه لاختيار افضل مسار


– لا يفضل استخدام
Default Routing


– شركه X تتصل باكثر من ISP وتريد التحكم فى مسار البيانات الخارجه من الشركه والداخله اليها

انقر على الصورة لعرضها في الحجم الكامل.



من لا يحتاج الى بروتكول الـ BGP:


– عندما تكون الشركه متصله بشركه ISP واحده ويفضل استخدام الـ
Default Routing

– عندما تكون اجهزه الشركه ليست حديثه جدا لانها الـ BGP Table يحتاج على الاقل 1giga RAM لاستعاب جدول التوجيه

– عندما لا تملك الشركه Public IPv4 Address خاص بها

انقر على الصورة لعرضها في الحجم الكامل.


هيكل البروتكول الـ
BGP Data Structure:

هذا البروتكول مثل الـ EIGRP & OSPF يملك 3 جداول هى:

– جدول الجيران: هذا الجدول يحتوى على قائمه بها جميع جيرانه , والجيران هنا تسمى Peers


– جدول الـ BGP: هذا الجدول مناظر او مثل جدول Database /OSPF او Topology table/EIGRP I , هذا الجدول يحتوى على جميع المسارات التى اعلان عنها جميع الجيران الـ Active Peers


– جدول التوجيه الـ Routing Table: هذا الجدول كما هو معروف توضع به افضل المسارات لجميع الشبكات التى يمكن الوصول اليها , افضل مسارات فى جدول الـ BGP يتم وضعها فى الـ Routing Table




كيفية عمل البروتكول | How BGP Works:

– اول عمليه تسمى
Establish BGP peerings لبناء جدول الجيران Neighbor table


– ثانى عمليه تسمى
Exchange updates to build BGP table ارسال واستقبال التحديثات والشبكات لبناء جدول الـ BGP


– ثالث عمليه تسمى
Choose BGP bestpaths to build routing table اختيار افضل المسارات ووضعها فى جدول التوجيه





اول عمليه بالتفصيل Establish BGP peerings عمليه بناء علاقه جوار بين الروترات فى هذا البروتكول مختلفه تماما كما تعلمنا فى الـ EIGRP او OSPF


بروتكول الـ BGP لا يملك not have its own transport انما الـ EIGRP يملك بروتكول خاص به اسمه RTP ورقم البورت 88 والـ OSPF يملك بروتكول خاص به فى


طبقه الـ transport ورقم البورت 89 انما الـ BGP يسخدم الـ TCP وروقم البورت 179 علاقه الجوار مبنيه على TCP session



* الجيران ليست بالضروره ان تكون Direct Connected معنى ذلك ممكن الممكن وجود جارين وبينهم رورترات مش شابكين فى بعض مباشر والفكره هنا

طالما فيه اتصال بيهم عن طريق IGP مثل OSPF او Static Route تكون الروترات قادره على ان تكون BGP Peers


* منطق بروتكولات الـ IGP مثل OSPF / EIGRP يسمى link-by-link basis


* الجيران فى الـ BGP لا تكتشف اوتوماتيكى neighbors are not discovered عكس العمليه هنا فى EIGRP / OSPF ولكن فى الـ BGP تكتب يدويا Manually

configured via neighbor statement


* الجيران فى الـ BGP لها عده انواع سوف اقوم بشرحها لاحقا ان شاء الله



انقر على الصورة لعرضها في الحجم الكامل.



عند انشاء علاقه جوار يتم استخدام 4 انواع من الـ Packets وهى :

^ النوع الاول Open: عند بدء علاقه جوار لابد من الاتفاق على بعض المعايير مثل :-
BGP version - Should be 4 نوع البروتكول المستخدم وهو الاصدار الرابع
Local ASN رقم النظام المستقل
Local Router-ID رقم تعريف الروتر
Hold time - Negotiated to lowest requested value
وبعض المعايير الاختياريه مثل الاتفاق على اختيار IPv4 او IPv6 او VPNv4 MPLS وتسمى capabilities




مثال على ذلك فى حياتنا اليوميه : شخصان يعيشان فى نفس المدينه وفى شارع واحد يتحدثون نفس اللغه تعتبر هذه بعض المعايير المتوافره لاقامه علاقه جوار , طيب لو شخصان يعيشان الاول يعيش فى القاهره والثانى يعيش فى الاسكندريه لن يكونا قادرين على انشاء علاقه جوار بينهما


^ النوع الثانى
KeepAlive: يستخدم هذا النوع لاكتشاف اذا كان الجار Active or Dead اذا كان hold time = 0, keepalives disabled



^ النوع الثالت Update: يستخدم هذا النوع عند اضافه شبكه بواسطه الـ NLRI او مسح شبكه Withdrawn وايضا معايير اختيار افضل مسار
Path vector attributes



^ النوع الرابع Notification: يسخدم هذا النوع للتعبير عن الـ Error Messages بعد ارسال هذه الرساله يتم انهاء علاقه الجوار لذا يجب علينا عندما نرى هذه الرساله نبحث عن الخطا الذى حدث ويتم تصليحه فى اقرب وقت ممكن , يتم ارسال هذه الرساله فى حاله وجود خطا فى الـ config مثل اصدار الـ BGP غير متطابق , مثال لو الشركه شغاله IPv4 وشركه الـ ISP شغاله IPv6 او وجود اختلاف فى الـHolddown-timer او Hold timer expired



مراحل انشاء علاقه الجوار | BGP Peering State Machine:



انقر على الصورة لعرضها في الحجم الكامل.

^ اول مرحله تمسى idle: يكون خامل فى هذه المرحله تكون الجيران منتظره بدء الـ Waiting to start 3-way handshake


^ ثانى مرحله تسمى Connect: تكون الجيران فى هذه المرحله تنتظر عمليه انهاء الـ Waiting to complete 3-way handshake

^ ثالت مرحله تسمى Active: عندما يحدث اى خلل فى عمليه الـ 3-way handshake تكون الجيران فى هذه المرحله ويتم اعاده عمليه الـ 3-way handshake , لو ظلت الجيران فى هذه المرحله تدل على ان هناك خطأ يجب تصليحه


^ المرحله الرابعه تسمى Open sent: فى هذه المرحله تم اتمام عمليه الـ 3-way handshake complete ومن ثم ارسال رساله الـ Open التى تحدثنا عنها سابقا التى تستخدم لبدء انشاء علاقه جوار

^ المرحله الخامس تسمى Open confirm: فى هذه المرحله تم استقبال رساله الـ Open من الـ Peer الاخر وتمت الموافقه على المعايير مثل رقم النظام المستقل رقم اصدار البروتكول والـ hold timer

^ المرحله السادسه تسمى Established: فى هذه المرحله تكون قد تمت علاقه الجوار بنجاح



منقول للفائدة


jal غير متواجد حالياً   رد مع اقتباس
 

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36