BGP anycast چیست؟
BGP anycast روشی است که به کمک آن میتوان یک سرویس را روی سرورهای مختلف که آدرس IP مشابهی دارند ارایه کرد.
یکی از کاربردهای پروتکل BGP، پیدا کردن کوتاهترین مسیر (از نظر هزینه) به مقصد در شبکه است. زمانی که یک آدرس IP به عنوان زیر مجموعهای از آدرسهای یک AS منتشر میشود، این اطلاعات بین تمام روترهای BGP شبکه دست به دست منتقل میشوند و هر روتر آن را به همسایهی خود میدهد و به این ترتیب اطلاعات بین روترها پخش و منتشر میشود. زمانی که قرار است یک پیام برای یک آدرس IP ارسال شود، روتر مبدا به کمک اطلاعاتی که دربارهی روتر مقصد دارد و به کمک اطلاعات روترهای همسایه، نزدیکترین مسیر را پیدا و پیام را ارسال میکند. این راهحل برای سرویسهایی که تنها روی یک سرور ارایه میشوند مناسب است و با انتخاب کوتاهترین مسیر، پیامها در کمترین زمان مبادله میشوند. اما بسیاری از سرویسها روی بیشتر از یک سرور ارایه میشوند و ممکن است سرورها از نظر جغرافیایی در مکانهای مختلفی باشند.
اگر سرویسی روی بیش از یک سرور قرار داشته باشد و این سرورها از BGP anycast استفاده کنند، همهی آنها IP یکسانی خواهند داشت. به این ترتیب، زمانی که کاربر برای این آدرس IP درخواست ارسال میکند، نزدیکترین سرور از نظر هزینه با پروتکل BGP مشخص شده و به کاربر معرفی میشود. سرویس CDN هم که عملکرد مشابهی دارد، از BGP anycast برای پیدا کردن نزدیکترین سرور به کاربر استفاده میکند.
مزایای استفاده از BGP anycast
۱- جلوگیری از حملههای DDOS: با توجه به اینکه حملههای DDOS، حملههای توزیع شدهای هستند و عمومن از چندین نقطه به آدرس IP سرور حمله میکنند، استفاده از BGP anycast سبب میشود که بستههای ارسال شده از سمت مهاجم، بین سرورها پخش شوند. بنابراین، هیچ یک از سرورها، همهی درخواستها را دریافت نمیکند و یک سرور با احتمال کمتری به طور کامل از دسترس خارج میشود.
۲- توزیع بار: افزون بر توزیع ترافیک حملهکننده، ترافیک عادی کاربران هم بین سرورها توزیع میشود.
۳- کاهش تاخیر: با توجه به اینکه سازوکار anycast نزدیکترین سرور را پیدا میکند، پیامها در کوتاهترین زمان ممکن و با کمترین هزینه مبادله میشوند.
۴- افزایش دسترسپذیری و پایداری سرویس: با استفاده از BGP anycast، اگر یکی از سرورها از دسترس خارج شوند، سرویس کاربرانی که از آن سرور استفاده میکنند، قطع نمیشود و درخواستهای کاربران به سمت سرورهای دیگر هدایت میشود. همچنین در صورت نیاز، میتوان سادهتر از قبل تعداد سرورها را افزایش داد و لازم است سرور اضافه شده، آدرس IP مشابه سرورهای قبلی داشته باشد.
شبکه توزیع محتوای ابر آروان با معماری یکپارچهی anycast خود، بالاترین دقت را در تشخیص موقعیت جغرافیایی کاربران دارد.