درس سی و دوم: تحلیل عملیات سوئیچینگ

تحلیل عملیات سوئیچینگ

 

 

یک سوئیچ برای هدایت بسته ها در درون LAN از دیوایس مبدا به دیوایس مقصد قبل از هر چیزی نیاز دارد که آدرس فیزیکی یا MAC دیوایس های متصل به خود را بداند. سوییچ در لایه internet در معماری TCP/IP  و لایه Network در معماری OSI میتواند آدرس فیزیکی دیوایس متصل به هر پورت خود را شناسایی کند. سوئیچ فرآیند شناسایی آدرس فیزیکی هر پورت را از طریق پردازش اطلاعات درون فیلد Header بسته دریافتی روی پورت فوق انجام میدهد.. وقتی آدرس فیزیکی دیوایس متصل به پورت را بدست آورد بلافاصله آنرا درون جدولی به نام MAC Table قرار میدهد. زمانیکه برای اولین بار یک سوییچ به شبکه متصل میکنیم در MAC Table آن سوئیچ هیچ آدرسی وجود ندارد و زمانیکه کلاینت ها شروع به ارسال بسته می نمایند فریم ها به سوییچ منتقل شده و بر اساس Header آنها ، MAC و شماره اینترفیسی که با آن به سوییچ متصل هستند در جدول مربوطه ذخیره می شود. پس MAC Table جدولی و در واقع دیتابیسی است که کلیه آدرس های MAC متصل به سوئیچ را در خود ذخیره میکند. به این جدول در بعضی موارد CAM Table هم گفته میشود. میتوان توسط دستور ذیل محتوای این جدول را مشاهده کرد:

Show mac address-table

سوییچ های LAN سه ویژگی دارند :

  • تصمیم می گیرند که فریم ها را ارسال یا فیلتر کنند .
  • بدست آوردن آدرس فیزیکی از طریق ارسال بسته ها به صورت همگانی یا دریافت بسته ها از کلاینت ها و ثبت آدرس فیزیکی آنها .
  • استفاده از پروتکل STP برای جلوگیری از ایجاد حلقه در شبکه .

 

Half Duplex & Full Duplex

در شبکه ای که مبتنی بر باند پایه هست، امکان جابجایی بیش از یک سیگنال روی رسانه در یک لحظه وجود ندارد. لذا در یک لحظه، یک سیگنال از یک جهت شبکه در حال حرکت به جهتی دیگر است. این نوع از حرکت به Half duplex یا یکطرفه معروف است. بعنوان مثال واکی تاکی یا بی سیم از روش Half Duplex استفاده می کنند. وقتی دو نفر می خواهند بوسیله بی سیم با هم حرف بزنند، یکی از این دو نفر دکمه Talk روی بی سیمش را فشار میدهد و شروع به صحبت می کند. طرف دیگر ارتباط فقط می تواند به حرفهای طرف دیگر گوش بدهد. وقتی صحبت های نفر اول تمام شد، شخص دیگر می تواند دکمه Talk را فشار داده و صحبت کند. پس در این روش ارتباطی در یک لحظه فقط یک دستگاه می تواند اطلاعات انتقال دهد.

اما در شبکه های مبتنی بر broad band و سوئیچینگ مدار، سیگنال ها میتوانند همزمان در هر دو جهت مدار ( مسیر) حرکت کنند. این روش به Full Duplex موسوم است. روش ارتباطی بین دو تا گوشی تلفن به صورت Full  Duplex است. وقتی دو نفر دارند با گوشی صحبت می کنند، می توانند همزمان با هم صحبت نمایند. کارت های شبکه توانایی کار در هر دو حالت فوق را دارا هستند.

بحث Collision Domain  و Broadcast Domain

اصولا برخورد دو بسته، در شبکه های half-Duplex رخ میدهد. چون در این نوع از ارتباط، در یک لحظه فقط یک دیوایس قادر به ارسال داده و یک دیوایس قادر به دریافت داده می باشد. پس اگر دو دستگاه همزمان داده ارسال کنند، خواه ناخواه برخورد پیش می آید. مفهوم collision domain به محدوده ای از رسانه شبکه اشاره میکند که در آن احتمال برخورد وجود دارد. با پیشرفت تکنولوژی سوئیچ ها و حذف هاب ها ، خوشبختانه امروزه collision domain محدود به هر پورت یک دستگاه سوئیچ شده است.  یعنی هر پورت دارای یک collision domain است و collision domain نداریم که در بیشتر از یک پورت وجود داشته باشد. به معنای ساده تر هرگز بین بسته های دو دیوایسی که به پورت های مختلفی از یک دستگاه سوئیچ متصل هستند، برخورد پیش نخواهد آمد..

به محدوده ای از یک شبکه که در آن اگر یک دیوایس اقدام به ارسال بسته ای به صورت broadcast کند، تمام دیوایس های محدوده فوق، بسته را دریافت خواهند کرد، broadcast domain گفته میشود. بصورت پیشفرض، کل دیوایس های متصل به پورت های سوئیچ (دقت کنید ممکن است یک هاب یا یک سوئیچ به یک پورت از سوئیچی دیگر متصل باشند. در این حالت تمام دیوایس های متصل به آن هاب یا سوئیچ دوم، همگی به یک پورت از سوئیچ اصلی متصل هستند) با یکدیگر تشکیل یک broadcast domain می دهند. یعنی هر بسته broadcast به تمام دیوایس های متصل به پورت های سوئیچ میرسد که سبب افزایش بسیار زیاد ترافیک شبکه و افت کارایی می گردد. برای همین از تکنیک های سگمنت بندی سوئیچ و مشخصا تکنیک VLAN استفاده میشود تا broadcast domain ها تا جای ممکن کوچک شوند.

32-1 coliisions

ارسال فریم ها به مقصد خاص

همانطور که گفته شد برای ارسال فریم ها، سوییچ از اطلاعات درون MAC Table خود استفاده میکند که در داخل آن آدرس های فیزیکی دیوایس متصل به هر کدام از اینترفیسهای سوئیچ وجود دارد . یکی از روش های ارسال بسته اینست که سوییچ بداند بسته را دقیقا به کدام کلاینت ارسال کند . در این حالت سوییچ آدرس فیزیکی مقصد را با آدرسی که در جدول خودش دارد مقایسه می کند و در صورت تطابق ارسال میکند . در شکل زیر می بینید که یوزری با نام Fred بسته ای را به Barney ارسال کرده و سوییچ بسته را بصورت Unicast به مقصد هدایت کرده است و بر روی هیچکدام از پورتهای دیگر ارسال نشده است.

32-2 send a packet

 

 

بدست آوردن آدرس فیزیکی

در مرحه قبل دیدید که چگونه بسته به مقصدی خاص در صورت داشتن آدرس فیزیکی ارسال شد . حال در این مرحله خواهید دید که چگونه در صورت نداشتن آدرس فیزیکی، سوییچ آن را بدست می اورد و در جدول آدرس خودش ذخیره می کند . پورتهای سوئیچ هر بار که فریمی دریافت میکنند طی فرآیندی بنام Learning ، آدرس فیزیکی مربوط به خود را در MAC Table بروزرسانی میکنند. یوزر Fred بسته ای را به یوزر Barney ارسال می کند و یوزر Barney نیز بسته ای را بر میگرداند . بدین صورت در مرحله اول سوییچ متوجه می شود که آدرس فیزیکی و پورتی که دیوایس Fred از طریق آن متصل هست چیست و آن را در جدول آدرسش ثبت می کند و در مرحله دوم نیز آدرس فیزیکی و پورتی که دیوایس Barney به آن متصل هست را بدست می آورد و ثبت میکند . و در انتها زمانی که بسته ها به سوییچ می رسد با جدول آدرس خودش مطابقت می دهد و ارسال می کند . به این فرآیند MAC address learning می گویند.

32-3 MAC learning

جاری شدن بسته های ناشناس همگانی و مشخص

اگر بسته ای به سوییچ برسد و آدرس مقصد در جدول نباشد چه اتفاقی می افتد ؟

در این مرحله کاری که سوییچ انجام می دهد اینست که بسته را به تمامی کلاینت ها ارسال میکند (Broadcast) البته بجز کلاینتی که بسته را ارسال کرده است و اصطلاحا به این عمل Flooding میگویند .کلاینتی که بسته مربوط به آن است پاسخ می دهد و در جدول آدرس قرار میگیرد و سپس سوییچ مجددا بسته را بصورت (Unicast) برای آن کلاینت ارسال می کند .

32-4 mac flooding

 

جلوگیری از ایجاد حلقه با استفاده از پروتکل STP

پروتکل STP ( مخفف Spanning Tree Protocol )  وظیفه جلوگیری از ایجاد حلقه بر روی لایه internet را داراست و موسسه IEEE این پروتکل را با استاندارد IEEE 802.1d نامگذاری و معرفی نموده است . برای اینکه پروتکل STP بتواند از حلقه هایی که در لایه 2 ایجاد می شود جلوگیری کند باید شناخت صحیحی از تمام توپولوژی و اتصالات آن داشته باشد. این اطلاعات را پیام هایی به نام BPDU بصورت Multicast توسط تجهیزات لایه 2 ، که پروتکل STP بر روی آنها اجرا شده است بدست می آورند. بروتکل STP در صورت ایجاد حلقه پورت هایی را که در ایجاد آن دخیل بوده اند را مسدود می کند و فقط بهترین مسیر لایه 2 را بین تجهیزات برای استفاده باز می گذارد و ضمانت می کند که حلقه ایجاد نشود.

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

ضمایم2

  • send a packet mechanism
  • MAC learning
مشاهده همه افزودن یک یادداشت
شما
دیدگاه خود را وارد کنید
رفتن به نوار ابزار