مراکز داده ابری مقیاس‌بزرگ و شبکه‌های VPN لبه با دسترس‌پذیری بالا، به ظرفیت انتقال غیرمسدودکننده و بازیابی سریع پس از رخداد خرابی در کسر ثانیه وابسته هستند. از دیرباز مهندسان شبکه برای اتصال سرورها با لینک‌های افزونه به سوئیچ‌های Leaf، از پروتکل‌های تجمیع چندشاسی (MLAG) یا روش‌های انحصاری سازندگان استفاده می‌کردند.

با این وجود، معماری MLAG لایه‌های کنترل دو سوئیچ را از طریق لینک‌های اختصاصی بین‌سوئیچی (ISL) به هم متصل می‌سازد. این وابستگی باعث ایجاد ناهمگونی در پیکربندی، پیدایش وضعیت مغز منقسم (Split-Brain) و ایجاد محدودیت‌های شدید در مقیاس‌پذیری می‌شود. کارگروه مهندسی اینترنت (IETF) این چالش‌های زیرساختی را با استانداردسازی چنداتصالی در شبکه اختصاصی مجازی اترنت (EVPN) در چارچوب اسناد RFC 7432 و RFC 8365 برطرف ساخت.

پروتکل EVPN با جداسازی افزونگی لینک‌ها از اتصالات فیزیکی میان سوئیچ‌ها، یک لایه کنترل استاندارد بر بستر Multiprotocol BGP (MP-BGP) بنیان نهاده است. با بهره‌گیری از شناسه‌های سگمنت اترنت (ESI)، ارسال همزمان داده (All-Active)، انتخابات سوئیچ هدایتگر (DF) و گیت‌وی‌های متقارن Anycast، پایداری فراگیری در لایه‌های ۲ و ۳ شبکه‌های مدرن فراهم می‌شود.

بن‌بست پروتکل سنتی MLAG: دلایل ناکارآمدی افزونگی لایه ۲ اختصاصی در مقیاس بزرگ

در طول دو دهه گذشته، فناوری MLAG سازوکار بنیادین برای ایجاد مسیرهای دوگانه به سرورها بدون نیاز به مسدودسازی پورت‌ها توسط پروتکل درخت پوشا (STP) به شمار می‌رفت. در این الگو، دو سوئیچ فیزیکی با یکدیگر جفت می‌شدند تا یک بسته تجمیع‌شده لینک LACP طبق استاندارد IEEE 802.1AX را به دستگاه متصل ارائه دهند.

با وجود کاربرد فراوان، MLAG شامل نقاط ضعف ساختاری بزرگی است:

  1. پیوند انحصاری لایه کنترل: پروتکل MLAG نیازمند سیگنال‌های همگام‌سازی اختصاصی از طریق لینک‌های ویژه بین‌سوئیچی (ISL) است. بنابراین امکان ترکیب سوئیچ‌های تولیدکنندگان گوناگون در یک گروه افزونه وجود ندارد.
  2. ریسک‌های پدیده Split-Brain: اگر ارتباط ISL قطع شود و بسته‌های کنترلی تبادل نشوند، هر دو سوئیچ به طور همزمان مالکیت آدرس‌های IP و MAC مجازی را بر عهده می‌گیرند. این رخداد به تولید بسته‌های تکراری، اختلال در جداول ARP سرورها و افت ترافیک منجر می‌شود.
  3. محدودیت دو دستگاهی غیرقابل گسترش: ساختار MLAG به صورت پایه بیش از دو سوئیچ فیزیکی را پشتیبانی نمی‌کند؛ در نتیجه اتصال موازی یک سرور به سه یا چهار سوئیچ مختلف در رک‌های توزیع‌شده ناممکن است.

پروتکل EVPN این مدل شکننده را با انتقال هماهنگی چندشاسی به پیام‌های استاندارد MP-BGP جایگزین می‌نماید.

معماری چنداتصالی در BGP EVPN: لایه کنترل استاندارد RFC 7432

