Anycast چیست

نویسنده:

دسته:

تاریخ انتشار:


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

Anycast چیست؟

Anycast یک روش آدرس‌دهی و مسیریابی شبکه‌ای است که در آن چندین سرور یا گره (Nodes)، آدرس IP یکسانی را به اشتراک می‌گذارند. در واقع، انیکست یکی از راه‌های ارسال درخواست‌های ورودی یک سایت به سمت موقعیت‌های جغرافیایی متفاوت است. روش‌های مختلفی برای مسیریابی وجود دارد. Anycast به هر یک از اعضای یک گروه اجازه می‌دهد تا بسته‌های داده ارسال شده به آن آدرس را دریافت کند. این بدان معناست که درخواست کلاینت توسط شبکه پردازش می‌شود و به نزدیک‌ترین یا بهینه‌ترین سرور از بین چندین کاندید که از نظر فیزیکی در سطح جهان پراکنده هستند، مسیریابی می‌شود. مدل ارتباطی انیکست one-to-one-of-many است. 

از این پروتکل برای سرویس‌هایی استفاده می‌شود که نیاز به دسترسی بالا با تأخیر کم دارند. یعنی انیکست کمک می‌کند تا ترافیک ورودی سایت به نزدیک‌ترین دیتاسنتری برسد که:

  • امکان پاسخگویی به درخواست را داشته باشد
  • کمترین فاصله جغرافیایی را با کاربر نهایی داشته باشد.

از جمله این سرویس‌ها می‌توان به سرورهای Domain Name System (DNS)، شبکه‌های تحویل محتوا (CDN) و برنامه‌های مختلف مبتنی بر اینترنت که نیاز به مدیریت توزیع‌شده دارند، اشاره کرد. یکی از دلایل اصلی محبوبیت استفاده از انیکست، سادگی و تحمل خطای بالای آن به همراه عملکرد بهبودیافته‌ای است که ارائه می‌دهد.

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

پیش از هر چیزی باید به این نکته اشاره کنیم که داده‌های اینترنتی به گروه‌هایی دسته‌بندی می‌شوند که بسته یا Packet نام دارند. این بسته‌ها همان داده‌هایی هستند که به کمک اینترنت و فناوری‌های مشابه از یک مبدأ به مقصد مشخص می‌رسند. در واقع این بسته‌بندی داده به شبکه کمک می‌کند تا پهنای باند را بهتر مدیریت کند. 

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

فرقی ندارد که بسته‌ها چه باشند، در هر صورت انیکست نزدیک‌ترین مسیر را به روتر انتخاب می‌کند. اگر نزدیک‌ترین مسیر یا همان سرور، از کار افتاده باشد، مسیر دومی که از دیگر مسیرها نزدیک‌تر است، انتخاب می‌شود و ترافیک مدنظر بدون نیاز به تغییر IP به سمت سرور هدایت می‌گردد.

اجازه دهید با یک مثال، نحوه عملکرد انیکست را بهتر توضیح دهیم. فرض کنید یک آدرس IP مقصد وجود دارد که 1.2.3.4 است. سرورهای مختلفی در جای‌جای دنیا از جمله ایران، چین، کره جنوبی و... می‌توانند به طور هم‌زمان این آی پی را دریافت کنند. اما پاسخ درخواست از سمت سروری ارسال می‌گردد که از لحاظ فیزیکی به آدرس آی پی مقصد نزدیک‌تر است. ناگفته نماند که معیارهای مسیریابی مثل میزان تأخیر، تعداد هاپ، مسیریابی مبتنی بر سیاست و... نیز بر انتخاب این راه هدایتی اثرگذار هستند. معمولاً در Application-layer Anycast به چنین مواردی توجه می‌شود. 

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

نحوه کارکرد Anycast

برای اطلاعات بیشتر بخوانید: bgp چیست؟

ویژگی‌های کلیدی مسیریابی Anycast

مسیریابی یا Routing انیکست ویژگی‌هایی دارد که آن را از سایر مدل‌های ارتباطی متمایز می‌کند. این ویژگی‌ها عبارت‌اند از:

  • مسیریابی و هدایت مبتنی بر نزدیکی: بسته‌ها همیشه به نزدیک‌ترین سرور هدایت می‌شوند تا عملکرد بهینه گردد.
  • افزونگی و تحمل خطا: حتی اگر سرور نزدیک از کار بیفتد، همچنان مسیریابی انجام می‌شود و از بین گره‌های دیگری که همان آدرس انیکست را منتشر می‌کنند، نزدیک‌ترین مورد انتخاب می‌شود. در نتیجه، کاری که باید انجام می‌گردد.
  • توزیع بار: ترافیک به طور طبیعی با اتصال کلاینت‌ها به نزدیک‌ترین یا بهترین گره مسیر خود متعادل می‌شود. در نتیجه، تأخیر و کاهش سرعت اتفاق نمی‌افتد.
  • سادگی و مقیاس‌پذیری: Anycast از نظر عملیاتی ساده‌تر از راهکارهای تغییر مسیر مبتنی بر DNS یا پروکسی است.
  • کارکرد گسترده: Anycast با هر دو طرح آدرس‌دهی IPv4 و IPv6 کار می‌کند. البته Anycast به طور رسمی در IPv4 پشتیبانی نمی‌شود، با این حال، این مسئله با استفاده از BGP قابل‌حل است. به این ترتیب انیکست سازگاری با پروتکل‌های موجود و در حال رشد اینترنتی را تضمین می‌کند. 

