پروتکل BGP چیست | راهنمای کامل پروتکل مسیریابی اینترنت

تصور کنید صبح که از خواب بیدار می‌شوید و تصمیم می‌گیرید یک وب‌سایت خبری بین‌المللی را باز کنید، ناگهان اینترنت جهانی دیگر مثل همیشه کار

30 شهریور 1404
نویسنده:نگین

پروتکل BGP چیست | راهنمای کامل پروتکل مسیریابی اینترنت

تصور کنید صبح که از خواب بیدار می‌شوید و تصمیم می‌گیرید یک وب‌سایت خبری بین‌المللی را باز کنید، ناگهان اینترنت جهانی دیگر مثل همیشه کار نمی‌کند. صفحات بارگذاری نمی‌شوند، مسیرها از بین می‌روند و حتی ساده‌ترین ایمیل‌ها هم به مقصد نمی‌رسند. دلیل چنین بحرانی، نبود یا اختلال در پروتکلی به نام BGP است؛ همان ستون فقراتی که کل اینترنت امروز بر پایه آن استوار است.در پاسخ به سوال BGP چیست باید گفت BGP تنها یک پروتکل خشک و فنی نیست. این مکانیزم پیچیده در عمل تعیین می‌کند که هر بسته داده، از میان صدها هزار شبکه مستقل، چه مسیری را طی کند تا به مقصد برسد. اگر این پروتکل وجود نداشت، هیچ ارتباط پایداری میان قاره‌ها، سرویس‌های ابری و شبکه‌های سازمانی شکل نمی‌گرفت.

در ادامه این مقاله، ابتدا توضیح می‌دهیم که BGP چیست و چرا آن را ستون فقرات اینترنت می‌دانند. سپس بررسی می‌کنیم که این پروتکل چگونه بهترین مسیرها را انتخاب می‌کند و نقش سیاست‌های مدیریتی در آن چیست. بعد از آن به سراغ انواع BGP، یعنی iBGP و eBGP می‌رویم و تفاوت‌های آن‌ها را مرور می‌کنیم. در ادامه خواهید دید که BGP چگونه چالش مقیاس‌پذیری اینترنت را مدیریت می‌کند و در نهایت نشان می‌دهیم که این پروتکل در دنیای مدرن کلود و سرویس‌هایی مانند AWS چه جایگاهی دارد. به بیان ساده، اگر DNS دفترچه تلفن اینترنت باشد، BGP همان نقشه راهی است که تضمین می‌کند هر داده در کوتاه‌ترین زمان و از بهینه‌ترین مسیر به مقصد برسد.

دوره مقدماتی BGP

اگر می‌خواهید BGP را به‌صورت عملی یاد بگیرید، پیشنهاد می‌کنیم دوره آموزشی BGP Fundamental را از دست ندهید!
در این دوره مفاهیم پایه، نحوه پیاده‌سازی iBGP و eBGP، انتخاب مسیرها و سناریوهای واقعی به‌طور کامل آموزش داده می‌شود.

دوره مقدماتی BGP

BGP چیست و چرا آن را ستون فقرات اینترنت می‌نامند؟

BGP یا پروتکل دروازه مرزی مجموعه‌ای از قوانین و مکانیزم‌هاست که بهترین مسیر برای ارسال داده‌ها در اینترنت را مشخص می‌کند. اینترنت در واقع متشکل از صدها هزار شبکه مستقل است که به آن‌ها سیستم خودمختار (Autonomous System – AS) گفته می‌شود. هر AS تحت مدیریت یک نهاد خاص (مثل یک ISP یا سازمان بزرگ) اداره می‌شود و با یک شماره یکتا به نام ASN شناسایی می‌گردد.

وظیفه اصلی پروتکل BGP این است که هنگام ارسال داده بین دو نقطه، بهترین مسیر را میان این سیستم‌های خودمختار انتخاب کند. این انتخاب مسیر می‌تواند بر اساس فاکتورهایی مانند تعداد هاپ‌ها (Hop Count)، هزینه انتقال، ترافیک شبکه و سیاست‌های مدیریتی باشد.

