پروتكل های روتينگ Distance-vector New Page 1



ساير




 

 

 

SAKHA RAVESH CO.

 ا مروز

 دوشنبه  4  ارديبهشت  1396  2017  Apr.  24   Monday ToDay
صفحه اصلی  مقالات نکته هادايره المعارف خودآموزها | تازه ها خود آزمون ها  

  نسخه قابل چاپ

 عنوان

 نويسنده

  مشاهده

 CCNA : برنامه ريزی و طراحی شبكه ( بخش پنجم )

 مديريت شبکه

24384

با توجه به جایگاه داده در عصر حاضر و  لزوم نگاه جامع به این مقوله مهم ، بر آن شدیم تا محوریت فعالیت های خود را بر  روی این موضوع متمرکز نمائیم . از این رو گروه فابک با شعار فناوری اطلاعات برای کسب وکار شکل گرفت و  خدمات خود  را از طریق  سایت www.fabak.ir  به مخاطبان محترم عرضه می نماید

 

CCNA : برنامه ريزی و طراحی شبكه

CCNA : برنامه ريزی و طراحی شبكه ( بخش پنجم )
آنچه تاكنون گفته شده است :

  • بخش اول       برنامه ريزی و طراحی   : طراحی يك شبكه محلی ساده با استفاده از فناوری سيسكو
  • بخش دوم      برنامه ريزی و طراحی   : طراحی يك مدل آدرس دهی IP منطبق بر طرح شبكه
  • بخش سوم    برنامه ريزی و طراحی   : طراحی يك مدل آدرس دهی IP منطبق بر طرح شبكه
  • بخش چهارم  برنامه ريزی و طراحی   : انتخاب يك پروتكل روتينگ متناسب با نيازهای شبكه

پروتكل های روتينگ  Distance-Vector  نظير RIP و IGRP
در پروتكل های روتينگ Distance vector ، بهترين مسير به يك شبكه راه دور بر اساس مسافت تعيين می شود . هر مرتبه كه يك بسته اطلاعاتی از يك روتر عبور می يابد  به آن hop گفته می شود. مسيری كه دارای تعداد hop كمتری به شبكه مورد نظر باشد به عنوان بهترين مسير انتخاب خواهد شد . در واقع vector  ، نشاندهنده  مسير و يا جهت رسيدن به شبكه راه دور را مشخص می نمايد . پروتكل های RIP ( برگرفته شده از  Routing Information Protocol ) و IGRP  ( برگرفته شده از Interior Gateway Routing Protocol ) دو نمونه متداول از پروتكل های روتينگ  Distance-vector  می باشند . 
الگوريتم های روتينگ  Distance-Vector ، اطلاعات جداول روتينگ را بطور كامل برای روترهای همسايه ارسال تا آنها در ادامه اطلاعات دريافتی را با اطلاعات موجود در جداول روتينگ خود تركيب و دانش خود را در خصوص ارتباطات بين شبكه ای كامل نمايند .به روش فوق ،  روتينگ مبتنی بر شايعه ( rumor ) گفته می شود چراكه روتر ، بهنگام سازی جدول روتينگ خود را بر اساس اطلاعات دريافتی از روتر همسايه انجام  می دهد. در اين روش روتر به اطلاعات دريافتی در خصوص شبكه های راه دور اعتماد می نمايد بدون اين كه خود مستقيما" به اين نتايج رسيده باشد .
همانگونه كه اشاره گرديد ، RIP يك نمونه از پروتكل های روتينگ  Distance-vector است كه برای تشخيص بهترين مسير به يك شبكه صرفا" از تعداد hop استفاده می نمايد . در صورتی كه RIP بيش از يك لينك را به يك شبكه مشابه و با تعداد hop برابر پيدا نمايد  ، بطور اتوماتيك از load balancing گردشی بر روی هر يك از لينك ها استفاده می نمايد . پروتكل RIP قادر به انجام load balancing بر روی حداكثر شش خط با cost يكسان است .

نحوه آغاز به كار يك پروتكل  Distance-vector 
برای آشنائی با پروتكل های روتينگ  Distance-vector  لازم است در ابتدا با  نحوه عملكرد  آنها پس از آغاز فعاليت آشنا شويم .  در شكل 1 ، وضعيت جدول روتينگ چهار روتر پس از راه اندازی نشان داده شده است . در جداول فوق صرفا" اطلاعات مربوط به شبكه هائی كه مستقيما" به  هر يك از روترها متصل شده اند ،‌ ذخيره شده است . 
پس از آغاز به كار يك پروتكل روتينگ  Distance-Vector بر روی هر يك از روترها ، جداول روتينگ با استفاده از اطلاعات مسيرهای جمع آوری شده توسط هر يك از روترهای همسايه بهنگام می گردند . 