مزایای استفاده از فناوری Anycast

انیکست مزایای زیادی در زمینه خدمات اینترنتی ارائه می‌دهد، از جمله:

  • پاسخ سریع‌تر
  • تأخیر کمتر
  • تحمل خطای بالا
  • عدم مختل شدن سرویس در صورت بروز اختلال در یک مکان
  • کاهش حملات DDoS
  • سادگی
  • امنیت بالا

معایب Anycast

علی‌رغم مزایا، Anycast محدودیت‌هایی دارد که عبارت‌اند از:

  • بروز برخی ناپایداری‌های مسیریابی به دلیل مشکلات همگرایی BGP 
  • هدایت ناهموار ترافیک و ایجاد نقاط حساس
  • عدم کنترل دقیق
  • نیاز به سرمایه‌گذاری بالا در زیرساخت‌ها و تخصص عملیاتی
  • پیچیدگی‌های امنیتی و نیاز به اقدامات حفاظتی اضافی برای ایمن‌سازی مسیریابی 

کاربردهای Anycast

انیکست کاربردهای مختلفی دارد و به دلیل مزایای زیادی که دارد، به شکل گسترده توسط ارائه‌دهندگان اصلی زیرساخت‌های اینترنتی و اپراتورهای CDN استفاده می‌شود. در ادامه به برخی از مهم‌ترین کاربردهای انیکست اشاره می‌کنیم:

  • سرورهای ریشه DNS: سرورهای ریشه دی ان اس به طور گسترده‌ای از Anycast برای توزیع بار در سطح جهانی، بهبود انعطاف‌پذیری و کاهش حملات استفاده می‌کنند. این امر موجب کاهش زمان جستجو، بهبود تجربه کاربری در هنگام پیمایش در اینترنت و تقویم اکوسیستم DNS می‌شود.
  • شبکه‌های تحویل محتوا (CDN): سرویس‌هایی مانند Cloudflare، Google Public DNS و Microsoft Azure از Anycast برای هدایت ترافیک به نزدیک‌ترین مرکز داده، بهبود سرعت و در دسترس بودن تحویل محتوا استفاده می‌کنند.
  • ارائه‌دهندگان خدمات امنیتی: Anycast در سرویس‌های کاهش حملات DDoS نقشی اساسی دارد و به توزیع، جذب و مدیریت ترافیک حمله در چندین مرکز داده کمک می‌کند.
  • ارائه‌دهندگان خدمات سازمانی و میزبانی وب: بسیاری از شرکت‌های این چنینی DNS مبتنی بر Anycast و سرویس‌های تحویل برنامه را ارائه می‌دهند و از Anycast برای بهبود تجربه کاربر و کاهش تأخیر استفاده می‌کنند.
  • زیرساخت ترکیبی و چند ابری: شرکت‌های مدرن اغلب از شبکه‌های ترکیبی متشکل از منابع ابری داخلی، خصوصی و عمومی استفاده می‌کنند. Anycast به ایجاد یک لایه شبکه یکپارچه کمک می‌کند که می‌تواند درخواست‌های مشتری را صرف‌نظر از مکان یا نوع زیرساخت، به شکل مؤثر به بهترین نقطه پایانی موجود هدایت کند. 

دیگر روش‌های مسیریابی و مقایسه آن‌ها با Anycast

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

Unicast

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

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

تفاوت Anycast با Unicast

Multicast

Multicast ارتباط یک به چند را فراهم می‌کند. در واقع، در این شیوه ارتباطی یک فرستنده، جریان واحدی از بسته‌ها را به چندین گیرنده مولتی کست که توسط یک آدرس multicast IP گروه‌بندی شده‌اند، ارسال می‌کند. فقط اعضای واقعی می‌توانند آن ترافیک را دریافت ‌کنند. 

این رویکرد با جلوگیری از انتقال‌های اضافی، پهنای باند را حفظ می‌کند و معمولاً برای برنامه‌هایی مانند پخش زنده ویدئو یا صدا به چندین مشترک (subscriber)، IPTV یا توزیع داده‌های مالی در زمان واقعی استفاده می‌شود. ناگفته نماند که اجرای این شیوه ارتباطی به مکانیسم‌های پشتیبانی شبکه خاصی مثل Internet Group Management Protocol (IGMP) و روترهای مخصوص نیاز دارد.

تفاوت Anycast با Multicast

Broadcast

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

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

هم چنین بخوانید: arp چیست؟

Geocast

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