استاندارد RFC 7432 پروتکل EVPN را به عنوان یک لایه کنترل مبتنی بر BGP برای سرویس‌های اترنت در بسترهای IP و MPLS معرفی می‌کند. در ساختار چنداتصالی EVPN، سوئیچ‌های Leaf به طور کامل دارای لایه‌های کنترل مستقل هستند و هیچ‌گونه اتصال سیمی اختصاصی میان آنها الزامی نیست.

فرایند همگام‌سازی منحصراً از طریق تبادل مسیرهای MP-BGP AFI 25 (L2VPN) و SAFI 70 (EVPN) بر روی بستر فیزیکی شبکه زیرساخت (Underlay) صورت می‌پذیرد.

شناسه‌های سگمنت اترنت (ESI): تفکیک لینک‌ها از سخت‌افزار فیزیکی

یک سگمنت اترنت (Ethernet Segment یا ES) مجموعه‌ای از لینک‌های فیزیکی افزونه است که یک دستگاه سمت کاربر را به چند سوئیچ Leaf متصل می‌سازد. به هر سگمنت، یک شناسه یکتا به طول ۱۰ بایت به نام Ethernet Segment Identifier (ESI) نسبت داده می‌شود.

استاندارد RFC 7432 ساختارهای گوناگونی برای ESI مشخص کرده است. در شبکه‌های دیتاسنتر، نوع Type 0 (تنظیم دستی توسط مهندس شبکه) و Type 1 (تولید خودکار از روی آدرس MAC کاربر و کلید پورت LACP طبق IEEE 802.1AX) بیشترین کاربرد را دارند:

+--------------------+---------------------------------------+
| نوع ESI (۱ بایت)   | مقدار شناسه (۹ بایت)                  |
+--------------------+---------------------------------------+
| نوع 0x00           | شناسه اختیاری ۹ بایتی دستی            |
| نوع 0x01           | آدرس مک کاربر (6B) + پورت‌کی (2B) + 0  |
+--------------------+---------------------------------------+

هنگامی که دو سوئیچ Leaf مقدار ESI غیرصفر یکسانی را روی درگاه‌های متصل به سرور دریافت می‌کنند، اتصال به یک سگمنت اترنت مشترک را تشخیص داده و فرایند همگام‌سازی را فعال می‌سازند.

انواع مسیرهای EVPN در عمل: کشف خودکار و سیگنالینگ سگمنت‌های اترنت

سند RFC 7432 انواع ویژه‌ای از مسیرهای BGP NLRI را برای سازماندهی چنداتصالی معرفی می‌کند:

  • مسیر نوع ۱ (Ethernet Auto-Discovery Route): به ازای هر سگمنت ESI منتشر می‌شود تا قابلیت All-Active را اعلام نماید و برچسب‌های فیلترینگ Split-Horizon را تبادل کند. این مسیر همچنین امکان بازپس‌گیری جمعی در زمان قطعی لینک را ایجاد می‌کند.
  • مسیر نوع ۲ (MAC/IP Advertisement Route): آدرس‌های MAC و نگاشت‌های ARP ثبت‌شده روی ESI را به همراه شناسه‌های لایه ۲ (VNI) اعلام می‌دارد.
  • مسیر نوع ۴ (Ethernet Segment Route): سایر سوئیچ‌های متصل به همان سگمنت ESI را شناسایی کرده و آدرس‌های IP آنها را برای آغاز انتخابات Designated Forwarder به اشتراک می‌گذارد.

هدایت داده All-Active: دستیابی به توزیع بار متقارن چندشاسی با LACP

پروتکل EVPN از دو حالت افزونگی پشتیبانی می‌کند: Single-Active و All-Active. در حالت Single-Active تنها یک سوئیچ داده‌ها را ارسال می‌کند و لینک‌های دیگر در حالت آماده‌باش قرار می‌گیرند. در وضعیت All-Active، همه سوئیچ‌های متصل به طور همزمان فریم‌های داده ارسالی از سرور و به سوی آن را هدایت می‌کنند.