چرا پروتکل BGP اهمیت دارد و چه مشکلاتی را حل می‌کند؟

  1. یافتن بهترین مسیر
    هر بسته داده هنگام عبور از اینترنت باید بداند گام بعدی کجاست. پروتکل BGP این تصمیم را با بررسی مسیرهای موجود می‌گیرد و کوتاه‌ترین یا بهینه‌ترین راه را انتخاب می‌کند.
  2. تشخیص تغییرات شبکه
    اینترنت دائماً در حال تغییر است؛ شبکه‌های جدید اضافه و شبکه‌های قدیمی حذف می‌شوند. BGP به‌طور مداوم جدول‌های مسیریابی را به‌روز نگه می‌دارد.
  3. اعمال سیاست‌های مدیریتی
    مدیران شبکه می‌توانند با استفاده از BGP سیاست‌های خاصی اعمال کنند. مثلاً تصمیم بگیرند ترافیک داخلی از مسیر خاصی عبور کند یا برخی مسیرها در اولویت باشند.
  4. افزودن لایه امنیتی
    پروتکل BGP قابلیت احراز هویت پیام‌ها بین روترها را دارد. این کار مانع از ورود داده‌های جعلی یا مخرب به مسیرهای حیاتی می‌شود.
BGP چیست

BGP چگونه کار می‌کند و چه مکانیزم‌هایی دارد؟

هسته اصلی عملکرد BGP بر پایه Peering (همتا شدن) قرار دارد. در این فرآیند، دو روتر که نقش BGP Peer یا BGP Speaker دارند، با یکدیگر ارتباط برقرار می‌کنند و اطلاعات مسیریابی را تبادل می‌نمایند. این ارتباط به‌صورت یک TCP Session روی پورت 179 برقرار می‌شود. استفاده از TCP تضمین می‌کند که تبادل اطلاعات پایدار باشد و در صورت از دست رفتن بسته‌ها، مکانیزم بازپخش (Retransmission) وجود داشته باشد.

مراحل اصلی تبادل اطلاعات در BGP

  1. کشف مسیر (Route Discovery):
    پس از برقراری یک BGP Session، روترها اطلاعاتی را به نام NLRI (Network Layer Reachability Information) مبادله می‌کنند. این اطلاعات نشان می‌دهد کدام شبکه‌ها از طریق آن روتر قابل دسترس هستند. علاوه بر این، ویژگی‌های مسیر یا همان Path Attributes نیز ارسال می‌شوند که شامل معیارهایی مانند طول AS-Path، نوع ارتباط (eBGP یا iBGP)، Local Preference و Multi-Exit Discriminator (MED) است.
  2. ذخیره مسیر (Route Storage):
    همه مسیرهای دریافتی در BGP Routing Information Base (RIB) ذخیره می‌شوند. این جدول به‌طور مداوم به‌روزرسانی می‌شود تا وضعیت شبکه منعکس شود. روترهای BGP برای حفظ ارتباط فعال، پیام‌های مختلفی را تبادل می‌کنند:
    • Open: برای آغاز ارتباط و تبادل اطلاعات اولیه مانند ASN و تایمرها.
    • Keepalive: برای زنده نگه داشتن ارتباط. این پیام‌ها معمولاً هر 30 یا 60 ثانیه ارسال می‌شوند.
    • Update: برای اطلاع‌رسانی مسیرهای جدید یا تغییر در مسیرهای موجود.
    • Notification: برای گزارش خطا و قطع ارتباط.
  3. انتخاب مسیر (Path Selection):
    زمانی که چندین مسیر به مقصدی خاص وجود داشته باشد، پروتکل BGP باید بهترین گزینه را انتخاب کند. این انتخاب بر اساس یک الگوریتم سلسله‌مراتبی انجام می‌شود. مهم‌ترین معیارها در این فرآیند عبارتند از:
    • Weight (ویژگی سیسکو): مسیری با وزن بالاتر در اولویت قرار می‌گیرد.
    • Local Preference: نشان می‌دهد کدام مسیر در داخل AS ترجیح داده شود.
    • AS-Path: مسیر با تعداد AS کمتر انتخاب می‌شود.
    • Origin Code: مسیرهایی که به‌طور مستقیم از IGP معرفی شده‌اند در اولویت هستند.
    • MED: به روتر همسایه نشان می‌دهد کدام نقطه ورود برای ترافیک ترجیح داده می‌شود.
    • در صورت برابر بودن همه موارد، BGP Router ID یا حتی آدرس IP هم‌پیر به‌عنوان آخرین ملاک استفاده می‌شود.

