پروتکل مسیریابی OSPF

پروتکل مسیریابی OSPF

مقدمه :

در جلسات گذشته با نحوه ی کارکرد الگوریتم های Distance vector آشنا شدیم. همچنین پروتکل مسیریابی RIP را به عنوان Routing protocol ای که از این الگوریتم پیروی میکند مورد بررسی قرار دادیم. با توجه به مطالب گفته شده دانستیم که الگوریتم Distance vector دارای معایبی است و همین دلیل نیز باعث به وجود آمدن الگوریتم های Link state گردید.

پروتکل های مسیریابی OSPF و ISIS از جمله Routing protocol هایی هستند که از الگوریتم Link state برای مسیریابی استفاده میکنند. در این جلسه قصد داریم تا پروتکل مسیریابی OSPF را مورد بحث و بررسی قرار دهیم تا بدین ترتیب با نحوه ی کارکرد الگوریتم Link state نیز بیشتر آشنا شویم.

پروتکل مسیریابی OSPF

پروتکل مسیریابی OSPF :

پروتکل مسیریابی OSPF در گروه Routing protocol های IGP قرار دارد. همه ی روتر هایی که قصد شبکه شدن از طریق پروتکل مسیریابی OSPF را داشته باشند قبل از هر اقدامی باید با یکدیگر Neighbor شوند. اما در اینجا Neighbor شدن تنها از طریق اتصال فیزیکی دو روتر با یکدیگر صورت نمیگیرد و روتر ها برای همسایه شدن با یکدیگر باید شرایط زیر را دارا باشند :

  • از طریق یک اینترفیس به یکدیگر متصل شده باشند.
  • روتر ها در یک Broadcast domain قرار داشته باشند.
  • NetID که بر روی اینترفیس های مشترک تنظیم میشود یکسان باشد.
  • MTU روتر ها با یکدیگر برابر باشد.

پس از اینکه روتر ها با یکدیگر Neighbor شدند، هر روتر جدول مسیریابی خود را برای روتر همسایه ارسال میکند و روتر همسایه نیز مجددا آن را به سمت همسایه های خود میفرستد. این پروسه مدام اتفاق می افتد، تا آنجا که این Routing table به دست همه ی روتر های شبکه میرسد. حال تصور کنید که همه ی روتر های درون شبکه این اقدام را انجام میدهند. یعنی همه ی روتر ها Routing table خود را به سمت سایر روتر های شبکه ارسال میکنند. حاصل تمامی این اقدامات و اطلاعات به وجود آمدن دیتابیس بزرگی به نام LSDB میباشد. در واقع همه ی این اطلاعات اعم از اینکه هر روتر چه اینترفیس هایی دارد، چه آدرس IP ای بر روی اینترفیس ها تنظیم شده است، هر اینترفیس چه میزان پهنای باند دارد، مسیر رسیدن به هر NetID خاص و …. در این دیتابیس ذخیره میگردد. از طرفی در این میان به صورت خودکار و با در نظر گرفتن شرایطی خاص یکی از روتر ها که از بیشترین اولویت برخوردار است به عنوان روتر DR (Designated Router) در شبکه انتخاب شده و LSDB را نگه داری میکند. همچنین روتر دیگری با اولویت کمتر (نسبت به DR) به عنوان BDR یاBackup Designated Router انتخاب میشود تا به صورت روتر پشتیبان برای DR وارد عمل شود.

پس از انتخاب روتر DR سایر روتر ها جدول مسیریابی و آپدیت های خود را تنها به سمت این روتر ارسال میکنند و سپس روتر DR اطلاعات را به سمت سایر روتر ها منتقل میکند.

نکته!!! هنگامی که روتر ها از پروتکل مسیریابی OSPF استفاده میکنند، دیگر اطلاعات به صورت Periodic و در بازه های زمانی مشخص به سمت سایر روتر ها منتقل نمیشود. بلکه تنها اوقاتی که تغییری در شبکه رخ دهد، آن تغییر توسط روتر DR به سایر روترها اطلاع داده میشود.

Packet ها و Update هایی که هر روتر به سمت روتر DR ارسال میکند LSA یاLink State Advertisement نام دارند. هر LSA در بسته ای دیگر به نام LSU یا Link State Update قرار میگیرد و به سمت روتر DR ارسال میشود.

نکته!!! مدیر شبکه میتواند به صورت دستی روتر DR را انتخاب کند. برای انتخاب روتر DR کافی است عدد Priority آن را ۲۵۵ قرار دهیم.

 

انتخاب بهترین مسیر بر اساس Cost :

