اجرای پروتکلSTP در سوئیچ های سیسک
STP یا Spanning Tree Protocol یک پروتکل شبکه است که در سوئیچهای شبکه برای جلوگیری از تکرار چرخههای بسته و بهطور کلی ایجاد لوپ در شبکه استفاده میشود. در واقع اجرای پروتکلSTP مانع از ایجاد چنین لوپهایی در شبکه میشود تا بستههای شبکه به صورت نامتناهی در شبکه گردش نکنند.
سوئیچهای سیسکو نیز از این پروتکل استفاده میکنند و دارای نسخههای مختلفی از آن هستند، از جمله STP، Rapid STP و Multiple STP. همچنین، سیسکو از نسخههای بهینهتر و پیشرفتهتری از این پروتکل برای جلوگیری از لوپ در شبکه استفاده میکند، از جمله PVST+ (Per VLAN Spanning Tree Plus) که در آن برای هر ولن شبکه یک STP جداگانه ایجاد میشود.
در کل، اجرای پروتکلSTP به عنوان یک پروتکل مهم در شبکههای سوئیچینگ به کاهش احتمال خرابیهای شبکه و بهبود عملکرد شبکه کمک میکند.
پیاده سازی پروتکل STP در سوئیچ های سیسکو
STP یک پروتکل لایه دو است که در سوئیچها برای جلوگیری از تولید حلقه (Loop) در شبکه استفاده میشود. با استفاده از این پروتکل، یک مسیر اصلی برای انتقال دادهها بین دستگاهها انتخاب میشود و مسیرهای اضافی که حلقه ایجاد میکنند بسته شده و استفاده نمیشوند. این عمل باعث کاهش ترافیک در شبکه و پایداری بهتر آن میشود.
برای پیادهسازی STP در یک شبکه، ابتدا باید این پروتکل را فعال کنید. سپس باید مسیرهای اصلی و مسیرهای ذخیره شده (Backup) را برای هر یک از سوئیچها تعیین کنید. بهترین روش برای این کار، تعیین یک Root Bridge (پل اصلی) در شبکه است. Root Bridge یکی از سوئیچهاست که این مسئولیت را دارد که مسیرهای اصلی را در شبکه تعیین کند. برای تعیین Root Bridge میتوانید از دستورات زیر در حالت کانفیگ سوئیچ استفاده کنید:
spanning-tree mode rapid-pvst
spanning-tree vlan root primary
در این دستورات، rapid-pvst نوع STP است که استفاده میشود و <vlan-id> شماره VLAN مورد نظر است. با استفاده از root primary، سوئیچ فعلی به عنوان Root Bridge در نظر گرفته میشود.
سپس باید برای تمامی پورتهای سوئیچها پارامترهای STP تعیین شوند. بهترین پارامتر برای پورتها، portfast است که باعث میشود پورتها بلافاصله پس از بالا آمدنشان به حالت Forwarding بروند. برای تعیین این پارامتر، میتوانید از دستور زیر استفاده کنید:
interface
spanning-tree portfast
پیادهسازی STP در سوئیچهای سیسکو بسیار ساده است و تنها با فعال کردن این پروتکل در سوئیچ، تمامی تنظیمات مربوط به STP به صورت پیشفرض اعمال میشود. برای فعال کردن STP در سوئیچ سیسکو میتوانید از دستور زیر استفاده کنید:
Switch(config)# spanning-tree mode
در این دستور، پارامتر mode نوع STP مورد نظر برای این سوئیچ است که میتواند یکی از مقادیر pvst، rapid-pvst، mst و rapid-pvst+ باشد. این مقادیر به ترتیب نشان دهنده پیادهسازی PVST، Rapid PVST، MST و Rapid PVST+ هستند. پیادهسازی PVST و Rapid PVST برای شبکههای کوچک تا متوسط و پیادهسازی MST و Rapid PVST+ برای شبکههای بزرگ و پیچیده توصیه میشوند.
بعد از اجرای این دستور، تنظیمات پیشفرض STP به صورت خودکار برای سوئیچ اعمال میشود و این پروتکل برای جلوگیری از ایجاد حلقه در شبکه فعال خواهد بود.
به طور کلی، پیادهسازی STP در سوئیچهای سیسکو به سادگی قابل انجام است و با فعال کردن این پروتکل، تمامی تنظیمات مربوط به آن به صورت پیشفرض اعمال میشود. اگر شما برای شبکه خود نیاز به تنظیمات پیشرفتهتر STP دارید، میتوانید از دستورات مربوطه برای پیادهسازی MSTP یا RSTP در سوئیچهای سیسکو استفاده کنید.
مفاهیمی در اجرای پروتکلSTP باید بدانید
برای پیادهسازی STP، مفاهیم زیر باید در نظر گرفته شوند:
- Root Bridge: یکی از سوئیچها در شبکه به عنوان Root Bridge تعیین میشود. هدف از تعیین یک سوئیچ به عنوان Root Bridge، کاهش تعداد درختهای مسیری در شبکه و حفظ پایداری شبکه است.
- Port States: هر پورت در یک سوئیچ دارای یکی از سه وضعیت Blocking، Listening و Learning است. پورتهایی که در حال Blocking هستند، از ارسال و دریافت بستههای شبکه جلوگیری میکنند. پورتهایی که در حال Listening هستند، فقط برای دریافت بستههای STP و دستورات دیگر استفاده میشوند. پورتهایی که در حال Learning هستند، به دنبال شناختار شبکه میگردند و آدرسهای MAC مرتبط با هر پورت را برای پایگاه داده شبکه ثبت میکنند.
- Cost: هر پورت با یک هزینه (Cost) مشخص شده است که نشان دهنده میزان پهنای باند مورد استفاده در پورت است. با توجه به Cost پورتها، بهترین مسیر برای ارسال بستههای شبکه بهترینگزینه انتخاب میشود.
- BPDU: همانطور که گفته شد، STP به منظور جلوگیری از چرخههای مسیری در شبکه ایجاد شده است. برای این منظور، پیامهای Bridge Protocol Data Unit (BPDU)
- Fast Port یا PortFast : یک گزینه در STP است که برای شتاب دادن به فرایند شروع کار کامپیوترها به کار میرود. در شرایطی که یک دستگاه کامپیوتر به یک پورت سوئیچ متصل شود، به طور پیش فرض، سوئیچ برای برقراری ارتباط با کامپیوتر به دنبال روشن بودن سایر دستگاهها در شبکه است. اما با فعال کردن گزینه PortFast در پورت متصل شده به کامپیوتر، فرایند شروع کار کامپیوترها شتاب خواهد گرفت و نیازی به انتظار برقراری ارتباط با دیگر دستگاهها نخواهد بود.
تنظیمات پیکربندی Per-VLAN
Per-VLAN Configuration به معنای پیکربندی مجزا برای هر VLAN است. با این روش میتوانید تنظیمات مختلف را برای هر VLAN در شبکه خود داشته باشید. این امکان برای جدا سازی ترافیک و کنترل برروی VLAN های مختلف بسیار مفید است.
در شبکههای VLAN ، ارتباط بین دستگاهها در هر VLAN باید در یک محیط کنترل شده صورت گیرد. برای این کار، میتوان تنظیمات مختلفی برای هر VLAN ایجاد کرد تا در صورت نیاز به تنظیمات خاص در هر VLAN، بتوانیم از این قابلیت استفاده کنیم.
معمولاً در تنظیمات Per-VLAN ، VLAN ها از هم جدا شده و هر یک به عنوان یک شبکه جداگانه در نظر گرفته میشوند. برای تنظیم این تنظیمات میتوان از ابزارهای مختلفی مانند سوئیچهای لایه 3 سیسکو استفاده کرد. این سوئیچ ها اجازه می دهند تا VLAN ها در سطح شبکه تنظیم شوند و به دستگاه ها و یا VLAN های دیگر متصل شوند.
برخی از تنظیمات مهم Per-VLAN شامل تنظیمات VLAN ID ، تنظیمات پروتکل های Layer 2 و Layer 3 ، تنظیمات سرور DHCP و … است. در این تنظیمات باید دقت شود تا شبکه شما با عملکرد بهینه و بهترین عملکرد امنیتی پشتیبانی شود.
Bridge ID و پسوند System ID
Bridge ID یک شناسه یکتا برای هر سوییچ در پروتکل STP است که از دو بخش تشکیل شده است: پیشوند (Bridge Priority) و پسوند (System ID Extension). پیشوند یک مقدار 2 بایتی است که معمولاً به صورت پیش فرض برابر با 32768 در نظر گرفته میشود. پسوند همچنین یک مقدار 2 بایتی است که برای هر سوییچ به صورت یکتا تعیین میشود.
پسوند System ID Extension برای تمایز بین سوییچهای مختلف با پیشوند یکسان استفاده میشود. پیشوند Bridge Priority و پسوند System ID Extension با هم ترکیب شده و مقدار Bridge ID را تشکیل میدهند. به عنوان مثال، اگر پیشوند یک سوییچ یکی باشد و پسوند آن 100 باشد، Bridge ID آن برابر با 32768+100=32868 خواهد بود.
در حالت پیش فرض، پیشوند هر سوییچ 32768 است و پسوند System ID Extension برابر با شماره VLAN مربوط به پورت Root است. بنابراین، هر VLAN میتواند یک پروتکل STP جداگانه داشته باشد، به عنوان مثال در VLAN 1 ممکن است سوییچ A پورت Root باشد و در VLAN 2 سوییچ B پورت Root باشد. در پیکربندی Per-VLAN، هر VLAN میتواند یک تنظیمات STP جداگانه داشته باشد که میتواند باعث بهبود کارایی و کاهش زمان تبدیل پورتها شود. با این حال، تنظیمات STP برای VLANهایی که تعریف نشدهاند، به عنوان پیش فرض از تنظیمات STP برای VLAN1 استفاده خواهد شد.
هزینههای پورت Per-VLAN
هزینههای پورت Per-VLAN (Per-VLAN port costs) در STP برای هر VLAN تعریف میشود و مشخص میکند که چقدر هزینه برای اتصال یک پورت به یک VLAN خاص در نظر گرفته شود. در حالت پیشفرض، هزینه پورت به ارزش 1 برای هر VLAN است.
با توجه به اینکه هزینه پورت برای هر VLAN میتواند متفاوت باشد، در برخی موارد میتوان از این ویژگی برای تنظیمات مسیریابی بر اساس VLAN استفاده کرد. به عنوان مثال، میتوان با تنظیم هزینه پورت برای VLAN های مختلف، از این ویژگی برای جلوگیری از اتصال به یک VLAN خاص در تنظیمات مسیریابی استفاده کرد.
هزینه پورت برای هر VLAN میتواند در محدوده 1 تا 65,535 باشد. همچنین، باید توجه داشت که همه پورتهای سوئیچ باید با همان هزینه پورت در هر VLAN پیکربندی شوند.
در اجرای پروتکلSTP، هر پورت یک هزینه (Cost) را برای رسیدن به ریشه (Root) درخت پروتکل دارد. این هزینه بر اساس سرعت پورت و بازههای زمانبندی STP تعیین میشود. این هزینهها برای انتخاب مسیر کم هزینه و کم توپولوژی در شبکه استفاده میشوند.
پیکربندی هزینههای پورت STP
برای تعیین هزینه پورت در STP، از فرمول زیر استفاده میشود:
Cost = 200000000 / Bandwidth
که در آن Bandwidth، سرعت پورت را بر حسب بیت بر ثانیه مشخص میکند. برای مثال، پورت با سرعت 100 مگابیت بر ثانیه دارای هزینه 2000000 (200000000 / 100000000) است.
در پیکربندی STP، میتوان هزینههای پورت را دستی تعیین کرد و یا از هزینههای پیشفرض استفاده کرد. به علاوه، با استفاده از پروتکلهای پویا مانند Link Aggregation Control Protocol (LACP)، میتوان هزینههای پورت را خودکار تعیین کرد
پیکربندی اولویت برای تأثیرگذاری در انتخاب روت
اجرای پروتکلSTP ، انتخاب روت (Root Bridge) بسیار مهم است زیرا از طریق آن، تصمیم گیری برای تأیید توپولوژی درختی شبکه انجام می شود. در صورتی که برای تعیین روت چندین دستگاه در شبکه وجود داشته باشد، دستگاه با کمترین هزینه به عنوان روت انتخاب می شود.
اولویت برای تأثیرگذاری در انتخاب روت در پروتکل STP با استفاده از پارامتر Bridge Priority قابل تنظیم است. هر دستگاه در شبکه دارای Bridge Priority خود است که با توجه به آن، انتخاب روت در شبکه تعیین می شود. مقدار پیش فرض Bridge Priority برای سوئیچ های سیسکو 32768 است.
در صورتی که بخواهیم اولویت دستگاه خود را برای تعیین روت تغییر دهیم، می توانیم مقدار Bridge Priority را در پیکربندی سوئیچ تغییر دهیم. برای مثال، با تغییر مقدار Bridge Priority به یک عدد کمتر از مقدار موجود در دستگاه دیگر، می توانیم دستگاه خود را به عنوان روت تعیین کنیم.
در سوئیچ های سیسکو، می توان از دستورات زیر برای پیکربندی Bridge Priority استفاده کرد:
Switch(config)# spanning-tree vlan priority
با اجرای این دستور و تعیین مقدار Bridge Priority مورد نظر، می توان اولویت دستگاه خود را برای تعیین روت تغییر داد.