در این روش فرستنده یک منطقه جغرافیایی یا «منطقه Geocast» را مشخص می‌کند و بسته‌ها به گره‌های ساکن در آن منطقه ارسال می‌شوند. این شیوه مسیریابی برای سرویس‌های اطلاع‌رسانی مثل متون هشدار محلی، تبلیغات هدفمند، اعلان‌های اضطراری و امثال این موارد کاربرد دارد. پروتکل‌های Geocast اغلب به GPS یا سایر سیستم‌های موقعیت‌یابی متکی هستند و الگوریتم‌های مسیریابی آنها بر ارائه کارآمد پیام در مرزهای مکانی مشخص شده تمرکز دارند.

در جدول زیر می‌توانید تفاوت‌های این روش‌ها را با انیکست مشاهده کنید:

Unicast Multicast Broadcast Geocast Anycast ویژگی‌ها
یک به یک یک به چند یک به همه یک به منطقه مشخص شده یک به یک از چند شیوه ارتباطی
آی‌پی منحصر به فرد برای هر دستگاه آدرس IP گروهی آدرس پخش ویژه IP جغرافیایی یا مبتنی بر منطقه IP مشترک بین چندین گره آدرس‌دهی
ارسال به یک میزبان خاص ارسال به همه مشترکین گروه ارسال به تمام هاست‌های یک زیرشبکه ارسال به هاست‌های یک منطقه جغرافیایی ارسال به نزدیک‌ترین/بهترین گره تحویل ترافیک
مستقیم و قابل اعتماد کارآمد برای چندین گیرنده احتمال ایجاد ازدحام در شبکه دسترسی جغرافیایی هدفمند failover سریع با احتمال تغییر مسیر تأثیر بر عملکرد
پیمایش اینترنتی و انتقال فایل IPTV و کنفرانس‌ها ARP محلی، DHCP برنامه‌های وابسته به موقعیت مکانی DNS، CDN، سرویس‌های توزیع‌شده کاربردها
بالا برای بسیاری از گیرنده‌ها کارآمد برای گروه‌ها بالا برای شبکه‌های بزرگ کارآمد در مناطق مختلف توزیع بار بر اساس نزدیکی بار شبکه

Anycast چگونه از حملات DDoS پیشگیری می‌کند؟

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

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

مقاله حملات dos و ddos چیست، را بخوانید.

سخن نهایی

در این مقاله به بررسی یکی از روش‌های مسیریابی اینترنتی به نام انیکست پرداختیم. Anycast یک فناوری حیاتی در اینترنت است که امکان دسترسی به چندین سرور را از طریق یک آدرس IP یکسان فراهم می‌کند و درخواست‌های کاربر را به طور خودکار به نزدیک‌ترین یا بهینه‌ترین مکان هدایت می‌کند. با افزایش تقاضا برای استفاده از اینترنت، به ویژه برای برنامه‌های حساس به تأخیر و سرویس‌های خدماتی جهانی، Anycast همچنان یک جزء اساسی باقی خواهد ماند. همین کاربردها و مزایا، Anycast را به ستون تقویتی اینترنت مدرن تبدیل کرده است.

سوالات متداول

Anycast یک روش مسیریابی شبکه‌ای است که چندین سرور در نقاط مختلف جغرافیایی، یک آدرس IP مشترک دارند و درخواست‌ها به نزدیک‌ترین یا بهترین سرور هدایت می‌شود. از آن در DNS، CDN و مقابله با DDoS استفاده می‌شود.

در Anycast، بسته‌های داده از سمت کاربر به نزدیک‌ترین سرور (از نظر فاصله یا کیفیت مسیر) با IP مشترک هدایت می‌شود. این فرآیند با استفاده از پروتکل BGP انجام می‌گیرد.

در Unicast، هر درخواست فقط به یک سرور مشخص ارسال می‌شود، اما در Anycast چندین سرور یک IP دارند و بسته به موقعیت کاربر، درخواست به نزدیک‌ترین آن‌ها هدایت می‌شود.

کاهش تأخیر، افزایش سرعت پاسخ، تحمل خطا، سادگی در مقیاس‌پذیری، مقاومت در برابر حملات DDoS، و سازگاری با IPv4 و IPv6 از مهم‌ترین مزایای آن هستند.

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

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *


مقالات مرتبط

پروتکل ospf چیست؟ آشنایی کامل با پروتکل مسیریابی ospf

OSPF چیست و چگونه کار می‌کند؟

‌پروتکل OSPF (Open Shortest Path First) یکی از مهم‌ترین پروتکل‌های مسیریابی link-state در شبکه‌های IP است. این پروتکل با نگهداری...

مقایسه کامل تفاوت اتاق سرور و دیتاسنتر + مزایا و معایب

بررسی کامل تفاوت اتاق سرور و دیتاسنتر

در عصر دیجیتال، ستون فقرات عملیات هر سازمانی در زیرساخت فناوری اطلاعات آن نهفته است که عمدتاً در اتاق‌ سرور...

RTT چیست

RTT چیست | همه چیز درباره زمان رفت و برگشت در شبکه

rtt چیست؟ زمان رفت و برگشت (Round trip time) در شبکه معادل میلی‌ثانیه‌های موردنیاز برای رفتن یک بسته داده به...