از آنجا که سرور پیوند تجمیع‌شده استاندارد LACP را روی پورت‌های خود فعال کرده است، ترافیک خروجی به شکل متوازن در میان سوئیچ‌ها تقسیم می‌شود. سوئیچ‌های Leaf ترافیک را درون بسته‌های VXLAN کپسوله نموده و بدون خطر ایجاد حلقه در بستر شبکه انتقال می‌دهند.

معماری جلوگیری از حلقه: فیلترینگ Split-Horizon با برچسب‌های ESI

در یک ساختار All-Active، هنگامی که سروری یک بسته همگانی یا چندپخشی (BUM) را به سوئیچ Leaf-1 ارسال می‌کند، این سوئیچ بسته را روی بستر VXLAN کپی کرده و به Leaf-2 می‌فرستد. با این حال، Leaf-2 نیز مستقیماً از طریق سگمنت مشترک ESI به همان سرور مبدا متصل است.

اگر سوئیچ Leaf-2 این بسته دریافتی را دوباره به سمت سرور بفرستد، چرخه و حلقه لایه ۲ پدید می‌آید. پروتکل EVPN این مشکل را با فیلترینگ Split-Horizon مهار می‌کند:

  1. سوئیچ‌های Leaf یک برچسب ویژه ESI Label را در مسیرهای نوع ۱ (Route Type 1 per-ES) اعلام می‌نمایند.
  2. زمانی که Leaf-1 ترافیک BUM دریافتی از سگمنت ESI-A را در VXLAN کپسوله می‌کند، برچسب مبدا ESI را در آن جای می‌دهد.
  3. با رسیدن بسته به Leaf-2، سخت‌افزار برچسب ESI مبدا را بررسی می‌کند. چنانچه بسته از همان سگمنت ESI-A صادر شده باشد، Leaf-2 آن را در درگاه محلی ESI-A فیلتر و رها می‌سازد، اما ارسال به سایر درگاه‌ها ادامه می‌یابد.

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

انتخابات Designated Forwarder (DF): مهار تکثیر تکراری ترافیک BUM

گرچه وضعیت All-Active به تمامی سوئیچ‌ها اجازه می‌دهد ترافیک تک‌پخشی شناسایی‌شده را انتقال دهند، اما ترافیک BUM رسیده از هسته شبکه به سوی کلاینت باید منحصراً توسط یک سوئیچ در هر دامنه انتشاری هدایت شود. اگر هر دو سوئیچ ترافیک همگانی را به سمت سرور بفرستند، سیستم با بسته‌های تکراری مواجه می‌شود.

پروتکل EVPN فرایند انتخابات سوئیچ هدایتگر (Designated Forwarder یا DF) را اجرا می‌کند تا به ازای هر VLAN، یک سوئیچ مشخص عهده‌دار ترافیک BUM گردد.

الگوریتم انتخابات بر پایه ماژولو: مکانیسم اجرا و چالش‌های هشینگ نامتوازن

سند RFC 7432 الگوریتم پیش‌فرض انتخابات DF را بر پایه حساب ماژولو تعریف کرده است. سوئیچ‌های حاضر در شبکه، اعلان‌های مسیر نوع ۴ مربوط به ESI را گردآوری کرده، نشانی‌های IP را به صورت صعودی مرتب نموده و شاخص‌های عددی i (از 0 تا N - 1) به آنها اختصاص می‌دهند.

سوئیچ برگزیده برای هدایت ترافیک در شبکه محلی V مطابق معادله زیر تعیین می‌شود:

DF Index = V mod N

در این معادله V شناسه VLAN و N تعداد کل سوئیچ‌های PE رقیب است. علی‌رغم سادگی، این شیوه در توزیع‌های گسسته VLAN می‌تواند موجب نامتوازن شدن توزیع بار گردد.

انتخابات DF مبتنی بر اولویت: کنترل قطعی با استاندارد RFC 8584

