یکی از چالش‌های مهم در شبکه توزیع محتوا، تشخیص دقیق موقعیت جغرافیایی کاربر است. اگرچه روش‌های سنتی تشخیص موقعیت به کمک DNS سرور در سال‌های اخیر رشد چشم‌گیری داشته، اما هم‌چنان دقت کافی ندارد و پیاده‌سازی یک ساختار پایدار و یکپارچه را با مشکلاتی همراه می‌کند. به همین دلیل آروان با استفاده از فناوری Anycast سعی دارد تا مشکل را بهبود دهد. به کمک این روش نشانی‌های IP آروان به‌شکل هم‌زمان در نقاط مختلف و سراسر جهان advertise می‌شود و هر کاربر حتا در نخستین اتصال به نزدیک‌ترین سرور لبه متصل‌شده و از آن نقطه سرویس دریافت می‌کند. در این مطلب، ابتدا روش‌های مسیریابی رایج را بررسی کرده و پس از آن، روش Anycast و مزایای آن را شرح می‌دهیم.

روش‌های آدرس‌دهی در شبکه‌های کامپیوتری

دسته‌بندی روش‌های آدرس‌دهی که در شبکه‌های کامپیوتری مورد استفاده قرار می‌گیرند به‌‌اختصار در ادامه شرح داده می‌شوند:

آدرس‌دهی Unicast

در این روش هر نشانی IP فقط به یک سامانه اختصاص داده می‌شود و در نتیجه بسته‌های ارسال‌شده به نشانی IP مذکور همواره به‌وسیله‌ی یک گیرنده مشخص دریافت می‌شود.

مسیریابی یونی کست - Unicast IP routing

آدرس‌دهی Multicast

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

مسیریابی مالتی کست - multicast IP routing

آدرس‌دهی Anycast

مسیریابی Anycast نه یک پروتکل مسیریابی متفاوت است و نه نیازی به وجود قابلیت خاصی در سرورها، سیستم کاربران و یا حتا سایر تجهیزات شبکه دارد. Anycast در واقع یک سازوکار پیکربندی است که در آن دو یا چند سرور از یک نشانی IP یکسان برای سرویس‌دهی استفاده می‌کنند. برای نمونه فرض کنید یک وب‌سرویس خاص با استفاده از سه سرور در نقاط مختلف دنیا (یا شبکه) مطابق شکل زیر ارایه شده باشد:

مسیریابی Anycast در شبکه توزیع محتوا - Anycast IP routing

همان‌گونه که در شکل مشاهده می‌کنید مسیریاب سمت کاربر، تمام مسیرهای دسترسی به سرورهای با آدرس 1.5.10.10 را به‌همراه فاصله آن محاسبه کرده و در جدول مسیریابی خود ذخیره می‌کند. هرگاه کاربر بسته‌ای به مقصد 1.5.10.10 ارسال کند مسیریاب آن بسته‌ را از کوتاه‌ترین راه مسیردهی خواهد کرد.

مسیریابی Anycast با استفاده از همه‌ی پروتکل‌های مسیریابی قابل پیاده‌سازی است و در شبکه‌ی توزیع محتوا یا CDN هم با استفاده از پروتکل مسیریابی BGP پیاده‌سازی می‌شود. به این ترتیب نشانی سرورهای ما با استفاده از پیام‌های BGP برای مسیر‌یاب‌های اینترنتی تبلیغ می‌شود و هر مسیریاب فاصله خود تا آن نشانی را محاسبه می‌کند. بنابراین هنگامی که یک کاربر در اینترنت قصد استفاده از این وب‌سرویس را داشته باشد با توجه به محل جغرافیایی خود به نزدیکترین سرور متصل‌شده و اطلاعات مورد نظر را دریافت می‌کند.

مزایای روش مسیریابی Anycast