نقش Full-Mesh و مشکلات آن

در iBGP همه روترها باید به‌صورت Full-Mesh با هم در ارتباط باشند تا اطلاعات به‌درستی توزیع شود. این الزام در شبکه‌های بزرگ غیرعملی است و به همین دلیل مکانیزم‌هایی مانند Route Reflector و Confederation معرفی شده‌اند تا پیچیدگی کاهش یابد.

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

BGP چیست

انواع BGP چیست و چه تفاوتی بین iBGP و eBGP وجود دارد؟

پروتکل BGP در دو حالت پیاده‌سازی می‌شود: External BGP (eBGP) و Internal BGP (iBGP). این دو حالت از نظر ساختار، نحوه انتشار مسیرها و سناریوهای کاربردی تفاوت‌های مهمی دارند.

External BGP (eBGP)

  • کاربرد:
    eBGP بین دو سیستم خودمختار (AS) متفاوت برقرار می‌شود. به همین دلیل به آن Inter-AS Routing هم می‌گویند.
  • ویژگی‌ها:
    • بیشتر برای اتصال شبکه‌های سازمانی یا ISPها به اینترنت یا به یکدیگر استفاده می‌شود.
    • مسیرهای یادگرفته‌شده از یک eBGP peer معمولا به تمام همسایگان دیگر در همان AS تبلیغ (Advertise) می‌شوند.
    • پیش‌فرض TTL در بسته‌های eBGP برابر 1 است؛ یعنی روترها باید مستقیما به هم متصل باشند، مگر اینکه از مکانیزم‌هایی مثل eBGP multihop استفاده شود.
  • مثال:
    یک ISP ایرانی با یک Tier-1 Provider در اروپا eBGP برقرار می‌کند تا به بقیه اینترنت متصل شود.

Internal BGP (iBGP)

  • کاربرد:
    iBGP بین روترهای داخل یک AS استفاده می‌شود. یعنی همه همسایه‌های iBGP زیر یک ASN مشترک هستند.
  • ویژگی‌ها:
    • مسیرهایی که از یک iBGP peer یاد گرفته می‌شوند، به دیگر iBGP peers منتقل نمی‌شوند (به این اصل iBGP Split-Horizon Rule می‌گویند).
    • برای توزیع اطلاعات مسیر در داخل AS معمولا باید از مکانیزم‌هایی مثل Route Reflector (RR) یا Confederation استفاده شود.
    • TTL پیش‌فرض در iBGP برابر با 255 است، پس روترها لازم نیست مستقیما به هم متصل باشند.

مثال:
در یک شبکه سازمانی بزرگ با چندین شعبه، iBGP برای توزیع مسیرها بین روترهای داخلی همان سازمان استفاده می‌شود.

تفاوت‌های کلیدی eBGP و iBGP

ویژگی eBGP iBGP
محدوده بین ASهای مختلف داخل یک AS
پیش‌فرض TTL 1 (نیاز به اتصال مستقیم) 255 (نیاز به اتصال مستقیم ندارد)
بازنشر مسیر مسیرهای یادگرفته‌شده از eBGP به همه peers تبلیغ می‌شوند مسیرهای یادگرفته‌شده از iBGP فقط به eBGP peers تبلیغ می‌شوند
کاربرد اصلی اتصال به اینترنت و دیگر شبکه‌ها انتشار مسیر داخل شبکه سازمان یا ISP
نیاز به Route Reflector ندارد دارد (برای جلوگیری از Full-Mesh Peerings)

