Border Gateway Protocol در حقیقت خدمات پستی اینترنتی است. زمانی که یک فرد، نامهای را درون صندوق پست میاندازد، خدمات پست آن نامه را پردازش نموده و مسیری سریع و بهینه را برای رساندن آن به گیرنده مورد نظر انتخاب میکند.
به همین ترتیب، زمانی که فرد دادهای را از طریق اینترنت ارسال میکند، پروتکل BGP تمام مسیرهای موجود را که دادهی مورد نظر میتواند طی کند در نظر گرفته و بهترین مسیر را انتخاب میکند.
به طور معمول این فرایند بین سیستمهای خودمختار شبکه (AS) رخ میدهد. اگر یک کاربر در سنگاپور قصد بازدید از وب سایتی را داشته باشد که سرور مبدا آن در آرژانتین باشد، BGP وارد عمل شده و امکان برقراری ارتباط سریع و بهینه را فراهم میکند.
سیستم خودمختار شبکه (Autonomous System) چیست؟
اینترنت، شبکهای از شبکههاست. این شبکه به صدها هزار شبکه کوچکتر تحت عنوان سیستمهای Autonomous تقسیم شده است. هر یک از این شبکهها اساسا مجموعه بزرگی از روترها هستند که توسط یک سازمان واحد اداره میشوند.
اگر به مثال خود درباره خدمات پستی بازگردیم و پروتکل BGP را به خدمات پستی تشبیه کنیم، در این صورت ASها را میتوان به عنوان شعبههای مختلف اداره پست در نظر گرفت.
یک شهر ممکن است صدها صندوق پستی داشته باشد، اما نامهای که در صندوق انداخته میشود قبل از این که به سمت مقصد ارسال شود، میبایست از طریق شعبههای پستی محلی عبور کند.
بنابراین میتوان گفت روترهای داخلی AS مانند صندوقهای پستی هستند که خروجیها خود را به سمت AS هدایت میکنند، سپس با استفاده از مسیریابی BGP دادهها را به سمت مقصد هدایت میکنند.
نمودار فوق نسخه سادهای از BGP را نمایش میدهد. در این نسخه تنها 6 سیستم Autonomous بر روی اینترنت وجود دارد. در صورتی که AS1 قصد داشته باشد، پکت دادهای را به سمت AS3 هدایت کند، دو گزینه متفاوت وجود خواهد داشت:
- انتقال به AS2 سپس به AS3AS2 → AS3
- انتقال به AS6 سپس به AS5 ، AS4 و در آخر AS3AS6 → AS5 → AS4 → AS3
بدیهی است تصمیمگیری در مورد مدلهایی که پیچیده نیستند، ساده است. مسیر AS2 در مقایسه با AS6 به هاپهای کمتری نیاز دارد، در نتیجه سریعتر و بهینهتر خواهد بود.
حال اگر صدها هزار AS وجود داشته باشد، تعداد هاپها تنها بخشی از الگوریتم پیچیده انتخاب مسیر بوده و قطعا مسیریابی بسیار مشکل میگردد. در این صورت نقش مهم BGP به خوبی نمایان میشود.
ساختار اینترنت به طور مداوم در حال تغییر است؛ به همین دلیل تمامی ASها میبایست خود را مطابق با مسیرهای جدید و حتی مسیرهای منسوخ شده سازگار کنند. این کار با peering انجام میشود، به عبارت دیگر هر AS به AS مجاور خود به وسیلهی یک کانکشن TCP/IP کانکت میشود تا اطلاعات مربوط به مسیریابی را به اشتراک بگذارد.
تفاوت BGP داخلی و BGP خارجی
ترافیک از طریق BGP خارجی یا eBGP منتقل میشود. AS (سیستم خودمختار) میتواند از BGP داخلی یا iBGP برای مسیریابی داخلی شبکه استفاده میکند. لازم به ذکر است استفاده از BGP داخلی، الزامی برای استفاده از BGP خارجی نمیباشد.
سیستمهای خودمختار (Autonomous Systems) میتوانند انتخاب خود را از بین پروتکلهای داخلی انجام دهند تا روترهای موجود بر روی شبکه داخلی را به هم کانکت کنند.
BGP خارجی را میتوان به سیستم حملونقل بینالمللی تشبیه کرد. هنگام حمل یک بسته به صورت بینالمللی، میبایست استانداردها و دستورالعملهای خاص آن رعایت گردد.
هنگامی که بسته مورد نظر به کشور مقصد خود رسید، میبایست از طریق سرویس پست محلی کشور مقصد عبور کند تا به مقصد نهایی برسد. هر کشور نیز خدمات پستی داخلی خود را دارد که لزوما از دستورالعملهای سایر کشورها پیروی نمیکند.
به همین ترتیب هر سیستم خودمختار (AS) نیز میتواند پروتکل مسیریابی داخلی مخصوص به خود را داشته باشد تا مسیریابی دادهها در داخل شبکه انجام شود.