پروتکل درخت پوشا چیست؟

پروتکل درخت پوشا، که گاهی اوقات فقط به عنوان درخت پوشا نامیده می شود، Waze یا MapQuest شبکه های اترنت مدرن است که ترافیک را در امتداد کارآمدترین مسیر بر اساس شرایط زمان واقعی هدایت می کند.

بر اساس الگوریتمی ایجاد شده توسط رادیا پرلمن، دانشمند کامپیوتر آمریکایی، زمانی که او برای شرکت تجهیزات دیجیتال (DEC) در سال 1985 کار می کرد، هدف اصلی از درخت پوشا جلوگیری از پیوندهای اضافی و حلقه زدن مسیرهای ارتباطی در تنظیمات شبکه پیچیده است. به عنوان یک تابع ثانویه، Spanning Tree می‌تواند بسته‌ها را در اطراف نقاط مشکل هدایت کند تا اطمینان حاصل شود که ارتباطات می‌توانند از طریق شبکه‌هایی که ممکن است با اختلال مواجه شوند، عبور کنند.

توپولوژی درخت پوشا در مقابل توپولوژی حلقه

هنگامی که سازمان ها در دهه 1980 شروع به شبکه سازی رایانه های خود کردند، یکی از محبوب ترین پیکربندی ها شبکه حلقه بود. برای مثال، IBM فناوری اختصاصی Token Ring خود را در سال 1985 معرفی کرد.

در توپولوژی شبکه حلقه، هر گره به دو گره دیگر متصل می شود، یکی که جلوتر از آن روی حلقه قرار می گیرد و دیگری در پشت آن قرار می گیرد. سیگنال‌ها فقط در یک جهت در اطراف حلقه حرکت می‌کنند و هر گره در طول مسیر، هر بسته‌ای را که در اطراف حلقه حلقه می‌شود، تحویل می‌دهد.

در حالی که شبکه‌های حلقه ساده زمانی که فقط تعداد کمی از رایانه‌ها وجود دارد به خوبی کار می‌کنند، حلقه‌ها زمانی که صدها یا هزاران دستگاه به یک شبکه اضافه می‌شوند ناکارآمد می‌شوند. یک کامپیوتر ممکن است نیاز به ارسال بسته ها از طریق صدها گره داشته باشد تا اطلاعات را با یک سیستم دیگر در اتاق مجاور به اشتراک بگذارد. پهنای باند و توان عملیاتی نیز زمانی که ترافیک می تواند فقط در یک جهت جریان داشته باشد، مشکل ساز می شود، اگر یک گره در مسیر شکسته یا بیش از حد شلوغ شود، بدون طرح پشتیبان.

در دهه 90، با سریع‌تر شدن اترنت (100 مگابیت بر ثانیه، اترنت سریع در سال 1995 معرفی شد) و هزینه شبکه اترنت (پل‌ها، سوئیچ‌ها، کابل‌کشی) به طور قابل توجهی ارزان‌تر از Token Ring شد، Spanning Tree برنده جنگ توپولوژی LAN و Token شد. حلقه به سرعت محو شد.

نحوه عملکرد درخت پوشا

[اکنون برای آخرین رویداد FutureIT سال ثبت نام کنید! کارگاه توسعه حرفه ای انحصاری موجود است. FutureIT نیویورک، 8 نوامبر]

Spanning Tree یک پروتکل ارسال برای بسته های داده است. این یک بخش پلیس راهنمایی و رانندگی و یک بخش مهندس عمران برای بزرگراه های شبکه است که داده ها از آن عبور می کنند. در لایه 2 (لایه پیوند داده) قرار می گیرد، بنابراین صرفاً به انتقال بسته ها به مقصد مناسب آنها می پردازد، نه اینکه چه نوع بسته هایی ارسال می شوند یا داده هایی که در آنها وجود دارد.

درخت پوشا آنقدر فراگیر شده است که استفاده از آن در تعریف شده استاستاندارد شبکه IEEE 802.1D. همانطور که در استاندارد تعریف شده است، تنها یک مسیر فعال می تواند بین هر دو نقطه پایانی یا ایستگاه وجود داشته باشد تا آنها به درستی عمل کنند.