چرا این تفکیک مهم است؟

  1. مدیریت ساده‌تر سیاست‌ها: مدیر شبکه می‌تواند تصمیم بگیرد چه مسیرهایی از داخل سازمان به بیرون تبلیغ شود و بالعکس.
  2. کاهش پیچیدگی: بدون تفکیک iBGP و eBGP، در شبکه‌های بزرگ مجبور به ایجاد صدها اتصال Peer-to-Peer مستقیم بودیم.
  3. انعطاف‌پذیری بیشتر: این ساختار اجازه می‌دهد سیاست‌های امنیتی و اقتصادی (مثل انتخاب مسیر کم‌هزینه‌تر یا پرظرفیت‌تر) راحت‌تر اعمال شوند.

BGP و مقیاس‌پذیری اینترنت: چگونه جدول‌های مسیریابی کنترل می‌شوند؟

یکی از چالش‌های اصلی اینترنت، مقیاس‌پذیری است. اگر هر روتر مجبور بود مستقیما با میلیون‌ها روتر دیگر در ارتباط باشد، اینترنت هرگز کار نمی‌کرد. برای همین، پروتکل BGP از روش‌های زیر استفاده می‌کند:

  1. Route Reflectors (RRs)
    روتر بازتاب‌دهنده مانند یک هاب مرکزی عمل می‌کند. به جای اینکه همه روترها با هم در ارتباط باشند، تنها با RR ارتباط می‌گیرند.
  2. Confederations
    مجموعه‌ای از سیستم‌های خودمختار می‌توانند به صورت یک واحد بزرگ‌تر معرفی شوند. به این ترتیب از دید سایر شبکه‌ها تنها یک ASN وجود دارد. به‌عنوان مثال، چند ISP اروپایی می‌توانند یک کنفدراسیون تشکیل دهند.
  3. Route Aggregation
    برای کوچک‌سازی جدول‌های مسیریابی از CIDR (Classless Inter-Domain Routing) و تجمیع مسیرها استفاده می‌شود. مثلاً چند شبکه با IPهای نزدیک به هم می‌توانند به صورت یک ورودی واحد نمایش داده شوند.

BGP در کلود چیست و چه نقشی در سرویس‌های AWS دارد؟

با رشد سریع زیرساخت‌های ابری، مدیریت مسیریابی اهمیت دوچندان پیدا کرده است. آمازون وب‌سرویس (AWS) سرویس‌هایی ارائه می‌دهد که مستقیما از پروتکل BGP پشتیبانی می‌کنند:

1. AWS Transit Gateway

  • به‌عنوان یک هاب مرکزی بین VPCها و شبکه‌های سازمانی عمل می‌کند.
  • از BGP پشتیبانی می‌کند و امکان اتصال ساده‌تر و مقیاس‌پذیرتر را فراهم می‌آورد.
  • از طریق آن می‌توان به راحتی تجهیزات امنیتی یا مسیریاب‌های ثالث مبتنی بر BGP را به شبکه ابری متصل کرد.

2. AWS Direct Connect

  • اتصال اختصاصی و امن بین دیتاسنتر سازمانی و شبکه AWS ایجاد می‌کند.
  • برخلاف اینترنت عمومی، ترافیک از شبکه داخلی AWS عبور می‌کند که باعث کاهش تاخیر و افزایش امنیت می‌شود.
  • قابلیت برقراری نشست‌های پروتکل BGP در هر دو حالت IPv4 و IPv6 را دارد.
BGP چیست

جمع‌بندی: چرا یادگیری BGP برای مهندسان شبکه ضروری است؟

