Uploaded by barazil1000

Routing جعفر بیت غانم

advertisement
‫به نام خدا‬
‫درس شیوه ارائه مطالب علمی‬
‫الگوریتمهای مسیریابی درون شبکههای کامپیوتری‬
‫استاد مربوطه ‪ :‬دکتر طاهری فر‬
‫دانشجو ‪:‬‬
‫جعفر بیت غانم‬
‫‪9818510‬‬
‫سال تحصیلی ‪01-02‬‬
‫‪1‬‬
‫فهرست مطالب‬
‫مقدمه‪2............................................................................................................‬‬
‫‪-1‬الگوریتم های مسیریابی‬
‫شبکه‪5............................................................................................................‬‬
‫‪ .1‬انواع الگوریتم های‬
‫مسیریابی‪6...............................................................................................‬‬
‫‪ .2‬الگوریتم های مسیریابی‬
‫تطبیقی‪6..................................................................................................‬‬
‫‪ .3‬الگوریتم های مسیریابی غیر‬
‫تطبیقی‪10.................................................................................................‬‬
‫‪-2‬انواع پروتکل های مسیریابی درون‬
‫شبکه‪13............................................................................................................‬‬
‫‪20................................................................................................EGP-IGP -3‬‬
‫‪-4‬پروتکل سامانه حد واسط به سامانه حد واسط ‪28...................................................IS-IS‬‬
‫‪ -5‬منابع ‪30.......................................................................................................‬‬
‫‪2‬‬
‫مقدمه‬
‫مسیریابی چیست؟ در واقع مسیریابی راهکاری ذهنی و غریزی است که به طور طبیعی در تمامی‬
‫جانداران متحرک وجود دارد‪.‬آنها از آن برای رسیدن به اهداف خود استفاده میکنند‪.‬این اهداف میتوانند‬
‫غذاخوردن‪،‬فرار از خطرات‪،‬پیدا کردن پناهگاه و‪ ...‬باشند‪.‬اما مسیریابی امروزه معنای متفاوتی پیدا کرده‬
‫است‪.‬امروزه برای انسان ها مسیریابی معنای متفاوتی در تمامی ابعاد پیدا کرده است‪.‬دلیل آن هم بالطبع‬
‫پیشرفت تکنولوژی و دسترسی به انواع مسیریابی ها بوده است‪.‬از انواع مسیریابیهایی که میتوان به آن‬
‫اشاره کرد مسیریابی با استفاده از ‪ GPS‬برای پیدا کردن سریع ترین مسیر در دسترس برای رسیدن به‬
‫مقصد است یا استفاده از الگوهای مسیریابی درون رشتههای عصبی مغز برای شبیهسازی آنها و بررسی‬
‫نحوه عملکرد آنها است‪.‬‬
‫مسیریابی درون شبکه های کامپیوتری با استفاده از الگوهایی که در طبیعت مشاهده میشوند‪،‬رفتار‬
‫انسانها در طول قرن های متمادی برای یافتن بهترین مسیر‪،‬انواع روش های ریاضی و الگوریتم ها بر‬
‫طبق آن انجام میشود که در ادامه به آن میپردازیم‪.‬‬
‫ردیابی تاریخچه مسئله مسیریابی و کوتاهترین مسیر دشوار است‪ .‬میتوان تصور کرد که حتی در جوامع‬
‫بسیار بدوی (حتی حیوانات) نیز این کار بسیار ضروری بوده است (به عنوان مثال برای یافتن غذا)‪.‬‬
‫تحقیقات ریاضی درباره این مسئله نسبت به مسئلههای معروف دیگر دیر شروع شد‪ .‬از اولین‬
‫الگوریتمهایی که برای این مسئله ارائه شد میتوان به الگوریتم جستجوی اول سطح اشاره کرد‪.‬‬
‫در نظریه گراف‪ ،‬جستجوی سطح‪-‬اول(‪ )Breadth-First Search BFS‬یکی از الگوریتمهای پیمایش‬
‫گراف است‪.‬‬
‫استراتژی جستجوی سطح اول برای پیمایش گراف‪ ،‬همانطور که از نامش پیداست «جستجوی سطح به‬
‫سطح گراف» است‪.‬‬
‫الگوریتم از ریشه شروع میکند (در گرافها یا درختهای بدون ریشه رأس دلخواهی به عنوان ریشه‬
‫انتخاب میشود) و آن را در سطح یک قرار میدهد‪ .‬سپس در هر مرحله همه همسایههای رئوس آخرین‬
‫سطح دیده شده را که تا به حال دیده نشدهاند بازدید میکند و آنها را در سطح بعدی میگذارد‪ .‬این فرایند‬
‫زمانی متوقف میشود که همه همسایههای رئوس آخرین سطح قبلا دیده شده باشند‪ .‬همچنین در مسائلی‬
‫که حاالت مختلف متناظر با رئوس یک گرافاند و حل مسئله مستلزم یافتن رأس هدف با خصوصیات‬
‫‪3‬‬
‫مشخصی است که در عین حال در بین همه رئوس هدف با آن خصوصیات به ریشه نزدیکترین باشد‪،‬‬
‫جستجوی سطح اول به صورت غیرخلق عمل میکند‪ .‬بدین ترتیب که الگوریتم هر دفعه همه همسایههای‬
‫یک رأس را بازدید کرده و سپس به سراغ رأس بعدی میرود و بنابراین گراف سطح به سطح پیمایش‬
‫خواهد شد‪ .‬این روند تا جایی ادامه مییابد که رأس هدف پیدا شود یا احتماالا همه گراف پیمایش شود‪.‬‬
‫براساس آنچه گفته شد پیادهسازی هوشمندانه الگوریتم آنقدر مؤثر نخواهد بود‪.‬‬
‫با توجه به پیشرفت کامپیوترها و ظهور مسائل جدید‪ ،‬این مسئله به تدریج از اواسط قرن بیستم مورد‬
‫توجه قرار گرفت و با ایجاد شبکه جهانی اینترنت‪ ،‬بیش از پیش به آن پرداخته شد‪ .‬بازیهای کامپیوتری‬
‫و نقشههای آنلین‪ ،‬امروزه از پیشرفتهترین الگوریتمهای مسیریابی استفاده میکنند‪.‬‬
‫مسیر یابی یک الگوریتم برای برنامههای کامپیوتری است که هدف آن یافتن (غالبا) کوتاهترین مسیر بین‬
‫دو نقطه است‪ .‬مسیر یابی یک راه کاربردی برای حل هزارتوها است‪.‬مسیر یابی به مقدار زیادی به‬
‫مسئله کوتاهترین مسیر در نظریه گرافها ارتباط دارد؛ که در واقع این مسئله به این موضوع میپردازد‬
‫که چگونه سریعترین‪ ،‬ارزانترین (از لحاظ تعداد راسها) و کوتاهترین مسیر را بین دو نقطه در یک‬
‫شبکه بزرگ بیابیم‪.‬‬
‫مسیریابی درون شبکه(‪ )Routing‬فرآیندی برای انتخاب بهترین مسیر در شبکه های داخلی و خارجی‬
‫است و نقش مؤثری در ارسال دادهها در یک شبکه دارد‪ .‬پروتکلهای مسیریابی میتواند بین انواع‬
‫مختلفی از شبکهها‪ ،‬مثل شبکه تلفن و اینترنت برقرار شوند‪ .‬این مسیریابی میتواند عامل ارسال بستههای‬
‫منطقی از مبدأ به مقصد باشد‪.‬سختافزارهای به کار رفته در یک شبکه شامل مسیریاب(‪ ،)Router‬پل‬
‫)‪ ،(Bridge‬فایروال و سوئیچ میشوند‪ .‬کامپیوترهایی که کارت شبکه دارند میتوانند بستهها را ارسال‬
‫کنند‪ .‬این روند عامل ارسال براساس جداول میباشد و میتواند ثبتها را در مقصد نگهداری کند‪ .‬این‬
‫جداول در حافظه دستگاه تشکیل میشوند‪.‬‬
‫در ادامه به سراغ الگوریتم های مسیریابی درون شبکه‪،‬انواع آنها‪،‬ویژگی‪،Protocol،‬و نحوه عملکرد و‬
‫تفاوتهای آنها می رویم‪.‬‬
‫‪4‬‬
‫‪-1-1‬الگوریتم های مسیریابی شبکه‬
‫الگوریتم های مسیریابی شبکه‪ ،‬موضوعی است که در مبحث شبکه بیشترین اهمیت را دارد‪ .‬درواقع‬
‫الگوریتم های مسیریابی شبکه قسمتی از نرمافزار الیه شبکه هستند و تعیین میکنند بسته ورودی باید به‬
‫کدام خط خروجی منتقل شود‪ .‬قطعا ا تعیین الگوریتم بهینه که بستهها را در مدتزمان کوتاه و ایمن به‬
‫مقصد برساند بسیار حائز اهمیت است‪ .‬در ادامه به بررسی الگوریتم های مسیریابی شبکه میپردازیم‪.‬‬
‫مسیریابی فرآیند ایجاد مسیرهایی است که بستههای داده باید برای رسیدن به مقصد دنبال کنند‪ .‬در این‬
‫فرآیند‪ ،‬یک جدول مسیریابی ایجاد میشود که حاوی اطلعاتی در مورد مسیرهایی است که بستههای داده‬
‫دنبال میکنند ‪.‬الگوریتم های مسیریابی شبکه مختلفی به منظور تصمیمگیری در این مورد استفاده میشوند‬
‫که یک بسته داده ورودی باید در کدام مسیر ارسال شود تا به طور موثر به مقصد برسد‪.‬‬
‫الگوریتم های مسیریابی شبکه نقش مهمی در اتصال سیستمهای مختلف برای برقراری ارتباط از طریق‬
‫شبکه ایفا میکنند و بهترین مسیر را برای طی کردن تعیین میکنند‪ .‬با استفاده از این الگوریتمها میتوان‬
‫دادهها را در کسری از ثانیه از طریق شبکه بهصورت ایمن منتقل کرده و کیفیت دادهها را حفظ نمود‪.‬‬
‫الگوریتم های مسیریابی شبکه‪ ،‬اصول و روشهایی هستند که برای انتقال بستههای داده از مبدأ به‬
‫مقصد‪ ،‬مسیر یا مسیرهایی را تعیین میکنند‪ .‬پس از اینکه یک بستهی داده منبع خود را ترک میکند‪،‬‬
‫می تواند مسیری را از بین مسیرهای مختلف برای رسیدن به مقصد خود انتخاب کند‪ .‬الگوریتم های‬
‫مسیریابی شبکه بهصورت ریاضی بهترین مسیر یعنی« مسیر با کمترین هزینه »که بسته میتواند از‬
‫طریق آن مسیریابی شود را محاسبه میکنند و به هدایت ترافیک در شبکه بهطور مؤثر در بستر امن‬
‫کمک میکنند‪.‬‬
‫الگوریتم های مسیریابی شبکه عمدتا ا برای پیشرفت کیفیت شبکه های کامپیوتری کار میکنند‪ .‬این‬
‫الگوریتمها روی پروتکلهای خاصی کار میکنند و مسیر را میتوان با استفاده از روشهای مختلف‬
‫الگوریتمها محاسبه کرد‪ .‬بر اساس نوع شبکه و همچنین کاربرد آن‪ ،‬هر الگوریتم را میتوان اعمال کرد‪.‬‬
‫این الگوریتمها باید ویژگیهای متعددی مانند ثبات‪ ،‬صحت‪ ،‬کارایی‪ ،‬سادگی‪ ،‬مقاوم در برابر نفوذ و‬
‫استحکام را داشته باشند‪.‬‬
‫‪5‬‬
‫‪1-1‬انواع الگوریتم های مسیریابی‬
‫الگوریتم های مسیریابی شبکه را میتوان بهطورکلی به دو نوع الگوریتم مسیریابی تطبیقی و غیر‬
‫تطبیقی طبقهبندی کرد‪.‬‬
‫‪1-2‬الگوریتم های مسیریابی تطبیقی)‪(Adaptive routing algorithms‬‬
‫الگوریتم های مسیریابی تطبیقی الگوریتمهایی هستند که تغییرات بهصورت خودکار در مسیریابی اعمال‬
‫می شود و دیگر الزم نیست خودمان دستی تغییرات را به الگوریتم بدهیم‪ .‬الگوریتم های مسیریابی تطبیقی‬
‫که با نام الگوریتمهای مسیریابی پویا نیز شناخته میشوند‪ ،‬بسته به شرایط شبکه تصمیمات مسیریابی را‬
‫بهصورت پویا اتخاذ میکنند‪ ،‬همچنین جدول مسیریابی را بسته به ترافیک شبکه و توپولوژی میسازند‪.‬‬
‫آنها سعی میکنند مسیر بهینهشده را بسته به تعداد گام یا پرش‪ ،‬زمان عبور و مسافت محاسبه کنند‪.‬‬
‫در مسیریابی تطبیقی‪ ،‬گرههای میانی میتوانند شرایط واقعی شبکه‪ ،‬ازجمله وجود خرابی یا تنگناها را در‬
‫نظر بگیرند و بر این اساس تصمیم بگیرند که داده به کدام همسایه باید منتقل شود‪ .‬با توجه به انتخاب‬
‫کانال خروجی‪ ،‬طرح مسیریابی تطبیقی میتواند دو حالت داشته باشد‪ :‬یا سودآور باشد و یا مسیریابی‬
‫نادرست باشد‪ .‬در مسیریابی سودآور‪ ،‬تنها کانالهایی که تضمینشده است به مقصد نزدیکتر میباشند‪،‬‬
‫کاندیدای انتخاب هستند‪.‬‬
‫‪6‬‬
‫مزیت پروتکلهای سودآور به شرح زیر است‪:‬‬
‫‪ .1‬منجر به ایجاد یک مسیر با حداقل طول میشوند‪.‬‬
‫‪ .2‬میتوان آنها را برای اثبات رها شدن از بنبست موجود ایجاد کرد‪.‬‬
‫‪ .3‬زمانی که کانالهای معیوب در شبکه وجود دارند‪ ،‬پروتکلهای مسیریابی نادرست سودمند‬
‫هستند‪ .‬چراکه تحت چنین شرایطی‪ ،‬پروتکلهای مسیریابی نادرست شانس بیشتری برای یافتن‬
‫مسیر مناسب دارند‪.‬‬
‫طرحهای مسیریابی تطبیقی را میتوان به پروتکلهای پیشرونده یا عقبرونده تقسیم کرد‪ .‬در مسیریابی‬
‫پیشرونده‪ ،‬پیامها نمیتوانند در مسیری که قبلا دنبال کردهاند بهعقب برگردند‪ .‬برعکس‪ ،‬در طرح‬
‫عقبنشینی‪ ،‬پیامها میتوانند بهعقب برگردند و بهطور سیستماتیک تمام مسیرهای ممکن بین گرههای مبدأ‬
‫و مقصد را بررسی کنند‪ِ .‬هدِر پیام باید حاوی برخی از اطلعات وضعیت باشد تا از جستجوی مکرر در‬
‫همان مسیر جلوگیری شود و از اینرو رها شدن از بنبست فعال تضمین میشود‪.‬‬
‫طرحهای عقبگرد نیز بدون بنبست هستند زیرا منابع نگهداری را مسدود نمیکنند‪ .‬میتوانند از‬
‫جستجوی مکرر در همان مسیر جلوگیری کنند‪ ،‬پروتکلهای عقبگرد اطلعات تاریخچه را در سر‬
‫صفحه پیام (یا کاوشگر) ذخیره میکنند‪ .‬ازآنجاییکه فضای جستجو میتواند بسیار بزرگ باشد‪،‬‬
‫بهخصوص در مسیریابی نادرست پروتکلها‪ ،‬هدر بسیار طوالنی میشود‪ ،‬که بهطور قابلتوجهی زمان‬
‫تأخیر را افزایش میدهد‪ .‬اگر کانال سودآور آزاد در یک گره میانی وجود نداشته باشد‪ ،‬چندین استراتژی‬
‫جایگزین برای دنبال کردن وجود دارد‪:‬‬
‫‪ .1‬مسیریابی سودآور پیشرونده منتظر میماند تا یک کانال سودآور آزاد شود‪.‬‬
‫‪ .2‬یک پروتکل مسیریابی نادرست پیشرونده یک کانال آزاد غیر سودآور را امتحان میکند‪.‬‬
‫‪ .3‬مسیریابی عقبگرد بهعقب رفته و دوباره در گره قبلی شروع میشود‪.‬‬
‫‪7‬‬
‫سه نوع محبوب از الگوریتم های مسیریابی تطبیقی عبارتاند از‪:‬‬
‫•‬
‫الگوریتم متمرکز)‪(Centralized‬‬
‫این نوع از الگوریتم های مسیریابی شبکه‪ ،‬یک روش ِوفقی به شمار میرود که بر اساس جدول‬
‫مسیریابی کار میکند‪ .‬گره مرکزی شبکه‪ ،‬دادههای کاملی در مورد توپولوژی شبکه و ترافیک دریافت‬
‫میکند و از ازدحام چندین گره ارتباطی جلوگیری میکند‪ .‬این الگوریتم میتواند دادهها را به روترهای‬
‫خاص منتقل کند‪ .‬از مزایای این الگوریتم این است که تنها یک گره برای نگهداری اطلعات بهروز‬
‫موردنیاز است‪ ،‬اما نقطهضعف آن این است که با کاهش تبادالت گره مرکزی‪ ،‬کل شبکه سقوط میکند‪.‬‬
‫این الگوریتم بهعنوان الگوریتم مسیریابی سراسری نیز شناخته میشود چراکه با استفاده از دانش‬
‫سراسری در مورد شبکه‪ ،‬مسیر کمهزینه را بین گرههای مبدأ و مقصد پیدا میکند‪ .‬برخلف الگوریتمهای‬
‫توزیعشده‪ ،‬برای نوشتن یک الگوریتم متمرکز‪ ،‬نیازی به ارث بردن از یک کلس خاص نداریم‪.‬‬
‫‪ )1‬یک فرآیند بهعنوان هماهنگکننده )‪ (Coordinator‬انتخاب میشود‪.‬‬
‫‪ )2‬فرآیندی که میخواهد منبع را در اختیار بگیرد پیامی به هماهنگکننده میفرستد که تعیین‬
‫میکند چه منبعی را میخواهد‪.‬‬
‫‪ )3‬اگر فرآیند دیگری منبع را در دسترس نداشته باشد‪ ،‬هماهنگکننده با ارسال یک پیام‬
‫جواب دهی‪ ،‬منبع را به آن فرآیند میدهد‪.‬‬
‫•‬
‫الگوریتم مستقل)‪(Isolated‬‬
‫این الگوریتم اطلعات مسیریابی را بهجای جمعآوری از گرههای دیگر با استفاده از اطلعات محلی تهیه‬
‫میکند‪ .‬هر روتر فقط برای دادههای محلی که در اختیار دارد تصمیم میگیرد و حتی اطلعاتی را با‬
‫همسایگان خود ردوبدل نمیکند‪ .‬اشکال این الگوریتم این است که میتواند بستهها را از طریق یک مسیر‬
‫متراکم به اشتراک بگذارد که منجر به تأخیر میشود‪ .‬برخی از نمونههای این نوع الگوریتمها بهصورت‬
‫زیر هستند‪:‬‬
‫‪:HotPotato .1‬الگوریتم مسیریابی سیبزمینی داغ الگوریتمی است که در آن روترهای یک شبکه‬
‫هیچ بافری برای ذخیره بستهها قبل از انتقال به آخرین مقصد از پیش تعیینشده خود ندارند‪ .‬در‬
‫یک موقعیت مسیریابی معمولی‪ ،‬هنگامیکه بستههای متعدد به یک کانال خروجی میروند‪،‬‬
‫‪8‬‬
‫بستههایی که بافر نیستند برای جلوگیری از تراکم رها میشوند‪ .‬بسته در همهجا پرتاب میشود‪،‬‬
‫مانند یک “سیبزمینی داغ” که ممکن است بهدوراز مقصد منتقل شود‪ .‬در این حالت الگوریتم‬
‫بستهها را رها نمیکند بلکه به حرکت خود ادامه میدهد‪.‬‬
‫‪:Hotpotato + SR .2‬در این روش علوه بر خلوت بودن مسیر وزن مسیر را نیز در نظر‬
‫میگیریم‪ .‬وزن مسیر عددی بین ‪0‬و ‪ 1‬است‪ .‬این الگوریتم مسیری را انتخاب میکند که هم کوتاه‬
‫باشد و هم زیاد شلوغ نباشد یعنی وزن مسیر مساعد باشد‪.‬‬
‫‪:Backward Learning .3‬یک فرستنده با یک گیرنده پیغامی را ردوبدل میکند‪ .‬فرض کنیم‬
‫فرستنده سه مسیر را میشناسد یعنی در جدول مسیریابی خود تا گیرنده موردنظر سه مسیر دارد‬
‫که به نظر خودش بهترین مسیرهایی بوده که میتوانسته تا مقصد موردنظر انتخاب کند‪ .‬حاال‬
‫گیرنده یک پاسخ میدهد‪ ،‬وقتی فرستنده پاسخ را دریافت میکند و مسیر آن را با مسیرهای‬
‫ذخیرهشده در جدول خود مقایسه میکند‪ ،‬میبیند این مسیر از سه مسیر قبلی کوتاهتر است پس این‬
‫مسیر جدید را جایگزین یکی از مسیرهای خود میکند‪.‬‬
‫•‬
‫الگوریتم توزیع شده)‪(Distributed‬‬
‫در این الگوریتم هر گره دادهها را از گرههای همسایه خود دریافت میکند و سپس تصمیم میگیرد که با‬
‫کدام تکنیک بسته را ارسال کند‪ .‬اشکال این نوع از الگوریتم های مسیریابی شبکه در این است که اگر‬
‫بین فواصل زمانی متغیر دادهها را دریافت کند و بسته را ارسال کند‪ ،‬بسته به تأخیر میافتد‪.‬‬
‫این الگوریتم‪ ،‬از نوع الگوریتم غیرمتمرکز است که مسیر کمهزینه بین منبع و مقصد را بهصورت‬
‫تکراری و بهصورت توزیعشده محاسبه میکند‪ .‬این الگوریتمها بیشترین استفاده را در شبکههای گسترده‬
‫دارند‪ ،‬منظور شبکههایی است که تعداد ‪ IMP‬های آنها زیاد است‪ .‬در این الگوریتمها هر ‪ IMP‬برای‬
‫ایجاد و بهروزرسانی جداول فقط نیازمند اطلعات همسایگان خود است‪.‬‬
‫‪9‬‬
‫‪1-3‬الگوریتم های مسیریابی غیر تطبیقی)‪(Non_ Adaptive routing algorithms‬‬
‫نوع دوم الگوریتم های مسیریابی شبکه‪ ،‬الگوریتم های مسیریابی غیر تطبیقی یا ‪Non_ Adaptive‬‬
‫‪ routing algorithms‬هستند که بهعنوان الگوریتم های مسیریابی استاتیک نیز شناخته میشوند‪ ،‬یک‬
‫جدول مسیریابی استاتیک برای تعیین مسیر ارسال بستهها ایجاد میکنند‪ .‬جدول مسیریابی استاتیک بر‬
‫اساس اطلعات مسیریابی ذخیرهشده در مسیریابها هنگام راهاندازی شبکه ساخته میشود‪.‬‬
‫الگوریتم غیر تطبیقی یا مسیریابی ایستا مستقل از ترافیک فعلی و حجم توپولوژی است‪ .‬این الگوریتمها‬
‫مسیری را تعیین میکنند که دیتاگرام قرار است بهصورت آفلین به آن ارسال شود‪ .‬هنگام بوت شدن‬
‫شبکه‪ ،‬مسیر محاسبهشده و در روترها دانلود میشود‪ .‬بنابراین‪ ،‬دادههای مسیریابی بهصورت دستی‬
‫مشخصشده و دادههای مسیر ثابت را برای هر روتر فراهم میکند‪ ،‬اگر تغییری در مسیر وجود نداشته‬
‫باشد‪ ،‬بهصورت دستی ایجاد میشود‪.‬‬
‫در حالت کلی این نوع از الگوریتم های مسیریابی شبکه‪ ،‬الگوریتمهایی هستند که تغییرات شبکه باید‬
‫بهصورت دستی در آنها اعمال شود یعنی اگر تغییراتی در شبکه صورت بگیرد این تغییرات خودکار‬
‫اعمال نمیشود‪ .‬دو نوع الگوریتم مسیریابی غیر تطبیقی عبارتاند از‪:‬‬
‫•‬
‫سیل آسا)‪(Flooding‬‬
‫در این الگوریتم هر بسته ورودی جدا از زمان رسیدن‪ ،‬به هر خط خروجی منتقلشده و خارج میگردد‪،‬‬
‫بنابراین تعداد زیادی بسته تکراری تولید میکند‪ .‬برای کاهش این مقدار‪ ،‬از یک شمارنده استفاده میشود‬
‫که بعد از جهش هر بسته کاهش مییابد و بستهای که مقدار شمارنده آن قبل از رسیدن به مقصد صفر‬
‫است‪ ،‬کنار گذاشته میشود‪ .‬بیشتر اوقات‪ ،‬فرستنده طول مسیر مقصد را میداند‪ ،‬اما اگر نداند‪ ،‬شمارنده با‬
‫عددی برابر با مقدار کل زیر شبکه مقداردهی اولیه میشود‪.‬‬
‫‪10‬‬
‫بهطور خلصه‪ ،‬در ‪ flooding‬وقتی یک بسته داده به یک روتر میرسد‪ ،‬به تمام پیوندهای خروجی‬
‫بهجز پیوندی که به آن رسیده است ارسال میشود‪ .‬سیل ممکن است سیل کنترل نشده‪ ،‬کنترلشده یا‬
‫انتخابی باشد‪ .‬در این روش فرستنده تعداد زیادی ‪ setup Call‬را به شبکه ارسال میکند تا در مسیرهای‬
‫مختلف حرکت کنند ‪ . setup Call‬که زودتر به گیرنده برسد و برگردد نشاندهنده بهترین مسیر‬
‫انتخابشده است‪ .‬برای غلبه بر سیلآسا بودن جریان‪ ،‬تکنیکهای زیر استفاده میشوند‪:‬‬
‫اعداد دنباله ای‬
‫هر بسته با شماره ترتیبی ارائه میشود‪ .‬هنگامیکه یک گرهبسته را دریافت میکند‪ ،‬شماره مبدأ و مقصد‬
‫آن را مشاهده میکند‪ ،‬اگر گره متوجه شود که قبلا بسته مشابهی را ارسال کرده است‪ ،‬بسته را ارسال‬
‫نمیکند و آن را کنار میگذارد‪.‬‬
‫گام شمارش‬
‫هر بسته دارای یک تعداد پرش مربوطه است‪ .‬این پرشها بعد از مشاهده هر گره یک واحد کاهش‬
‫مییابد‪ .‬هنگامیکه تعداد پرش به صفر میرسد‪ ،‬بسته آزاد میشود‪.‬‬
‫درخت پوشا‬
‫در این روش هر بسته با ایجاد یک درخت پوشا در مبدأ‪ ،‬تنها در یک اتصال که به مقصد منتهی میشود‪،‬‬
‫منتقل میگردد‪ .‬این روش از ایجاد حلقهها در انتقال جلوگیری میکند اما تنها زمانی امکانپذیر است که‬
‫تمام گرههای انتقالی توپولوژی شبکه را بدانند‪.‬‬
‫‪11‬‬
‫•‬
‫پیاده روی تصادفی)‪(Random walk‬‬
‫این الگوریتم یک الگوریتم احتمالی است که در آن بستهها به صورت تصادفی میزبان به میزبان یا گره به‬
‫گره به یکی از همسایگان خود ارسال میشوند‪ .‬این روش‪ ،‬روشی بسیار قوی است که معموالا با ارسال‬
‫بستهها هنگامیکه شبکه بهشدت مرتبط است‪ ،‬به پیوندی که کمترین صف را دارد اجرا میشود‪.‬‬
‫پیادهروی تصادفی بخشی از مدلهای تحرک داخلی است‪ .‬مدل تحرک مدلی است که حرکت کاربران‬
‫موبایل و نحوه تغییر مکان‪ ،‬سرعت و شتاب آنها را در طول زمان توصیف میکند‪ .‬این مدل برای اولین‬
‫بار توسط اینشتین در سال ‪ 1926‬توصیف شد و بیان میکند که گره موبایل از مکان فعلی به مکان جدید‬
‫با انتخاب تصادفی جهت و سرعت حرکت میکند زیرا پویا است‪ .‬این ویژگی با حداقل سرعت یا حداکثر‬
‫سرعت و با جهت از ‪ 0‬تا ‪pi 2‬یعنی ‪ 360‬درجه صورت میگیرد‪.‬‬
‫مسیریابها بر اساس اطلعات موجود در جداول مسیریابی‪ ،‬بهترین مسیر عبور دادهها را تعیین میکنند‪.‬‬
‫در سادهترین تعریف‪ ،‬مسیریابی به فرآیند انتقال اطلعات روی یک مسیر مشخص از مبدا به مقصد‬
‫اشاره دارد‪.‬‬
‫‪12‬‬
‫‪-2‬انواع پروتکل های مسیریابی درون شبکه‬
‫مسیریابی روند دریافت بسته های اطلعاتی از مکانی که بسته ها باید به آن ارسال شود تعریف میشود‪.‬‬
‫در واقع مسیریابی اجرا الگوریتم های مختلفی است که وظیفه آنها پیدا کردن کوتاه ترین مسیر بین دو‬
‫نقطه می باشد‪.‬‬
‫آدرس دهی ‪ IP‬برپایه مفهوم شبکه و هاست است‪ .‬در واقع هاست به هر عضوی در شبکه گفته میشود که‬
‫توانایی ارسال و دریافت بسته های ‪ IP‬را داشته باشد که شامل دستگاه هایی از قبیل ایستگاه کاری و یا‬
‫روتر می باشد‪ .‬مسیریابی عملیات انتقال داده از یک هاست به یک هاست دیگر میباشد‪ .‬تفاوت مهم‬
‫مسیریابی با برقراری پل )‪ (bridging‬این است که پل در الیه ‪" 2‬الیه لینک" از مدل ‪ OSI‬است اما‬
‫مسیریابی در الیه ‪" 3‬الیه شبکه" میباشد‪ .‬مسیریابی بهینه ترین مسیر را در شبکه تشخیص میدهد‪.‬‬
‫‪2-1‬مدل اتصال‪OSI‬؛ سامانههای باز )‪ (Open Systems Interconnection (OSI) model‬توصیفی‬
‫مفهومی و مجرد از الیههایی است که دو یا چند سیستم مخابراتی یا شبکه کامپیوتری از طریق آن به‬
‫یکدیگر متصل میشوند‪ .‬مدل ‪ OSI‬سعی بر توضیح چگونگی ارتباط دو سیستم انتقال اطلعات بر پایه‬
‫انواع رسانهها در یک شبکه کامپیوتری را دارد‪ .‬مدل ‪ OSI‬یک معماری شبکه نیست‪ ،‬چون هیچ سرویس‬
‫یا پروتکلی در آن تعریف نمیشود‪ .‬بلکه یکی از مدلهای استاندارد و پذیرفته شدهاست که برای طراحی‬
‫یا توصیف شبکههای مخابراتی به کار میرود‪.‬‬
‫الیههای مدل ‪OSI‬‬
‫این مدل دارای هفت الیهاست‪ .‬در این مدل باالترین الیه‪ ،‬الیه ‪ ۷‬و پایینترین الیه‪ ،‬الیه ‪ ۱‬است‪.‬‬
‫•‬
‫الیه ‪: ۱‬الیه فیزیکی اولین الیه‬
‫•‬
‫الیه ‪: ۲‬الیه پیوند داده‬
‫•‬
‫الیه ‪: ۳‬الیه شبکه‬
‫•‬
‫الیه ‪: ۴‬الیه انتقال‬
‫•‬
‫الیه ‪: ۵‬الیه نشست‬
‫•‬
‫الیه ‪: ۶‬الیه نمایش‬
‫‪13‬‬
‫•‬
‫الیه ‪: ۷‬الیه کاربرد‬
‫الیه فیزیکی‬
‫الیه فیزیکی در مدل مرجع ‪ OSI‬به ویژگیهای سختافزاری کارت شبکه اشاره میکند‪ .‬الیه فیزیکی به‬
‫مواردی از قبیل زمانبندی و ولتاژ برقی که قرار است در رسانه منتقل شود اشاره میکند‪ .‬این الیه تعیین‬
‫میکند که به چه شکل و از چه طریق و با چه رسانهای قرار است اطلعات خود را انتقال دهیم‪ ،‬برای‬
‫مثال رسانه ما سیمی است یا تجهیزات بیسیم؟ در واقع الیه فیزیکی تعیین میکند که اطلعات چگونه‬
‫دریافت و ارسال شوند‪ .‬عملیات ‪ Coding‬نیز که به معنای تعیین کردن صفر و یک در رسانه است در‬
‫این الیه انجام میشود‪.‬‬
‫الیه پیوند داده‬
‫الیه پیوند به خودی خود به دو زیر الیه به نامهای ‪ MAC‬که مخفف ‪ Media Access Control‬و‬
‫‪ LLC‬که مخفف ‪ Logical Link Control‬هست تقسیم میشود‪ .‬زیر الیه ‪ MAC‬همانطوریکه از‬
‫نامش پیداست شناسه سختافزاری کامپیوتر که در واقع همان آدرس ‪ MAC‬کارت شبکه است را به‬
‫شبکه معرفی میکند‪ .‬آدرس ‪ MAC‬آدرس سختافزاری است که در هنگام ساخت کارت شبکه از طرف‬
‫شرکت سازنده بر روی کارت شبکه قرار داده میشود و در حقیقت ‪ Hard Code‬میشود‪ .‬این در حقیقت‬
‫مهمترین فاکتوری است در آدرس دهی که کامپیوتری از طریق آن بستههای اطلعاتی را دریافت و‬
‫ارسال میکند‪ .‬زیر الیه ‪ LLC‬وظیفه کنترل ‪ Frame Synchronization‬یا یکپارچهسازی فریمها و‬
‫همچنین خطایابی در الیه دوم را بر عهده دارد‪.‬‬
‫الیه شبکه‬
‫وظیفه الیه شبکه این است که چگونگی رسیدن دادهها به مقصد را تعیین کند‪ .‬این الیه وظایفی از قبیل‬
‫آدرس دهی‪ ،‬مسیریابی و پروتکلهای منطقی را عهدهدار است‪ .‬الیه شبکه مسیرهای منطقی یا ‪Logical‬‬
‫‪Path‬بین مبدأ و مقصد ایجاد میکند که به اصطلح مدارهای مجازی یا ‪ Virtual Circuits‬نامگذاری‬
‫میشوند‪ ،‬این مدارها باعث میشوند که هر بسته اطلعاتی بتواند راهی برای رسیدن به مقصدش پیدا کند‪.‬‬
‫الیه شبکه همچنین وظیفه مدیریت خطا در الیه خود‪ ،‬ترتیب دهی بستههای اطلعاتی و کنترل ازدحام را‬
‫نیز بر عهده دارد‪ .‬ترتیب بستههای اطلعاتی بسیار مهم است زیرا هر پروتکلی برای خود یک حداکثر‬
‫‪14‬‬
‫اندازه بسته اطلعاتی تعریف کردهاست‪ .‬برخی اوقات پیش میآید که بستههای اطلعاتی از این حجم‬
‫تعریف شده بیشتر میشوند و به ناچار اینگونه بستههای به بستههای کوچکتری تقسیم میشوند و برای‬
‫هر کدام از این بستههای اطلعاتی یک نوبت یا ‪ Sequence‬داده میشود که معلوم شود کدام بسته اول‬
‫است و کدام بسته دوم و … به این عدد به اصطلح ‪ Sequence Number‬هم گفته میشود‪.‬‬
‫وقتی بستههای اطلعاتی در مقصد دریافت شدند‪ ،‬در الیه شبکه این‪ Sequence Number‬ها چک‬
‫میشود و به وسیله همین ‪ Sequence Number‬است که اطلعات به حالت اولیه بازمیگردند و تبدیل به‬
‫اطلعات اولیه میشوند‪ .‬در صورتیکه یکی از این بستههای به درستی دریافت نشود در همان الیه شبکه‬
‫از طریق چک کردن این عدد مشخص میشود که کدام بسته اطلعاتی دریافت نشدهاست و طبیعتا ا مجددا ا‬
‫در خواست داده میشود‪.‬‬
‫الیه انتقال‬
‫الیه انتقال وظیفه نگهداری و کنترل ریزش اطلعات یا ‪ Flow Control‬را بر عهده دارد‪ .‬اگر به خاطر‬
‫داشته باشید سیستم عامل به شما این اجازه را میدهد که همزمان از چندین نرمافزار استفاده کنید‪ .‬خوب‬
‫همین کار در شبکه نیز ممکن است رخ بدهد‪ ،‬چندین نرمافزار بر روی سیستم عامل تصمیم میگیرند که‬
‫به صورت همزمان بر روی شبکه اطلعات خود را منتقل کنند‪ .‬الیه انتقال اطلعات مربوط به هر‬
‫نرمافزار در سیستم عامل را دریافت و آنها را در قالب یک رشته تکی درمیآورد‪ .‬همچنین این الیه‬
‫وظیفه کنترل خطا و همچنین تصحیح خطا در هنگام ارسال اطلعات بر روی شبکه را نیز بر عهده‬
‫دارد‪ .‬به صورت خلصه وظیفه الیه انتقال این است که از رسیدن درست اطلعات از مبدأ به مقصد‬
‫اطمینان حاصل کند‪ ،‬انواع پروتکلهای اتصال گرا یا ‪ Connection Oriented‬و غیر اتصال گرا‬
‫‪Connection Less‬در این الیه فعالیت میکنند‪.‬‬
‫الیه جلسه‬
‫وقتی دادهها به شکلی قابل درک برای ارسال توسط شبکه درآمدند‪ ،‬ماشین ارسالکننده بایستی یک‬
‫‪Session‬با ماشین مقصد ایجاد کند‪ .‬منظور از ‪ Session‬دقیقا ا شبیه ارتباطی است که از طریق تلفن‬
‫انجام میشود‪ ،‬شما برای ارسال اطلعات از طریق تلفن حتما ا بایستی با شخص مورد نظرتان تماس‬
‫برقرار کنید‪ .‬اینجا زمانی است که الیه نشست وارد کار میشود‪ ،‬این الیه وظیفه ایجاد‪ ،‬مدیریت و‬
‫نگهداری و در نهایت خاتمه یک ‪ Session‬را با کامپیوتر مقصد بر عهده دارد‪ .‬نکته جالب در خصوص‬
‫‪15‬‬
‫الیه نشست این است که بیشتر با الیه کاربرد مرتبط است تا الیه فیزیکی‪ ،‬شاید فکر کنید که بیشتر‬
‫‪Session‬ها بین سختافزارها و از طریق لینکهای شبکه ایجاد میشوند اما در اصل این نرمافزارهای‬
‫کاربردی هستند که برای خود ‪ Session‬با نرمافزار مقصد ایجاد میکنند‪ .‬اگر کاربری از تعدادی‬
‫نرمافزار کاربردی استفاده میکند‪ ،‬هر کدام از این نرم افزاها به خودی خود میتوانند یک ‪ Session‬با‬
‫نرمافزار مقصد خود برقرار کنند که هر کدام از این‪ Session‬ها برای خود یک سری منابع منحصر به‬
‫فرد دارد‪.‬‬
‫الیه نمایش‬
‫فعالیت الیه نمایش یا ‪ Presentation‬تا حدی پیچیدهاست اما همه کارهایی که این الیه انجام میدهد را‬
‫میتوان در یک جمله خلصه کرد‪ ،‬الیه نمایش اطلعات را از الیه کاربرد دریافت میکند و در قالبی‬
‫درمیآورد که برای الیههای پایینتر قابل درک باشد‪ .‬همچنین برعکس این عمل را نیز انجام میدهد یعنی‬
‫زمانی که اطلعاتی از الیه نشست یا ‪ Session‬به این الیه وارد میشود‪ ،‬این اطلعات را به گونهای‬
‫تبدیل میکند که الیه کاربرد بتواند آنها را درک کرده و متوجه شود‪ .‬دلیل اهمیت این الیه این است که‬
‫نرمافزارها اطلعات را به شیوهها و اشکال مختلفی نسبت به یکدیگر بر روی شبکه ارسال میکنند‪.‬‬
‫برای اینکه ارتباطات در سطح شبکهها بتوانند برقرار شوند و به درستی برقرار شوند شما بایستی‬
‫اطلعات را به گونهای ساختار دهی کنید که برای همه انواع شبکهها استاندارد و قابل فهم باشد‪ .‬بهطور‬
‫خلصه وظیفه اصلی این الیه قالب بندی اطلعات یا ‪ Formatting‬اطلعات است‪ .‬معموالا فعالیتهایی‬
‫نظیر رمزنگاری و فشرده سازی از وظایف اصلی این الیه محسوب میشود‪.‬‬
‫الیه کاربرد‬
‫باالترین الیه در مدل مرجع ‪ OSI‬الیه کاربرد یا ‪ Application‬است‪ .‬اولین نکتهای که در خصوص الیه‬
‫کاربرد یا ‪ Application‬باید بدانید این است که به هیچ عنوان این الیه با نرمافزارهای کاربردی‬
‫ارتباطی ندارد و صرفا ا یک تشابه اسمی است‪ .‬در عوض این الیه محیطی را ایجاد میکند که‬
‫نرمافزارهای کاربردی بتوانند از طریق آن با شبکه ارتباط برقرار کنند‪ .‬برای اینکه درک بهتری از الیه‬
‫کاربرد داشته باشید فرض کنید که یک کاربر با استفاده از نرمافزار ‪ Internet Explorer‬قصد دارد از‬
‫طریق پروتکل ‪ FTP‬یک فایل را در شبکه منتقل کند‪ .‬در این مورد الیه کاربرد به وظیفه برقراری‬
‫ارتباط با پروتکل ‪ FTP‬برای انتقال فایل را بر عهده دارد‪ .‬این پروتکل به صورت مستقیم برای کاربران‬
‫‪16‬‬
‫قابل دسترسی نیست‪ ،‬کاربر بایستی با استفاده از یک نرمافزار رابط مانند ‪ Internet Explorer‬برای‬
‫برقراری ارتباط با پروتکل مورد نظر استفاده کند‪ .‬به صورت خلصه در تعریف کارایی این الیه‬
‫میتوان گفت که این الیه رابط بین کاربر و شبکه است و تنها قسمتی از این مدل هفت الیهای است که‬
‫کاربر تا حدی میتواند با آن ارتباط برقرار کند‪.‬‬
‫روی شبکههای ‪ TCP/IP‬مبدا و مقصد هر دو میزبان )‪ (host‬نامیده میشوند‪ ،‬در این شبکهها اطلعات‬
‫به بستههایی شکسته میشوند و بعد میان میزبانها مبادله میشوند‪ .‬پروتکلهای مسیریابی مشخص‬
‫میکنند که دادههای شما چگونه باید به مقصد برسند و کمک میکنند تا فرآیند مسیریابی تا حد امکان‬
‫راحتتر انجام شود‪ .‬امروزه پروتکلهای مسیریابی مختلفی در دسترس سرپرستان شبکه قرار دارد که‬
‫این تنوع باعث شده تا انتخاب گزینه مناسب کار سختی شود‪.‬‬
‫شبکههای کامپیوتری میتوانند به بخشهای مختلفی تقسیم شوند که بر مبنای پروتکلهای مختلف با‬
‫معماریهای متفاوت با یکدیگر در ارتباط باشند‪ .‬در این مدل شبکهها بهکارگیری پل )‪ (Bridge‬برای‬
‫حفظ سرعت ارتباطات میان بخشهای مختلف شبکه عملکرد قابل قبولی ندارند‪ .‬در شبکههای سازمانی‬
‫که عمدتا بر مبنای معماریهای پیچیده و چند الیه پیادهسازی میشوند‪ ،‬به تجهیزاتی نیاز است که ضمن‬
‫دارا بودن خواص پل و قابلیت تفکیک یک شبکه به بخشهای کوچکتر‪ ،‬قابلیت تعیین مسیر را نیز داشته‬
‫باشد‪ .‬هنگامی که دستگاهی چند مسیر برای رسیدن به یک مقصد دارد‪ ،‬همواره مسیری که نسبت به‬
‫دیگران ارجحیت دارد را انتخاب میکند‪ .‬این فرآیند انتخاب بهنام مسیریابی )‪ (Routing‬شناخته میشود‪.‬‬
‫مسیریابی الیه شبکه از طریق مسیریابها (روتر) انجام میشود‪ .‬مسیریابها بر اساس اطلعات موجود‬
‫در جداول مسیریابی‪ ،‬بهترین مسیر عبور دادهها را تعیین میکنند‪ .‬در سادهترین تعریف‪ ،‬مسیریابی به‬
‫فرآیند انتقال اطلعات روی یک مسیر مشخص از مبدا به مقصد اشاره دارد‪ .‬روی شبکههای ‪TCP/IP‬‬
‫مبدا و مقصد هر دو میزبان )‪ (host‬نامیده میشوند‪ ،‬در این شبکهها اطلعات به بستههایی شکسته‬
‫میشوند و بعد میان میزبانها مبادله میشوند‪ .‬پروتکلهای مسیریابی مشخص میکنند که دادههای شما‬
‫چگونه باید به مقصد برسند و کمک میکنند تا فرآیند مسیریابی تا حد امکان راحتتر انجام شود‪ .‬امروزه‬
‫پروتکلهای مسیریابی مختلفی در دسترس سرپرستان شبکه قرار دارد که این تنوع باعث شده تا انتخاب‬
‫گزینه مناسب کار سختی شود‪.‬‬
‫‪17‬‬
‫مسییاب‬
‫‪2-1‬پروتکلهای ر‬
‫از مهمترین پروتکلهای مسیریابی به موارد زیر میتوان اشاره کرد‪:‬‬
‫▪‬
‫پروتکل اطلعات مسیریابی یا)‪Routing Information Protocol (RIP‬‬
‫▪‬
‫پروتکل دروازه داخلی یا)‪Interior Gateway Protocol (IGRP‬‬
‫▪‬
‫پروتکل ابتدا کوتاهترین مسیر را انتخاب کن یا)‪Open Shortest Path First (OSPF‬‬
‫▪‬
‫پروتکل دروازه خارجی یا)‪Exterior Gateway Protocol (EGP‬‬
‫▪‬
‫پروتکل مسیریابی دروازه داخلی پیشرفته یا ‪Enhanced Interior Gateway Routing‬‬
‫)‪Protocol (EIGRP‬‬
‫▪‬
‫▪‬
‫پروتکل دروازه مرزی یا)‪Border Gateway Protocol (BGP‬‬
‫پروتکل سامانه حد واسط به سامانه حد واسط ‪Intermediate System-to-Intermediate‬‬
‫)‪System (IS-IS‬‬
‫پروتکلهای مسیریابی را میتوان به شرح زیر طبقهبندی کرد‪:‬‬
‫▪‬
‫پروتکلهای بردار فاصله )‪ (Distance Vector‬و وضعیت پیوند)‪(Link State‬‬
‫▪‬
‫پروتکلهای دروازه داخلی )‪ (IGP‬یا پروتکلهای دروازه خارجی)‪(EGP‬‬
‫▪‬
‫پروتکلهای ‪ Classful‬یا‪Classless‬‬
‫‪18‬‬
‫‪2-2-1‬پروتکلهای بردار فاصله و وضعیت پیوند‬
‫▪‬
‫پروتکلهای مسیریابی بردار فاصله )‪ (Distance-vector routing protocol‬پروتکلهایی‬
‫هستند که از معیار فاصله برای تعیین بهترین مسیر برای بستههای درون یک شبکه استفاده‬
‫میکنند‪ .‬این پروتکلها فاصله را بر اساس این که دادهها باید چند هاپ )‪ (HOP‬را پشت سر‬
‫بگذارند تا به مقصد برسند اندازهگیری میکنند‪ .‬تعداد هاپها همان تعداد روترهایی است که‬
‫بستهها باید تا رسیدن به مقصد از آنها عبور کنند‪ .‬پروتکلهای مسیریابی بردار فاصله یک‬
‫جدول مسیریابی را برای دستگاههای مجاور ارسال میکنند‪ .‬از آنجایی که در این روش استقرار‬
‫تجهیزات به مدیریت خاصی نیاز نیست‪ ،‬مدیران شبکه دردسر کمتری برای نظارت بر شبکهها‬
‫متحمل میشوند‪ .‬تنها مشکل روش فوق این است که پروتکلهای بردار فاصله برای ارسال‬
‫جداول مسیریابی به پهنای باند بیشتری نیاز دارند و ممکن است در چرخههای مسیریابی گرفتار‬
‫شوند‪.‬‬
‫‪2-2-2‬پروتکلهای مسیریابی وضعیت پیوند‬
‫▪‬
‫پروتکلهای مسیریابی وضعیت پیوند )‪ (Link State Routing Protocols‬برای پیدا کردن‬
‫بهترین مسیر از رویکرد متفاوتی استفاده میکنند و اطلعات را با روترهای دورتر از همسایگان‬
‫خود بهاشتراک میگذارند‪ .‬در این شیوه نرخ تبادل دادهها در فرآیند مسیریابی بر اساس سرعت‬
‫رسیدن بستهها به مقصد محاسبه میشود‪ .‬این نوع از پروتکلها از یک الگوریتم برای انجام‬
‫اینکار استفاده میکنند‪ .‬یکی از تفاوتهای اصلی این پروتکل با پروتکل بردار فاصله این است‬
‫که پروتکلهای وضعیت پیوند جداول مسیریابی را ارسال نمیکنند و به جای آن روترها وقتی‬
‫تغییرات مسیر شناسایی میشوند این موضوع را به یکدیگر اطلع میدهند‪ .‬روترهایی که از‬
‫پروتکل وضعیت پیوند استفاده میکنند سه نوع جدول شامل جدول همسایه‪ ،‬جدول توپولوژی و‬
‫جدول مسیریابی را ایجاد میکنند‪ .‬جدول همسایه اطلعات مربوط به روترهای مجاور را ذخیره‬
‫میکند‪ ،‬جدول توپولوژی کل توپولوژی شبکه را ذخیره میکند و جدول مسیریابی کارآمدترین‬
‫مسیرها را در خود نگهداری میکند‪.‬‬
‫‪19‬‬
‫‪IGP‬و‪EGP‬‬
‫میتوان پروتکلهای مسیریابی را به عنوان پروتکل دروازه داخلی )‪ (IGP‬سرنام ‪Interior Gateway‬‬
‫‪ Protocol‬طبقهبندی کرد‪ IGP.‬ها پروتکلهایی هستند که اطلعات مسیریابی را با سایر روترهای‬
‫درون یک سیستم خودمختار )‪ (AS‬مبادله میکنند‪ .‬یک ‪ AS‬به عنوان یک شبکه یا مجموعهای از‬
‫شبکههای تحت کنترل یک سازمان تعریف میشود‪ .‬بنابراین ‪ AS‬شرکت جدا از ‪ AS‬تامینکننده خدمات‬
‫اینترنت )‪ (ISP‬است‪ .‬هر یک از پروتکلهای زیر به عنوان یک ‪ IGP‬طبقهبندی میشوند‪:‬‬
‫▪‬
‫▪‬
‫▪‬
‫پروتکل ابتدا کوتاهترین مسیر را باز کن )‪ (OSPF‬سرنام ‪Open Shortest Path First‬‬
‫پروتکل اطلعات مسیریابی ‪(RIP) Routing Information Protocol‬‬
‫پروتکل سامانه حد واسط به سامانه حد واسط )‪ (IS-IS‬سرنام‪Intermediate System-to-‬‬
‫‪Intermediate System‬‬
‫▪‬
‫پروتکل مسیریابی دروازه داخلی پیشرفته )‪ (EIGRP‬سرنام ‪Enhanced Interior‬‬
‫‪Gateway Routing Protocol‬‬
‫از طرف دیگر‪EGP ،‬ها پروتکلهای مسیریابی هستند که اطلعات مسیریابی را بین روترها در‬
‫سیستمهای خودمختار متفاوت منتقل میکنند‪ .‬این پروتکلها پیچیدهتر هستند ‪. BGP‬تنها پروتکل ‪EGP‬‬
‫است که سرپرستان شبکه با آن در تعامل هستند‪ .‬از‪ EGP‬های مطرحی که معماران شبکه به شکل‬
‫گسترده از آنها استفاده میکنند به موارد زیر میتوان اشاره کرد‪:‬‬
‫▪‬
‫پروتکل دروازه مرزی )‪ (BGP‬سرنام ‪Border Gateway Protocol‬‬
‫▪‬
‫پروتکل دروازه خارجی )‪ (EGP‬سرنام ‪Exterior Gateway Protocol‬‬
‫▪‬
‫پروتکل مسیریابی ایزو ‪ (IDRP) InterDomian‬سرنام ‪The ISO’s InterDomain‬‬
‫‪Routing Protocol‬‬
‫‪20‬‬
‫جدول تاریخچه پروتکلهای مسیریابی‬
‫▪‬
‫‪1982 – EGP‬‬
‫▪‬
‫‪1985 – IGRP‬‬
‫▪‬
‫‪1988 – RIPv1‬‬
‫▪‬
‫‪1990 – IS-IS‬‬
‫▪‬
‫‪1991 – OSPFv2‬‬
‫▪‬
‫‪1992 – EIGRP‬‬
‫▪‬
‫‪1994 – RIPv2‬‬
‫▪‬
‫‪1995 – BGP‬‬
‫▪‬
‫‪1997 – RIPng‬‬
‫▪‬
‫‪1999 – BGPv6 and OSPFv3‬‬
‫▪‬
‫‪2000 – IS-ISv6‬‬
‫‪2-2-3‬پروتکل اطالعات مسیریابی)‪(RIP‬‬
‫پروتکل اطلعات مسیریابی )‪ (RIP‬یکی از اولین پروتکلهای مسیریابی طراحی شده است ‪. RIP‬در‬
‫شبکههای محلی )‪ (LAN‬و شبکههای گسترده )‪ (WAN‬و همچنین الیه کاربرد مدل ‪ OSI‬استفاده‬
‫میشود‪ .‬نسخههای مختلفی از ‪ RIP‬از جمله ‪ RIPv1‬و ‪ RIPv2‬وجود دارد‪ .‬نسخه اصلی )‪(RIPv1‬‬
‫مسیرهای شبکه را بر اساس مقصد آیپی و شمارش هاپها تعیین میکند ‪. RIPv1‬با انتشار جدول‬
‫آیپی خود به تمام روترهای متصل به یک شبکه با آن شبکه ارتباط برقرار میکند ‪. RIPv2‬کمی‬
‫پیچیدهتر است و جدول مسیریابی خود را به یک آدرس مالتیکست ارسال میکند‪ .‬هر مسیریاب یا‬
‫روتر هر ‪ ۳۰‬ثانیه کل محتویات جدول مسیریابی خود را به عنوان اینترفیسهای ‪ RIP‬برای استفاده‬
‫مسیریابهای دیگر در شبکه میفرستد‪ .‬زمانیکه چنین اعلنی دریافت میشود تمام مسیریابها‬
‫‪21‬‬
‫تخصیصی را درجدول مسیریابی خود قرار داده و ارسال مجدد را شروع میکنند‪ .‬این فرایند تضمین‬
‫میکند که تمامی شبکههای متصل به هر مسیریاب سرانجام به همه مسیریابها شناسانده میشوند‪.‬‬
‫اگر یک مسیریاب در مدت زمان ‪ ۱۸۰‬ثانیه از مسیریاب دیگری مجدد تغییرات محتویات مسیریابی‬
‫را دریافت نکند روتر به این نتیجه خواهد رسید که تمامی اطلعاتی که دریافت کردهاست غیرمعتبر‬
‫است و از آنها استفاده نمیکند‪ .‬در نهایت اگر تا مدت زمان ‪ ۲۴۰‬ثانیه اطلعات‬
‫محتویات مسیریاب را دریافت نکند تمامی اطلعات مسیریابی که از آن روتر دریافت کردهاست را‬
‫پاک میکند‪.‬‬
‫هر مسیر یک صفت ویژه بنام متریک )‪ (Metric‬دارد که فاصله از مقصد را مشخص میکند‪.‬‬
‫زمانی که یک مسیریاب یک اعلن دریافت میکند‪ ،‬صفت ویژه متریک را افزایش میدهد‪ .‬این‬
‫ویژگی باعث میشود که مسیرها از نظر متریک با هم متفاوت شوند و مسیریابها بتوانند مسیر‬
‫کوتاهتر را تشخیص دهند‪ .‬حداکثر تعداد متریک میتواند عدد ‪ ۱۵‬باشد و عددی باالتر از ‪ ۱۵‬به‬
‫منزله غیرقابل دسترس بودن است‪ .‬ریپ میتواند تا ‪ ۶‬مسیر را که دارای متریک برابر باشد به‬
‫عنوان لود باالنس )‪ (Load Balance‬و فیل اور )‪ (Fail Over‬یکدیگر قرار دهد‪ .‬ریپ از‬
‫پروتکل قرارداد دادهنگار کاربر )‪(UDP‬به عنوان پروتکل حمل و نقل خود و از پورت پیشفرض‬
‫‪ ۵۲۰‬استفاده مینماید‪.‬‬
‫نسخه‪۱‬‬
‫‪RIP‬نسخه ‪ ۱‬در سال ‪ ۱۹۸۸‬عرضه شد و تنها میتواند از کلسهای پیشفرض ‪IP‬استفاده کند ‪.‬‬
‫)‪(Classful‬این نسخه برای به روز کردن جداول خود جدول خود را بین مسیریابهای دیگر پخش‬
‫)‪(Broadcast‬میکند و همچنین در آن برای به روز کردن جداول احراز هویت انجام نمیگیرد که‬
‫این موضوع آن را نسبت به حملت مختلف آسیبپذیر میسازد‪.‬‬
‫‪22‬‬
‫نسخه ‪۲‬‬
‫با توجه به کمبودهای ‪ RIP‬نسخه ‪RIP ،۱‬نسخه ‪ ۲‬در سال ‪ ۱۹۹۸‬آماده استفاده شد‪.‬‬
‫در این نسخه بسیاری از کاستیهای نسخه اول برطرف شدهاست‪ .‬همچنین میتوان از زیر شبکههای‬
‫)‪(Subnet‬غیر پیشفرض استفاده نمود)‪ ، (Classless‬برای آن فاکتور احراز هویت بکار برد و‬
‫همچنین آن را با الگوریتم امدی‪ ۵‬رمز نگاری کرد‪.‬‬
‫ویژگی دیگر این نسخه نسبت به نسخه قبل این است که جداول خود را هم به صورت‬
‫پخش)‪(Broadcast‬و هم به صورت چند بخشی )‪(Multicast‬در رنج آی پی ‪ ۲۲۴٫۰٫۰٫۹‬ارسال‬
‫نماید‪ .‬دو ویژگی احراز هویت و ارتباط ‪ Multicast‬در این نسخه باعث ایمنی نسبی آن نسبت به‬
‫نسخه قبلی گشتهاست‪.‬‬
‫‪RIPng‬این نسخه شباهت زیادی به نسخه ‪ ۲‬دارد با این تفاوت که برای پشتیبانی از آی پی ورژن‪ ۶‬به‬
‫وجود آمدهاست‪.‬‬
‫‪2-2-4‬پروتکل دروازه داخلی)‪(IGRP‬‬
‫پروتکل دروازه داخلی)‪ (IGRP‬یک پروتکل مسیریابی بردار فاصله ارائه شده توسط سیسکو است‪.‬‬
‫‪ IGRP‬بر پایه معماری ‪ RIP‬ساخته شده تا به شکل کارآمدتری درون شبکههای متصل بزرگتر‬
‫عمل کند ‪. IGRP‬از معیارهایی مثل پهنای باند‪ ،‬زمان تاخیر‪ ،‬قابلیت اطمینان و بارگیری استفاده‬
‫میکند تا وضعیت دسترسی به روترهای درون شبکه را مقایسه کند‪ .‬با اینحال‪ ،‬در تنظیمات‬
‫پیشفرض ‪ IGRP‬تنها از پهنای باند و زمان تاخیر استفاده میشود ‪. IGRP‬برای شبکههای بزرگتر‬
‫مناسب است‪ ،‬زیرا بهروزرسانیهای خود را هر ‪ 90‬ثانیه منتشر میکند و حداکثر ‪ 255‬هاپ دارد‪.‬‬
‫بهطور پیش فرض هر مسیریاب یا روتر هر ‪ ۹۰‬ثانیه کل محتویات جدول مسیریابی خود را برای‬
‫استفاده مسیریابهای دیگر در شبکه میفرستد‪ .‬زمانیکه چنین اعلنی دریافت میشود تمام‬
‫مسیریابها تخصیصی را درجدول مسیریابی خود قرار داده و ارسال مجدد را شروع میکنند‪ .‬این‬
‫فرایند تضمین میکند که تمامی شبکههای متصل به هر مسیریاب سرانجام به همه مسیریابها‬
‫شناسانده میشوند‪.‬‬
‫‪23‬‬
‫اگر یک مسیریاب در مدت زمان ‪ ۲۷۰‬ثانیه سه برابر زمان پیش فرض ‪ ۹۰‬ثانیه از مسیریاب دیگری‬
‫مجدد تغییرات محتویات مسیریابی را دریافت نکند روتر به این نتیجه خواهد رسید که تمامی‬
‫اطلعاتی که دریافت کردهاست غیرمعتبر است و از آنها استفاده نمیکند‪ .‬در نهایت اگر تا مدت زمان‬
‫‪ ۶۳۰‬ثانیه هفت برابر زمان پیش فرض ‪ ۹۰‬ثانیهاطلعات محتویات مسیریاب را دریافت نکند تمامی‬
‫اطلعات مسیریابی که از آن روتر دریافت کردهاست را پاک میکند‪.‬‬
‫در این پروتکل‪ ،‬از پهنای باند)‪ ، (bandwidth‬تأخیر خط)‪ ، (delay‬قابلیت اطمینان )‪ (reliability‬و‬
‫بار )‪ (load‬به عنوان شاخص هائی جهت تعیین بهترین مسیر استفاده میشود و میتواند حداکثر‬
‫دارای ‪ ۲۵۵‬هاپ باشد که مقدار پیش فرض آن ‪ ۱۰۰‬در نظر گرفته میشود‪ .‬این وضعیت در‬
‫شبکههای بزرگ بسیار مفید است و مشکل داشتن حداکثر ‪ ۱۵‬هاپ در یک شبکه مبتنی بر‬
‫پروتکل ‪RIP‬را برطرف مینماید‪.‬‬
‫‪2-2-5‬پروتکل ابتدا کوتاهترین مسیر را باز کن)‪(OSPF‬‬
‫پروتکل ابتدا کوتاهترین مسیر را باز‪/‬انتخاب کن )‪ (OSPF‬یک پروتکل مسیریابی وضعیت‪-‬پیوند از‬
‫نوع ‪ IGP‬است که برای شبکههای آیپی مبتنی بر الگوریتم ابتدا کوتاهترین مسیر )‪ (SPF‬را استفاده‬
‫کن طراحی شده است‪ .‬از الگوریتم مسیریابی ‪ SPF‬برای محاسبه کوتاهترین مسیر برای نقل و انتقال‬
‫موثر بستههای دادهای استفاده میشود‪ .‬در این روش روترهای ‪ OSPF‬از پایگاههای داده حاوی‬
‫اطلعات مربوط به توپولوژی شبکه نگهداری میکنند‪ .‬این پایگاه داده با دادههای دریافتی از‬
‫پروتکل ‪ LSAs‬سرنام ‪ Link State Advertisements‬که توسط سایر روترها ارسال میشود پر‬
‫میشود‪ . OSPF‬همچنین از الگوریتم ‪ Dijkstra‬برای محاسبه مجدد مسیرهای شبکه در زمانهایی‬
‫که توپولوژی تغییر کرده استفاده میکند‪ .‬همچنین این پروتکل نسبتا ایمن است‪ ،‬زیرا میتواند برای‬
‫امن نگه داشتن دادهها تغییرات پروتکل را تایید کند‪ .‬این پروتکل به دلیل انعطافپذیری و قابلیت‬
‫گسترش در محیطهای بزرگ توسط بسیاری از سازمانها استفاده میشود ‪.‬‬
‫ایجاد پیوندهای همسایگی در ‪ OSPF‬دارای چند مرحله است‪:‬‬
‫‪:Down .1‬در این حالت‪ ،‬هیچ اطلعاتی اعم از پیغامهای ‪ hello‬و غیره رد و بدل نشدهاست‪.‬‬
‫‪:Attempt .2‬مشابه ‪ Down‬است با این تفاوت که پروسه هماهنگی در حال آغاز است‪.‬‬
‫‪24‬‬
‫‪:Init .3‬پیغام ‪ hello‬از روتر دیگری دریافت شده‪ ،‬اما ارتباط دوطرفه هنوز برقرار نشدهاست‪.‬‬
‫‪:2-way .4‬ارتباط دوطرفه بین روترها برقرار است و همسایگی در حال استقرار است‪ .‬این‬
‫وضعیت اولین مرحله در انتخاب ‪ DR‬است‪.‬‬
‫‪:ExStart .5‬اولین مرحله تبیین مجاورت بین دو روتر؛‬
‫‪:Exchange .6‬در حالت‪ ، exchange‬روتر جدول اطلعات تمام پیوندهایش را به همسایه ارسال‬
‫میکند‪ .‬در این مرحله است که تمام بستههای پروتکل مسیریابی قابلیت انتقال دارند‪.‬‬
‫‪:Loading .7‬در این مرحله روتر اطلعات اخیر مربوط به وضعیت پیوند را از همسایهاش‬
‫درخواست میکند‪.‬‬
‫‪:Full .8‬تمام اطلعات مربوط به پیوندها با همه روترها همگام )‪ synchronized‬شدهاست‪ .‬هر‬
‫اطلعاتی که از طریق ‪ OSPF‬به روترهای دیگر اعلم میشود( به اصطلح ‪Advertise‬‬
‫میشود دارای نوع خاصی است که در ‪ header‬پروتکل از بیت نهم تا شانزدهم به آن اختصاص‬
‫یافتهاست‪ .‬این گونههای داده به این شرح هستند‪:‬‬
‫• ‪:Type 1‬همه روترهای یک ناحیه ‪ Area‬این نوع داده را ارسال میکنند و در آن اطلعات‬
‫مربوط به روترهای همسایه و هزینه رسیدن به آنها فهرست میشود‪ .‬این نوع از داده فقط‬
‫مخصوص همان ناحیهای است که ساخته شده‪ .‬نام آن ‪ Router Link‬است‪.‬‬
‫• ‪:Type 2‬این نوع از الاسای توسط روتر برگزیده یا ‪ DR: Designated Router‬ساخته شده و‬
‫اطلعات مربوط به همسایههای یک قسمت یا سگمنت ‪ Segment‬مجاور را فهرست میکند‪ .‬این‬
‫نوع نیز از ناحیهای که در آن ساخته شده فراتر نمیرود‪ .‬نام آن ‪ Network Link‬است‪.‬‬
‫•‬
‫‪:Type 3‬توسط روترهای مرز ناحیه یا( ‪) ABR:Area Border Router‬ساخته شده و بین‬
‫ناحیهها ارسال میشود‪ .‬نا آن ‪ Network Summary‬است‪.‬‬
‫•‬
‫‪:Type 4‬این نوع داده را ‪ ABR‬به ناحیه ستون فقرات شبکه یا ‪ Backbone‬ارسال میکند تا‬
‫حضور یک ‪ ASBR‬را در ناحیه مورد نظر اعلم کند‪ .‬نام آن ‪ ASBR Summary‬است‪.‬‬
‫‪25‬‬
‫•‬
‫‪:Type 5‬توسط روترهای مرز سیستم مستقل( ‪ASBR: Autonomous System Border‬‬
‫‪ )Router‬ساخته میشود تا اطلعات مربوط به مسیرهای اکسترنال (مسیرهایی که از پروتکل‬
‫مسیریابی اواسپیاف استفاده نمیکنند) به روترهایی اجرا کننده پروتکل اواسپیاف ارسال شود‪.‬‬
‫نام آن ‪ External Link‬است‪.‬‬
‫‪2-2-6‬الگوریتم ‪Dijkstra‬‬
‫الگوریتم ‪ Dijkstra‬برای یافتن کوتاهترین مسیر بین گرهها در یک گراف مورد استفاده قرار‬
‫میگیرد‪ .‬این الگوریتم به عنوان مثال‪ ،‬در شبکههای جادهای کاربرد زیادی دارد‪ .‬این الگوریتم‬
‫توسط ادسخر دایکسترا در سال ‪ ۱۹۵۶‬پیشنهاد شد‪.‬‬
‫این الگوریتم انواع مختلفی دارد‪ .‬الگوریتم اصلی دایکسترا کوتاهترین مسیر را بین دو گره معین پیدا‬
‫میکرد‪ ،‬اما یک نوع رایجتر این الگوریتم یک گره منفرد را به عنوان گره "مبدأ" مشخص میکند و‬
‫کوتاهترین مسیر را از مبدأ مشخص شده تا همه گرههای دیگر در گراف پیدا میکند که به آن" درخت‬
‫کوتاهترین مسیر ")‪ (Shortest path tree‬گفته میشود‪.‬‬
‫برای یک مبدأ مشخص شده در گراف‪ ،‬این الگوریتم کوتاهترین مسیر را بین آن گره و سایر نقاط پیدا‬
‫میکند‪ .‬همچنین از این الگوریتم میتوان برای یافتن کوتاهترین مسیر بین دو گره مشخص استفاده‬
‫کرد‪ ،‬به این صورت که الگوریتم از گره مبدأ آغاز میشود و در زمانی که به گره مقصد رسید‬
‫متوقف خواهد شد‪ .‬این الگوریتم کوتاهترین مسیر به شکل گسترده در پروتکلهای مسیریابی در‬
‫شبکهها کامپیوتری‪ ،‬بهطور مثال در ‪ IS-IS‬یا در ‪ OSPF‬مورد استفاده است‪.‬‬
‫الگوریتم دایکسترا از برچسبهایی استفاده میکند که اعداد صحیح مثبت یا اعداد حقیقی هستند و‬
‫کاملا مرتب شدهاند‪ .‬اما میتوان آن را به اعدادی که به صورت جزئی (محلی) مرتب هستند نیز‬
‫تعمیم داد‪ .‬به این عمومی سازی‪ ،‬الگوریتم کوتاهترین مسیر عمومی دایکسترا گفته میشود‪.‬‬
‫الگوریتم دایکسترا برای ذخیرهسازی دسترسی به اطلعات ذخیرهشده‪ ،‬از یک داده ساختار استفاده‬
‫میکند‪ .‬الگوریتم اصلی از صف اولویتدار استفاده میکند و پیچیدگی آن )| ‪𝑂(|𝑉 2‬جایی‬
‫که |𝑉| تعداد گرهها است میباشد‪ .‬ایده این الگوریتم در مقاله( ‪ Leyzorek‬و دیگران ‪) 1957‬نیز‬
‫‪26‬‬
‫ارائه شدهاست( ‪. Fredman‬و ‪) Tarjan 1984‬با استفاده از یک صف اولویتدار در هرم فیبوناچی‬
‫پیچیدگی زمان اجرا را به )|𝑉|‪ 𝑂(|𝐸| + |𝑉| log‬که|𝐸| تعداد لبهها است رساندند‪ .‬این الگوریتم‬
‫به صورت مجانبی سریعترین الگوریتم یافتن کوتاهترین مسیر از یک مبدأ برای یک گراف جهت‬
‫دار با وزنهای غیر منفی بدون محدودیت شناخته شدهاست‪.‬‬
‫‪2-2-7‬پروتکلهای دروازه خارجی)‪(EGP‬‬
‫▪‬
‫پروتکل دروازه خارجی )‪ (EGP‬برای تبادل داده بین میزبانهایی که در سیستمهای خودمختار‬
‫در مجاورت یکدیگر قرار دارند استفاده میشود‪ .‬به عبارت دیگر ‪ EGP‬یک مکانیزم ارتباطی‬
‫برای روترها فراهم میکند تا اطلعات دامنههای مختلف را بهاشتراک بگذارند‪ .‬معروفترین‬
‫نمونه از یک ‪ EGP‬خود اینترنت است‪ .‬جدول مسیریابی پروتکل ‪ EGP‬شامل روترهای شناخته‬
‫شده‪ ،‬هزینه مسیر و آدرس شبکه دستگاههای مجاور است ‪. EGP‬در گذشته به میزان زیادی‬
‫توسط سازمانهای بزرگ استفاده میشد‪ ،‬اما بعد از مدتی با ‪ BGP‬جایگزین شد‪ .‬پروتکل فوق به‬
‫این دلیل محبوبیت خود را از دست داد که از محیطهای شبکهسازی چند مسیره پشتیبانی نمیکرد‪.‬‬
‫پروتکل ‪ EGP‬برای آنکه بتواند به بهترین شکل کار کند از یک پایگاه داده خاصمنظوره استفاده‬
‫میکند‪ .‬این پایگاه داده اطلعات مربوط به شبکههای مجاور و جهتهای مسیریابی را نگهداری‬
‫میکند‪ .‬پروتکل ‪ EGP‬اطلعات مسیر را برای روترهای موجود در شبکه ارسال میکند ‪.‬‬
‫‪2-2-7‬پروتکل مسیریابی دروازه داخلی پیشرفته)‪(EIGRP‬‬
‫▪‬
‫پروتکل مسیریابی دروازه داخلی پیشرفته )‪ (EIGRP‬یک پروتکل مسیریابی بردار فاصله است‬
‫که برای شبکههای آیپی‪AppleTalk ،‬و ‪ NetWare‬طراحی شده است ‪. EIGRP‬پروتکل‬
‫اختصاصی سیسکو است که طراحی آن بر پایه پروتکل اصلی ‪ IGRP‬صورت گرفته است‪.‬‬
‫زمانی که از ‪ EIGRP‬استفاده میشود یک روتر اطلعات را از جداول مسیریابی همسایگان‬
‫خود دریافت میکند و آنها را ضبط میکند‪ .‬هر زمان تغییری اتفاق میافتد روتر اطلعات جدید‬
‫را برای همسایگان خود ارسال میکند‪ .‬به این شكل روترهای مجاور از آنچه در دستگاههای‬
‫اطراف میگذرد آگاه میشوند ‪. EIGRP‬برای به حداکثر رساندن کارایی از فناوریها و‬
‫پروتکلهای خاصی همچون ‪ RTP‬سرنام ‪ Reliable Transport Protocol‬و ‪ DUAL‬سرنام‬
‫‪27‬‬
‫‪Diffusing Update Algorithm‬استفاده میکند‪ .‬در این روش بستهها به شکل کارآمدتری‬
‫ارسال میشوند‪ ،‬زیرا مسیرها بازنگری و محاسبه میشوند تا به فرآیند همگرایی سرعت داده‬
‫شود‪.‬‬
‫‪2-2-8‬پروتکل دروازه مرزی)‪(BGP‬‬
‫▪‬
‫پروتکل دروازه مرزی )‪ (BGP‬پروتکل مسیریابی اینترنت است که به عنوان یک پروتکل بردار‬
‫فاصله طبقهبندی شده است ‪. BGP‬با رویکرد غیر متمرکز در مسیریابی طراحی شد تا جایگزین‬
‫‪EGP‬شود‪ .‬الگوریتم انتخاب بهترین مسیر در ‪ BGP‬بهترین مسیرها را برای نقل و انتقال‬
‫بستهها انتخاب میکند‪ .‬اگر تنظیمات را تغییر نداده باشید‪BGP ،‬مسیرهایی که کمترین فاصله تا‬
‫مقصد دارند را انتخاب میکند‪ .‬با اینحال‪ ،‬خیلی از مدیران شبکه ترجیح میدهند تصمیمات‬
‫مسیریابی را متناسب با نیازهای خود تغییر دهند ‪. BGP‬تنها زمانی دادههای جدول مسیریابی‬
‫بهروزرسانی شده را ارسال میکند که تغییراتی اتفاق افتاده باشد‪ .‬در نتیجه هیچ شناسایی‬
‫خودکاری از تغییرات توپولوژی وجود ندارد و کاربر باید ‪ BGP‬را بهطور دستی پیکربندی کند‪.‬‬
‫به منظور افزایش سطح امنیت‪ ،‬پروتکل ‪ BGP‬میتواند احراز هویت شود تا فقط روترهای تایید‬
‫شده بتوانند دادهها را با یکدیگر مبادله کنند‪.‬‬
‫پروتکل سامانه حد واسط به سامانه حد واسط)‪(IS-IS‬‬
‫▪‬
‫پروتکل سامانه حد واسط به سامانه حد واسط )‪ (IS-IS‬یک پروتکل وضعیت پیوند‪ ،‬مسیریابی‬
‫آیپی و پروتکل ‪ IGPP‬است که در اینترنت برای ارسال اطلعات مسیریابی آیپی استفاده‬
‫میشود ‪. IS-IS‬از یک نسخه اصلح شده از الگوریتم ‪ Dijkstra‬استفاده میکند‪ .‬شبکههای مبتنی‬
‫بر پروتکل ‪ IS-IS‬از طیف گستردهای از مولفههای مختلف شامل سیستمهای نقطه پایانی‬
‫(دستگاههای کاربر)‪ ،‬سیستمهای میانی (روتر)‪ ،‬نواحی و دامنهها تشکیل شدهاند‪ .‬در پروتکل‪IS-‬‬
‫‪IS‬روترها در گروههایی تحت عنوان نواحی )‪ (areas‬سازماندهی میشوند و با ترکیب چند‬
‫ناحیه یک دامنه ساخته میشود‪ .‬دو نوع آدرس شبکه ‪ NSAP‬سرنام ‪Network Service‬‬
‫‪Access Point‬و ‪ NET‬سرنام ‪ Network Entity Title‬توسط ‪ IS-IS‬استفاده میشود‪.‬‬
‫‪28‬‬
‫‪2-2-9‬پروتکلهای مسیریابی ‪ Classful‬یا‪Classless‬‬
‫▪‬
‫پروتکلهای مسیریابی را میتوان به دو دسته ‪ classful‬و ‪ classless‬طبقهبندی کرد‪ .‬تمایز بین‬
‫این دو کلس به نحوه انجام بهروزرسانیهای مسیریابی بر میگردد ‪.‬‬
‫پروتکلهای مسیریابی‪Classful‬‬
‫▪‬
‫پروتکلهای مسیریابی ‪ Classful‬در زمان بهروزرسانی مسیریابی اطلعات ماسک زیرشبکه را‬
‫ارسال نمیکنند‪ ،‬در حالی که در مسیریابی ‪ classless‬اینکار انجام میشود ‪. RIPv1‬و ‪IGRP‬‬
‫به عنوان پروتکلهای ‪ classful‬در نظر گرفته شدهاند‪ ،‬زیرا در بهروزرسانیهای مسیریابی خود‬
‫اطلعات ماسک زیرشبکه را منتقل نمیکنند‪ .‬این نوع از پروتکلها جای خود را به پروتکلهای‬
‫‪classless‬دادهاند ‪.‬‬
‫پروتکلهای مسیریابی‪Classless‬‬
‫▪‬
‫همانگونه که اشاره شد پروتکلهای مسیریابی ‪ classless‬جایگزین پروتکل ‪ classful‬شده است‪.‬‬
‫این نوع پروتکلها در زمان بهروزرسانی مسیریابی‪ ،‬اطلعات ماسک زیرشبکه را ارسال‬
‫میکنند‪OSPF ،EIGRP ،. RIPv2‬و ‪ IS-IS‬همگی در گروه پروتکلهای مسیریابی‬
‫‪classless‬طبقهبندی میشوند‪.‬‬
‫‪29‬‬
‫منابع‬
Routing Information Protocol www.cisco.com
•
https://www.semanticscholar.org/paper/An-adaptive-routing-algorithm-forintegrated-Wang-Jiang/e7dc32dcee204dab881aa01c2e3a357ae0a5106c
•
/https://avashnet.com/what-is-osi-model
•
M. Noormohammadpour; C. S. Raghavendra. (2018). "Minimizing Flow
Completion Times using Adaptive Routing over Inter-Datacenter Wide Area
Networks"
•
Goścień, Róża; Walkowiak, Krzysztof; Klinkowski, Mirosław (2015-03-14).
"Tabu search algorithm for routing, modulation and spectrum allocation in
elastic optical network with anycast and unicast traffic". Computer
Networks. 79: 148–165. doi:10.1016/j.comnet.2014.12.004. ISSN 13891286.
•
https://www.scaler.com/topics/routing-algorithms-in-computer-networks
•
/https://www.geeksforgeeks.org/classification-of-routing-algorithms
•
30
Download