برای پوشش کاستی‌های روش ماژولو، سند RFC 8584 چارچوب جامع‌تری تدوین کرده است. این استاندارد انتخابات مبتنی بر اولویت را با استفاده از ویژگی BGP DF Election Extended Community معرفی می‌نماید:

+-----------------------------------------------------------+
| مقدار اولویت DF (۲ بایت)    | پرچم‌های وضعیت انتخابات (۲ بایت) |
+-----------------------------------------------------------+

مدیران شبکه می‌توانند به هر سوئیچ یک عدد اولویت معین (بین 0 تا 65535) اختصاص دهند. سوئیچ دارنده بالاترین اولویت به عنوان DF اصلی تعیین می‌شود. استاندارد RFC 8584 همچنین شامل زمان‌سنج‌های بازگشت آرام و سازوکار Don't Preempt Me (DP) است که از نوسان‌های ناگهانی ترافیک هنگام راه‌اندازی مجدد سوئیچ‌ها جلوگیری می‌کند.

گیت‌وی‌های توزیع‌شده Anycast: مسیریابی متقارن IRB در سوئیچ‌های Leaf

چنداتصالی EVPN به طور همگام با فناوری مسیریابی و پل‌زنی یکپارچه (IRB) عمل می‌کند تا تبادل داده بین زیرشبکه‌های گوناگون را سامان دهد. پروتکل‌های سنتی مانند VRRP باعث مصرف غیربهینه پهنای باند و ایجاد گلوگاه در یک روتر مرکزی می‌شدند.

در برابر آن، EVPN یک گیت‌وی Anycast توزیع‌شده را روی تمامی سوئیچ‌های Leaf فعال می‌کند:

  • تمامی سوئیچ‌ها یک آدرس IP مجازی و آدرس MAC مجازی کاملاً یکسان را به عنوان گیت‌وی هر زیرشبکه در اختیار دارند (برای نمونه IP 10.100.1.1/24 و MAC 00:00:5E:00:01:01).
  • هنگام ارسال درخواست ARP از سوی دستگاه، سوئیچ Leaf مستقر در محل مستقیماً پاسخ می‌دهد.
  • مسیریابی بین زیرشبکه‌ها بلافاصله در همان اولین سوئیچ با الگوی Symmetric IRB مطابق RFC 9135 صورت می‌پذیرد. بسته‌ها با شناسه لایه ۳ (مانند VNI 50000) کپسوله شده و بدون نیاز به پیمایش مسیرهای اضافی در روترهای مرکزی، در طول شبکه جابه‌جا می‌شوند.

همگرایی سریع و بازپس‌گیری جمعی: حذف سیاه‌چاله آدرس‌های MAC در قطعی لینک

در مراکز داده با مقیاس وسیع، یک سگمنت اترنت ممکن است میزبان ده‌ها هزار آدرس MAC باشد. اگر لینک فیزیکی میان Leaf-1 و سرور دچار قطعی شود، ابطال تک‌تک مسیرهای نوع ۲ از طریق پیام‌های BGP چندین ثانیه طول کشیده و موجب ریزش شدید ترافیک می‌شود.

فناوری EVPN این مانع را به کمک بازپس‌گیری جمعی (Mass Withdrawal) حل کرده است:

آدرس مک سرور (00:1A:2B:3C:4D:5E) ---> اعلام همراه با ESI-123 (مسیر نوع ۲)
سوئیچ‌های Leaf-1 و Leaf-2        ---> اعلام دسترسی به ESI-123 (مسیر نوع ۱)

سوئیچ‌های دوردست جدول‌های هدایت چندمسیره با هزینه یکسان (ECMP) را به سمت هر دو سوئیچ تنظیم می‌کنند. زمانی که اتصال فیزیکی Leaf-1 قطع می‌گردد:

  1. سوئیچ Leaf-1 در کسری از ثانیه فقط یک مسیر نوع ۱ مربوط به ESI-123 را پس می‌گیرد.
  2. سایر سوئیچ‌ها فوراً Leaf-1 را از فهرست مقصدهای ECMP برای کلیه آدرس‌های MAC آن سگمنت حذف کرده و بار ترافیک را ظرف چند میلی‌ثانیه به Leaf-2 منتقل می‌سازند.
  3. پاکسازی مسیرهای جزئی نوع ۲ متعاقباً در پس‌زمینه بدون ایجاد وقفه در نشست‌های جاری تکمیل می‌شود.