پروتکل BGP همان چیزی است که اینترنت امروز را به شکل یکپارچه و کارآمد نگه داشته است. بدون وجود آن:

  • مسیرهای داده به شکل بهینه انتخاب نمی‌شدند،
  • شبکه‌ها از تغییرات دائمی اینترنت باخبر نمی‌شدند،
  • سیاست‌های سازمانی قابل پیاده‌سازی نبودند،
  • و امنیت ارتباطات با چالش‌های جدی مواجه می‌شد.

از طرفی، در دنیای مدرن کلود و دیتاسنتر، پروتکل BGP همچنان به‌عنوان قلب تپنده ارتباطات باقی مانده است. چه در لایه جهانی اینترنت و چه در سرویس‌های ابری مانند AWS، این پروتکل نقشی حیاتی ایفا می‌کند. به بیان ساده، اگر DNS دفترچه تلفن اینترنت باشد، پروتکل BGP نقشه راه آن است. و همین نقشه راه است که تضمین می‌کند هر داده در کوتاه‌ترین زمان و بهترین مسیر به مقصد برسد.
اگر می‌خواهید این مفاهیم را از سطح تئوری فراتر ببرید و BGP را به‌صورت عملی و گام‌به‌گام یاد بگیرید، پیشنهاد می‌کنیم در دوره آموزشی مقدماتی BGP شرکت کنید. در این دوره تمام مباحث پایه تا سناریوهای کاربردی BGP در شبکه‌های سازمانی و سرویس‌دهندگان اینترنت به‌طور کامل آموزش داده شده است.

اشتراک گذاری در:

نویسنده:نگین
تاریخ انتشار:1404/06/30
مدت مطالعه:12 دقیقه

بلاگ‌های مرتبط

مقایسه Zabbix با دیگر ابزارهای مانیتورینگ | جدول مقایسه

مقایسه Zabbix با دیگر ابزارهای مانیتورینگ | جدول مقایسه

16 دی 1404

نویسنده: Faeze Karimi

مقایسه Zabbix با دیگر ابزارهای مانیتورینگ | جدول مقایسه
تفاوت FMC و FTD چیست؟

تفاوت FMC و FTD چیست؟ (راهنمای کامل و کاربردی برای انتخاب درست)

6 دی 1404

نویسنده: Faeze Karimi

تفاوت FMC و FTD چیست؟ (راهنمای کامل و کاربردی برای انتخاب درست)
vPC یا Virtual Port Channel در سیسکو چیست؟ راهنمای کامل

vPC یا Virtual Port Channel در سیسکو چیست؟ راهنمای کامل

30 آذر 1404

نویسنده: Faeze Karimi

vPC یا Virtual Port Channel در سیسکو چیست؟ راهنمای کامل
سوئیچ Cisco Nexus چیست و چه تفاوتی با Catalyst دارد؟ + راهنمای انتخاب

سوئیچ Cisco Nexus چیست و چه تفاوتی با Catalyst دارد؟ + راهنمای انتخاب

15 آذر 1404

نویسنده: Faeze Karimi

سوئیچ Cisco Nexus چیست و چه تفاوتی با Catalyst دارد؟ + راهنمای انتخاب
نصب Zabbix در 5 دقیقه (راهنمای گام‌به‌گام)

نصب Zabbix در 5 دقیقه (راهنمای گام‌به‌گام)

5 آذر 1404

نویسنده: Faeze Karimi

نصب Zabbix در 5 دقیقه (راهنمای گام‌به‌گام)
چک لیست امنیت اکتیو دایرکتوری (Active Directory)

چک لیست امنیت اکتیو دایرکتوری (Active Directory)

28 آبان 1404

نویسنده: Faeze Karimi

چک لیست امنیت اکتیو دایرکتوری (Active Directory)

نظرات کاربران

0 0 امتیازها
امتیاز دهی به محتوا
مشترک شوید
اطلاع از
2 دیدگاه
جدید ترین
قدیمی ترین دیدگاه با تعداد رای زیاد
بازخورد (Feedback) های اینلاین
نمایش تمام دیدگاه ها