پروتکل OSPF
پروتکلهای Link State،پروتکلهایی هستند که در شروع کارRouterها با ارسال Hello packet سعی میکنند که یک Adjacencie ایجاد کنند…
پروتکل OSPF یک پروتکل Link State معرفی میشود.
پروتکلهای Link State،پروتکلهایی هستند که در شروع کار Routerها با ارسال Hello packet سعی میکنند که یک Adjacencie ایجاد کنند. بعد از برقراری Adjacencie ،Routerها با Neighborهایشان Packetها را ردوبدل میکنند که اصطلاحاً به این ارسال، ارسال Full Update گفته میشود.
Full Update یعنی یک Update کلی که Router دررابطهبا تمامی Linkهایی که دارد، برای دیگر Routerها ارسال میکند.
یک Link یعنی یک Interface بر روی Interface.
Router Link State یعنی Router وضعیت یک Interface یا یک Link را به اطلاع Routerهای دیگر که با آنها Adjacencie دارد را میفرستد. اطلاعاتی که Routerها به این فرم، Advertise میکنند را LSAS گفته میشود.
در Router OSPFها بعد از برقراری Adjacencie بین هم شروع به ارسال LSA به یکدیگر میکنند و این باعث میشود که تمامی Routerها اطلاعات دررابطهبا تمامی Linkهایی که در Network وجود دارد را به دست بیاورند.
اطلاعاتی که Routerها به این فرم دریافت میکنند باعث بهوجودآمدن یک Database میشود که این Database را با نام LSDB میشناسیم. در تمامی Routerهایی که در Network ما وجود دارند دارای LSDB یکسانی هستند. بعد از آن که Routerها LSDB را ایجاد کردند بر اساس الگوریتم SPF، شروع به محاسبه بهترین مسیر برای رسیدن به هر Network که توی این LSDB دارند میپردازند.
OSPF یک پروتکل استاندارد است که برای Network خیلی بزرگ طراحی شده است.
وقتی که تعداد Routerها در شبکه افزایش پیدا میکند، حجم محاسباتی که Routerها انجام میدهند میتواند خیلی زیاد باشد و همچنین فضایی که به LSDB داده میشود خیلی زیاد است. به همین خاطر برای Minimize کردن فضایی که LSDB اشغال میکند یا برای پایین آوردن میزان محاسبات Router ها، ما شبکه خودمان را به یک سری Area تقسیم میکنیم.
هر Area در واقع یک تعداد Router را درون خودش قرار میدهد. یکی از این Areaها که وجودش ضروری است Area،Backbone یا Area نامیده میشود.
شماره Areaها میتواند یا با چهارتا ۰.۰.۰.۰ IP نامیده میشود و یا میتواند بهصورت یک عدد نامیده میشود.
Area، رابط بین همه Areaها است. به این معنی که همه Areaها مثل (۱,۲,۳,…) باید مستقیماً به Area وصل باشند. بهعبارتدیگر Area یک Area ترنزیت است.
در Router ،OSPFهایی که در Area قرار میگیرند، تحت عنوان Backbone Router نامیده میشوند.
Routerهایی که در رابطه بین Area و Areaهای دیگر هستند آنها را با نام ABR میشناسیم. (Routerهایی را هم داریم که آنها را با نام ASBR میشناسیم. اینها Routerهایی هستند که رابط بین Domain و یک Domain دیگر مثل Eigrp ،RIP یا هر Domain دیگری است.)
Routerها برای برقراری Adjancencie از Hello Packet استفاده میکنند. این Hello packet شامل یک سری اطلاعات میشود. هر Router توی OSPF برای خودش یک Route ID دارد. این Route-ID ،IP یکی از Interfaceهای آن RRoute است.
Hello Packetها هرچند ثانیه یکبار بین Routerها ردوبدل میشوند. این Interval بستگی به نوع Interface از نوع LAN دارد.
Hello Packetها هر ۱۰ ثانیه یکبار بین Routerها ردوبدل میشوند.
اگر تا ۴ برابر Hello Time یعنی توی چنین Networkها تا ۴۰ ثانیه که بهش Dead Interval گفته میشود و Routerها از هم دیگر Hello Packet دریافت نکنند یا از یک Neighbor، Hello Packet دریافت نکنند، فرض میکنند که آن Network، از بین رفته است.
لیست Neighborها جزو اطلاعات دیگری است که Hello packet نوشته میشود که روی این Interface چه Neighborهای وجود دارد.
Area ID شماره آن Area است که روی آن Interface به Routerهای دیگر فرستاده میشود.
Router Priority یک پارامتری است که مورداستفاده Routerها برای انتخاب دوتا رل مهم توی چنین شبکهای است. (رل DR و رل BDR)
در شبکه هایی که جنس LAN هستند یک Router حتما بنام DR انتخاب می شود. DR ،Routerی است که اصطلاحا با نام مرکز بخش Update می شناسیم، یعنی هر Router، هر Update ی که داشته باشد، آن را به IP،۲۲۴. .۰.۶ارسال می کند. این IP ،IPی است که Router ی که رل DR دارد روی این IP در حال گوش دادن استتا Update دریافت بکند.
DR بعد از گرفتن Update برروی این IP، آن Update ها را به سایر Router ها که در داخل آن Segment قرار دارند می رساند. Update هایی که DR توی شبکه به سایر Router ها ارسال می کند روی ۲۲۴. .۰.۵ IP، فوروارد می شوند.
Router دیگری بنام BDR وجود دارد که Backup DR نامیده میشود که اگر DR از بین رفت، سریعاً جایگزین آن بشود.
انتخاب Routerهای DR ،BDR از روی Priority صورت میگیرد. هر Router که Priority بالاتری داشته باشد آن Router برای رل DR انتخاب میشود. این Priority بهصورت پیشفرض روی Interface Routerها با عدد ۱ تنظیم شده است؛ بنابراین هر Router که در آن Segment زودتر بالا بیاید با نام DR انتخاب میشود. اگر بخواهیم میتوانیم بین Router ها، Authentication Password راهاندازی کنیم.
SPF Algorithm
این الگوریتم بهازای هر Networkی که در LSDB وجود دارد یک TREE درست کرده و خودش را در Root آن Tree قرار میدهد و شروع به انتخاب بهترین مسیر برای رسیدن به آن Network، برای انتخاب بهترین مسیر از یک پارامتری بنام Cost استفاده میکند.
برای محاسبه Cost از Reference Bandwidth استفاده میشود.
Reference Bandwidth بهصورت پیشفرض در حال حاضر بر روی Routerها ۱۰۰ mbt/s است. برای محاسبه Cost از فرمول ۱۰/bandwidth استفاده میشود. اگر Fast Ethernet، باشد Band width ،۱۰ به توان ۸ است و cost بهصورت ۱۰/۱۰-۱ خواهد شد.
اگر Interface از نوع Ethernet باشد Bandwidth ،۱۰ به توان ۷ است و ۱۰/۱۰=۱۰ cost خواهد بود و برای Interfaceهای Serial که بهصورت پیشفرض Bandwidth ،۱۵۴۹kbit/s است و cost=64 میشود.
“Router – ID یکی از” IPهای “Router بهصورت پیشفرض این” هایی است که از همه” هابزرگتر است. البته برای” Interfaceهایی “که” Active هستند“.
Router-ID
اما اگر” Interface Loopback داشته باشیم” IPloopback به” سایر” ها ترجیح داده میشود. اگر چند تا” Interface Loopback داریم آن” Interface Loopback که” IP آن از بقیه بزرگتر است را بهعنوان” Router -ID انتخاب میشود“.
چیزی که در” OSPFتوصیه شده است این است که ما اجازه ندهیم که Router – ID بهصورت اتوماتیک انتخاب میشود.