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
- Mask و value هر دو 134 بیتی هستند.
- Value اطلاعات مربوط به پروتکل ها و آیپی ها را
در خود نگه می دارد.
- Result هم اجازه یا عدم اجازه به اجرای
acl روی اینترفیس مربوطه را می دهد. در
صورت اجازه دادن برابر permit است در غیر اینصورت
deny می شود.
منبع: bia2store.com