- ۱ نظر
- ۰۵ آبان ۹۲ ، ۲۰:۰۴
- ۳۵۲۸ نمایش
Loop در سوئیچ
با توجه به ترکیب بندی سوئیچ ها در شکل بالا اگر یک بسته در سوئیچ مرتبا یک مسیر را مانند شکل طی کند یک loop یا حلقه ایجاد می شود.
از آنجایی که در سوئیچ های لایه 2 نمی توان timer هایی برای از بین بردن بسته استفاده کرد این بسته در شبکه از بین نمی رود و پهنای باند شبکه را کاهش می دهد. احتمال collision هم افزایش می یابد و در نتیجه شبکه performance یا کارایی خود را از دست می دهد.
برای جلوگیری از ایجاد loop در سوئیچ از پروتکل STP استفاده می شود. Stp مخفف spanning tree protocol است. با استفاده از این پروتکل بهترین مسیر برای رسیدن به نود مقصد انتخاب می شود و از مسیر هایی که به loop ختم نمی شوند یا مسیر طولانی تری هستند استفاده نمی شود. در حقیقت پورتی که باعث ایجاد loop می شود block یا بلوکه می شود.
در پروتکل stp از بسته ای کوچک به نام BPDU که مخفف Bridge Protocol Data Unit است استفاده می شود. این بسته ها وقتی یک سوئیچ به سوئیچ دیگر متصل می شود بین سوئیچ ها رد و بدل می شوند. این بسته ها شامل شماره آیدی سوئیچ، پورت، آدرس مک و شماره هزینه یا cost هستند.
استاندارد این پروتکل در IEEE برابر IEEE 802.id می باشد.
منبع: bia2store.com
ساختار بسته Bpdu
یک بسته bpdu از فیلد های زیر تشکیل شده است.
اما گزینه های بالا چی هستند؟
هر سوئیچ یک شماره آیدی دارد. سوئیچی که کمترین مقدار را داشته باشد ملاکی است برای انتخاب سوئیچ اصلی یا Root Switch
هر سوئیچ یک آدرس مک دارد.
هر سوئیچ بنا بر سرعت پورت خود دارای عددی است که Cost یا هزینه نام دارد. سوئیچی که کمترین هزینه را داشته باشد ملاکی است برای سوئیچ اصلی بودن.
برابر شماره پورت سوئیچ است.
منبع: bia2store.com
Runway visual range که به صورت اختصار RVR گفته می شود در هواشناسی هوانوردی میزان مسافتی می باشد که یک خلبان هواپیما اگر برروی وسط باند پرواز قرار بگیرد قادر خواهد بود تا خط وسط باند را دیده یا شخصا" شناسایی نماید که این مسافت عموما" با مقیاس های فیت( پا) و متر بیان می گردد.
روش های به کار رفته در سوئیچ در جهت ارسال پکت ها
1. Store and Forward
2. Cut-through
3. Fragment-Free
در این روش بسته های ارسالی از طرف فرستنده بافر می شوند سپس کد crc چک می شود در صورتی که خطایی نبود بسته به مقصد هدایت می شود. در صورتی که در crc خطایی مشاهده شود بسته کنار گذاشته می شود.
در این روش سوئیچ بسته های ارسالی از نود فرستنده را دریافت کرده، آدرس مک فرستنده را ذخیره می کند و بدون چک کردن crc و خطاهای احتمالی اقدام به ارسال بسته به سمت نود گیرنده می کند.
در این روش 64 بایت اول از بسته ارسالی چک می شود اگر خطایی در این 64 بایت مشاهده نشد بسته به سمت مقصد ارسال می شود. دلیل این کار هم این است که بیشتر خطاها در 64 بایت اول اتفاق می افتد.
منبع: bia2store.com
Switch
از دو جدول برای ذخیره سازی مک آدرس متناظر با پورت استفاده می کند.
1. Content addressable memory (CAM)
2. Ternary conetent addressable memory (TCAM)
با استفاده از جدول CAM و TCAM کار خود را انجام می دهد. این جدول یا به صورت دستی تنظیم و کانفیگ می شود یا بصورت اتوماتیک کانفیگ می شود. در این جدول آدرس هر مک به شماره پورت نظیر می شود.
اول اینکه learn کردن یعنی چی؟ وقتی ماشین فرستنده بسته ای را به یکی از پورت های سوئیچ ارسال می کند قبل از اینکه بسته را به مقصد ارسال کند آدرس مک فرستنده را در جدول خود ذخیره می کند یعنی اینکه آدرس مک ماشین فرستنده را یاد می گیرد یا learn می کند.
Switch از تکنیکی transparent bridge برای learn کردن استفاده می کند.
این تکنیک شامل 5 مرحله است.
1. Learining
2. Flooding
3. Forwarding
4. Filtering
5. Aging
شکل زیر را در نظر بگیرید.
می خواهیم روند ارسال بسته ای را از کامپیوتر A در سگمنت A به کامپیوتر B در سگمنت C ارسال کنیم.
در ابتدا یک بسته از کامپیوتر A به سوئیچ ارسال می شود. سوئیچ اطلاعات مک آدرس ماشین فرستنده و شماره پورت را به جدول اضافه می کند. یک زمان سنج به نام Time stamp به این اطلاعات می افزاید. وظیفه Time stamp به روز نگه داشتن این اطلاعات است و با پایان یافتن این محدوده زمانی (300 ثانیه) این اطلاعات پاک می شود.
اگر آدرس مک کامپیوتر B در جدول وجود نداشت آنگاه سوئیچ یک بسته را بصورت broadcast در شبکه (به جز پورتی که متصل به کامپیوتر A است) ارسال می کند و منتظر پاسخ ماشین B می ماند. به این عمل flooding می گویند.
کامپیوتر B بسته را دریافت کرده و بسته ای را به سمت کامپیوتر A ارسال می کند. آدرس مک کامپیوتر B به همراه یک Time stamp در cam table ذخیره می شود. سوئیچ آدرس مک کامپیوتر A را می داند. ارتباط بین کامپیوتر B و A را برقرار می کند. سپس عملیات ارسال بسته از A به B انجام می شود. به این عملیات Forwarding می گویند. یعنی سوئیچ بسته ارسالی از کامپیوتر A را از یک پورت خود به پورتی که کامپیوتر B به آن متصل است Forward می کند.
برای مثال دو کامپیوتر A و C را در نظر بگبربد. این دو کامپیوتر به یک Hub اتصال دارند و Hub به سوئیچ متصل است. اگر کامپیوتر A بسته ای را به سمت کامپیوتر C ارسال کند. این بسته توسط Hub روی همه پورت های آن ارسال می شود. بسته به سوئیچ می رسد. سوئیچ به جدول خود نگاهی می اندازدو متوجه می شود که هر دو کامپیوتر روی یک پورت هستند و متعلق به یک سگمنت. در اینجا سوئیچ بسته ها را filter می کند و عملیات Forward منتفی است. بسته به کامپیوتر گیرنده یعنی C ارسال می شود.
تکنیکی است که اطلاعات مربوط به مک آدرس های قدیمی که Time stamp آن به روز نمی شود را پاک می کند. در اینصورت فضای قابل توجهی از حافظه آزاد می شود.
نکته
1. اگر یک Host از یک پورت سوئیچ به پورت دیگر جابجا شود اطلاعات مک در host از پورت قبلی پاک شده و در پورت جدید آدرس مک و Time stamp ذخیره می شود.
2. اگر مک آدرس یک Host روی یک پورت ثبت شده باشد و بنا به دلایلی دوباره به همین پورت باز گردد تنها time stamp آپدیت می شود.
در این جدول آدرس های مک و پورت ها و Time stamp ها ذخیره می شوند.
در این جدول علاوه بر مک آدرس و پورت با پارامتر سومی به اسم Vlan سروکار داریم.
در این جدول با acl سروکار داریم. Acl یا access control list یک لیست از قوانینی است که برای کنترل ورود و خروج ترافیک به روتر یا سوئیچ استفاده می شود.
روی هر اینترفیس از سوئیچ می توان acl را تنظیم کنیم. برای ترافیک های ورودی یا inbound و ترافیک های خروجی outbound .
می توان یک لیست acl از آیپی تهیه کرد به عنوان مثال به این تعداد آیپی اجازه داده شود که روی یک اینترفیس مشخص بتوانند ترافیک داشته باشند. در حقیقت چیزی شبیه با فایروال روی هر پورت.
جدول tcam مانند شکل زیر از 3 قسمت تشکیل شده است.
1. Mask
2. Value
3. Result
منبع: bia2store.com