معرفی حالتهای BGP در روتر سیسکو
پروتکل BGP در سیسکو یا دروازه مرزی یک پروتکل مسیریابی اساسی است که در اینترنت بکار میرود. مانند بسیاری از پروتکل های مسیریابی، BGP نیز به ایجاد مجاورتهای همسایه بین روترهای BGP برای تبادل پیشوندها و اطلاعات مسیریابی نیا دارد. برای ایجاد موفقیت آمیز این مجاورتهای همسایه، آنها از طریق یک سری حالت مجاورت همسایه عبور میکنند. در این مطلب قصد داریم وضعیتهای BGP و فرایندی را که از طریق آن روترهای BGP همسایه میشوند و شروع به تبادل اطلاعات مسیریابی میکنند شرح دهیم پس تا پایان این مقاله با ما همراه باشید:
مبانی مجاورت های همسایه BGP
BGP بیشتر به عنوان یک پروتکل مسیریابی path-vector شناخته می شود که تا حدودی با پروتکلهای مسیریابی Link-state یا مسیریابی distance-vector متفاوت است. به این ترتیب در برخی از روشهای عملکرد و همچنین در اصطلاحات مرتبطی که استفاده میشود منحصر به فرد است.
همتاسازی BGP
برخلاف پروتکلهای مسیریابی دیگر، مانند EIGRP یا OSPF، همسایگان BGP فقط می توانند به صورت دستی با استفاده از دستور همسایه ایجاد شوند. همتا های BGP بعد از پیکربندی شروع به برقراری ارتباط از طریق یک جلسه TCP میکنند که از پورت 179 استفاده میکند. مجاورت همسایه BGP در بیشتر مواقع همتاسازی BGP نیز نامیده میشود و روترهای درگیر در آن همتاسازی به عنوان همتایان BGP نامیده میشوند.
حالت محدود دستگاه (FSM)
هنگامی که دستور همسایه به صورت دستی بر روی یک روتر BGP پیکربندی شد، فرایند ایجاد دو دستگاه به عنوان همتایان BGP آغاز میشود. این فرایند از طریق حالتهای مجاور همسایههای مختلف میگذرد ما به زودی در این مورد نیز با یکدیگر صحبت خواهیم کرد تا به یک همتاسازی موفق BGP برسیم.
- این فرایند از حالتی به حالت دیگر و قوانین حاکم بر آن را BGP Finite State Machine یا FSM مینامند.
- یک FSM منحصر به BGP نیست. در تعریف گسترده تر، مدل ریاضی محاسبات را تعریف میکند. این یک ماشین محاسباتی انتزاعی است که می تواند دقیقا در یکی از حالتهای محدود در هر زمان باشد.
- یک FSM میتواند در پاسخ به برخی از ورودیها یا رویدادها از حالتی به حالت دیگر تغییر کند. یک FSM با لیستی از حالات قادر است موقعیت اولیه و شرایط هر انتقال از یک حالت به حالت بعدی را تعریف میکند.
- FSMها توسط پروتکلهای مسیریابی از جمله OSPF و EIGRP برای ایجاد و مدیریت روابط همسایگان استفاده میشوند.
FMSهای BGP :
این توضیح زمانی واضح میشود که به یک نمایش تصویری از FSM BGP نگاه کنیم، این مورد تمام حالتهایی را که ماشین برای دستیابی به همتاسازی موفق BGP از آن عبور میکند، به تصویر میکشد.
هنگامی که جلسه PCT بین همتایان BGP برقرار شد، BGP FSM در حالت Idle شروع میشود. سپس باید از حالتهای مجاور همسایههای مختلف عبور کند تا به حالت Established برسد، که در آن روترهای BGP با موفقیت همسایه یا همتا شدهاند. برای این کار قوانین خاصی وجود دارد که فرایند موفقیت را کنترل میکند که در بخشهای بعدی به آنها پرداخته میشود.
BGP همسایه حالتهای FSM
در زیر میخواهیم به مراحل مختلف یا حالتهایی بپردازیم که دو روتر BGP در تلاش برای ایجاد همسایگی یا همتاسازی BGP از آنها عبور میکنند.
این مراحل شامل ارجاع به متغیرها و مولفههای اضافی مانند تایمر ConnectRetry، تایمر KeepAlive، تایمر زمان نگهداری و همچنین پیامهای باز کردن، به روزرسانی، نگهداری و اعلانهای BGP میشود. بیایید حالت ها را با جزئیات بررسی کنیم:
حالت Idle یا حالت بیکار
این یک حالت اولیه است، جایی که BGP یک رویداد شروع را پیش بینی میکند. این رویداد زمانی فعال میشود که یک همسایه BGP جدید پیکربندی شود یا یک همتاسازی BGP بازنشانی شود. به دنبال این رویداد، BGP برخی از منابع را به صورت اولیه مقدار میدهد، تایمر ConnectRetry را بازنشانی میکند، و تلاش میکند تا یک اتصال TCP با همسایه راه دور BGP ایجاد کند. علاوه بر این، اگر همسایه راه دور BGP یک اتصال را آغاز کند، شروع به گوش دادن برای اتصال میکند. در صورت موفقیت آمیز بودن، BGP به حالت اتصال منتقل میشود. در غیر این صورت در حالت Idle باقی میماند.
حالت Connect یا اتصال
در این حالت BGP منتظر است تا حالت تکمیل TCP three-way دست دهد و در صورت موفقیت آمیز بودن به حالت OpenSent میرود در غیر این صورت وضعیت به Active تغییر میکند. اگر تایمر ConnectRetry منقضی شود، در حالت اتصال باقی میماند، تایمر را بازنشانی میکند و TCP three-way انجام میگیرد. اگر رویداد دیگری رخ دهد مانند تظیم مجدد BGP به حالت Idle برمیگردد.
حالت Active
در اینجا BGP یک اتصال TCP three-way دیگر با همسایه BGP راه دور انجام می دهد که در صورت موفقیت آمیز بودن به حالت OpenSent منتقل می شود. در این بین اگر تایمر ConectRetry منقضی شود دو مرتبه به حالت اتصال باز می گردد. در طول این حالت BGP برای اتصالات ورودی از همسایه راه دور BGP هشدار می دهد. برخی از رویدادها می توانند باعث شوند که به حالت بیکار برگردد.
حالت OpenSent
در این مرحله BGP منتظر یک پیام باز از همسایه دور BGP خود است. این پیام از نظر خطا بررسی شده است. اگر مغایرت هایی مانند شماره های نسخه نادرست، شماره های AS اشتباه یا مشکلات دیگر یافت شود، BGP با یک پیام اعلان پاسخ می دهد و به حالت Idle برمی گردد.
در این جا BGP تعیین می کند که آیا از eBGP یا iBGP بر اساس بررسی شماره AS استفاده خواهد کرد. اگر همه چیز درست باشد، BGP شروع به ارسال پیام های نگهدارنده می کند و تایمر KeepAlive خود را بازنشانی می کند.
زمان نگهداری بین دو روتر BGP مذاکره مشود و کمترین زمان انتخاب می شود. اگر جلسه TCP ناموفق باشد، BGP به حالت Active باز میگردد. رویدادهای دیگر، مانند انقضای تایمر نگهدارنده، از BGP میخواهد تا یک پیام اعلان با کد خطا ارسال کند و به حالت Idle برگردد. اگر فرایند BGP ریست شود نیز BGP به حالت بیکار باز می گردد.
وضعیت OpenConfirm
در این حالت BGP منتظر یک پیام نگهدارنده از همسایه راه دور است. هنگامی که پیام Keepalive دریافت شد، به حالت Established منتقل میشود و مجاورت همسایه را تکمیل میکند. این رویداد تایمر توقف را بازنشانی میکند. اگر یک پیام اعلان از همسایه راه دور BGP دریافت شود، به حالت Idle بر می گردد. BGP همچنان به ارسال پیام های نگهدارنده ادامه میدهد.
حالت EStablished
در این مرحله، همسایگی BGP نهایی میشود و روترهای BGP اطلاعات مسیریابی را از طریق بسته های به روز رسانی تبادل میکنند. هر بار که یک پیام نگهدارنده یا به روز رسانی دریافت می شود، تایمر نگهداری مجدد تنظیم میشود، اگر پیام اعلان دریافت شود به حالت Idle بر میگردد.
جدول خلاصه حالت های BGP FSM
حالت | شرح | حالت های احتمالی بعدی |
Idle | حالت اولیه- BGP منتظر شروع یک رویداد میشود و تلاش میکند یک اتصال TCP را راه اندازی کند. | Connect |
Connect | BGP منتظر تکمیل TCP three-way | Active,OpenSent,or Idle |
Active | BGP یک TCP three-way دیگر برای برقراری یک اتصال انجام می دهد | Connect,OpenSent,or Idle |
OpenSent | BGP منتظر یک پیام Open از طرف همسایه است و آن را برای خطا بررسی میکند | OpenConfrim,Active,or Idl |
OpenConfrim | BGP منتظر یک پیام نگهدارنده از طرف همسایه برای تایید اتصال | Established or Idle |
Established | حالت نهایی، جایی که همسایگی BGP کامل شده است و روترها به روز رسانی مسیریابی را مبادله میکنند | Idle |
چرا درک حالت های مختلف BGP در روتر سیسکو مهم است؟
در مواردی که همتاسازی BGP با شکست مواجه میشود یا متناوب است، یک سری وظایف مانند عیب یابی باید انجام شود تا مشکل مشخص شود. درک BGP FSM و وضعیتهای آن بخش اساسی از توانایی عیب یابی، اشکال زدایی و تشخیص چنین مشکلاتی است. توضیح بالا توصیف نسبتا سطح بالایی از وضعیت های FSM است و همه رویدادها و موارد احتمالی ممکن را شامل نمیشود، اما مقدمه ای عالی برای این فرایند ارائه میدهد. برای توضیح کامل و معتبر از BGP FSM با تمام جزئیات بخش RFC 4271 نگاهی به FSM بیندازید.
نتیجه
درک مراحل مختلف BGP FSM برای درک پویایی روابط همسایگان در شبکه ضروری است. این مراحل فرایند جامع برقراری یک اتصال، حفظ آن و مدیریت رویداد های مختلف، مانند وقوع خطا یا شکست جلسه را خلاصه می کند. این حالت ها BGP را قادر می سازد تا منابع و ارتباطات خود را به طور موثر مدیریت کند و همینطور از استحکام و انعطاف پذیری شبکه اطمینان حاصل کند. پس نتیجه می گیریم که درک این حالت ها برای هر مهندس شبکه ای ضروری است، نه تنها به این دلیل که بینشی از عملکرد داخلی BGP ارائه می دهد، بلکه به این دلیل که متخصصان را برای عیب یابی و بهینه سازی عملکرد شبکه به طور موثر مجهز میکند.