مبانی پروتکل BGP

مسیریابی درونی و بیرونی

 

به مسیریابی روترها در داخل یک AS مسیریابی درونی( IGP) گفته می‌شود. برای مسیریابی درونی می توان از پروتکل‌های زیر استفاده کرد.

·         RIP

·         DSPF

·         IS_IS

·         IGRP

·         EIGRP

به مسیریابی بین روترهای مرزی ASها که باعث می‌شود اطلاعات بین AS ها ردوبدل شود مسیریابی برونی(EGP)گویند. BGP یک پروتکل مسیریابی برونی است.

 مسیر یابی درونی و بیرونی

در حال حاضر برای مسیریابی بین AS ها در اینترنت یا از default route که نوعی مسیریابی ایستا است، استفاده می‌کنیم یا از BGP.

مسیریابی بسته‌های IP در درون شبکه خود مختار بیش‌تر تابع پارامترهای قابل اندازه‌گیری[5] مانند سرعت، قابل اعتماد بودن و… است. ولی مسیریابی بسته‌های اطلاعاتی بر روی شاهراه‌هایی که شبکه های AS را به هم متصل کرده مسائلی کاملا متفاوت با مسیریابی در درون یک شبکه خود مختار دارد. در مسیریابی بین شبکه‌های AS مسائلی نظیر امنیت، پرداخت حق اشتراک و سیاست نیز می‌تواند در انتخاب بهترین مسیر دخیل باشد. در ادامه درباره چگونگی به کاربردن این policyها بیشتر صحبت می کنیم.

مبانی پروتکل BGP

 

پروتکل [6]BGP مسئول انتقال اطلاعات و انتخاب بهترین مسیرهای منتهی به مقاصد مختلف در محیط اینترنت می باشند. زمانی که دو AS اقدام به برقراری ارتباط با یکدیگر می کنند به طور معمول از BGP برای تبادل اطلاعات routing  استفاده می کنند.

در حال حاضر جدیدترین نسخه این پروتکل BGP4 است که این نسخه از ادرس‌دهی classless پشتیبانی می کند.

این پروتکل برای ردوبدل کردن پیام‌های خود بین روترها از یک اتصال قابل اعتماد استفاده می‌کند برای

این کار از پروتکل TCP و پورت 179 استفاده می‌کند.

پروتکل BGP یک پروتکل مسیریابی مسیر (Path Vector Protocol)است. یعنی هر روتر اطلاعات کامل مسیر تا یک مقصد خاص را به روتر همسایه‌ی خود می‌فرستد.به عنوان مثال به شکل زیر نگاه کنید در این شکل تمام همسایه‌های مسیریاب F اطلاعات کامل مسیرهای خود را تا تمامی مقصدها مثلا  روتر D برای آن می‌فرستند. حال مسیریاب F ابتدا مسیر EFGCD وIFGCD  را به دلیل اینکه خود درون این مسیرها است را حذف می‌کند (تا در حلقه نیفتد) سپس از بین مسیر BCD و GCD بر اساس پارامترها و صفت‌های BGP یکی را انتخاب می‌کند و بسته را به روتر همسایه می‌فرستد. درباره این کار در روتر بعدی انجام می‌شود تا بالاخره بسته به مقصد D برسد.

BGP از دو پروتکل مکمل EBGP و IBGP تشکیل شده است. قبل از اینکه این دو تا تفاوتشان را بیان کنیم باید بدانید که شبکه‌ها از نظر ارتباط با مسیریاب‌های BGP سه دسته اند:

  شبکه‌های stub:

این شبکه‌ها فقط با یک مسیریاب BGP در ارتباطند بنابراین فقط دریافت‌کننده یا ارسال‌کننده اولیه‌اند و در توزیع ترافیک اینترنت و مسیریابی در اینترنت نقشی ندارند.

شبکه‌های multihome:

در این شبکه‌ها چند اتصال با یک یا چند مسیریاب BGP که در یک AS دیگر وجود دارد در ارتباطند پس ترافیک اینترنت می‌توانند از داخل این شبکه‌ها عبور کند.

شبکه‌های ترانزیت:

این شبکه‌ها دارای چندین مسیریاب مرزی هستند که نقش عمده‌ای در ترافیک اینترنت دارند.

 IBGP

ارسال اطلاعات به سمت اینترنت در شرایطی که تنها یک روتر در مرز بین سازمان و اینترنت قرار دارد کاری بسیار اسان است. در این شرایط کافی است که روتر مرزی یک default route را از طریق پروتکل مسیریابی درونی(IGP) برای دیگر دستگاه‌های داخلی ارسال کند تا آن‌ها تمامی پیام‌های مقصد خارجی را برای روتر مرزی بفرستند.

 اما در صورت استفاده از چندین روتر مختلف برای برقراری ارتباط با اینترنت مسائل مختلفی را باید مد نظر قرار داد. به‌منظور برطرف کردن مشکل احتمالی و همچنین بهره‌گیری از امکانات بیشتر می توان از IBGP[7] در بین روترهای مرزی استفاده کرد.

در واقع IBGP برای این است که مسیریاب‌های مرزی درون یک As  بتوانند اطلاعات خود را ردوبدل کنند و به‌این ترتیب همه مسیریاب‌ها از تمام راه‌های مرزی مطلع هستند و می‌توانند بهترین راه خروجی راپیدا کنند.

EBGP

ایده ای که در پشت عملکرد BGP قرار دارد شبیه به پروتکل های IGP مانند OSPF و EIGRP است. بدین ترتیب BGP نیز شبیه دو پروتکل یاد شده، در ابتدا سعی در برقراری رابطه مجاورت مابین روترها در ASهای مختلف می کند سپس، روترهای همسایه اطلاعات مورد نظر خود را از یکدیگر کسب کرده و انها را داخل جدول BGP قرار می دهند سپس پروتکل BGP اطلاعات موجود در جدول BGP را آنالیز کرده و اقدام به شناسایی بهترین مسیر منتهی به هر مقصد می نماید این  route ها در داخل جدول routing روترها قرار دارد.

زمانی که روترهای همسایه در ASهای جداگانه باشند برای برقراری ارتباط و ردوبدل کردن اطلاعات مسیریابی از پروتکل EBGP استفاده می‌کنند.

هریک از routerهای، BGP از سه جدول برای نگهداری اطلاعات پروتکل  BGPاستفاده می‌کند که این جدول ها به شرح زیر می‌باشند:

Routing table: شامل اطلاعاتی است که باید طی پیام Update مبادله شود.

Neighbor table: همسایه‌های روتر در این جدول نگهداری می‌شوند.

BGP table: اطلاعات دریافتی از بقیه مسیریاب‌ها و نیز دیگر path attributeها  در این جدول ذخیره می‌شوند.

 

3,253
۲ دیدگاه
۷ بهمن ۹۲
برچسب ها :

فرزانه تقدیسی

کارشناس ارشد هوش مصنوعی - پس از اتمام دوره Elastix & MCSE & CCNA & CCNP و اخذ مدارک بین المللی در این حوزه مشغول به کار شدم

دیدگاه کاربران

  • سوسن 40 چراغ
    مهر ۵, ۱۳۹۴

    با سلام در حال شروع پروزه BGPهستم اگه امکان داره برام منابع مرتبط رو بفرستید.با تشکر فراوان

  • با سلام
    سایتتان خیلی مفیده اگه امکانش هست ویدیو آموزشی هم بزارید.
    با تشکر