وضعيت اوليه جداول روتينگ روترها
شكل 1 : وضعيت اوليه جداول روتينگ روترها


همانگونه كه در شكل 1 مشاهده می نمائيد ، در هر يك از جداول روتينگ صرفا"  اطلاعات شبكه هائی كه مستقيما" به هر روتر متصل شده اند ، ذخيره شده است . هر روتر اطلاعات كامل جدول روتينگ خود را برای هر يك از اينترفيس های فعال ارسال می نمايد .
جدول روتينگ هر روتر شامل اطلاعاتی نظير شماره شبكه ، اينترفيس خروجی و تعداد hop به شبكه است .  بدين ترتيب ، اطلاعات جدول روتينگ كامل و هر يك از آنها دانش لازم در رابطه با تمامی شبكه های موجود در ارتباطات بين شبكه ای را كسب می نمايد . 
شكل 2 ، وضعيت فوق را كه به آن همگرائی  (converge) گفته می شود نشان می دهد .  پس از همگرائی روترها ، اطلاعات موجود در جداول روتينگ بين آنها ارسال نخواهد شد .

 ايجاد همگرائی در شبكه
شكل 2 : ايجاد همگرائی در شبكه

بديهی است مدت زمانی كه يك شبكه به همگرائی می رسد بسيار حائز اهميت بوده و كند بودن اين فرآيند می تواند پيامدهای نامطلوبی را برای شبكه به دنبال داشته باشد . يكی از مسائل در ارتباط با پروتكل RIP ، كند بودن زمان همگرائی آن است .
جدول روتينگ در هر روتر اطلاعاتی راجع به شماره شبكه راه دور ،  اينترفيسی كه روتر از آن برای ارسال بسته های اطلاعاتی به شبكه استفاده می نمايد و تعداد hop و يا متريك به شبكه را نگهداری می نمايد . 

حلقه های روتينگ ( Routing loops  )
پروتكل های روتينگ Distance-Vector تغييرات ايجاد شده در ارتباطات بين شبكه ای  را با انتشار مستمر اطلاعات بهنگام شده روتينگ به تمامی اينترفيس های فعال انجام می دهند .
در اين فرآيند تمامی اطلاعات موجود در جدول روتينگ منتشر می گردد. فرآيند فوق علاوه بر اشغال بخشی از پهنای باند لينك ارتباطی ، افزايش load   پردازنده روتر را نيز به دنبال خواهد داشت . همچنين ، در صورتی كه يك شبكه با مشكل مواجه شود  ، سرعت كند همگرائی پروتكل های روتينگ Distance-Vector می تواند پيامدهای منفی نظير جداول روتينگ متناقض و حلقه های روتينگ را به دنبال داشته باشد .
در پروتكل های روتينگ  Distance-Vector همواره احتمال ايجاد حلقه های روتينگ وجود خواهد داشت چراكه هر روتر بطور همزمان بهنگام نمی گردد . برای آشنائی با نحوه ايجاد حلقه های روتينگ يك نمونه مثال را در شكل 3 بررسی می نمائيم .
فرض كنيد اينترفيس به شبكه شماره 5  با مشكل مواجه شود . تمامی روترها دانش خود را در رابطه با شبكه شماره 5 از طريق روتر E دريافت می نمايند . در جدول روتينگ روتر A يك مسير به شبكه شماره 5 از طريق روتر B وجود دارد .

حلقه های روتينگ
شكل 3 : حلقه های روتينگ

زمانی كه شبكه شماره 5 دچار مشكل گردد ،‌ روتر E اين موضوع را به اطلاع روتر C می رساند . اين كار باعث می شود كه روتر C عمليات روتينگ به شبكه شماره 5 از طريق روتر E را متوقف نمايد . روترهای B، A و D نسبت به بروز مشكل برای شبكه شماره 5 آگاهی نداشته و همچنان اقدام به ارسال اطلاعات بهنگام می نمايند .سرانجام روتر C  اطلاعات بهنگام شده خود را ارسال و باعث می گردد كه روتر B روتينگ به شبكه شماره 5 را متوقف نمايد . علی رغم اطلاع به روتر B ، روترهای A و D هنوز به دليل عدم دريافت اطلاعات بهنگام شده از اين موضوع آگاهی نداشته و از نظر آنها شبكه شماره 5 همچنان از طريق روتر B با متريك شماره 3 دردسترس است .
مشكل زمانی ايجاد می شود كه روتر A پيامی با اين موضوع را ارسال نمايد : " من همچنان اين جا هستم و اين ليست لينك هائی است كه من آنها را می شناسم "  . در پيام فوق قابليت رسيدن به شبكه شماره 5 و  نحوه دستيابی به آن تشريح شده است . بدين ترتيب روترهای B و D اخبار جالبی را دريافت می نمايند كه به آنها اعلام شده است شبكه شماره 5 از طريق روتر A قابل دستيابی است . روترهای فوق نيز اقدام به ارسال اطلاعاتی مبنی بر در دسترس بودن شبكه شماره 5  می نمايند. بدين ترتيب هر بسته اطلاعاتی كه مقصد آن شبكه شماره 5 باشد به روتر A و سپس به روتر B رسيده و مجددا" به روتر A برگردانده می شود .
بدين ترتيب يك "حلقه روتينگ " ايجاد می گردد كه برای پيشگيری و برخورد با آنها می بايست يك فكر اساسی كرد .

شمارش نامحدود
به "حلقه های روتينگ " كه در بخش قبل تشريح گرديد ، " شمارش نامحدود " نيز گفته می شود و علت اصلی‌ بروز اينچنين مسائلی ، شايعات بی‌اساس و اطلاعات نادرستی است كه در شبكه توزيع شده است . بدون وجود يك سيستم كنترلی ، تعداد hop هر مرتبه كه يك بسته اطلاعاتی از يك روتر عبور می يابد  ، افزايش خواهد يافت . سرعت كند همگرائی شبكه در الگوريتم های روتينگ يكی از دلايل اصلی بروز اينچنين مشكلاتی در شبكه است .
برای پيشگيری از اين نوع مسائل ، راه حل های مختلفی در هر يك از پروتكل های روتينگ پياده سازی شده است  . تعريف حداكثر تعداد hop ، روش route poising ، روش  poison reverse و  split horizon نمونه هائی در اين رابطه می باشند . 

حداكثر تعداد hop
يكی از روش های حل مشكل "شمارش نامحدود " ، تعريف يك حداكثر برای تعداد hop است . پروتكل های روتينگ Distance-Vector نظير RIP  صرفا" امكان افزايش تعداد hop را  تا 15 فراهم می نمايند . بنابراين هر چيزی كه نيازمند 16 hop  باشد به منزله غيرقابل دسترس بودن تلقی می گردد . به عبارت ديگر ،‌ در مثال ارائه شده در بخش قبل ( شكل شماره 3 ) ، پس از ايجاد يك حلقه با پانزده hop ، اين موضوع به اثبات می رسد  كه شبكه شماره 5 غيرفعال است .
بنابراين شمارش حداكثر تعداد hop ، باعث پيشگيری از گرفتار شدن بسته های اطلاعاتی در حلقه های تكرار می گردد . روش فوق با اين كه راه حلی قابل اعمال در شبكه است ولی قادر به حذف حلقه های روتينگ در شبكه نمی باشد و بسته های اطلاعاتی همچنان در حلقه های روتينگ گرفتار خواهند شد . ولی در مقابل اين كه بسته های اطلاعاتی بدون نظارت ، كنترل و بررسی در طول شبكه حركت كنند ، حداكثر مسافتی را طی نموده ( به عنوان نمونه تا 16 hop ) و سپس از بين خواهند رفت .

Split Horizon
يكی ديگر از راه حل های برخورد با مشكل حلقه های روتينگ ، Split Horizon است . در اين روش كه كاهش اطلاعات نادرست و حجم عملياتی اضافه روتينگ در يك شبكه Distance-Vector را به دنبال دارد از اين اصل تبعيت می شود كه اطلاعات نمی توانند در مسيری كه از طريق آن دريافت شده اند مجددا" ارسال گردند . به عبارت ديگر ،‌ پروتكل روتينگ ، اينترفيسی را كه از طريق آن بسته اطلاعاتی را دريافت كرده است بخاطر سپرده و هرگز از اينترفيس فوق برای ارسال مجدد آن استفاده نخواهد كرد . 
بدين ترتيب و با تبعيت از اصل فوق ، روتر A از ارسال اطلاعات بهنگام شده ای كه  از طريق روتر B دريافت نموده است برای روتر B منع می شود .

route poisoning  
يكی ديگر از روش هائی كه باعث پيشگيری از اطلاعات بهنگام شده  متناقض و توقف حلقه های روتينگ می گردد ، route poisoning ناميده می‌ شود . مثلا" زمانی كه شبكه شماره  5 با مشكل مواجه می گردد ( شكل 3 ) ، روتر E يك سطر را در جدول روتنيگ خود برای شبكه شماره 5  با مقدار hop شانزده ( غيرقابل دسترس بودن شبكه) درج می نمايد ( مقدار دهی اوليه route poisoning ) .
با نادرست اعلام كردن مسير رسيدن به شبكه شماره  5 ، روتر C از بهنگام سازی اطلاعات جدول روتينگ خود مبنی بر وجود يك مسير برای رسيدن به شبكه شماره  5 پيشگيری می نمايد .زمانی كه روتر C يك  route poisoning را از طريق روتر E دريافت می نمايد ، يك  poison reverse را برای روتر E ارسال می نمايد تا اين اطمينان ايجاد گردد كه  تمامی روترهای موجود در سگمنت اطلاعات مربوط به route poisoning را دريافت نموده اند .
route poisoning و Split Horizon يك شبكه distance-vector با قابليت اطمينان و اعتماد بيشتر را ايجاد می نمايند كه در آن از بروز حلقه های تكرار پيشگيری می گردد .

Holddown
با استفاده از  holddown پيشگيری لازم در خصوص بهنگام سازی اطلاعات يك مسير بی ثبات ، انجام می شود .  اين وضعيت معمولا" بر روی يك لينك سريال اتفاق می افتد كه در يك لحظه برقرار و در لحظه ای ديگر غيرفعال می گردد (flapping ) . در  صورت عدم استفاده از روشی جهت تثبيت اين وضعيت ، شبكه هرگز همگراء نشده و اينترفيسی كه دائما" up و down می گردد می تواند تمامی شبكه را با مشكل مواجه سازد .
با استفاده از holddown  از ثبت مسيرهائی كه وضعيت آنها با سرعت زياد تغيير پيدا می نمايد ، پيشگيری بعمل آمده و به آنها يك فرصت زمانی داده می شود تا وضعيت پايداری پيدا نمايند .  بدين ترتيب ، به روترها اعلام می شود كه برای يك بازه زمانی خاص هر گونه تغييراتی كه بر روی مسيرهای حذف شده اخير تاثير می گذارد را محدود نمايند . با اين كار از درج مسيرهای بی ثبات در ساير جداول روتينگ پيشگيری بعمل می آيد .
زمانی كه يك روتر اطلاعات بهنگام شده ای را از طريق يكی از همسايگان مبنی بر غيرقابل دسترس بودن يك شبكه دريافت می نمايد ( شبكه ای كه تا پيش از اين فعال بوده است ) ، تايمر holddown آغاز به كار می كند . در صورتی كه اطلاعات بهنگام شده جديدی از يك همسايه دريافت شود كه دارای متريك بهتری نسبت به وضعيت اوليه موجود در جدول روتينگ باشد ، holddown برداشته شده و داده عبور داده می شود ولی اگر اطلاعات بهنگام شده ای از يك روتر همسايه دريافت گردد ( قبل از اتمام مدت زمان تايمر holddown ) ، كه دارای متريك برابر و يا كمتر از مسير قبلی باشد ، از اطلاعات جديد بهنگام صرفنظر و تايمر به فعاليت خود ادامه خواهد داد . بدين ترتيب زمان بيشتری برای ايجاد ثبات در شبكه قبل از آغاز فرآيند همگرائی آن فراهم می گردد .
holddown از فرآيند بهنگام سازی مبتنی بر trigger استفاده می نمايد . در اين فرآيند تايمر reset می گردد تا به روترهای همسايه اطلاع داده شود يك تغيير در شبكه اتفاق افتاده است .  برخلاف پيام های بهنگام از روترهای همسايه ، در اين نوع بهنگام سازی ( مبتنی بر trigger ) يك جدول روتينگ جديد ايجاد و بلافاصله برای روترهای همسايه ارسال می گردد چراكه يك تغيير در ارتباطات بين شبكه ای تشخيص داده شده است .
در بخش پنجم به بررسی پروتكل RIP ، IGRP و پروتكل های تركيبی خواهيم پرداخت .

 



جستجو

مقالات                 
دايره المعارف       
دوره های آموزشی


 

 

مشاهده گروه ها



              

 

 تهيه شده در شرکت سخا روش -  1382