استفاده از روش Anycast به‌جای روش‌های سنتی در آدرس‌دهی و مسیریابی، مزایای زیر را برای ما در بر خواهد داشت:

  • با استفاده از مسیریابی Anycast مساله‌ی دسترسی کاربران به سرویس‌های وب از نزدیک‌ترین مسیر ممکن، به‌عهده مسیریاب‌های اینترنت است و ما دیگر با مشکلات موجود در استفاده از روش‌های دیگر مانند پروتکل DNS (Cache شدن بسته‌های DNS در سیستم کاربران و …) روبه‌رو نخواهیم شد.
  • ارتباط کاربران از نزدیک‌ترین مسیر ممکن با سرویس‌دهنده‌های وب، سبب افزایش سرعت و کارآیی می‌شود.
  • مسیردهی کاربران مختلف بین سرورهای موجود در نقاط مختلف کشور و دنیا، باعث تقسیم بار بین چند سرور خواهد شد.
  • اگر یکی از سرورها از دسترس خارج شود، کاربران به‌شکل خودکار به‌سمت سرورهای دیگر مسیردهی خواهند شد.
  • اگر ترافیک بالایی از یک نقطه به قصد اجرای حمله‌ی DoS به‌سمت سرویس وب ارسال شود، ترافیک حمله به‌سمت یک سرور رفته و به این‌ ترتیب سبب ایجاد اختلال در کل سرویس نمی‌شود.

پاسخ به یک پرسش رایج

حال‌که با روش مسیریابی Anycast آشنا شدید، می‌خواهیم به یکی از پرسش‌های رایج کاربران CDN پاسخ دهیم: نشانی IP سرویس‌های وب که از CDN ابر آروان استفاده می‌کنند در داخل ایران است، آیا ترافیک تمام کاربران این سرویس‌ها (حتا کاربران ایرانی) به خارج از کشور رفته و از آن‌جا پاسخ داده می‌شود؟

پاسخ این سوال منفی است. برای روشن شدن مساله یک مثال فنی را بررسی می‌کنیم. گفتیم در پیکربندی مسیریابی anycast ما یک نشانی مشخص را به چند سرور در نقاط مختلف اختصاص می‌دهیم. از این پس این سرورها را «سرورهای لبه‌ی آروان» می‌نامیم. بازه‌ی نشانی 185.143.233.0/24 را که یکی از محدوده‌های نشانی Anycast آروان است را در نظر بگیرید. این بازه‌ی نشانی از کشور آلمان خریداری و به‌نام آن کشور نیز ثبت شده است. اما باید توجه داشت که خریداری یک بازه‌ی IP به‌نام یک کشور خاص، الزامی به استفاده از آن نشانی‌های IP در همان کشور را به‌همراه ندارد. برای نمونه فرض کنید مطابق شکل زیر قرار است دسترسی به وب‌سایت شرکت آروان (arvancloud.ir) با استفاده از سرورهای لبه‌ی CDN آروان و نشانی 185.143.233.2 به‌شکل Anycast امکان‌پذیر باشد.

مسیریابی Anycast در شبکه توزیع محتوای ابر آروان - Arvancloud Anycast IP routing

همان‌گونه که در شکل نیز نمایش داده شده، نشانی 185.143.233.2 در تمام سرورهای لبه تنظیم و به مسیریاب‌های مجاور تبلیغ خواهد شد. هنگامی‌که یک کاربر از هر نقطه دنیا دامنه‌ی سرویس مورد نظر خود را در این‌جا یا در مرورگر به‌شکل arvancloud بنویسد، سرورهای DNS آن دامنه را به نشانی 185.143.233.2 ترجمه می‌کنند و همان‌گونه که در بخش‌های قبل شرح دادیم مسیریاب‌های اینترنتی کاربر را به‌سمت نزدیک‌ترین سرور هدایت خواهند کرد. بنابراین مطابق شکل اگر کاربری در شهر دماوند قصد بازدید از وب‌سایت www.arvancloud.ir را داشته باشد، داده‌های مربوطه را از طریق سرور لبه آروان در تهران دریافت خواهد کرد. مشابه همین وضعیت اگر کاربر در شهر منچستر انگلستان باشد طبیعتن به‌سمت سرور لبه‌ی آروان در شهر لندن هدایت خواهد شد. به این ترتیب سرور لبه می‌تواند در هر نقطه از جهان (به‌ویژه در ایران) قرار گرفته و به درخواست‌های با مقصد 185.143.233.2 پاسخ دهد.

در پایان نتیجه می‌گیریم که ترجمه شدن یک دامنه به یک نشانی IP خارجی (در این مثال کشور آلمان) به‌وسیله‌ی سرورهای DNS، به این معنی نیست که آن سرور حتمن در همان کشور قرار گرفته و ترافیک به‌سمت خارج از کشور مسیریابی می‌شود.

یک پاسخ در “استفاده از مسیریابی Anycast در شبکه توزیع محتوای ابر آروان”

  • ۲۶ بهمن ۱۳۹۹ در۵:۱۱ ب٫ظ

    بسیار آموزنده

نظرات بسته شده است.