مسیردهی یا Routing در شبکه برای برقراری ارتباط بین دو سیستم مورد استفاده قرار گرفته و بهترین مسیر رسیدنِ بسته های داده ها از نقطه یک به نقطه دو را معرفی و هموار می سازد. در این پست به طور کامل در خصوص ماهیت و نحوه عملکرد پروتکل های مسیردهی و روترها توضیحاتی ارائه خواهیم کرد.
مسیردهی شبکه به فرآیند انتخاب یک مسیر در بین یک یا چند شبکه گفته می شود. عملاً اصول مسیردهی می تواند در هر نوع شبکه ای اعمل و پیاده سازی شود ( از شبکه تلفن گرفته تا حتی حمل و نقل عمومی ).
در شبکه هایی مثل اینترنت، در واقع routing برای بسته های IP محور ( Internet Protocol packets)، مسیر رسیدن از مبدا به مقصد را نشان می دهد. این تصمیمات مسیردهی در اینترنت توسط سخت افزارهای شبکه ای خاص به نام روترها ( Routers ) صورت می پذیرند.
به تصویر زیر دقت کنید، اگر بسته ای از داده ها بخواهد از دستگاه یا کامپیوتر A به کامپیوتر B راهی شود، به نظر شما مسیر شبکه 1، 3 و در آخر 5 مسیر بهتری است یا مسیر شبکه 2 و سپس 4؟
از لحاظ مسافت مسلماً مسیر دوم نزدیک تر است، اما نکته مهم این است مسافت و تعداد پرش ها ( Hop ) تنها عامل انتخاب مسیر بهینه نیستند. برای مثال ممکن است بسته مورد نظر از مسیر شبکه 1، 3 و 5 سریعتر به مقصد برسد تا مسیر شبکه 2 و 4؛ چراکه ممکن است بسته در پرش دوم یعنی از شبکه 2 به 4 با تاخیر مواجه شود.
اینها تصمیماتی هستند که روترهای شبکه ای به طور مستمر برای انتخاب بهترین و سریعترین مسیر اتخاذ می کنند.
مسیردهی به چه صورت عمل می کند؟
روترها برای تصمیم گیری در مورد نحوه راهنمایی و مسیردهی به یک بسته ( بین چندین مسیر موجود )، به جداول یا table های مسیردهی درونی خود مراجعه می کنند. به طوری هر یک از این جداول مسیرهایی که یک بسته برای رسیدن به مقاصد مختلف می بایست طی کند را درون خود نگهداری و ذخیره می کند.
چیزی شبیه به یک جدول زمان بندی قطارها که مسافران برای تصمیم گیری در خصوص مسیر و قطار رسیدن به مقصد، از آنها کمک می گیرند.
پس نحوه عملکرد روترها در کل به چه صورت است؟
وقتی که یک روتر بسته ای را دریافت می کند، هدرهای بسته ( headers ) را برای مشاهده و کسب اطلاع از مقصد مورد نظر بررسی می کند. مثل زمانی که مسئول بلیط های قطار، اطلاعات بلیط هر مسافر را برای استفاده از قطار صحیح چک می کند. سپس روتر بر اساس اطلاعات دریافت شده و اطلاعات درون جداول خود، بسته را به سمت مقصد هدایت می کند.
روترها این پروسه را در هر ثانیه تکرار می کنند ( شاید میلیون ها بار و برای میلیون ها بسته). البته ممکن است یک بسته در مسیر رسیدن به مقصد بجای یک روتر، از چندین روتر عبور کند.
جداول موجود در روترها، می توانند استاتیک یا داینامیک باشند؛ یعنی جداول استاتیک تغییر نمی کنند؛ به صورتی که یک ادمین شبکه به طور دستی این جداول را تنظیم می کند. بنابراین این مسیرها تا زمانی که ادمین مجدداً آنها را آپدیت نکند، تغییری نخواهند کرد.
در طرف مقابل، جداول مسیردهی پویا یا داینامیک، به طور مستمر و خودکار بروزرسانی می شوند. این روترهای داینامیک از پروتکل های مسیردهی متنوعی برای تعیین کوتاه ترین و سریعترین مسیر استفاده می کنند.
یکی دیگر فاکتورهایی که این روترها برای تصمیم گیری مد نظر قرار می دهند، مدت زمانی است که بسته ها برای رسیدن به مقصدشان طی خواهند کرد. دقیقاً چیزی شبیه به کاری که ابزارهای مسیردهی مانند گوگل مپ، waze و سایر سرویس های gps محور برای مشخص کردن بهترین مسیر به رانندگان انجام می دهند.
مسیردهی داینامیک
مسلماً به قدرت پردازشی بیشتری نیاز خواهند داشت، به همین دلیل است که شاید شبکه های کوچک به سمت مسیردهی استاتیک
روی می آورند. اما برای شبکه های متوسط و بزرگ، قطعاً مسیردهی داینامیک بازدهی بسیار بالاتری دارد.
منظور از هدرها در بسته های شبکه ای، دسته ای از داده های کوچکی هستند که به یک packet متصل بوده و اطلاعات مفید بیشتری از جمله مبدا و مقصد آن بسته به روترها ارائه می دهند. مثل استمپ هایی که به محموله های پستی چسبانده می شوند.
اما پروتکل های اصلی مسیردهی چه هستند؟
پروتکل ها در مسیردهی
در شبکه، یک پروتکل، روش استاندارد شده فرمت کردن داده ها است تا هر دستگاه و کامپیوتری توانایی درک آن داده ها را داشته باشد. یک پروتکل مسیردهی نیز پروتکلی است که برای شناسایی و معرفی مسیرهای شبکه ای مورد استفاده قرار می گیرد.
این پروتکل ها به بسته ها کمک خواهند کرد تا مسیرشان را در اینترنت پیدا کنند:
- پروتکل IP: پروتکل اینترنت ( Internet Protocol ) برای هر بسته، مبدا و مقصدی را مشخص می کند. بنابراین روترها برای انتخاب مسیر ارسال بسته ها، هدرهای IP آنها را وارسی می کنند.
- پروتکل BGP: پروتکل دروازه مرزی ( Border Gateway Protocol ) برای این منظور مورد استفاده قرار می گیرد که مشخص کند کدام شبکه چه آدرس های IP ای را کنترل کرده و چه شبکه هایی به یکدیگر متصل هستند. شبکه های بزرگی که این اعلامیه های BGP را ایجاد و رد و بدل می کنند، سیستم های خودکار یا AS نام دارند. در ضمن BGP یک پروتکل مسیردهی داینامیک است.
- پروتکل RIP: پروتکل اطلاعات مسیردهی ( Routing Information Protocol ) از "تعداد پرش ها" برای پیدا کردن کوتاه ترین مسیر از یک شبکه به شبکه دیگر، استفاده می کند. منظور از پرش ها ( Hops ) تعداد روترهایی هستند که یک بسته در مسیر خود از آنها عبور خواهد کرد. روش کار این پروتکل به این صورت است که جداول مسیردهی را بین تمام نقاط ارسال می کند تا شبکه ها از موجود بودن و در دسترس بودن یکدیگر آگاه شوند. این پیام ها معمولاً هر 30 ثانیه یک بار ارسال می شوند.
در این بین پروتکل های مسیردهی درونی دیگری نیز وجود دارند، مثل EIGRP ( پروتکل مسیردهی درون مرزی ) و IS-IS ( سیستم های میانی به سیستم های میانی ). IGRP معمولاً از دو معیار پهنای باند و تاخیر شبکه نیز برای انتخاب بهترین مسیر استفاده می کند. در خصوص پروتکل IS-IS نیز باید خاطر نشان کرد که منظور از سیستم های میانی همان روترها هستند که به کمک این پروتکل، بسته ها بین این سیستم های میانی مسیردهی می شوند.
روتر ( Router ) چیست؟
همانطور که گفته شد، یک روتر سخت افزاری شبکه ای است که مسئول هدایت بسته ها به مقصدشان است. روترها به دو یا چند شبکه یا زیرشبکه IP ( Subnetwork ) متصل شده و در صورت نیاز بسته ها را بین آنها منتقل می کنند. همانطور که تا بحال دیده اید، روترها درون خانه ها و ادارات برای راه اندازی اتصالات شبکه ای محلی مورد استفاده قرار می گیرند. اما علاوه بر این، روترهای عظیم دیگری در اینترنت وجود دارند که بسته های داده ها را به مقصد هدایت می کنند.
شبکه ریموت ( Remote network )
زمانی که دو شبکه به طور مستقیم از طریق یک روتر میانی به یکدیگر متصل نباشند، در دید هر کدام شبکه ریموت به حساب می آیند. یعنی بسته برای رسیدن از شبکه اول به شبکه سوم، از مسیر چند روتر و شاید شبکه هایی میانجی عبور کند. بنابراین ممکن است تعداد پرش ها ( hops) بیشتر شوند.
مسیردهی در شبکه توزیع محتوا
تأثیرگذار ترین تحولات در معماری مسیردهی در دو دهه گذشته ، نحوه عملکرد اینترنت را به طرز قابل توجهی تغییر داده است. یکی از واضح ترین تغییرات، رشد بی وقفه و پرسرعت محتواها در سراسر اینترنت است. محتوایی که روزانه و شاید در هر دقیقه و ثانیه تولید می شود.
تا سال 2000 عملاً محتواهای اینترنتی، شامل ایمیل ها، متن ها، و صفحات وب ایستا ( استاتیک ) بودند. بنابراین اتصالات شبکه ای به صورت هرمی و متقارن بودند. به نحوی که ارائه دهندگان خدمات بزرگ از طریق پایانه های جهانی عظیم و شبکه های کوچک جفت شده به یکدیگر برای ارائه خدمات خود استفاده می کردند.
اما امروز، ترافیک اینترنتی بیشتر در اختیار محتواهای رسانه هایی مانند یوتیوب، نتفلیکس، فیسبوک و غیره هستند. این نوع محتواهایی که به پهنای باند بسیار بالاتری نسبت به گذشته نیاز دارند، به زیرساخت ها و تغییراتی عظیم در اتصالات اینترنتی و شبکه ای وابسته اند. که اتصالات و روابط بین کسب و کارها و تولید کنندگان محتوا، ارائه دهندگان خدمات اینترنتی ( ISP ) و مصرف کنندگان نهایی را متحول کرده اند.
در مجموع، سرویس های جدید به پهنای باند، اتصالات و آپتایم بالاتر، و تأخیر کمتر وابسته بوده و زیرساخت های شبکه ای را مجبور به توسعه و تغییر کرده اند.
در دنیای اینترنتِ محتوا محور امروزی، تقریباً هر فردی برای کسب اطلاعات بیشتر، خرید محصول، دریافت خدمات، ارتقا سطح دانش، تفریح، سرگرمی و برقراری ارتباط با سایرین به وب سایت ها و اپلیکیشن هایی متصل می شوند که پایه اصلی آنها، محتواست.
کسب و کاهای امروزی به شدت به دنبال ایجاد حضوری آنلاین و رقابت موثرتر در صنایع خود هستند. بنابراین برای جذب مخاطبان و جلب توجه آنها، مجبور به ارائه تجربه ای با کیفیت به مخاطبین هستند. یکی از بروزترین راهکارها که توسط غالب شرکت ها و برندهای بزرگ در صنایع مختلف مورد استفاده قرار می گیرد، شبکه توزیع محتوا یا CDN است.
در خصوص CDN و نحوه عملکرد آن در پست هایی مجزا، به طور مفصل توضیحاتی ارائه کرده ایم، اما به طور خلاصه، محتوای وب اپلیکیشن ها را به مخاطبین نهایی نزدیک تر کرده و باعث بهبود تجربه کاربری خواهد شد.
همانطور که در فرآیند مسیردهی گفته شد، درخواست ها و بسته ها می بایست برای رسیدن به مقصد از چندین گره عبور کنند؛ در حالت عادی بسته ها از یک مبدا به یک مقصد مشخص از یک مسیر تعیین شده هدایت می شوند.
اما در حالت عادی، ممکن است فاصله بین سیستم کاربر ( مرورگر ) تا مقصد ( وبسایت کسب و کار ) زیاد باشد؛ و درخواست برای رسیدن به سرور وب سایت، مجبور به عبور از چندین روتر و طی کردن مسیری طولانی باشد. قطعاً در این حالت، زمان زیادی صرف خواهد شد.
با استفاده از تکنولوژی جدیدتر، و شبکه توزیع محتوا، سرورهای لبه که توسط یک شرکت ارائه دهنده مدیریت می شوند، محتوای وب سایت را کش کرده و هنگام ارسال درخواست کاربر، نزدیک ترین سرور به آن درخواست پاسخ خواهد داد.
BGP و معماری Anycast
اما در این بین پروتکل BGP و معماری Anycast نیز وارد پروسه می شوند. به طوری که به کمک این تکنولوژی های پیشرفته، بسته های داده ها، در پروسه مسیردهی، به بهینه ترین، نزدیکترین و سریعترین مسیر هدایت خواهند شد.
پس در یک جمع بندی، وظیفه روتینگ این است که بسته های حاوی داده ها را از یک دستگاه متصل به شبکه دریافت و به دستگاه دیگر ارسال کند. بنابراین زمانی که دو نقطه اتصال بخواهند با یکدیگر ارتباطی برقرار کنند می بایست از روترها یا سوییچ ها برای یافتن مسیر رسیدن به نقطه دیگر استفاده کنند.
در خصوص مسیریابی BGP Anycast ساز و کار به این صورت است که چند سرور آدرس IP یکسانی را معرفی می کنند. اما پروتکل BGP با توجه به موقعیت جغرافیایی کاربر، و معیارهای انتخاب بهترین مسیر تعریف شده، بسته یا Packet را به سمت سروری هدایت می کند که نزدیک ترین فاصله را با کاربر نهایی داشته و از لحاظ زمانی سریع تر از سایر مسیرها باشد.
پیشنهاد می کنیم به کمک مقاله مربوطه با نحوه عملکرد پروتکل BGP و ASها بیشتر آشنا شوید.
در صورتی که قصد راه اندازی CDN را دارید، می توانید پس از ثبت نام در پنل میزبان کلود، به سادگی دامنه سایت خود را به CDN ابری میزبان کلود متصل کرده و از قابلیت های منحصر به فرد معماری CDN و تکنولوژی Anycast بهره مند شوید.همچنین برای خرید CDN میتوانید به صفحه این محصول مراجعه کنید.
جمع بندی
برای جلوگیری از اختلالات شبکه ای و در دسترس بودن همیشگی وب اپلیکیشن ها و سایت ها، راهکارهای متعددی پیشنهاد می شوند؛ یکی از بهترین روش های روز دنیا برای ارائه محتوا استفاده از شبکه توزیع محتوا و روش های مدرن مسیردهی است. همانطور که می دانید، درخواست های کاربران نهایی برای دریافت اطلاعات و محتوای سایت ها، می بایست مسیرهایی را طی کنند تا پس از دریافت پاسخ از سرور مقصد، نتیجه نهایی و محتوا را به کاربر نمایش دهند.
با بهره مندی از سیستم هوشمند و یکپارچه مسیردهی میزبان کلود و سرویس های DNS و CDN ابری، کیفیت دسترسی محتوای سایت شما به کاربران نهایی به طرز چشم گیری ارتقا خواهد یافت. به طوری که سرورهای لبه میزبان کلود در سراسر ایران و جهان، شبکه ای یکپارچه و ابری را تشکیل داده و با اطمینان بالا و بکارگیری الگورتیم های پیشرفته در مسیردهی، باعث خواهند شد تا محتوای سایت شما با بالاترین کیفیت و در سریع ترین زمان ممکن به دست مخاطب نهایی برسد.
برای استفاده از ویژگی های حرفه ای سرور مجازی پرسرعت رایگان میتوانید به میزبان کلود مراجعه کنید؛ تمام خدمات سایت ما به صورت 24ساعته پشتیبانی میشود.
ارائه دهنده خدمات زیرساخت یکپارچه ابری