Spanning Tree به گونه ای طراحی شده است که این احتمال را که داده های ارسالی بین بخش های شبکه در یک حلقه گیر می کنند را از بین ببرد. به طور کلی، حلقه ها الگوریتم حمل و نقل نصب شده در دستگاه های شبکه را اشتباه می گیرند و باعث می شوند دستگاه دیگر نمی داند بسته ها را به کجا ارسال کند. این می تواند منجر به تکراری شدن فریم ها یا ارسال بسته های تکراری به مقصدهای مختلف شود. پیام ها می توانند تکرار شوند. ارتباطات می تواند به فرستنده بازگردد. حتی اگر حلقه‌های زیادی شروع به رخ دادن شوند، می‌تواند شبکه را خراب کند و پهنای باند را بدون هیچ سود قابل‌توجهی کاهش دهد و در عین حال مانع از عبور دیگر ترافیک غیرحلقه‌ای شود.

پروتکل درخت پوشااز تشکیل حلقه ها جلوگیری می کندبا بستن همه مسیرهای ممکن به جز یک بسته برای هر بسته داده. سوئیچ‌ها در شبکه از Spanning Tree برای تعریف مسیرهای ریشه و پل‌هایی که داده‌ها می‌توانند در آن جابجا شوند، استفاده می‌کنند، و از نظر عملکردی مسیرهای تکراری را می‌بندند و آنها را غیرفعال و غیرقابل استفاده می‌کنند تا زمانی که یک مسیر اصلی در دسترس است.

نتیجه این است که ارتباطات شبکه بدون در نظر گرفتن اینکه یک شبکه چقدر پیچیده یا گسترده می شود یکپارچه جریان دارد. به نوعی، Spanning Tree مسیرهای واحدی را از طریق شبکه برای انتقال داده ها با استفاده از نرم افزار ایجاد می کند، تقریباً به همان روشی که مهندسان شبکه با استفاده از سخت افزار در شبکه های حلقه قدیمی انجام دادند.

مزایای اضافی پوشا درخت

دلیل اصلی استفاده از Spanning Tree حذف امکان مسیریابی حلقه ها در یک شبکه است. اما مزایای دیگری نیز وجود دارد.

از آنجایی که Spanning Tree دائماً به دنبال و تعیین مسیرهای شبکه برای عبور بسته‌های داده است، می‌تواند تشخیص دهد که آیا گره‌ای که در امتداد یکی از آن مسیرهای اصلی قرار دارد غیرفعال شده است یا خیر. این می تواند به دلایل مختلفی از خرابی سخت افزار گرفته تا پیکربندی شبکه جدید رخ دهد. حتی می تواند یک موقعیت موقت بر اساس پهنای باند یا عوامل دیگر باشد.

وقتی Spanning Tree تشخیص داد که یک مسیر اصلی دیگر فعال نیست، می تواند به سرعت مسیر دیگری را که قبلا بسته شده بود باز کند. سپس می‌تواند داده‌ها را در اطراف نقطه مشکل ارسال کند، در نهایت مسیر انحرافی را به‌عنوان مسیر اصلی جدید تعیین کند، یا در صورتی که دوباره در دسترس باشد، بسته‌ها را به پل اصلی بازگرداند.

در حالی که درخت پوشای اولیه نسبتا سریع در ایجاد آن اتصالات جدید در صورت نیاز عمل کرد، در سال 2001 IEEE پروتکل درخت پوشای سریع (RSTP) را معرفی کرد. RSTP همچنین به عنوان نسخه 802.1w پروتکل نامیده می شود، به گونه ای طراحی شده است که در پاسخ به تغییرات شبکه، قطعی موقت یا خرابی کامل اجزا، بازیابی سریعتر را ارائه دهد.

و در حالی که RSTP رفتارهای همگرایی مسیر جدید و نقش های پورت پل را برای تسریع فرآیند معرفی کرد، همچنین به گونه ای طراحی شده بود که کاملاً با درخت پوشا اصلی سازگار باشد. بنابراین این امکان وجود دارد که دستگاه های دارای هر دو نسخه پروتکل با هم در یک شبکه کار کنند.

کاستی های درخت پوشا

