CDN یا شبکه توزیع محتوا، یک توزیع جغرافیایی از سرورها است که با ذخیره محتوا در نزدیکترین منطقه به کاربران خود، تحویل محتوای وب را سریعتر و با حداقل بار ترافیکی بر روی سرورها انجام میدهد. کش (cache) وب به فرآیند ذخیره دادهها برای استفاده مجدد اشاره دارد؛ بنابراین میتواند درخواستهای مربوط به همان محتوا را بدون دانلود انجام دهد و بار کاری منابع سرور و شبکه را کاهش دهد.
آنچه در این مقاله میخوانید:
مسیریابی بهینه شده چگونه کار میکند؟
می توانید این پروتکل ها را به سه کلاس اصلی زیر تقسیم کنید
اما به دلیل جریان عظیم ترافیک اینترنتی، ارائه محتوای وب به کاربران به صورت مناسب و سریع ممکن است چالشبرانگیز باشد. CDN ها از مسیریابی بهینه برای هدایت ترافیک به موقعیت جغرافیایی کاربران استفاده میکنند تا به سرعت به محتوای وب دسترسی پیدا کنند.
مفهوم بهینهسازی تحویل در سرویس CDN به مسیریابی بهینه اشاره دارد. مسیریابی بهینه نقش مهمی در مهندسی ترافیک (traffic engineering-TE) ایفا میکند، که هدف آن انتخاب مسیری با پهنای باند مناسب برای پشتیبانی از حداکثر ترافیک مشتری بدون ایجاد ازدحام در شبکه و عملکرد ضعیف است. هرچند استفاده از کوتاهترین مسیر معمولاً برای تحویل بستههای داده ایدهآل نیست، اما مسیریابی بهینه به کمک الگوریتمهای پیشرفته مانند تقسیم بار، بهترین مسیر را برای ارائه محتوا انتخاب میکند.
روشهای مسیریابی بهینه در TE
محدوده بهینهسازی ترافیک
در حین انتقال دادهها، ممکن است دادهها در محدوده یک سیستم مستقل (AS) مانند یک مسیر داخلی یا در محدوده چندین سیستم مستقل (AS) مانند یک مسیر بین دامنه قرار گیرند. در مسیریابی بین دامنهها، تلاش میشود با تصمیمگیری در مورد مسیریابهای مرزی ASBR (AS Border Router) برای ورود و خروج ترافیک از طریق شبکه محلی، ترافیک و در نتیجه منابع شبکه را در هنگام حرکت بهینه کرد. مسیریابی بهینهسازی شده در مهندسی ترافیک (TE) نقش مهمی دارد که هدف آن انتخاب مسیری با پهنای باند مناسب برای پشتیبانی از حداکثر ترافیک مشتریان بدون ایجاد ازدحام شبکه است.
مکانیسم اجرای مسیریابی
رویکردهای اجرای مسیریابی در شبکههای کامپیوتری میتواند بر اساس پروتکلهای IP یا پروتکل MPLS (Multiprotocol Label Switching) باشد. در روش مبتنی بر IP، با تنظیم پروتکلهای مسیریابی اینترنتی مانند OSPF، IS-IS و BGP مسیریابی بهینهسازی میشود.
اما در روش مبتنی بر MPLS، کپسولهسازی بستهها و سوئیچینگ از طریق مسیرهای سوئیچینگ برچسب اختصاصی (label switching paths- LSP) صورت میگیرد. این روش معمولا برای شبکههایی با ترافیک بالا و ارتباطات پایدار مورد استفاده قرار میگیرد.
در دسترس بودن تقاضای ترافیک
ترافیک شبکههای IP میتواند در دو حالت آنلاین یا آفلاین باشد. در صورتی که تقاضای ترافیک آفلاین باشد، تکنولوژی مهندسی ترافیک (Traffic Engineering) یا TE، تقاضای ترافیک را میداند و با ترسیم تقاضای ترافیک پیشبینیشده بر روی شبکه، به تأمین کیفیت سرویس (Quality of Service) کمک میکند. در مقابل، در یک سیستم آنلاین (IP network provider- INP)، ارائهدهنده شبکه IP باید محاسبات سبک و انتخاب مسیر کارآمد را برای تمام ترافیک ورودی بدون اطلاع از تقاضای ترافیک از قبل، انجام دهد. به این ترتیب، تحویل پاسخ به تقاضای ترافیک با سرعت و کیفیت بالا تضمین میشود.
نوع ترافیک
نهایتاً، ترافیک اینترنت ممکن است در جریانهای مختلفی مانند unicast، anycast یا multicast باشد. CDNها به منظور ارائه سریعتر محتوا از مسیریابی برای مطابقت با درخواستها و هدایت ترافیک استفاده می کنند، زیرا حجم عظیمی از ترافیک توزیع شده از طریق اینترنت از CDNها استفاده میکنند. این CDNها از چندین مسیر ترانزیت بین سرورهای توزیع محتوا و ارائهدهندگان خدمات اینترنتی (ISP) استفاده می کنند که اتصال اینترنتی را برای آن سرورها فراهم میکنند. با این حال، این مسیرها با درجات متفاوتی از عملکرد و هزینه همراه هستند.
بنابراین، CDNها باید عملکرد را با در نظر گرفتن اقتصادی بودن بهینه کنند. میتوان فرآیند مسیریابی را به یک سیستم ترافیکی تشبیه کرد که هدف آن ارائه محصولات با کوتاهترین و سریعترین مسیر است. اما مسیر حمل و نقل طولانیتر به معنای زمان بارگذاری طولانیتر وبسایت است. سرعت تحویل محتوا تا حد زیادی به انتخاب مسیر حمل و نقل وابسته است. با این حال، انتخاب کوتاهترین مسیر همیشه ایدهآل نیست، بنابراین باید پروتکلهای مسیریابی و پارامترهای شبکه را در نظر گرفت و قبل از انتخاب مسیری برای تحویل بستهها، مسیریابی بهینه، مقرون به صرفه ترین راه را برای ارائه محتوای وبسایت به کاربران پیدا کند.
مسیریابی بهینه شده چگونه کار میکند؟
پروتکلهای مسیریابی، از الگوریتمهایی مسیریابی برای بهینهسازی مسیریابی و تعیین مسیر مناسب برای رسیدن بستهها به مقصد، استفاده می کنند. در شبکههای کامپیوتری، پروتکلهای مسیریابی مختلفی وجود دارند که از آنها برای مدیریت ترافیک شبکه استفاده میگردد.پروتکلهای مسیریابی مختلفی وجود دارند که هر کدام با الگوریتمهای مختلفی برای بهینهسازی مسیریابی کار میکنند. برخی از این پروتکلها شامل پروتکل اطلاعات مسیریابی (Routing Information Protocol- RIP)، پروتکل دروازه داخلی (Interior Gateway Protoco- IGRP)، کوتاهترین مسیر اول (Open Shortest Path First O- SPF)، پروتکل دروازه خارجی (Exterior Gateway Protocol- EGP) و پروتکل دروازه مرزی (Border Gateway Protocol- BGP) هستند.
می توانید این پروتکل ها را به سه کلاس اصلی زیر تقسیم کنید
بردار فاصله یا پروتکل وضعیت پیوند (Link State Protocol)
پروتکل بردار فاصله برای تعیین مسیر بهینه برای تحویل بسته از تعداد پرش استفاده میکند. تعداد پرش به تعداد دستگاههای میانی مانند روترها یا مودمهایی اشاره دارد که بسته داده معین باید بین مبدا و مقصد از آنها عبور کند. به عنوان مثال، تعداد پرش سه به معنای عبور از سه دروازه قبل از رسیدن بستهها به مقصد است.
پروتکل حالت پیوند از الگوریتمی استفاده میکند که سرعت رسیدن به مقصد و هزینه منابع شبکه را برای یافتن بهترین مسیر محاسبه میکند و اطلاعات مسیریابی را با روترهای دیگر در مجاورت خود مبادله میکند.
IGP یا EGP
پروتکلهای دروازه داخلی (IGP) اطلاعات مسیریابی را با روترهای دیگر در یک Autonomous System (AS) مبادله میکنند. از طرف دیگر، پروتکلهای دروازه خارجی (EGP) این کار را با روترهای دیگر در چندین AS انجام میدهند و اطلاعات مسیریابی را بین این ASها مبادله میکنند.
پروتکل های طبقه بندی شده و بدون کلاس
این پروتکلها از معیار تعداد پرش بین شبکهها برای انتخاب مسیرها استفاده میکنند. پروتکلهای قدیمی طبقهبندی شده به دلیل عدم ارسال اطلاعات مربوط به ماسک زیر شبکه در طول بهروزرسانیهای مسیریابی، جای خود را به پروتکلهای بدون کلاس دادهاند. زیرا پروتکلهای مسیریابی بدون کلاس این اطلاعات را در ارسال مسیریابی لحاظ میکنند.
الگوریتمهای مسیریابی
الگوریتمهای مسیریابی در حافظه روتر ذخیره شدهاند و به روتر کمک میکنند تا بهترین مسیر را برای تحویل بستهها به مقصد تعیین کند. این الگوریتمها با در نظر گرفتن پارامترهایی مانند هزینه ارتباطات بسته، تاخیر، پهنای باند، توان عملیاتی، حداکثر تاخیر زمانی واحد انتقال و تعداد پرش، به مسیریابی میپردازند. از جمله ویژگیهای الگوریتمهای مسیریابی، میتوان به پویایی آنها اشاره کرد که به معنی تغییر دادن جدول مسیریابی به صورت پویا با توجه به عوامل شبکه مانند فاصله است. همچنین، الگوریتمهای مسیریابی میتوانند ثابت باشند که در آن مدیران شبکه جدول مسیریابی را به صورت دستی پیکرهبندی میکنند.
مسیریابی استاتیک ممکن است برای شبکههای کوچک مناسب باشد؛ اما با رشد شبکهها، هزینه های نگهداری مسیریابی افزایش مییابد. از آنجایی که مسیریابی پویا مسیرها را به صورت پویا اختصاص میدهد، مدیریت آن برای شبکههای کوچکتر آسانتر است و تحمل خطای بهتری را فراهم میکند؛ زیرا در صورت خرابی یک مسیر، ترافیک میتواند به مسیر دیگری منتقل شود.
الگوریتمهای مسیریابی گاهی اوقات با پروتکلهای مسیریابی اشتباه گرفته میشوند؛ زیرا به شدت به آنها وابسته هستند. از آنجایی که پروتکل مسیریابی الگوریتم تحویل بستههای داده را مشخص میکند، برای تغییر الگوریتم باید پروتکل مسیریابی را تغییر دهید. قبل از تصمیمگیری درباره اجرای پروتکل مسیریابی در شبکه خود، الگوریتمهای مختلف پشتیبانی شده را به دقت بررسی کنید.
مسیریابی Unicast و Anycast
مسیریابی Unicast و Anycast الگوریتم هایی هستند که برای تعیین بهترین مسیر جهت ارسال ترافیک در شبکه استفاده میشوند. در این الگوریتم ها، چندین مسیر محاسبه میشود تا بهترین مسیر برای ارائه ترافیک به گیرنده تعیین شود. مسیریابی Unicast شامل یک فرستنده و یک گیرنده است. در این الگوریتم، هر گره به یک آدرس IP منحصر به فرد اختصاص داده میشود و با استفاده از مسیرهای ثابت، گیرنده ها به فرستنده ها متصل میشوند. اما این سیستم تک گره قابل اعتماد نیست و هر مشکلی در این گره میتواند ارتباط بین فرستنده و گیرنده را قطع کند. همچنین، در مقیاس بزرگ، تأخیر شبکه در تحویل بستههای داده مانند ویدیوها و نرمافزارها افزایش مییابد.
مسیریابی Anycast بهبود بسیاری نسبت به Unicast دارد. در این مسیریابی به جای تخصیص چندین گره به یک آدرس IP هنگام ارسال بستهها به گرههای مشخص، با در نظر گرفتن عواملی مانند ظرفیت و سلامت سرور و فاصله بین گره و بازدیدکننده وب، مسیر مناسب تعیین میشود. این الگوریتم مزایایی مانند کاهش حملات DDoS با هدایت ترافیک اضافی به سمت گرههای دیگر در صورت ایجاد مشکل برای یک گره را دارد.
یکی دیگر از تفاوتهای مهم بین مسیریابی Unicast و Anycast این است که همه گره ها از یک آدرس IP واحد در مسیریابی anycast استفاده می کنند. در مقابل، هر آدرس IP در یک گره unicast منحصر به فرد است.
مزایای مسیریابی بهینه چیست؟
مسیریابی بهینه دارای مزایای متعددی است که در ادامه به تعدادی از آنها اشاره میکنیم:
افزایش عملکرد شبکه
انتخاب بهترین مسیر، باعث بهینهسازی عملیات شبکه و بهبود عملکرد هر ابزار و منبع میشود. برای مثال، در مسیریابی anycast، استفاده از نزدیکترین گره واسطه، باعث کاهش زمان رفت و برگشت (RTT)، تعداد پرش و تأخیر و در نتیجه بهبود عملکرد شبکه میشود.
کاهش DDoS
اثر اولیه حملات DDoS، از دسترس خارج شدن سرویس هاست. در صورت استفاده از جریان مسیریابی anycast، در دسترس بودن چندین گره، از قطعی کامل ارتباط با گیرنده جلوگیری میکند و خرابی یک گره به ترافیک بیش از حد منجر نمیشود. با این روش، عملیات شبکه با حداقل وقفه پیش میرود
توزیع بار ترافیکی
بهینهسازی مسیر، با ارزیابی توزیع ترافیک در چندین گره، از ازدحام لینک انتقال جلوگیری میکند. برای مثال، در صورتی که سه جریان با استفاده از روش مسیریابی کوتاهترین مسیر از یک مسیر یکسان استفاده کنند، ممکن است استفاده از این مسیر منجر به افزایش ترافیک و ازدحام لینک در آن شود. برای فهم بهتر، میتوان به ترافیک دنیای واقعی اشاره کرد. استفاده همه از میانبرهای یکسان، همان ترافیکی را ایجاد میکند که سعی میکردند از آن اجتناب کنند.
سوالات متداول:
چگونه میتوان مسیردهی در شبکه توزیع محتوا را بهبود داد؟
برای بهبود مسیردهی در شبکه توزیع محتوا، از روشهای مختلفی مانند بار تعادلی، مسیریابی چند مسیره، مسیریابی Unicast و Anycast و روشهای دیگر استفاده میشود. با این روشها، ترافیک شبکه توزیع محتوا در چندین گره توزیع شده و از ازدحام در یک گره جلوگیری میشود.
بهبود مسیردهی چه تاثیری بر عملکرد شبکه توزیع محتوا دارد؟
بهینهسازی مسیردهی و توزیع ترافیک میتواند عملکرد شبکه توزیع محتوا را ارتقا دهد و با کاهش تاخیر در بارگیری وبسایت، تجربه کاربران را بهبود ببخشد.
چگونه میتوان عملکرد شبکه توزیع محتوا را ارزیابی کرد؟
برای ارزیابی عملکرد شبکه توزیع محتوا، میتوان از معیارهایی مانند سرعت بارگیری محتوا، زمان دسترسی به محتوا و میزان ازدحام شبکه استفاده کرد. همچنین، با استفاده از ابزارهای مانیتورینگ شبکه، میتوان عملکرد شبکه توزیع محتوا را تحلیل کرد و در صورت نیاز آن را بهبود داد.
منابع:
https://www.stackpath.com/edge-academy/what-is-route-optimization/