پروتکل OSPF:
بکارگیری پروتکل RIP در شبکه های کامپیوتری بیشتر به دلیل شرایط زمان بوده است. در ده هفتاد و هشتاد حافظه و پردازندههای سریع ، گران قیمت بودند و پیاده سازی الگوریتمهای مسیریابی مبتنی بر روشهایی نظیر LS که هم به حافظه و هم به پردازندۀ سریع نیاز دارند ، مقرون به صرفه نبود. از طرفی شبکه ها نیز آنقدر توسعه نیافته بودند که نیاز به الگوریتم های بهینه تر احساس شود. با گسترش اینترنت و توسعۀ شبکه های خودمختار در اواخر دهۀ هشتاد ، کاستی های پروتکل RIP نمود بیشتری پیدا کرد و با سریع شدن پردازنده ها و ارزان شدن سخت افزار ، نیاز به طراحی یک پروتکل بهینه ،IETF را واداشت تا در سال 1990،OSPF را به عنوان یک پروتکل استاندارد ارائه نماید. مسیریابهای زیادی مبتنی بر این پروتکل به بازار عرضه شده اند و احتمال می رود که در آینده تبدیل به مهمترین پروتکل مسیریابی درونی در شبکه های AS شود.
مقایسه پروتکل OSPF با پروتکل RIP:
•بر خلاف پروتکل RIP ، این پروتکل از الگوریتمLS برای محاسبۀ بهترین مسیر استفاده میشود و بنابراین مشکل ”شمارش تا بینهایت“ وجود ندارد.
•بر خلاف پروتکل RIP ، در این پروتکل معیار هزینه فقط ”تعداد گام“ نیست بلکه میتواند چندین معیار هزینه را در انتخاب بهترین مسیر در نظر بگیرد.
•بر خلاف پروتکل RIP ، در این پروتکل حجم بار و ترافیک یک مسیریاب در محاسبۀ بهترین مسیر دخالت داده میشود و در ضمن در هنگام خرابی یک مسیریاب ، جداول مسیریابی سریعاً همگرا میشود.
•بر خلاف پروتکل RIP ، در این پروتکل ، فیلد Type of Service در بستۀ IP میتواند در نظر گرفته شود و بر اساس نوع سرویس درخواستی ، برای یک بسته مسیر مناسب انتخاب گردد.
•بر خلاف پروتکل RIP ، در پروتکل OSPF تمام بسته های ارسالی برای یک مقصد خاص ، روی بهترین مسیر هدایت نمی شود بلکه درصدی از بسته ها روی مسیرهایی که از لحاظ حداقل هزینه در رتبۀ 2 ,3 و … قرار دارند ارسال میشود تا پدیدۀ ”نوسان“رخ ندهد. به این کار ”موازنه بار“گفته میشود.
•بر خلاف پروتکل RIP ، در این پروتکل از مسیریابی سلسله مراتبی پشتیبانی میشود.
•بر خلاف پروتکل RIP ، در این پروتکل مسیریابها جداول مسیریابی را از دیگر مسیریابها قبول نمیکنند مگر آنکه هویت ارسال کنندۀ آن احراز شود. به همین دلیل مسئول شبکه برای هر مسیریاب یک کلمۀ عبور“ تعیین میکند تا کاربران اخلالگر نتوانند با برنامه نویسی ، جداول مسیریابی مصنوعی تولید کرده و با ارسال آنها ، مسیریابی در شبکه را با مشکل مواجه کنند.
سلسله مراتب تعیین شده برای نواحی در پروتکل OSPF:
•یک شبکۀ خودمختار (AS) به تعدادی ”ناحیه“تقسیم می شود. تمام مسیریابهای درون یک ناحیه باید مسیریابهای هم ناحیه خود و هزینه ارتباط بین آنها را بدانند و در جدولی ذخیره کنند. در لحظات به هنگام سازی ، این جداول برای تمام مسیریابهای هم ناحیه ارسال خواهد شد. مسیریاب هیچ اطلاعی از وضعیت مسیریابهای درون نواحی دیگر ندارد.
•درون هر ناحیه یک یا چند مسیریاب وجود دارند که ارتباط بین نواحی را برقرار میکنند؛ به آنها ، ”مسیریابهای مرزی“گفته میشود. مجموعه مسیریابهای مرزی و مسیریابهایی که در خارج از هر ناحیه نقش توزیع ترافیک بین نواحی را بر عهده دارند (بهمراه ساختار ارتباطی بین این مسیریابها)”ستون فقرات“ شبکۀ AS را تشکیل می دهد.
• درون ستون فقراتِ شبکۀ AS ممکن است مسیریابهایی وجود داشته باشند که با دیگر شبکه های AS در ارتباط باشد. به این مسیریابها ”دروازه های مرزی“یا BGP گفته میشود.
در پروتکل OSPF جداول زیر توسط مسیریابها ”اعلان“ میشود:
•جدول مسیریابی محلی درون یک ناحیه : این جداول ، محتوی اطلاعاتی در مورد گراف هزینه ناحیه ای است که یک مسیریاب به آن متعلق است و توسط هر مسیریاب درون آن ناحیه، به تمام مسیریابها اعلان میشود.
•جدول مسیریابی شبکه درون یک ناحیه: این جداول که محتوی اطلاعاتی در مورد مسیریابها و کانالهای بین آنها در یک شبکه است ، توسط مسیریاب های درون یک ناحیه به تمامی مسیریابها اعلان میشود.
•جدول خلاصه مسیریابی مسیریابهای مرزی: این جداول محتوی اطلاعاتی خلاصه ، در مورد مسیرهای موجود در خارج از نواحی است و توسط مسیریاب های مرزی به تمامی مسیریاب های نواحی مختلف اعلان میشود.
•جدول مسیریابی شبکه: این جداول محتوی اطلاعاتی در مورد مسیریاب ها و کانالهای بین آنها در خارج از شبکۀ AS است و توسط مسیریاب های واقع بر ستون فقرات شبکۀ AS به تمامی مسیریاب های نواحی مختلف اعلان میشود ولی فقط در مسیریاب های مرزی مورد استفاده قرار می گیرد.
در پروتکل های link-state که به آنها پروتکل های shortest path first نیز گفته می شود ، هر روتر سه جدول جداگانه را ایجاد می نماید . یکی از این جداول وضعیت همسایگانی را که مستقیما" به آن متصل شده اند در خود نگهداری می نماید . در جدول دیگر ، توپولوژی تمامی شبکه نگهداری می گردد و از جدول سوم برای نگهداری اطلاعات روتینگ استفاده می شود . روترهای link-state نسبت به پروتکل های روتینگ distance-vector دارای اطلاعات بیشتری در ارتباط با شبکه و ارتباطات بین شبکه ای می باشند. پروتکل های link-state اطلاعات بهنگام خود را برای سایر روترهای موجود در شبکه ارسال می نمایند (وضعیت لینک) .
OSPF ( برگرفته شده از Open Shortest Path First ) یک پروتکل روتینگ IP است که دارای تمامی ویژگی های یک پروتکل link-state است .پروتکل فوق ، یک پروتکل روتینگ استاندارد باز است که توسط مجموعه ای از تولیدکنندگان شبکه از جمله شرکت سیسکو ایجاد شده است . در صورتی که در یک شبکه از روترهائی استفاده می گردد که تمامی آنها متعلق به شرکت سیسکو نمی باشند ، نمی توان از پروتکل EIGRP استفاده کرد . در چنین مواردی می توان از گزینه هائی دیگر نظیر RIP ، RIPv2 و یا OSPF استفاده نمود . در صورتی که ابعاد یک شبکه بسیار بزرک باشد ، تنها گزینه موجود پروتکل OSPF و یا استفاده از route redistribution است ( یک سرویس ترجمه بین پروتکل های روتینگ ) .
OSPF ، با استفاده از الگوریتم Dijkstra کار می کند . در ابتدا ، اولین درخت کوتاهترین مسیر ایجاد می گردد و در ادامه جدول روتینگ از طریق بهترین مسیرها توزیع می گردد . این پروتکل دارای سرعت همگرائی بالائی است ( شاید به اندازه سرعت همگرائی EIGRP نباشد ) و از چندین مسیر با cost یکسان به مقصد مشابه حمایت می نماید . برخلاف EIGRP ، پروتکل OSPF صرفا" از روتینگ IP حمایت می نماید.
انواع Area:
1) Stub Area: این ناحیه به اطلاعات External LSA (type 5) نیازی ندارد زیرا به هر حال برای خروج از ناحیه دست به دامان ABR خود میشود. پس مسیر همیشه بدین گونه است و از طریق یک روتر خارج میشود. نکته و هدف از استفاده از این Area، Performance است. از آنجا که LSA 5 را قبول نمیکند پس LSA 4 نیز در این ناحیه بی معنی است و توسط ABR، Filter می شود. هدف صرفه جوئی در Resource ها و Memory است. که البته Stub area محدودیت های خود را نیز دارد:
•هیچ ASBR ی در ناحیه نمی توان داشت. (و مسلما هیچ Redistribution و External Route)
•Virtual Link در این Area مجاز نیست (نه در ناحیه و نه بصورت Transit)
نکته :
دونوع کلی و اصلی از شبکه ها بودند، Transit و Stub ، شبکه های Transit اجازه می دهد تا پکت های خارجی از طریق آنها به مکانهای دیگرانتقال یابد، در حالی که شبکه های Stub همچین عملی را انجام نمی دهند.
تمامی Area ها باید دارای یک روتر که دارای یک اینترفیس در area صفر باشد ، داشته باشد تا بتواند با area های دیگر در ارتباط باشد. در صورتیکه چنین شرایطی فراهم نباشدبا تعریف virtual link وتعین یک area بصورت transit می توان ارتباط را برقرار نمود.
در شبکه OSPF توپولوژی شبکه بواسطه LSA1 و LSA2 بدست می آید. در واقع این دو LSA تنها اطلاعات Link State در این پروتکل هستند.
فراموش نکنید که نوع Interface و ارتباط در LSA Type 1 بصورت Stub یا
Transit ذکر میشود. اگر Transit باشد یعنی به شبکه ای Multiaccess وصل است و
اگر Stub باشد یعنی به یک روتر یا کمتر بواسطه آن Interface متصل است. این
را با Stub Area اشتباه نگیرید که ارتباطی با یکدیگر ندارند!
•می توان چند ABR در این ناحیه داشت اما از آنجا که بهترین مسیر به ASBR را نمیتوان در این ناحیه فهمید، تفاوتی در انتخاب ABR برای رسیدن به ASBR وجود ندارد.
•تمام روتر ها (در Hello Message) بیت E خود را صفر ست میکنند (علامت Stub) و با روتری با E Flag برابر با یک، ارتباطی برقرار نمی کنند.
2) Totally Stubby Area: اگر فیلتر کردن LSA 5 موجب بهبود کارایی روتر میشود، در این نوع از ناحیه حتی LSA 3 نیز Block میشود. این نوع Area توسط Cisco ارائه شده تا تنها با تزریق یک Default Route توسط ABR روتر ها تمام بسته هایی که مقصدشان داخل ناحیه نیست را به ABR بفرستند.
3) Not So Stubby Area: یک ناحیه Stub است که بنا به دلایلی اقدام به Redistribution میکند. (مثلا ارتباط با ISP) LSA 7 در داخل ناحیه منتشر میکند. برای اعلام به نواحی دیگر به ABR میرسد. توسط ABR، اگر P bit آن LSA صفر باشد، Block میشود و اگر P Bit آن یک باشد به صورت مبدل شده به LSA 5 به بیرون از ناحیه اعلام میگردد.
4) Backbone Area: این ناحیه بنام Area 0 مطرح میگردد و تمام نواحی از طریق این ناحیه به هم متصل میگردند. تمام LSA ها در این ناحیه مجازند غیر از نوع 7.
5. Standard Ordinary Area: این Area به Backbone وصل است و Stub نیست.
وضعیت های اتصال:
OSPF مسیرها را همانند پروتکل های بردار مسافت معرفی نمی کند٬ بلکه با استفاده از اعلان وضعیت اتصال (Link Advertisements-LSA) مسیرها را معرفی مینماید. یک اتصال (Link) فقط یک رابط (Interface) مانند اترنت (Ethernet)٬ ویا سریال است. هر اتصال دارای ویژگی هایی شامل ناحیه OSPF که برای اتصال آن تنظیم شده٬ پهنای باند اتصال و پیشوند (Perfix) و ماسک زیر شبکه ثبت شده برای آن اتصال می باشد.وضعیت اتصال (Link-state) یعنی اینکه اتصال فعال یا غیر فعال است.
خصوصیات یک شبکه OSPF :
•نواحی یک یا چندگانه OSPF
•اگر از بیش از یک ناحیه استفاده شود٬ یک ناحیه پشتیبان (Backbone) یا 0 باید تنظیم شود.
•تمام نواحی غیر 0 باید به ناحیه 0 وصل باشند.
•مسیریاب OSPF برای هر ناحیه ای که بر روی آن تنظیم می شود٬ یک پایگاه اطلاعاتی OSPF ایجاد می کند.
•آگهی های وضعیت اتصال (LSAs)٬ اطلاعات مربوط به رابط های (Interface) یک مسیریاب را در سراسر ناحیه OSPF سرریز می سازند.
•پایگاه اطلاعاتی OSPF درون یک ناحیه باید قبل از اینکه یک مسیریاب ٬ مسیرهای نصب شده در جدول مسیریابی IP را جمع بندی و محاسبه کند٬ هماهنگ شوند.
•الگوریتم کوتاهترین مسیر اول (Shortest Path First-SPF) در تمام پایگاه های اطلاعاتی یک مسیریاب لستفاده شده است و مسیرهای نصب شده در جدول مسیریابی IP را تعیین میکند.
•مسیرها را می توان به نواحی خلاصه کرد٬ نه درون نواحی.
2-7ID مسیریاب OSPF:
بسیاری از عملکردها در OSPF وابسته به ID مسیریاب (Router ID) OSPF هستند. ID مسیریاب OSPF یک عدد 32 بیتی است که یک مسیریاب OSPF را مشخص می کند.آموختن چگونگی تعیین ID مسیریاب بسیار با اهمیت است.
اگر فقط رابط های فیزیکی موجود بر روی یک مسیریاب تنظیم شده باشند٬ ID مسیریاب OSPF بالاترین آدرس IP ثبت شده بر روی یک رابط فیزیکی فعال٬ خواهد بود.اگر ID مسیریاب از بین برود یا غیر فعال شود آنگاه دوباره مسیریاب جهت گرفتن ID به رابط ها رجوع میکند و از بین آنها بزرگترین شماره IP را بعنوان ID انتخاب می کند٬ اما به دلیل ایجاد ثبات و پایداری در شبکه ٬ نباید امکان تغییر ID مسیریاب OSPF را بدهیم .پس یک راه بهتر٬ استفاده از یک رابط مجازی (Virtual Inteface) و یا حلقه برگشتی (LoopBack) است. یک رابط حلقه برگشتی رابطی غیر فیزیکی و یا مجازی است که بر روی مسیریاب تنظیم و پیکربندی می شود.اگر از یک رابط حلقه برگشتی (Loopback) استفاده شود٬ در این صورت OSPF از آدرس IP ثبت شده بر روی حلقه برگشتی (Loopback Interface ) استفاده خواهد کرد٬ حتی اگر این آدرس بالاترین آدرس IP هم نباشد. به منظور تثبیت ID مسیریاب OSPF٬ بهترین روش استفاده از دستور route-id ip-address در پیکربندی پردازش OSPF است.متغیر ip-address می تواند هر آدرسی باشد البته تا زمانی که آن آدرس در شبکه شما منحصر به فرد (Unique) است.
همسایه یابی OSPF:
زمانی که OSPF بر روی یک رابط فعال می شود٬ مسیریاب یک بسته سلام (Hello Packet) بر روی شبکه ارسال می کند تا همسایگان خود را بیابد.در یک شبکه با چندین دسترسی (Multi-Access) بسته سلام هر ده ثانیه یکبار فرستاده می شود.در روتر وضعیت خاموش نشان دهنده این است که مسیریاب هیچ بسته سلامی (Hello Packet) را ارسال نمی کند.زمانی که OSPF بر روی یک رابط فعال شود٬ مسیریاب به حالت Init و یا آغازین (Initialization) تغییر وضعیت می دهد و شروع به ارسال بسته های سلام می کند.وضعیت آغازین ٬همسایه های OSPF را بر روی یک اتصال (Link) شناسایی میکند.درون بسته سلام ٬ ID مسیریاب (Router ID) OSPF نیز قرار دارد.زمانی که یک مسیریاب٬بسته سلامی را از یک همسایه دریافت می کند٬ ID مسیریاب خود را درون بسته قرار می دهد و بر روی شبکه ارسال می کند.زمانی که مسیریاب ٬ ID مسیریاب خود را داخل بسته سلام همسایه مشاهده کند٬ همسایه ها در وضعیت دو طرفه (2-Way) قرار می گیرند.
در یک شبکه با چندین دسترسی (Multi-Access)٬یک مسیریاب (Designated Router-DR) و یک مسیریاب به عنوان پشتیبان مسیریاب اختصاصی (Backup Designated Router-BDR) انتخاب شده است.معمولا مسیریابی که بالاترین ID مسیریاب را دارد٬ DR و مسیریابی که پس از آن بالاترین ID را داراست٬BDR محسوب می شود.با توجه به انتخاب DR وBDR مهمترین مسئله تنظیم وقت است.زمانی که یک مسیریاب به عنوان DR انتخاب شد تا وقتی که از بین نرفته است DR باقی خواهد ماند.به تمام مسیریاب های یک شبکه با چندین دسترسی (Multi-Access) که DR وDBR نیستند٬ DROTHER گفته می شود.
تمام مسیریاب های OSPF باید با همسایه های خود تبادل اطلاعات کنند و از همسانی اطلاعات تمام مسیریاب های یک ناحیه مشخص اطمینان یابند. لزومی ندارد هر مسیریاب موجود در شبکه با چندین دسترسی اطلاعات خود را برای تمام مسیریاب های دیگر موجود در شبکه بفرستد.بنابراین هر مسیریاب٬ یک مسیریاب و یا LSA نوع 1 بوجود می آورد٬ که وضعیت رابط های متصل به مسیریاب را مشخص می کند.تمام مسیریاب ها ٬ LSA مسیریاب خود را به DR و BDR ارسال می کنند.DR و BDR یک شبکه یا LSA نوع 2 را بوجود می آورد و آنرا به تمام مسیریاب های موجود در شبکه با چندین دسترسی (Multi-Access) می فرستد.در این حالت تمام مسیریاب ها به همجواری (Adjacency) کامل با DR و BDR می رسند. همجواری با DR و BDR به این معناست که هر مسیریاب بداند LSAهای خود را باید به آنجا ارسال کند.
در شبکه های نقطه به نقطه (Point to Point) مفاهیم DR و BDR وجود ندارد. زیرا در آنجا فقط دو همسایه و یک اتصال نقطه به نقطه وجود دارد.مسیریاب ها در یک اتصال نقطه به نقطه یک همجواری کامل برای تبادل آگهی های وضعیت اتصال OSPF بوجود می آورند.
بررسی همجواری oSPF با استفاده از دستور show ip ospf neighbor صورت می گیرد.
بررسی عملکرد OSPF:
برای بررسی صحت عملکرد OSPF می توان انواع دستورات show را مورد استفاده قرار داد٬ که عبارتند از:
•دستور show ip protocols: نشان دهنده انواع مختلف پارامترهای OSPF مانند تایمرها ٬ فیلتر ها٬ metricها٬ شبکه ها و اطلاعات مفید دیگر مربوط روتر مورد نظر می باشد.
•دستور show ip route ospf:نشان دهنده ospf routeهای شناخته شده توسط روتر است.استفاده از این دستور یکی از بهترین روش های تشخیص امکان برقراری ارتباط بین روتر مورد نظر و بقیه شبکه می باشد.البته پارامترهای دیگری مانند OSPF process id را می توان در کنار دستور به کار برده و اطلاعات دلخواه را مورد بررسی قرار داد.
•دستور show ip ospf interface:نشان دهنده areaهای مربوط به interface های روتر می باشد.همچنین اطلاعات دیگری مانند تایمرها (مانند hello interval ) و روابط مجاورت بین روترها نیز توسط دستور فوق نمایش داده خواهند شد. • دستور show ip ospf:این دستور نشان دهنده ospf router id٬ انواع تایمرها٬ تعداد دفعات اجرای الگوریتم spf و اطلاعات مربوط به lsaها می باشد.
•دستور show ip ospf neighbor:نشان دهنده لیست روترهای همسایه٬id مربوط به روترهای DR/BDR در کنار id و priority مربوط به روترها و وضعیت رابطه مجاورت (init,Exstart,Full) آنها با این روتر خواهد بود.
تایمرهای OSPF:
در شبکه های Multi-Access تایمر سلام OSPF (OSPF Hello Timer) به طور پیش فرض در 10 ثانیه تنظیم شده است.تمام مسیریاب های OSPF که به یک شبکه عمومی نقطه به نقطه (Point To Point) یا (Multi-Access) متصل هستند٬ تا وقتی که دارای زمان سلام برابر نباشند٬ نمی توانند به همجواری (Adjacency) برسند.درست است که بسته های سلام جهت تشخیص همسایه یابی به کار می روند٬ اما کاربرد دیگر آنها بقای عمر می باشد!اگر 4 برابر زمان سلام ٬ بسته سلامی از یک همسایه دریافت نشود٬ از آن همسایه صرفه نظر خواهد شد.از این زمان به عنوان زمان مرگ (Dead Time) یاد می شود.
پس از اینکه OSPF به همجواری کامل با همسایه های مورد نظر دست پیدا کرد و پایگا های اطلاعاتی هماهنگ شدند٬ اگر تغییری در شبکه ایجاد شود یا بعد از 30 دقیقه OSPF تنها اطلاعات مربوط به پایگاه اطلاعاتی را ارسال می کند.بنابراین در یک شبکه ثابت OSPF پروتکلی آرام است.
بعد از تبادلات اولیه و همسانی پایگاه های اطلاعاتی ٬ OSPF با استفاده از الگوریتم SPF به محاسبه کوتاهترین مسیر به هر مقصد می پردازد.الگوریتم OSPF تنها در صورتی دوباره فعال خواهد شد که تغییری در شبکه دوباره رخ داده باشد. وسعت محاسبات الگوریتم OSPF بستگی به تعداد مسیریاب ها و پیشوند شبکه های موجود در یک ناحیه دارد.اگر یک شبکه نوسانی دارای تغییرات زیاد (Flapping) باشد(دائم شبکه از حالت بالا به پایین ٬پایین به بالا و الی آخر باشد) با هر تغییر وضعیت شبکه٬ OSPF یک بروزرسانی ارسال می کند و تمام مسیریاب های ناحیه باید کوتاهترین مسیر را دوباره محاسبه کنند.به منظور جلوگیری از محاسبات بی پایان الگوریتم SPF توسط مسیریاب ها ٬ از یک تایمر SPF جهت تعیین حداقل زمان سپری شده پیش از محاسبه مجدد SPF استفاده می شود.به طور پیش فرض تایمر SPF در 10 ثانیه تنظیم شده است.
انواع LSA در OSPF:
مسیریاب های OSPF برای معرفی شبکه هایشان از بسته های LSAها استفاده می کنند.جهت درک عملکرد OSPF نیازی به دانستن جزیئات و یا ساختار LSAها نیست.اما دانستن انواع LSAها یی که در OSPF به کار می روند و اطلاعات موجود در آنها٬ مفید خواهد بود.
هر یک از انواع LSA ها به شرح زیر می باشند:
•LSA مسیریاب (Router LSA):برای ناحبه ای که مسیریاب به آن متصل است بوجود می آید. ارزش و حالت اتصالات مسیریاب را در یک ناحیه توضیح می دهد.یک مسیریاب LSA تنها در ناحیه OSPF خود سرریز خواهد شد.
•LSA شبکه (Network LSA):توسط DR بر روی یک شبکه با چند دسترسی (Multi-Access) بوجود آمده است و شامل اطلاعات مورد نیاز تمام مسیریاب های متصل به شبکه Multi-Access می باشد.
•LSA خلاصه شبکه (Network Summary LSA):توسط ABRها تولید شده است و شامل اطلاعاتی درباره پیشوندهای OSPF بین ناحیه ای است. یک خلاصه شبکه LSA درون ناحیه OSPF غیر 0 سر ریز خواهد شد.
•LSA خلاصه ASBR ( ASBR Summary LSA):توسط ABRها به وجود آمده و دارای ساختاری مشابه LSAهای خلاصه شبکه می باشد.اما به جای اطلاعات پیشوند IP ویژه٬ شامل موقعیت مکانی یک ABSR خواهد بود.
•AS External LSA:توسط ABSRها بوجود می آید و شامل اطلاعات مربوط به پیشوندهایی است که در محدوده OSPF خارجی هستند(مسیرهای خارجی (External Route) نوع 1و2).
•LSA پیغام چند منظوره (Multicast LSA):OSPF با استفاده از این LSA برای پشتیبانی از IPهای جند منظوره اصلاح شده است ٬ اما از OSPF جند منظوره استفاده نمی شود.
•LSA خارجی NSSA (NSSA External LSA):در زمان تنظیم به عنوان یک NSSA ٬به وسیله ASBRها بوجود می آید.اینها مسیرهای خارجی هستند که با N1 یا N2 مشخص شده و فقط در NSSA سرریز(Flooded) می شوند. مسیریاب ABR مسیرهای N1 وN2 را پیش از معرفی آنها درون محدوده OSPF به E1 وE2 تبدیل می کند.
انواع شبکه های تعریف شده در OSPF:
درک این که هر کدام از OSPF AREA از انواع مختلفی از اتصالات شبکه ای ترکیب شده است از اهمیت بسیاری برخوردار است. زیرا برقراری رابطه مجاورت در هر کدام از انواع شبکه ها متفاوت از دیگری بوده و پیکربندی OSPF نیز باید به گونه ای انجام گیرد که عملیات routing شبکه با صحت تمام انجام گیرد. عملکرد OSPF در انواع مختلف شبکه ها٬ مانند شبکه های Point-to-Point و broadcast نسبت به هم متفاوت بوده و در برخی از مواقع٬ تنظیمات پیش فرض آن جوابگو شرایط حاضر نمی باشد.OSPF شبکه ها را بر اساس نوع اتصالات فیزیکی مابین آنها تقسسیم بندی می نماید.عملکرد OSPF در روی هر کدام از شبکه های مختلف نسبت به هم متفاوت بوده و نوع ونحوه برقراری رابطه مجاورت در هر کدام نسبت به بقیه دارای تفاوت محسوسی است.
انواع شبکه های تعریف شده در OSPF عبارتند از:
•Point-to-point :شبکه ای که متصل کننده یک جفت از روترهاست.
•Broadcast
•(NBMA) Nonbroadcast multi-access :در این نوع شبکه ها با اینکه تعداد زیادی از روترها با هم در تماس می باشند٬امکان استفاده از پیام های broadcast وجود ندارد.برای مثال می توان می توان به اتصالات x.25٬ATM٬Frame Relay اشاره کرد.
برقراری رابطه مجاورت در اتصالات point-to-point :
در این نوع اتصال ٬ دو روتر به صورت مستقیم با همدیگر در ارتباط می باشند.برای مثال می توان یک ارتباط T1 را که با استفاده از پروتکل های لایه دوم مانند PPP یا HDLC ایجاد شده اند نام برد.
در این نوع شبکه ها٬ یک روتر با ارسال پیام های multicast با آدرس 224.0.0.5 برای روترهای OSPF اقدام به شناسایی اتوماتیک روترهای همسایه خواهد کرد.به دلیل اینکه فقط دو روتر در یک شبکه point-to-point وجود دارد٬ نیازی به انتخاب روترهای DR/BDR نیست.آدرس فرستنده مربوط به یک پیام ارسالی معمولا برابر با آدرس interface ارسال کننده پیام قرار می گیرد.البته با استفاده از ویژگی ip unnumbered interface می توان آدرس مزبور را برابر با آدرس یک interface دیگری قرار دارد.در یک اتصال point-to-point مدت زمان پیش فرض بین ارسال پیام های hello یا hello interval برابر با 10 ثانیه و مدت زمان dead interval نیز برابر با 40 ثانیه می باشد.
برقراری رابطه مجاورت در اتصالات Broadcast:
برقراری رابطه مجاورت بین روترهای OSPF در شبکه های broadcast مانند Ethernet نیاز به انتخاب روترهای DR/BDR دارد.بدین صورت که هر کدام از روترها اقدام به برقراری رابطه مجاورت فقط با روترهای R/BDR Dنموده و محتویات جدول LSDB خود را فقط با روترهای مزبور به اشتراک می گذارند.زمانی که یک روتر به عنوان DR ایفای نقش می نماید٬ روتر BDR در حالت غیر فعال قرار خواهد داشت.یعنی BDR پیام های رسیده به DR را عینا دریافت کرده اما عملیات ارسال پیام ها برای روترهای DROTHER و نیز برقراری رابطه مجاورت با آنها از وظایف روتر DR می باشد.به محض اینکه روتر DR معیوب گشته و یا به هر دلیلی قابل دسترسی نباشد٬ روتر BDR به عنوان DR قرار داده شده و رئتر دیگری برای در اختیار گرفتن نقش BDR انتخاب خواهد شد.به دلایل زیر٬ استفاده از روترهای DR/BDR عملکرد شبکه را بهبود خواهد بخشید:
•کاهش ترافیک شبکه با کاهش میزان Updateهای ارسالی.یک روتر DR/BDR به عنوان روتر مرکزی بوده و بقیه روترهای رابطه مجاورت خود را فقط با روترهای DR/BDR برقرار خواهند ساخت.به جای اینکه یک روتر OSPF اقدام به ارسال پیام Update خود برای تک تک روترهای واقع در یک شبکه broadcast نماید٬ پیام ها فقط برای روتر DR/BDR ارسال خواهد شد واین روترهای DR/BDR می باشند که وظیفه پخش پیام را در بین روترهای دیگر بر عهده دارند.این ویژگی باعث کاهش محسوس ترفیک شبکه می گردد.
•مدیریت پخش محتویات جدول LSDB:به دلیل اینکه روترهای DR/BDR وظیفه یکسان سازی اطلاعات روتینگ شبکه را در روی همه روترها بر عهده دارند٬ از این رو اختلالات پیش آمده در عملیات routing ٬ به دلیل یکسان نبودن LSDB در روی روترهای شبکه٬ به حداقل خواهد رسید.
برقراری رابطه مجاورت در شبکه های NBMA:
زمانی که یک روتر از روی یک interface خود به سایت های مختلفی از طریق اتصالات NBMA متصل گردد٬نبود امکان استفاده از پیام های broadcast باعث بروز مشکلات عدم دسترسی در شرایط فوق خواهد گردید.همانطور که گفته شد٬ در یک شبکه NBMA چندین روتر بدون استفاده از پیام های broadcast با همدیگر در تماس خواهند بود.به عنوان مثال زمانی که یک شبکه NBMA به صورت fully-meshed طراحی نشده باشد٬ پیام های multicast وbroadcast ارسالی از یک روتر توانایی دسترسی به برخی از روترها را نخواهند داشت.یک روتر در شبکه NBMA برای شبیه سازی یک پیام broadcast یا multicast عین پیام را مجددا برای دریافت کننده بعدی ارسال خواهد کرد.این کار باعث بالا رفتن پردازشی روتر شده و مصرف پهنای باند شبکه را نیز افزایش می دهد.
مدت زمان پیش فرض بین ارسال پیام های hello یا hello interval در شبکه های NBMA برابر با 30 ثانیه و زمان dead interval برابر با 120 ثانیه می باشد.
پروتکل OSPF فرض را بر این می گذارد که شبکه های NBMA دارای عملکردی شبیه شبکه های broadcast می باشند.با وجود این ٬توپولوژی NBMA بر پایه hub-and-spoke عمل می نماید.بدین معنی که توپولوژی hub-and-spoke به صورت fully-meshed طراحی نمی گردد.در چنین شرایطی انتخاب روترهای DR/BDR نیز با مشکل مواجه خواهد شد.زیرا برای عملکرد روترهای DR/BDR نیاز به وجود یک رابط فیزیکی بین تمامی روترهای شبکه داریم.همچنین روترهای DR/BDR برای برقراری رابطه مجاورت با روترهای دیگر باید لیست تمامی روترهای شبکه را در اختیار داشته باشد.در نتیجه ٬OSPF قادر به برقراری اتوماتیک رابطه مجاورت با روترهای همسایه در شبکه های NBMA نخواهد بود.
پیکربندی OSPF در شبکه های Frame Relay:
بسته به نوع توپولوژی Frame Relay٬ گزینه های متفاوتی را می توان در پیکربندی OSPF به کار برد.روش برقراری ارتباط روترهای remote با یکدیگر در یک اتصال frame relay می تواند متفاوت از هم باشد.به صورت پیش فرض٬ نوع interface مورد استفاده در اتصال frame relay به صورت multipoint قرار داده می شود.
انواع مختلف توپولوژی frame relay عبارتند از:
1.توپولوژی STAR:
این نوع توپولوژی که به نام hub-and-spoke نیز نامیده می شود٬ یکی از معمول ترین نوع توپولوژی بکار رفته در اتصالات frame relay می باشد.در چنین مواردی٬ روترهای remote به یک روتر مرکزی که ارائه دهنده سرویس می باشد متصل می شوند.به دلیل اینکه تعداد VCهای مورد نیاز در این توپولوژی کم می باشد٬ از این رو اجرای آن نسبت به بقیه اتصالات frame relay دارای هزینه کمتری است. همچنین روتر مرکزی معمولا با استفاده از یک multipoint interface اقدام به برقراری ارتباط با روترهای remote مینماید.
2.توپولوژی full-mesh:
در این توپولوژی٬ تمامی روترها دارای یک VC به سمت روترهای دیگر می باشند.با اینکه هزینه برقراری چنین توپولوژی زیادتر خواهد بود٬ ولی به دلیل وجود ارتباط مستقیم بین تمامی روترها مزیت هایی را نیز در اختیار خواهیم داشت.برای محاسبه تعداد VCها ی مورد نیاز از فرمول n(n-1)/2 استفاده می شود که n نشان دهنده تعداد روترهای موجود در شبکه می باشد.
3.توپولوژی partial-mesh:
در این توپولوژی بر خلاف نوع قبلی ٬ همه روترها دارای اتصال مستقیمی با یکدیگر نمی باشند. بلکه VCها فقط در بین روترهای مورد نیاز ایجاد گشته اند. این روش هزینه نسبتا کمتری را نسبت به توپولوژی قبلی در بر خواهد داشت.
طبق استاندارد RFC 2328٬ پروتکل OSPF به یکی از دو طرق زیر در شبکه های NBMA اجرا می گردد:
1)Nonbroadcast:
در این متد٬ پروتکل OSPF شبیه به شبکه های broadcast عمل می نماید.پیکربندی روترهای همسایه باید به روش دستی انجام گرفته و انتخاب روترهای DR/BDR نیز ضروری است.این روش معمولا در شبکه های fully-meshed اجرا می گردد.
2)point-to-point:در این روش٬ شبکه NBMA به صورت مجموعه ای از اتصالات point-to-point در نظر گرفته می شود.شناسایی روترهای همسایه به صورت اتوماتیک انجام شده ولی نیازی به انتخاب روترهای DR/BDR وجود ندارد.این روش معمولا در شبکه های partially-meshed اجرا می شود.
با نتخاب یکی از گزینه های فوق در واقع نوع ارسال پیام های hello و چگونگی انتشار پیام ها را مشخص می کنیم.مزیت روش اول در هزینه کمتر آن و مزیت متد دوم در پیکربندی آسانتر آن می باشد.
علاوه بر موارد فوق سیسکو سه روش دیگر نیز تعریف نموده است که عبارتند از:
1)point-to-point nonbroadcast
2)broadcast
3)point-to-point
نکته: دستوری که شبکه را در پروتکل OSPF پیکربندی می کند به صورت
Router(config-if)#ip ospf network [{broadcast |non-broadcast |point-to-multipoint }]
کاربرد OSPF در شبکه های non-broadcast(NBMA):
با تعیین نوع non-broadcast٬ عملکرد OSPF در شبکه های broadcast شبیه سازی می گردد.انتخاب روترهای DR/BDR ضروری بوده و روتر DR وظیفه برقراری رابطه مجاورت با بقیه روترهای شبکه و نیز ارسال پیام های LSA Update برای آنها را به عهده دارد.در چنین شرایطی٬ طراحی شبکه معمولا به صورت fully-mesh صورت می گیرد تا ایجاد رابطه مجاورت بین روترهای شبکه آسان تر انجام بگیرد.زمانی که طراحی به صورت fully-mesh انجام نگرفته باشد٬ روترهای DR/BDR را باید به صورت دستی پیکربندی کرده تا از اینکه آنها توانایی برقراری ارتباط مستقیم با بقیه روترهای شبکه را دارند اطمینان حاصل نمود.در هنگام استفاده از این نوع٬ تمامی interface های دخیل باید در یک شبکه IP قرار داشته باشند.
هر کدام از interfaceهای non-broadcast در هنگام ارسال پیام LSU٬ آن را از طریق VCها برای هر کدام از روترهای همسایه مشخص شده در جدول Neighbor ارسال می نمایند.
در شرایطی که تعداد روترهای واقع در یک شبکه کم باشد٬ به کارگیری non-broadcast نسبت به استفاده از point-to-multipoint باعث صرفه جویی در هزینه های برقراری ارتباط خواهد شد.بطور پیش فرض پروتکل OSPF در اتصالات X.25٬ ATM و frame relay در نوع non-broadcast اجرا می گردد.
کاربرد OSPF در شبکه frame relay point-to-multipoint:
برای اجرای سناریو فوق نیاز به در اختیلر داشتن توپولوژی partial-mesh یا star داریم.در این نوع٬ نیازی به انتخاب روترهای DR/BDR نداشته و همچنین پیام های LSA نوع 2 نیز برای روترهای مجاور ارسال نمی شود.در چنین حالتی٬ روترها اقدام به تبادل پیام های LSU مخصوص کرده و در نتیجه روترهای همسایه خود را شناسایی می نمایند.
به دلیل این که در point-to-multipoint نیازی به طراحی full-mesh شبکه نداریم، هزینه های مازاد برای ایجاد VCها صرفه جویی شده و مخارج کلی طرح کاهش خواهد یافت. علاوه بر آن،جداول routing روتر در شبکه های partial-mesh دارای روترهای کمتری بوده و به این ترتیب بار پردازشی روتر و مصرف پهنای باند شبکه نیز کاهش می یابد.
ویژگی های point-to-multipoint به شرح زیر است:
1)نیازی به طراحی full-mesh شبکه ندارد.در این نوع ،عملیات routing بین دو روتر که نه به صورت مستقیم،بلکه از طریق یا روترهای واسط که توسط VCها با دو روتر در تماس می باشند،انجام گیرد.
2)نیاز به تعیین دستی روترهای همسایه وجود ندارد.
3)از یک آدرس IP استفاده می شود.
در point-to-multipoint نیازی به انتخاب روترهای DR/BDR وجود نداشته و بنابراین تعیین priority نیز دارای اهمیت خاصی نخواهد بود.
برای بررسی از صحت کار می توان از دستور show ip ospf interface بهره گرفت که عملکرد ospf را با ازای تک تک interfaceها نمایش می دهد.در خروجی دستور فوق می توان نوع شبکه ospf ،شمارهarea ، مقدار پارامتر cost و وضعیت interface مورد نظر را مشاهده نمود.باید در نظر داشت که مقدار زمان hello interval در این نوع برابر با 30 ثانیه و زمان dead interval نیز برابر با 120 ثانیه می باشد.مقدار این دو زمان باید در روی دو روتر همسایه یکسان باشد.در غیر اینصورت، روترها قادر به برقراری رابطه مجاورت با همدیگر نخواهد بود.شناسایی روترهای همسایه نیز به صورت اتوماتیک انجام گرفته و نیازی به مشخص کردن دستی آن ها با دستور neighbor نیست.
سیسکو یک نوع دیگر برای روش point-to-multipoint معرفی کرده است که مخصوص خود بوده و به نام point-to-multipoint nonbroadcast نامیده می شود.در این روش،مشخص کردن روترهای همسایه به صورت دستی انجام گرفته و در این حین می توان cost مربوط به اتصال یک روتر همسایه با این روتر را نیز تعیین نمود.نسخه RFC این روش،نیاز به استفاده از پیام های broadcast و یا multicast دارد.بنابراین زمانی که اجازه ارسال چنین پیام هایی در روی یک VC صادر نشده باشد،نمی توان point-to-multipoint را به کار گرفت.در چنین شرایطی است که استفاده از point-to-multipoint nonbroadcast سیسکو توصیه می شود.
انواع روترهای OSPF:
به دلیل اینکه سایز جداول OSPF LSDB معمولا زیاد است،بنابرابین طراحی شبکه باید به صورت درختی یا hierarchical انجام گیرد.یکی از راه حل های موجود تقسیم بندی شبکه به مناطق کوچکتر و استفاده از انواع روترها با نقش های مختلف می باشد.
پروتکل OSPF معمولا در شبکه های دارای یک area مورد استفاده قرار می گیرد.اما در صورتی که area مزبور شامل تعداد زیادی شبکه باشد،باعث بروز مشکلات زیر خواهد شد: • اجرای متناوب الگوریتم SPF: شبکه های بزرگ معمولا دچار تغییرات زیادی می شوند.در نتیجه روترها نیاز به اجرای چندین باره الگوریتم SPF و به روز کردن جدول routing خود خواهند داشت.
•جداول routing حجیم:پروتکل OSPF به صورت پش فرض عمل summarization را انجام نمی دهد. در این شرایط،سایز جدول routing می تواند به طور چشمگیری افزایش یابد.
•جداول LSDB حجیم:به دلیل اینکه OSPF اطلاعات مربوط به تمامی شبکه های موجود را در داخل جدول توپولوژی یا LSDB خود نگهداری می کند،بنابراین در صورت افزایش تعداد شبکه ها موجود در داخل یک area اندازه جدول فوق نیز افزایش پیدا خواهد کرد.
در این موقعیت،می توان پروتکل OSPF را به مناطق مدیریتی کوچکتر تقسیم کرده و مشکلات فوق را برطرف نمود.هر کدام از این مناطق به نام area نامیده می شود.در شرایطی که یک شبکه بزرگ را به areaهای کوچکتری تقسیم می کنیم.عملیات routing در بین areaها مختلف رخ داده اما اجرای الگوریتم SPF محدود به داخل یک area خواهد شد.
در هنگام استفاده از areaهای متعدد،انواع مختلفی از روترها را در اختیار خواهیم داشت که عبارتند از:
1)روترهای داخلی یا internal:
روترهایی که تمامی interfaceهای آن ها در داخل یک area قرار داشته و دارای محتویات یکسان در داخل جدول LSDB خود باشند به نام روترهای داخلی یا internal نامیده می شوند.
2)روترهای backbone:
روترهایی که حداقل از طریق یکی از interfaceهای خود به area 0 متصل می باشند.به نام روترهای backbone نامیده می شوند.مکانیسم اجرای الگوریتم SPF در این روترها شبیه به روترهای داخلی می باشد.
3)روترهای ABR:
روترهایی که به چند area مختلف متصل شده اند،حاوی جداول LSDB جداگانه برای هر کدام از areaهای متصل می باشند.روترهای ABR به عنوان تنها نقطه اتصال یک area به areaهای دیگر بوده و بنابراین ترافیک های به مقصد areaهای دیگر تحویل روترهای ABR خواهد شد.همچنین می توان عملیات summarization را در هنگام ارسال اطلاعات از یک area به area دیگر انجام داد.اطلاعات فرستاده شده توسط یک area و روتر ABR آن،برای 0 area فرستاده شده که آن نیط به نوبه خود پیام ها را برای area مقصد ارسال خواهد کرد.البته به یاد داشته باشید که هر کدام از areaها می توانند دارای چندین روتر ABR باشند.
4)روترهای ASBR:
روترهایی که حداقل یکی از interfaceهای آ«ها متصل به یک AS خارجی یا شبکه ای غیر از OSPF می باشد،به نام روترهای ASBR نامیده می شوند.این روترها وظیفه انتقال اطلاعات routing به داخل یک OSPF domain و بالعکس را دارند.این پروسه به نام Route Redistribution نامیده میشود.
انواع پیام در پروتکل OSPF:
پیام سلام:
وقتی یک مسیریاب روشن و بوت میشود موظف است به تمام مسیریابهایی که مستقیماً به آنها متصل است یک پیام ”سلام“ بفرستد تا آنها از حضور این مسیریاب درشبکه مطلع شوند.
پیام Link State Update:
هر مسیریاب موظف است که در بازههای زمانی مشخص ،جدول مسیریابی خودش را به روش سیل آسا به اطلاع دیگر مسیریابهای هم ناحیه برساند. این کار را با ارسال این پیام انجام میدهد؛ در ضمن هر مسیریاب وقتی هزینه یکی از خطوط مستقیم او تغییر کرد یا مسیریاب مجاورش از شبکه بیرون رفت ( یا به شبکه برگشت ) سریعاً با این پیام آنرا به اطلاع دیگران میرساند.
پیام Database Description :
هر مسیریاب به ازای تک تک رکوردهای هزینه که در یک بانک اطلاعاتی درون حافظه اصلی ذخیره کرده ، یک فیلد شماره ترتیب در نظر میگیرد. مسیریابِ ارسال کننده این پیام ، شمارۀ ترتیب و تمام رکوردهایی را که در بانک اطلاعاتی خود ذخیره کرده است ، ارسال مینماید. گیرندۀ این پیام با مقایسۀ شمارههای ترتیب رکوردها با رکوردهایی که در بانک اطلاعاتی خود دارد میتواند رکوردهای قدیمیتر را با رکوردهای جدید جایگزین نماید.
پیام Link State Request :
با این پیام هر مسیریاب میتواند اطلاعات جدول مسیریابی را از از یک مسیریاب خاص تقاضا نماید. با این کار مسیریاب میتواند ضمن درخواست جدول مسیریابی همسایه های خود و مقایسه شماره ترتیب رکوردهای آن اقدام به تازه سازی جدول خود نماید.
پیام Link State Ack :
این پیام توسط گیرندۀ پیام Link State Update برای ارسال کنندۀ آن ارسال میشود و به منظور تصدیق دریافت جدول مسیریابی میباشد.
با استفاده از ویژگی authentication، روترهای OSPF قادر به شناسایی روترهای همسایه می باشند.بدین معنی که با به کارگیری authentication می توان روترهای شرکت کننده در پروسه های routing را مشخص کرد.
انواع OSPF authentication:
دو متد برای پیکربندی مکانیسم شناسایی هویت در OSPF وجود دارد که عبارتند از :
1)Simple یا plain
2)MD5
در صورت پیکربندی یک متد برای شناسایی هویت روترها در OSPF ،زمانی که یک روتر اقدام به دریافت پیام Update ارسال شده از روتری دیگر می نماید، هویت روتر ارسال کننده را با استفاده از یک پسورد بررسی کرده و در صورت یکسان بودن آن با پسورد تعیین شده در روی خود،پیام دریافت شده را خواهد پذیرفت.به صورت پیش فرض هیچ نوع مکانیسمی برای شناسایی هویت روترهای ارسال کننده پیام Update در پروتکل OSPF مورد استفاده قرار نمی گیرد.
کاربرد Ipv6 در پروتکل OSPF:
استاندارد RFC 2740 کاربرد پروتکل OSPF در پروتکل IPv6 را تعریف می کند.
نسخه های جدید پروتکل های routing قادر به پشتیبانی از آدرس های با طول زیاد مانند آدرس های IPv6 و همچنین ساختار header مربوط به آن می باشند.
مکانیسم استفاده از routeهای استاتیک در IPv6 نیز شبیه به IPv4 می باشد.استاندارد RFC 2461 در مورد IPv6 چنین می گوید:هر کدام از روترها باید از آدرس link-local مربوط به تمامی روترهای همسایه خود با اطلاع بوده؛ به صورتی که پیام های ارسالی قادر به تشخیص روترهای مقصد با استفاده از آدرس های link-local باشند.
گفته فوق بدین معناست که استفاده از آدرس های global unicast به عنوان آدرس next-hop توصیه نمی گردد.قبل از اینکه هر کدام از پروتکل های مختلف قادر به استفاده از IPv6 باشند،باید با استفاده از دستور زیر اقدام به فعال سازی IPv6 در روی روتر نماییم.
Router(config)#ipv6 unicast-routing
عملکرد OSPF در شبکه های IPv6:
پروتکل OSPF از گروه link state بوده و از پارامترcost به عنوان metric استفاده می کند.
پروتکل OSPF اطلاعات مربوط به interface مانند ipv6 prefix ،ماسک مربوطه،نوع شبکه متصل،روترهای متصل به شبکه فوق و...را بین روترهای همسایه منتقل می نماید. اطلاعات مربوطه از طریق پیام های LSA منتقل شده و هر روتر نیز تمامی اطلاعات کسب شده از طریق مبادله پیام های LSA را در داخل جدول LSDB خود ذخیره می نماید.سپس الگوریتم dijkstra اجرا شده و بهترین مسیرهای منتهی به مقاصد مختلف در داخل جدول routing قرار داده می شود.
تفاوتی که بین جدول routing و جدول LSDB وجود دارد، در آنجاست که جدول LSDB حاوی اطلاعات مربوطه به تمامی مقاصد و مسیرهای منتهی به آنها بوده اما جدول routing فقط شامل بهترین مسیرهای برگزیده شده به سمت مقاصد مختلف می باشد.
جدیدترین نسخه OSPF ،نسخه سوم آن بوده و در استاندارد RFC 2740 تعریف می گردد.
مقایسه OSPF V2 و OSPF V3:
با اینکه مکانیسم عملکرد دو نسخه OSPF بسیار شبیه به هم می باشد،اما برخی از تغییرات اعمال شده در OSPF V3 باعث گردیده است تا این پروتکل قادر به حمل آدرس های طولانی IPv6 بوده و نیز توانایی اجرای مستقیم بر روی IP را داشته باشد.
برخی از شباهت های موجود بین این دو نسخه عبارتست از:
1) هر دو پروتکل از پیام های یکسانی برای انجام فعالیت خود بهره می گیرند. این پیام ها شامل hello lsa،lsu،lsr،dbd می شوند.
2) مکانیسم شناسایی روترهای همسایه و نیز چگونگی برقراری رابطه مجاورت با روترهای همسایه نیز شبیه هم می باشد.
3) هر دو پروتکل از شبکه های یکسانی پشتیبانی می کنند که لیست آنها عبارتند از nbma،broadcast،point-to-multipoint،point-to-point.
4) مکانیسم انتشار پیام های LSA و نیز تعیین مدت زمان عمر هر کدام از LSAها در روی هر پروتکل یکسان می باشد.
به دلیل اینکه پروتکل OSPF v2 بر پایه IPv4 بنا شده است ،بیشترین تغییرات اعمال شده در OSPF v3 برای پشتیبانی پروتکل OSPF از IPv6 صورت گرفته است.برخی دیگر از تغییرات اعمال شده عبارتند از:غیر وابسته بودن آن به پلتفرمی خاص،انجام عملیات routing بر اساس هر یک از پیوندها(پروتکل OSPF v2 عملیات routing را بر پایه هر کدام از دستگاه ها انجام می دهد)،اجرای چندین پروسه مختلف در روی یک اتصال،تغییرات در ساختار پیام ها ودر مکانیسم authentication.
هم اکنون OSPF،IPv6 به عنوان یک استاندارد توسط سازمان IETF پذیرفته شده و مانند RIPng از پروتکل IPv6 برای حمل اطلاعات و نیز از آدرس های link-local به عنوان آدرس فرستنده بهره می گیرد.همچنین بقیه پارامترهای اختیاری در OSPF v2 مانند NSSA،MOSPF نیز به همان صورت در OSPF v3 پشتیبانی می گردد.
پروتکل OSPF v2 وابسته به شبکه ای است که در داخل آن اجرا می گردد.اما پروتکل OSPF v3 وابسته به اتصالاتی است که متصل به یک روتر می باشد.
پروتکل OSPF اجازه پیکربندی بیش از یک پروسه OSPF را در روی یک interface نمی دهد.اما این کار در OSPF v3 قابل اجرا است.
در پروتکل OSPF v3 انجام عمل authentication دیگر بر عهده OSPF نبوده و وظیفه آن را خود IPv6 بر عهده دارد.
تفاوت های عمده پروتکل های OSPF v2 و OSPF v3 به شرح زیر است:
1_ اجرای OSPF v3 در روی روتر اتصال مورد نظر:دستور network مورد استفاده در پروتکل OSPF v2 با دستور دیگری در OSPF v3 جایگزین شده است.پیکربندی چندین پروسه مجزای OSPF در روی یک اتصال واحد در نسخه جدید پروتکل لمکان پذیر شده است.
2_ روترها در OSPF v3 از آدرس های IPv6 link-local برای شناسایی همدیگر و برقراری رابطه مجاورت استفاده می نمایند.
استفاده OSPF v3 از آدرس multicast برابر با FF02::5 برای نشان دادن تمامی روترهای OSPF داخل شبکه.(معادل آدرس 224.0.0.5 در پروتکل OSPF v2).
3_ استفاده OSPF v3 از آدرس multicast برابر با FF02::6 برای نشان دادن تمامی روترهای DR داخل شبکه.(معادل آدرس 224.0.0.6 در پروتکل OSPF v2)
4_ آدرس های IPv6 جزئی از قسمت OSPF header نبوده ،بلکه در داخل پاکت ها قرار می گیرند.
5_ سایز مربوط به link state id،area id،router id برابر با 32 بیت می باشد.
6_ شناسایی روترهای DR/BDR توسط شناسه یا id آنها انجام می گیرد و نه با آدرس ip مربوط به آنها
نحوه مسیریابی با پروتکل OSPF:
در پایان این فصل یک توپولوژی ساده را با نرم افزار شبیه سازی packet tracer پیاده سازی می کنیم :
ابتدا دو شبکه ایجاد می کنیم .شبکه اول یا آدرس شبکه 192.168.1.0 با ماسک 255.255.255.192 و شبکه دوم با آدرس شبکه 192.168.1.64 با ماسک 255.255.255.192 را ایجاد می کنیم .اما چون این دو شبکه از هم مجزا هستند برای برقراری ارتباط این دو شبکه به Deviceهایی مانند روتر نیاز داریم .
اما نکته ای که نباید فراموش شود این است که بین این دو روتر نیز باید یک شبکه بوجود آوریم .آدرس شبکه بین روترهایمان 192.168.1.128 با ماسک 255.255.255.192 می باشد.ما روترهایمان را جهت اینکه بتوانند ارتباط برقرار کنند باید config کنیم و بر خلاف مثال فصل اول از مسیریابی داینامیک اسفاده می کنیم پروتکلی که این مسیریابی را انجام می دهد OSPF نام دارد و ما در اینجا نحوه ی بکار اندازی پروتکل OSPF درون سیستم عامل IOS روتر تشریح می کنیم.
دستورات زیر جهت config روترهای صفر و یک بکار میروند:
Router0(config)#router ospf 1
Router0(config-router)#network 192.168.1.0 0.0.0.63 area 0
Router0(config-router)#network 192.168.1.128 0.0.0.63 area 0
Router0(config-router)#end
Router0(config)#router ospf 1
Router0(config-router)#log-adjacency-changes
Router0(config-router)#end
Router1(config)#router ospf 1
Router1(config-router)#network 192.168.1.64 0.0.0.63 area 0
Router1(config-router)#network 192.168.1.128 0.0.0.63 area 0
Router1(config-router)#end
Router1(config)#router ospf 1
Router1(config-router)#log-adjacency-changes
Router1(config-router)#end
............................................
منابع
http://tahmasebi25.blogfa.com
edited by: mohammad ba