تعریف سوئیچینگ
فرآیندهای Routing یا مسیریابی و سوئیچینگ Switching اساس و پایه کاری یک ارتباط شبکه را تشکیل میدهند.
هر کدام از این فرآیندها در لایههای مختلفی از شبکه انجام میشوند و به عنوان یک کارشناس شبکه میبایست تفاوت آنها را به خوبی بدانید. فرآیند سویچینگ یا Switching در لایه دوم از مدل OSI انجام میشود. سوئیچینگ به معنی رد و بدل کردن بستههای داده بین تجهیزات یک شبکه محلی یا Local است. هنگامی که صحبت از شبکه محلی میشود یعنی اطلاعات قرار نیست از شبکه شما خارج شود و فقط در شبکه محلی یا LAN باقی میماند.
سوئیچ شبکه با استفاده از ساختار آدرس سختافزاری کارت شبکه یا همان MAC Address میداند که باید Packet یا بهتر بگوییم فریمها را به سمت کدام مقصد ارسال کند. یک سوئیچ برای خود دارای یک جدول مک آدرس یا MAC Address Table است. تمام آدرسهای مک که به پورتهای سوئیچ متصل شدهاند، در این جدول ذخیره میشوند.
به بستههای اطلاعاتی در لایه دوم از مدل OSI در اصطلاح فریم یا Ethernet Frame گفته میشود. سوئیچ شبکه با استفاده از مکانیزم جدول مک، قادر به شناسایی مبدا و مقصد ارسالی Frame خواهد بود. سختافزارهایی که به آن متصل شدهاند را با استفاده از این جدول میشناسد. به این ترتیب فقط میتوان از فرآیند سوئیچینگ در شبکههای کوچک LAN استفاده کرد. در برخی منابع MAC Address Table با نام CAM Table هم معرفی میشود.
روش های سوئیچینگ
سوئیچ به منظور مسیریابی ترافیک موجود در شبکه از سه روش سوئیچینگ استفاده میکند.
- Store and forward
- Cut through
- Fragment Free
روش Store and Forward
در این روش سوئیچ در ابتدا تمام بسته اطلاعاتی را ذخیره میکند. سپس به خطایابی آن بسته میپردازد و در صورتی که خطایی در بسته پیدا کند، به سرعت آن را حذف میکند. در صورتی که سوئیچ خطایی پیدا نکند، آدرس کارت شبکه گیرنده بسته را جستجو کرده و پس از پیدا کردن آدرس مقصد، بسته را به نود مقصد ارسال میکند.
این نوع سوئیچها برای شبکههای محلی بسیار مناسب هستند؛ چرا که بستههای اطلاعاتی خراب شده را پاکسازی میکنند. به همین دلیل این سوئیچها باعث کاهش بروز عمل تصادم یا Collision خواهند شد. این روش، سادهترین روش سوئیچینگ محسوب میشود.
پلها یا هابها از این روش استفاده میکنند؛ در صورتی که سوئیچها میتوانند از هر سه روش مورد بحث بهره ببرند.
در سوئیچینگ به روش Store and Forward زمانی که سوئیچ فریمی دریافت میکند، ابتدا آن را در حافظه رم خود Buffer میکند. در مرحله بعد آدرسهای مک مبدا و مقصد را از هدر فریم خوانده ولی پیش از ارسال آن به سمت مقصد، کد CRC فریم را از بخش Trailer چک میکند. در صورتی که عدد CRC صحیح باشد، سوئیچ فریم را به سمت مقصد ارسال میکند. اما اگر مشکلی داشته باشد، آن فریم را به عنوان یک Corrupted Frame یا یک فریم خراب تشخیص داده و توسط سوئیچ Drop میشود.
روش Store and forward روش مناسبی است؛ چرا که فریمها ابتدا بررسی میشوند و در صورت مشکلدار بودن توسط سوئیچ سریعا Drop میشوند. به این ترتیب فریم به مقصد ارسال نمیشود. مشکل این روش سرعت پایین آن است. دلیل این سرعت پایین هم این است که بررسی کد CRC از یک طرف و خواندن مک آدرس مبدا و مقصد از سوی دیگر، بار زیادی را روی پردازنده تحمیل میکند.

روش Cut Through
این نوع از سویئچ ها سه یا چهار بایت اول یک بسته را میخوانند تا بالاخره آدرس مقصد را پیدا کنند سپس بسته را به آن بخش یا سگمنتی که آدرس مقصد بسته را دارد ارسال میکنند و بقیه قسمت های باقی مانده را ار نظر خطایابی مورد بررسی قرار نمی دهند .
این نوع سوئیچ ها ، به محض دریافت بسته ، سریعا Mac Address بسته را می خوانند و آن 6 بایت آدرس MAC را ذخیره میکنند و در حالتی که بقیه بسته ها در حال رسیدن به سوئیچ هستند ، بسته ای که بررسی کرده را به سمت نود مقصد ارسال میکند .
در این نوع سوئیچینگ فقط قسمت های اولیه فریم که شامل Preamble و آدرس MAC گیرنده می شود توسط دستگاه چک میشود و فریم سریعا به مقصد خودش هدایت میشود.
خوبیه این روش نسبت به حالت Store and forward این است که سرعت بالاتری دارد و مشکل این روش یا بهتر بگویم نقطه ضعف این روش احتمال فرستاده شدن فریم های بد به مقصد های مورد نظر است زیرا که CRC فریم مورد اندازه گیری واقع نمیشود .
خیلی از شرکت های تولید کننده یک سری امکانات را بر روی دستگاه اضافه میکنند.
به این صورت که دستگاه در کنار استفاده از روش Cut through ، اقدام به اندازه گیری CRC فریم هم میکند و تعداد فریم های مشکل دار را در حافظه خودش نگه میدارد سپس اگر این فریم های بد از حدی پیشرفت کردن به صورت خودکار عمل switching به Store and forward تبدیل میشود که به آن Dynamic Switching نیز میگویند .

روش Fragment Free
این نوع از سوئیچینگ هم مانند Cut through عمل میکند با این تفاوت که در این روش قبل از اینکه بسته ارسال شود 64 بایت اول که شامل preamble , MAC است را نگه میدارند این کار به این دلیل بیشتر خطاها و برخورد ها در طول اولین 64 بایت بسته اطلاعاتی اتفاق می افتد .
با توجه به این موضوع که اندازه فریم های Ethernet حداقل 64 بایت است ، استفاده از Fragment Free روش بهتری برای عمل سوئیچینگ است .هدف از این روش Fragmnet Free کاهش فریم هایی است که کمتر از 64 بایت بوده که این نوع فریم ها runt نامیده میشوند و به قولی به این روش Runt less هم می گویند .
در این روش نیز باز هم مانند Cut Through فریم های بد توسط دستگاه عبور داده می شوند که با فن Dynamic Switching میشود این مشکل را تا حدی برطرف کرد .
این نکته هم خالی از لطف نیست که بدانید این نوع عمل سوئیچینگ در افزایش عملکرد دستگاه به تنهایی موثر نیست و فاکتور های دیگری نیز مانند امکانات و performance دستگاه نیز باید مورد توجه قرار بگیرند.