در شبکههای کامپیوتری، بهویژه در لایه دو، وجود چندین لینک بین سوئیچها میتواند مشکلات جدی از جمله Loop و Broadcast Storm ایجاد کند. پروتکل STP مخفف Spanning Tree Protocol بهمنظور جلوگیری از این مشکلات طراحی شده است. در ادامه، به جزئیات بیشتری درباره عملکرد این پروتکل، وضعیت سوئیچها و روشهای تست آن میپردازیم.
وضعیت پورتهای سوئیچها:
۱- Learning:
سوئیچ مک آدرس کامپیوترهای متصل به پورت هایش را پیدا کرده و وارد Mac table خود می کند،
۲-Filtering:
یعنی سوئیچ طبق Mac table فریم ارسالی را فیلتر کرده و فقط فریم را به پورت مقصد ارسال می کند.
۳-Forwarding:
سوئیچ آدرس MAC مقصد را بررسی میکند. اگر آدرس MAC مقصد در جدول موجود باشد، سوئیچ فریم را به پورت مربوطه ارسال میکند.
۴-Flooding:
برادکست مربوط به لایه ۳ هست که در لایه ۲ Flood نام دارد، اگر آدرس MAC مقصد در Mac table خود سوئیچ موجود نباشد، سوئیچ فریم را به تمام پورتها (غیر از پورت ورودی) ارسال می کند.
Broadcast Storm:
وقتی بسته به همه پورت ها ارسال شود، اگر سوئیچ از طریق دو یا چند کابل یا رابط به سوئیچ دیگری متصل باشد این برادکست به سوئیچ بعدی رفته و به جزء پورتی که از آن آمده به همه پورت های دیگر آن سوئیچ هم ارسال می گردد و چون سوئیچ دوم کابل ارتباطی دومی با سوئیچ اول دارد برادکست از طریق کابل دوم برای سوئیچ اول هم ارسال می کند و این چرخه یا loop لایه دو ادامه پیدا می کند تا Broadcast Storm ایجاد شود، و هرچه تعداد سوئیچ ها بیشتر باشد Broadcast Storm شدیدتری ایجاد خواهد شد، این اختلال ترافیک شبکه را بالا برده و کارایی آن را کاهش می دهد.
راه حل:
۱-فقط از یک کابل استفاده کنیم، که این کار redundancy شبکه را پایین می آورد.
۲- استفاده از پروتکل STP:
۵-Blocking:
یعنی بلاک کردن پورت Uplinke ای که احتمال دارد باعث loop و Broadcast Storm شود.
پروتکل STP با استفاده از استاندارد IEEE 802.1D و IEEE 802.1W پورت مورد نظر را برای چند لحظه مسدود میکند تا از Broadcast Storm در شبکه جلوگیری کند.
فرآیند انتخاب Root Bridge
وقتی سوئیچها شروع به کار میکنند، یکی از آنها بهعنوان Root Bridge انتخاب میشود. این انتخاب بر اساس کمترین شناسه Bridge ID انجام میشود. پس از انتخاب Root Bridge، هر سوئیچ دیگر بهعنوان یک Bridge عمل میکند و لینکهای خود را بر اساس فاصله به Root Bridge محاسبه میکند.
سوئیچی که به عنوان root در نظر گرفته می شود هر چند ثانیه یک بار بسته BDPU (مخفف Bridge Protocol Data Unit) را به پورت هایی که احتمال دارد باعث loop و Broadcast Storm شوند ارسال می کند تا برای چند لحظه مسدود شوند.
وضعیت سوئیچها و STP
نیازی به تنظیم کردن STP روی سوئیچ ها نیست زیرا سوئیچ بعد از روشن شدن با ارسال BDPU به صورت خودکار STP را شکل می دهد.
رنگ نارنژی: نشاندهنده این است که سوئیچ در حال تعیین وضعیت و شناسایی دیگر سوئیچهاست و پروتکل STP در حال شکلگیری است.
رنگ سبز: زمانی که ساختار STP کامل میشود و سوئیچها به حالت عملیاتی در میآیند.
این تغییر رنگ به مدیر شبکه این امکان را میدهد که از وضعیت عملکرد سوئیچها آگاه شود.
تست و بررسی ساختار STP
برای بررسی وضعیت STP، میتوانید از زیر استفاده کنید:
show spanning-tree brief
با اجرای این دستور، میتوانید وضعیت هر سوئیچ های خود را مشاهده کنید و مشخص کنید که آیا لینکها به درستی برقرار شدهاند یا خیر. در این حالت، میتوانید بررسی کنید که کدام پورتها در حالت Forwarding و کدام در حالت Blocking هستند.
مدیریت مشکلات و بهینهسازی Network
۱. جلوگیری از Loop
STP بهطور مؤثر از ایجاد حلقههای بیپایان در شبکه جلوگیری میکند. این حلقهها میتوانند منجر به افزایش ترافیک و اشغال منابع (CPU و RAM) شوند. با استفاده از STP، لینکهای اضافی بهطور خودکار مسدود میشوند.
۲.افزایش قابلیت اطمینان
با طراحی درختی، شبکه قادر به مدیریت لینکهای اضافی است. در صورت بروز مشکل در یک لینک، لینکهای دیگر میتوانند بهطور خودکار فعال شوند.
نتیجهگیری
پروتکل STP یکی از ابزارهای اساسی در شبکههای سوئیچینگ است که به بهبود عملکرد و جلوگیری از مشکلات ناشی از Loop و Broadcast Storm کمک میکند. با درک و استفاده صحیح از آن، میتوانید شبکههای پایدار و کارآمدتری را طراحی و پیادهسازی کنید.