برای بررسی مسیرهای هدایت بسته و تحلیل داده‌های مسیریابی، مهندسان می‌توانند مشخصات ارتباطی را در ابزار بررسی نشانی IP ارزیابی نمایند.

بستر ارتباطی RiceGuard Edge Fabric: زیرساخت تاب‌آور گیت‌وی‌های Anycast

در شبکه VPNRice، زیرساخت ارتباطی پایدار RiceGuard استاندارد BGP EVPN All-Active را مطابق RFC 7432 در سراسر نقاط حضور لبه در مناطق مختلف پیاده‌سازی کرده است. برچیدن خوشه‌های سنتی MLAG پایداری در سطح شبکه‌های مخابراتی را فراهم می‌آورد:

  • تعمیر و نگهداری بدون قطعی نودهای لبه: نودهای گیت‌وی لبه ارتقای هسته سیستم‌عامل را بدون افت ارتباط سپری می‌کنند. تغییر سطح اولویت طبق RFC 8584 موجب تخلیه تدریجی ترافیک به سمت نودهای مجاور پیش از شروع عملیات فنی می‌شود.
  • توزیع بار متقارن ECMP در ورودی شبکه: ترافیک دریافتی از اپراتورهای ترانزیت بالادستی به طور متعادل روی خوشه‌های All-Active توزیع می‌شود تا از اشباع مسیرهای نامتقارن جلوگیری گردد. کاربرانی که نرم‌افزار را از طریق نرم‌افزار کلاینت دریافت می‌نمایند، از اتصالی پایدار بهره‌مند می‌شوند.
  • بهینه‌سازی شبکه متکی بر تله‌متری: وضعیت شبکه‌های مجازی لایه ۲ و ۳ با داده‌های پایش لحظه‌ای درآمیخته است؛ همان‌گونه که در پژوهش‌های مربوط به برنامه‌نویسی شبکه SRv6 و هشینگ ECMP در پروتکل‌های GRE-in-UDP و GENEVE تشریح شد.

پیاده‌سازی کاربردی: پیکربندی چنداتصالی EVPN در FRRouting لینوکس

بسته‌های نرم‌افزاری متن‌باز مانند FRRouting (FRR) از قابلیت‌های چنداتصالی EVPN طبق RFC 7432 در لینوکس پشتیبانی می‌کنند. در ادامه نمونه‌ای از تنظیمات یک سگمنت فعال و گیت‌وی Anycast در محیط FRR آورده شده است:

! /etc/frr/frr.conf
router bgp 65001
 bgp router-id 192.0.2.11
 no bgp default ipv4-unicast
 neighbor FABRIC peer-group
 neighbor FABRIC remote-as 65000
 neighbor 192.0.2.1 peer-group FABRIC
 !
 address-family l2vpn evpn
  neighbor FABRIC activate
  advertise-all-vni
  advertise-default-gw
  autort rfc8365-compatible
 exit-address-family
!
interface bond0
 description Dual-Homed CE Link
 evpn multihoming es-id 00:11:22:33:44:55:66:77:88:99
 evpn multihoming es-sys-mac 00:11:22:33:44:55
 evpn multihoming df-preference 50000
!
interface vlan100
 description Anycast Gateway Subnet
 ip address 10.100.1.1/24
 ip gateway-address 10.100.1.1

گذار از راهکارهای شکننده MLAG به استانداردهای آزاد BGP EVPN All-Active، قابلیت مهار دقیق خرابی‌ها، تعامل‌پذیری چندتولیدکننده‌ای و گسترش خطی را در دسترس تیم‌های زیرساخت قرار می‌دهد.