پروتکل مسیریابی OSPF بر اساس الگوریتم های Link state عمل میکند و به همین دلیل برای یافتن بهترین مسیر، علاوه بر شمارش تعداد روتر های موجود در سر راه از فاکتور های دیگری نیز بهره میگیرد. برای مثال OSPF با در نظر گرفتن پهنای باند هر لینک، هزینه ای (Cost) را برای آن در نظر میگیرد. در زیر Cost مربوط به هر پهنای باند را مشاهده میکنید.

اینترفیس با پهنای باند ۱۰۰۰m = Cost 1

اینترفیس با پهنای باند ۱۰۰m = Cost 10

اینترفیس با پهنای باند ۱۰m = Cost 100

پروتکل مسیریابی OSPF در نهایت از بین تمامی مسیر های موجود آن مسیری را انتخاب میکند که در مجموع از Cost کمتری برخوردار باشد.

 

تقسیم کردن شبکه به ناحیه های مختلف :

OSPF پروتکل مسیریابی بسیار قدرتمندی است که میتواند تعداد زیادی از روتر ها را با یکدیگر شبکه کند. اما تصور کنید برای شبکه کردن ۱۰۰۰ روتر از پروتکل مسیریابی OSPF استفاده کنیم. در این صورت حجم اطلاعات موجود در Routing table هر روتر به شدت افزایش یافته و این امر باعث کند شدن شبکه میگردد. مدیران شبکه برای حل این مشکل شبکه ی خود را به چند ناحیه ی (Area) مختلف تقسیم میکنند. برای مثال هر ۶۰ روتر را در یک Area قرار میدهند. هر Area از یک ID منحصر به فرد برخوردار است و تمامی روتر های درون Area نیز routerID خاص خود را دارند. بین همه ی Area های موجود در شبکه، یکی از آن ها که توانایی دسترسی به سایر Area ها را (به صورت مستقیم و غیر مستقیم) دارد به عنوان Area اصلی یا به اصطلاح Backbone انتخاب میشود.

نکته!!! ID مربوط به ناحیه ی Backbone ، “۰٫۰٫۰٫۰” میباشد.

نکته!!! Area هایی که به صورت غیر مستقیم به Backbone متصل هستند از طریق یک اینترفیس مجازی به نام Virtual link با این ناحیه ارتباط برقرار میکنند.

روتر هایی که تنها در یک Area کار میکنند روترهای IR یا Internal Router نامیده میشوند و روتر هایی که Area های مختلف را به یکدیگر متصل میکنند روتر های ABR یا Area Border Router نامیده میشوند.

معمولا هر AS قصد ارتباط با دنیای بیرون و یا AS دیگری را نیز دارد. روتر هایی که در مرز هر AS قرار میگیرند و ارتباط آن شبکه را با دنیای خارج برقرار میکنند ASBR یا Autonomous Border Router نامیده میشوند.

روتر های IR اطلاعات دقیقی از سایر روتر هایی که درون Area های دیگر قرار گرفته اند ندارند. به همین خاطر هنگامی که قصد ارسال اطلاعات به سمت روتری در Area دیگر را داشته باشند، با در نظر گرفتن NetID مقصد، بسته را به سمت روتر ABR ای که در لبه ی Area مقصد قرار دارد میفرستند. سپس روتر ABR که از جزییات روتر های ناحیه ی خود کاملا باخبر است، بسته ها را به سمت مقصد مورد نظر ارسال میکند.

بررسی مفهوم area در ospf

NBMA یا None Broadcast Multiple Access :

طبق مطالبی که در این جلسه گفته شد، همه ی روتر هایی که قصد دارند برای شبکه شدن با یکدیگر از پروتکل مسیریابی OSPF استفاده کنند باید در یک Broadcast domain قرار داشته باشند تا با یکدیگر Neighbor شوند. اما در دنیای شبکه برخی از بستر های ارتباطی مجاز به ارسال Broadcast domain نمیباشند (برای مثال بستر Frame relay ). در چنین مواقعی مدیر شبکه باید به صورت دستی همسایه ها را برای هر روتر مشخص کند.

 

 

 

 

 

 

 

 

 

برچسب :
فاطمه ترک پور

ایشان از جمله برترین مدرسین شبکه می‌باشند و با تجربه بسیار غنی در حوزه دستگاه های میکروتیک و سیسکو در حال حاضر مسئول تحقیقات و تدریس Network مجموعه فرکیان‌تک می‌باشند.

مطالب مرتبط

دیدگاهها

نظر: