mcsa intro

درس نهم : مفاهیم مسیریابی

موضوع: مفاهیم و اصطلاحات مسیریابی

 

 

 

 

مفاهیم پروتکل های مسیریابی

تمام الگوریتم های مسیریابی دارای ویژگی های ذیل هستند:

  • یاد گرفتن اطلاعات مسیریابی از روترهای همسایه.
  • اعلام کردن اطلاعات مسیریابی خود به روترهای همسایه.
  • اگر روتری در مورد یک subnet به اطلاعات کاملتری دست یابد، با توجه به مجموع اطلاعات مستقل خود و آنچه از روتر همسایه یاد گرفته است، بهترین مسیر را انتخاب میکند.
  • هرگاه توپولوژی شبکه دچار تغییر شود، تمام الگوریتم ها واکنش نشان میدهند و اقدام به مرتب سازی و آپدیت جدول های مسیریابی خواهند کرد.

 

 

 

 

 

معیارهای انتخاب یک الگوریتم مسیریابی

بعنوان مدیر شبکه در هنگام پیاده سازی روتینگ، باید تصمیم بگیرید که آیا مسیرهای خود را باید توسط تنها یک الگوریتم پیاده سازی کنید؟ یا از ترکیب الگوریتم ها؟ از چه الگوریتم یا الگوریتم هایی باید استفاده شود؟ پس باید معیارهایی برای مقایسه الگوریتم ها داشته باشید. سه مورد ذیل، مهمترین معیارها هستند:

  • سرعت به ثبات رسیدن الگوریتم: اینکه از نظر زمانی چقدر طول میکشد تا الگوریتم مورد مطالعه، اطلاعات جدول مسیریابی خود را کامل و مرتب کند؟ این مفهوم به Convergence time معروف است. در واقع مدت زمانی است که پروتکل مسیریابی روی دامین به حالت ثبات میرسد. به بیان دیگر در همین مدت است که تمام روترهای موجود در شبکه بر سر استفاده از یک پروتکل مشخص با یکدیگر به توافق میرسند و بر اساس این توافق، جداول مسیریابی خود را آپدیت کرده، آپدیت ها را از همسایه ها دریافت کرده و به همسایه ها ارسال میکنند. در این حالت است که روتر دیتابیسی قوی در مورد بهترین مسیرها را در اختیار دارد.
  • آیا پروتکل فوق یک استاندارد عمومی است یا پروتکل اختصاصی یک برند بخصوص؟ بعضی از الگوریتم ها ممکن است فقط مخصوص دیوایس های یک تولید کننده مشخص باشند. مثلا پروتکل معروف EIGRP تا سال 2013 مختص شرکت Cisco بود. اما بعضی دیگر از پروتکل ( الگوریتم) ها مانند RIP و OSPF دارای استاندارد عمومی RFC می باشند.
  • پروتکل فوق از نوع Distance Vector است یا Link-State ؟ درباره این دو مفهوم توضیح داده خواهد شد.

 

 

 

 

انواع پروتکل های روتینگ داینامیک

  • Distance Vector : پروتکلهای این خانواده از دو فاکتور Distance یا مسافت و Vector یا جهت برای پیدا کردن بهترین مسیر تا مقصد استفاده می کنند. هر دفعه که یک بسته از روتر عبور میکند یک واحد به نام hop به آن اضافه میشوند. مسیری که تعداد hop کمتری داشته باشد بعنوان بهترین مسیر انتخاب میشود . پروتکل RIP با حداکثر 15 hop و پروتکل IGRP معروفترین پروتکل های این نوع هستند. این خانواده تقریبا منسوخ شده است. مگر در پروژه هایی حداکثر با 7-8 روتر. در این پروتکل، هر دیوایس اطلاعات جدول خودش را به دیوایس همسایه اعلام ( آپدیت) میکند تا دیوایس همسایه اطلاعات خود را جهت ارتباطات بین شبکه ای آپدیت نماید. این پروتکل در واقع از نوع پروتکل های روتینگ مبتنی بر شایعه به شمار می آید چرا که روتر اطلاعات جداول روتینگ خود را بر اساس اطلاعاتی که از روترهای همسایه بدست می آرود، بروزرسانی می نماید. الگوریتم های Distance Vector تغییراتی که در Routing Table انجام می شود را بلافاصله برای روترهای همسایه خود در همه جهات و روی همه اینترفیسها ارسال می کنند. با هر تبادلی که انجام می شود ، روتر Distance Value مربوط به مسیر دریافت شده را افزایش می دهد و Distance Value خودش را نیز بر روی Route های جدید قرار می دهد. روتری که این  Update ها را دریافت می کند نیز به همین ترتیب Route های خودش را بر روی این جدول قرار می دهند و برای روترهای باقی مانده ارسال می کند.  این فرآیند به همین شکل ادامه پیدا می کند. پروتکل های Distance Vector به این موضوع توجه نمی کنند که چه کسی به Update هایی که ارسال می شوند گوش می کند. جالب اینجاست بدانید پروتکل های Distance Vector حتی در صورتی که هیچ تغییری در Routing Protocol خود نداشته باشند نیز بصورت متناوب Routing Table خود را Broadcast  میکنند ، یعنی حتی اگر توپولوژی شبکه تغییر هم نکرده باشد، باز هم  Broadcasting  انجام می شود. این اطلاع رسانی با استفاده از broadcast و آدرس 255.255.255.255 انجام میشود. در این روش، هر روتر برای پیدا کردن بهترین مسیر تا یک شبکه دیگر، بیشتر به روتر مجاورش تکیه میکند. یعنی معمولا همان مسیری را انتخاب میکند که روتر مجاورش انتخاب کرده است. این پروتکل دارای معایبی عمده است: یکی اینکه این ارسال اطلاعات به روتر همسایه، بار روی شبکه می اندازد. دوم اینکه باعث افزایش کار پردازنده های روترها میشود. سوم اینکه مدتی طول میکشد تا روترها اطلاعات خود را آپدیت کنند و چهارم اینکه احتمال بوجود آمدن loop بسیار زیاد است.
  • Link-State : مسیریابی های مبتنی بر این پروتکل خود دارای یک دید جامع از وضعیت شبکه ها هستند و خود در مورد انتخاب مسیر تصمیم می گیرند. این دید کلی و جامع از طریق جدولی که دارند بدست می آید. هر روتر یک جدول با سه خانه دارد. یکی از این خانه ها مسوولیت نگهداری اطلاعات مربوط به روترهای همسایه که مستقیما به این روتر وصل هستند را دارد. دیگری حاوی اطلاعات توپولوژی شبکه است. آخرین خانه اطلاعات جدول روتینگ را در خود نگه میدارد. روترهای این خانواده نسبت به خانواده Distance Vector اطلاعات بیشتری را دارا می باشند. تنها پروتکل مسیریابی این خانواده OSPF است که بستر اینترنت دنیا روی این پروتکل استوار است.
  • Hybrid : این خانواده از ویژگی های Distance Vector و Link-State با هم استفاده میکند. معروفترین پروتکل این خانواده، پروتکل محبوب سیسکو یعنی EIGRP است. شبکه های سازمانی با شعب زیاد بیشتر از EIGRP استفاده میکنند. این پروتکل برای انتخاب بهترین مسیر هم از انتخابهای روتر مجاور استفاده میکند و هم خود دارای یک دید کلی از وضعیت شبکه ها هست. این اطلاعات را با یکدیگر ترکیب کرده و انتخاب میکند.

 

 

مفهوم Hop Count و Metric

منظور از Hop Count فاصله بین مبدا و مقصد میباشد که مبتنی بر تعداد روترهایی است که در طول مسیر قرار دارند. خود روتر مقصد نیز شمرده میشود. بعنوان مثال ماکزیمم Hop count در هر دو نسخه الگوریتم RIP برابر 15 است که به این معناست که RIP میتواند در مسیرهایی استفاده شود که دارای حداکثر 15 hop count هستند.

و منظور از Metric هم مقداری است که برای هر مسیر مشخص میشود و نحوه محاسبه متریک در هر پروتکل متفاوت است. مسیری که متریک کمتری دارد، بهترین مسیر است.

البته توجه داشته باشید که کوتاه بودن مسیر و کم بودن مقدار Hop Count لزوما به معنای این نیست که مسیر فوق دارای بیشترین سرعت است. حتی ممکن است کوتاه ترین مسیر، کندترین مسیر باشد.

 

 

اصول Distance Vector

اطلاعاتی که روتر در مورد یک مسیر نیاز دارد که بداند شامل موارد ذیل است:

  • آدرس مقصد
  • مسافت تا مقصد ( بر حسب متریک)
  • اطلاعات در مورد Hop های مسیر

در شکل ذیل، روتر R1 اطلاعات جدول مسیریابی خود را از سه روتر همسایه اش یعنی R2 , R5 ,R7 بدست می آورد. هر آپدیت، اطلاعات یک مسیر متفاوت تا مقصد یعنی X را توضیح میدهد. در این مثال، هر کدام از روترها همسایه به R1 توضیح میدهد که در مسیر پیشنهادی تا مقصد چند Hop وجود دارد؟

نکته ای که باید به آن توجه داشته باشید که سه روتر همسایه فوق، در مسیرهای پیشنهادی، خودشان را نیز جزو hop های مسیر حساب میکنند که تصمیم بسیار درست و صحیحی می باشد.

Distance vector

R2 به R1 می گوید که تا مقصد 4 روتر ( از جمله خود R2 ) وجود دارد.

R5 به R1 می گوید که تا مقصد 3 روتر ( از جمله خود R5 ) وجود دارد.

R7 به R1 می گوید که تا مقصد 3 روتر ( از جمله خود R7 ) وجود دارد.

 

 

مفهوم Loop

     ابتدا باید بدانیم که در مباحث سیسکو، منظور از وقوع Loop چیست؟  Routing Loop یک مشکل جدی در فرآیند های مسیریابی شبکه محسوب می شود ، در این حالت یک Packet داده بصورت متناوب از همان روتری که آمده است مجددا و مجددا مسیریابی و عبور می کند و باز هم به همان روتر برگشته و مسیریابی می شود. این تناوب اینقدر ادامه دار می شود که تقریبا می توان گفت هیچوقت تمام نمی شود و در یک چرخه بی نهایت، مسیریابی این بسته اطلاعاتی تکرار می شود. Loop ها می توانند مشکل بسیار جدی برای شبکه ایجاد کنند و در برخی اوقات توان این را دارند که شبکه را از مدار خارج و غیرفعال کنند. معمولا مشکلات مربوط به Routing Loop در پروتکل های مسیریابی Distance Vector مشاهده می شود.

     مهمترین مشکلی که loop  ها برای شبکه های ما ایجاد می کنند اتلاف پهنای باند مفید شبکه است.  با به وجود آمدن  Routing Loop ها پهنای باند مفید شبکه دچار اختلال می شود و پهنای باند غیر مفیدی که توسط Packet های Loop ایجاد شده اند جایگزین آنها می شوند و این یعنی پایین آمدن کارایی شبکه.  اما دومین مشکلی که Routing Loop  ها ایجاد می کنند اینست که قدرت پردازشی روترها در چنین حالتی مجبور است به Packet های ایجاد شده توسط Loop بی مصرف هم جوابگو باشد و به همین دلیل قدرت پردازشی روترهای ما برای Packet های سالم شبکه دچار کمبود خواهد شد و کارایی روتر پایین خواهد آمد.

 Routing Loop ها معمولا در شبکه های بزرگی اتفاق می افتند که در آنها یک تغییر قبلا در توپولوژی شبکه انجام شده است اما هنوز به روترهای دیگر converge نشده است و در همین حین تغییر دومی در توپولوژی شبکه ایجاد می شود و قبل از رسیدن تغییرات اول، در شبکه پخش می شود و باعث بروز مشکل در Converge شدن شبکه می شود. پروتکل های Link State سرعت Convergence بسیار بالایی دارند و این در حالی است که پروتکل های Distance Vector سرعت پایینی در Converge شبکه ها برخوردارند.

 

 

مفهوم Administrative Distance

زمانی که یک بسته به روتر میرسد امکان دارد از چند مسیر برای ارسال به مقصد استفاده کرده باشد. این مسیرها توسط پروتکل های مختلف به روتر معرفی شده اند. باید با استفاده از Administrative Distance از بین مسیرها بهترین مسیر را انتخاب کرد. اولویت مسیریابی با آن مسیری است که دارای کمترین Administrative Distance باشد. بهترین مسیر، مسیر connected است. این عدد بین 0 تا 255 است. AD ارزش مسیر را بیان میکند.

در یک شبکه میتوان برای مسیرهای مختلف از روش های مختلف مسیریابی استفاده کرد. بعنوان مثال یک مسیر با Eigrp و مسیری دیگر با static route

administrative distance

حتی یک مسیر را میتوان با چندین روش پیاده سازی کرد و آنگاه روتر بین این مسیرها، آن مسیری که دارای AD کمتری است را انتخاب میکند.

 

 

 

جداول مسیریابی

تا وقتی که در شبکه لوکال یا محلی تبادل اطلاعات می کنیم تنها با بسته های Ethernet Broadcast و دیوایس هایی همچون کارت شبکه و سوییچ درگیر می شویم ولی هنگامی که بخواهیم یک بسته را به خارج از شبکه داخلی یا محلی ارسال کنیم , پیام های Broadcast کاربردی نخواهند داشت . در اینجا نیاز به دیوایس دیگری داریم تا بین مسیر های خارجی بسته ها را مسیریابی کند و به مقصد برساند . این دیوایس ها روتر یا مسیریاب نام دارند . روترها از جداول مسیریابی ( route table ) به منظور ثبت اطلاعات مرتبط به روترهای مجاور و مسیرهای شبکه استفاده می کنند .

 

 

درباره دستور route print

از این دستور در سیستم عامل ویندوز جهت مشاهده routing table استفاده می شود. بعنوان مثال اجرای این دستور در محیط cmd ویندوز باعث نمایش routing table کامپیوتر فوق میگردد.

بخش interface list شامل تمام اینترفیس های موجود روی کامپیوتر فوق می باشد. همچنین MAC اینترفیس های فوق را نشان می دهد. نیز به هر کدام از اینترفیس ها یک شناسه ( یک شماره) اختصاص می دهد که این شناسه در جای دیگری به کار می آید.

 

 

Active Routes & Persistent Routes

در بخش بعدی ( IPv4 Route Table ) بدنه اصلی جواب را می بینیم. پیش از هر مورد دیگری باید به تفاوت بین Active Routes و Persistent Routes اشاره کنیم. هر کامپیوتر میتواند شامل هر دوی این موارد باشد (Active routes را که حتما دارد). تفاوت این دو در دائمی بودن یا نبودنشان است.

مسیرهای فعال ( Active routes ) همانطور که ازنامش پیداست شامل مسیرهای داینامیک است. این مسیرها مدام رفرش و بازسازی میشوند و به هیچوجه دائمی نیستند. ممکن است هر بار که دستور route print را اجرا می کنید، جوابهای متفاوتی در این بخش ببینید.

اما مسیرهای موجود در قسمت Persistent Routes دائمی هستند و معمولا بصورت دستی و دائمی روی جدول مسیریابی کامپیوتر فوق ست شده اند.

 

 

فیلدهای جدول مسیریابی

بهرحال چه در مسیرهای دائمی و چه در مسیرهای اکتیو، فیلدهای زیر را در هر خط ( هر route )  مشاهده می کنیم:

  • Network Distination : شامل اطلاعات IP شبکه یا Host مقصد است. مثلا در تصویر قبل، شبکه 16.9.0 یا 127.0.0.1 جزو شبکه های مقصد موجود در جدول مسیریابی این کامپیوتر هستند یا حتی خود آی پی کامپیوتر ( 10.16.9.522 )
  • Netmask : شامل اطلاعات سابنت شبکه مقصد است.
  • Gateway : شامل اطلاعات آی پی یا وضعیت Gateway موردنیاز جهت ارتباط با شبکه مقصد می باشد.
  • Interface : شامل IP اینترفیس مبدا آن ارتباط می بشد.
  • Metric : طبق الگوها و الگوریتمهایی به هر مسیر یک هزینه ( یک count ) نسبت داده می شود. بر حسب تعداد روترها ( hop ) های موجود در مسیر، تعداد نودهای سر راه، طول مسیر و…

طرز خواندن اطلاعات هر خط در واقع به این صورت است که می گوییم برای اتصال از فلان اینترفیس به شبکه x که دارای فلان سابنت است، باید از فلان gateway استفاده کنیم و هزینه این مسیر فلان متریک می باشد.

 

 

انواع مسیرها

سه نوع عمده مسیر داریم: Network route, Default Route, Host route

  •  Network Route : اگر بخواهیم یک پکت ( Packet ) را از LAN-A به یک شبکه دیگر ( بعنوان مثال LAN-B ) بفرستیم، می توانیم از این نوع استفاده کنیم.
  •  Host Route : اگر پکتی را بخواهیم به یکی از کامپیوترهای یک LAN دیگر مسیریابی کنیم ( بعنوان مثال از C1 از LAN-A به C2 از LAN-B ) از Host Route استفاده میکنیم. همینطور هر کامپیوتر برای ارتباط با خودش از این نوع استفاده می کند. ارتباطات ازز نوع  Dial-up و VPN از این نوع هستند.
  • Default Route : زمانی مورد استفاده قرار می گیرد که با یک شبکه کوچک یا با یک هاست مشخص سروکار نداریم بلکه طرف حساب ما تعداد زیادی شبکه می باشد مثل اینترنت یا یک اینترانت بزرگ. در واقع زمانی مورد استفاده است که پکت هایی LAN ما به تعداد زیادی شبکه ارسال می شود و Network Destination های تمامی شبکه های مقصد درون Route Table قرار ندارد. نکته قابل ذکر اینست که روتینگ با اینترنت فقط بصورت Default Route میسر است. به بیانی دیگر، هرگاه نیاز بود که پکتی را به شبکه یا کامپیوتری مسیردهی کنیم که بهردلیل در Route Table وسیله فوق تعریف نشده بود از نوع Default Route استفاده می کنیم و Gateway مسیر فوق را برابر با Default Gateway شبکه خود قرار می دهیم.

 

 

ترمینولوژی

TTL: Time-To Live

 

ضمایم4

  • routing history
  • Distance Vector
  • پیوست گم شده
  • maximum-path
مشاهده همه افزودن یک یادداشت
شما
دیدگاه خود را وارد کنید

کپی رایت آکادمی ITperfection.