بر اساس الگوریتمی که توسط رادیا پرلمن، دانشمند کامپیوتر آمریکایی، در حالی که او برای شرکت تجهیزات دیجیتال (DEC) در سال 1985 کار میکرد، ایجاد کرد، هدف اصلی Spanning Tree جلوگیری از پیوندهای اضافی و حلقهای مسیرهای ارتباطی در پیکربندیهای پیچیده شبکه است. به عنوان یک تابع ثانویه، Spanning Tree میتواند بستهها را در اطراف نقاط مشکل مسیریابی کند تا اطمینان حاصل شود که ارتباطات میتوانند از طریق شبکههایی که ممکن است با اختلال مواجه شوند عبور کنند.
توپولوژی درخت پوشا در مقابل توپولوژی حلقه
هنگامی که سازمان ها در دهه 1980 شروع به شبکه سازی رایانه های خود کردند، یکی از محبوب ترین پیکربندی ها شبکه حلقه بود. به عنوان مثال، IBM فناوری اختصاصی Token Ring خود را در سال 1985 معرفی کرد.
در توپولوژی شبکه حلقه، هر گره به دو گره دیگر متصل می شود، یکی که جلوتر از آن روی حلقه قرار می گیرد و دیگری در پشت آن قرار می گیرد. سیگنالها فقط در یک جهت در اطراف حلقه حرکت میکنند و هر گره در طول مسیر هر بستهای را که در اطراف حلقه حلقه میشود، تحویل میدهد.
در حالی که شبکه های حلقه ساده زمانی که فقط تعداد کمی از رایانه ها وجود دارد به خوبی کار می کنند، حلقه ها زمانی که صدها یا هزاران دستگاه به یک شبکه اضافه می شوند ناکارآمد می شوند. یک کامپیوتر ممکن است نیاز به ارسال بسته ها از طریق صدها گره داشته باشد تا اطلاعات را با یک سیستم دیگر در اتاق مجاور به اشتراک بگذارد. پهنای باند و توان عملیاتی نیز زمانی مشکل ساز می شوند که ترافیک فقط در یک جهت جریان داشته باشد، اگر یک گره در مسیر شکسته یا بیش از حد شلوغ شود، بدون طرح پشتیبان.
در دهه 90، با سریعتر شدن اترنت (100 مگابیت بر ثانیه، اترنت سریع در سال 1995 معرفی شد) و هزینه شبکه اترنت (پلها، سوئیچها، کابلکشی) به طور قابلتوجهی ارزانتر از Token Ring شد، Spanning Tree برنده جنگ توپولوژی LAN و Token شد. حلقه به سرعت محو شد.
درخت پوشا چگونه کار می کند
Spanning Tree یک پروتکل ارسال برای بسته های داده است. این یک بخش پلیس راهنمایی و رانندگی و یک بخش مهندس عمران برای بزرگراه های شبکه است که داده ها از آن عبور می کنند. در لایه 2 (لایه پیوند داده) قرار دارد، بنابراین صرفاً به انتقال بسته ها به مقصد مناسب آنها می پردازد، نه نوع بسته هایی که ارسال می شوند یا داده هایی که در آنها وجود دارد.
Spanning Tree آنقدر فراگیر شده است که استفاده از آن در استاندارد شبکه IEEE 802.1D تعریف شده است. همانطور که در استاندارد تعریف شده است، فقط یک مسیر فعال می تواند بین هر دو نقطه پایانی یا ایستگاه وجود داشته باشد تا آنها به درستی کار کنند.
Spanning Tree به گونه ای طراحی شده است که این احتمال را که داده های ارسالی بین بخش های شبکه در یک حلقه گیر می کنند را از بین ببرد. به طور کلی، حلقهها الگوریتم حمل و نقل نصب شده در دستگاههای شبکه را اشتباه میگیرند و باعث میشوند دستگاه دیگر نمیداند بستهها را کجا ارسال کند. این می تواند منجر به تکراری شدن فریم ها یا ارسال بسته های تکراری به مقصدهای مختلف شود. پیام ها می توانند تکرار شوند. ارتباطات می تواند به فرستنده بازگردد. حتی میتواند شبکه را خراب کند اگر حلقههای بیش از حد شروع شود، پهنای باند را بدون هیچ سود قابلتوجهی مصرف کند و در عین حال مانع از عبور دیگر ترافیک غیرحلقهای شود.
پروتکل 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 صورت گرفته است. در حالی که طراحان برخی از آنها ادعای موفقیت در تلاش های خود کرده اند، اکثر آنها کاملاً با پروتکل اصلی سازگار نیستند.
به این معنی که سازمانها باید یا تغییرات غیراستاندارد را در همه دستگاههای خود به کار ببرند یا راهی بیابند تا با سوئیچهایی که استاندارد Spanning Tree را اجرا میکنند، به آنها اجازه وجود داشته باشند. در بیشتر موارد، هزینههای نگهداری و پشتیبانی از طعمهای چندگانه Spanning Tree ارزش تلاش را ندارد.
آیا پوشاندن درخت در آینده ادامه خواهد داشت؟
جدا از محدودیتهای پهنای باند به دلیل بسته شدن مسیرهای شبکه Spanning Tree، فکر یا تلاش زیادی برای جایگزینی پروتکل انجام نشده است. اگرچه IEEE گهگاه بهروزرسانیهایی را برای تلاش و کارآمدتر کردن آن منتشر میکند، اما آنها همیشه با نسخههای موجود پروتکل سازگار هستند.
به یک معنا، Spanning Tree از قانون “اگر شکسته نیست، آن را تعمیر نکن” پیروی می کند. Spanning Tree بهطور مستقل در پسزمینه اکثر شبکهها اجرا میشود تا ترافیک جریان داشته باشد، از شکلگیری حلقههای ناشی از تصادف جلوگیری کند، و ترافیک را در اطراف نقاط مشکل هدایت کند، به طوری که کاربران نهایی هرگز نمیدانند که آیا شبکهشان بهعنوان بخشی از فعالیتهای روزمره خود دچار اختلالات موقتی میشود یا خیر. عملیات روزانه در همین حال، در بکاند، مدیران میتوانند دستگاههای جدیدی را به شبکههای خود اضافه کنند، بدون اینکه زیاد فکر کنند که آیا میتوانند با بقیه شبکه یا دنیای خارج ارتباط برقرار کنند یا خیر.
به دلیل همه این موارد، این احتمال وجود دارد که Spanning Tree برای سالهای آینده مورد استفاده قرار گیرد. ممکن است هر از چند گاهی بهروزرسانیهای جزئی وجود داشته باشد، اما پروتکل اصلی درخت پوشا و همه ویژگیهای حیاتی که انجام میدهد احتمالاً برای ماندن در اینجا هستند.
منبع: پایگاه اینترنتی آرون
دیدگاه خود را بنویسید