در حالی که Spanning Tree طی سال‌های متمادی پس از معرفی آن در همه جا حاضر شده است، کسانی هستند که استدلال می‌کنند کهزمان فرا رسیده است. بزرگترین خطای Spanning Tree این است که حلقه‌های بالقوه درون شبکه را با بستن مسیرهای بالقوه ای که داده‌ها می‌توانند در آن جابجا شوند، می‌بندد. در هر شبکه ای که از Spanning Tree استفاده می کند، حدود 40 درصد از مسیرهای شبکه بالقوه به روی داده ها بسته است.

در محیط‌های شبکه‌ای بسیار پیچیده، مانند محیط‌هایی که در مراکز داده یافت می‌شوند، توانایی افزایش سریع مقیاس برای برآورده کردن تقاضا بسیار مهم است. بدون محدودیت های اعمال شده توسط Spanning Tree، مراکز داده می توانند پهنای باند بسیار بیشتری را بدون نیاز به سخت افزار شبکه اضافی باز کنند. این یک وضعیت طعنه آمیز است، زیرا محیط های شبکه پیچیده دلیل ایجاد Spanning Tree هستند. و اکنون حفاظت ارائه شده توسط پروتکل در برابر حلقه زدن، به نوعی آن محیط ها را از پتانسیل کامل خود باز می دارد.

یک نسخه اصلاح شده از پروتکل به نام درخت پوشای چندگانه (MSTP) برای به کارگیری شبکه های محلی مجازی و امکان باز بودن مسیرهای شبکه بیشتر به طور همزمان ایجاد شد، در حالی که هنوز از تشکیل حلقه ها جلوگیری می کند. اما حتی با MSTP، تعداد کمی از مسیرهای داده بالقوه در هر شبکه ای که از پروتکل استفاده می کند بسته می مانند.

طی سال‌ها تلاش‌های مستقل و غیراستاندارد زیادی برای بهبود محدودیت‌های پهنای باند Spanning Tree صورت گرفته است. در حالی که طراحان برخی از آنها ادعای موفقیت در تلاش‌های خود کرده‌اند، اکثر آنها کاملاً با پروتکل اصلی سازگار نیستند، به این معنی که سازمان‌ها باید یا تغییرات غیر استاندارد را در همه دستگاه‌های خود به کار ببرند یا راهی بیابند تا به آنها اجازه وجود داشته باشند. سوئیچ هایی که درخت پوشا استاندارد را اجرا می کنند. در بیشتر موارد، هزینه‌های نگهداری و پشتیبانی از طعم‌های متعدد درخت پوشاننده ارزش تلاش را ندارد.

آیا پوشاندن درخت در آینده ادامه خواهد داشت؟

جدای از محدودیت‌های پهنای باند به دلیل بسته شدن مسیرهای شبکه درخت پوشا، فکر یا تلاش زیادی برای جایگزینی پروتکل انجام نشده است. اگرچه IEEE گهگاه به‌روزرسانی‌هایی را منتشر می‌کند تا آن را کارآمدتر کند، اما آنها همیشه با نسخه‌های موجود پروتکل سازگار هستند.

به یک معنا، Spanning Tree از قانون "اگر شکسته نشد، آن را تعمیر نکنید" پیروی می کند. Spanning Tree به طور مستقل در پس‌زمینه اکثر شبکه‌ها اجرا می‌شود تا ترافیک جریان داشته باشد، از شکل‌گیری حلقه‌های ناشی از تصادف جلوگیری کند، و ترافیک را در اطراف نقاط مشکل هدایت کند، به طوری که کاربران نهایی هرگز نمی‌دانند که آیا شبکه آنها به‌عنوان بخشی از کارهای روزمره خود دچار اختلالات موقتی می‌شود یا خیر. عملیات روزانه در همین حال، در بک‌اند، مدیران می‌توانند دستگاه‌های جدیدی را به شبکه‌های خود اضافه کنند، بدون اینکه زیاد فکر کنند که آیا می‌توانند با بقیه شبکه یا دنیای خارج ارتباط برقرار کنند یا خیر.

به دلیل همه این موارد، این احتمال وجود دارد که Spanning Tree برای سال‌های آینده مورد استفاده قرار گیرد. ممکن است هر چند وقت یکبار به‌روزرسانی‌های جزئی وجود داشته باشد، اما پروتکل اصلی درخت پوشا و همه ویژگی‌های حیاتی که انجام می‌دهد احتمالاً در اینجا باقی می‌مانند.


زمان ارسال: نوامبر-07-2023