با گسترش روزافزون سرویسهای ابری و نیاز به تحرکپذیری، پروتکل درخت پوشا (STP) نمیتواند پاسخگوی نیازهای مراکز داده امروزی باشد. کارشناسان شبکه برای حل این مشکل، استاندارد ارتباط متقابل شفاف مبتنی بر تعداد زیادی پیوند TRILL سرنام Transparent Interconnection of Lots of Links را ابداع کردند که همگرایی زیادی با فناوری ابداعی سیسکو، FabricPath، دارد و قادر است عملکرد شبکههای کامپیوتری را بهبود بخشد، اما Cisco FabricPath در این زمینه موفقتر ظاهر شده است.
Cisco FabricPath چیست؟
- Cisco FabricPath فناوری ابداعی سیسکو برای غلبه بر محدودیتهای پروتکل درخت پوشا است که قابلیتهای مهمی برای مقیاسپذیری، همگرایی و مشکلات مرتبط با ازدحام در شبکه را ارائه میکند.
- Cisco FabricPath مبتنی بر الگوی IS-IS است. به این معنا که در صفحه کنترل اجرا میشود و به همین دلیل به آن مسیریابی لایه 2 میگویند.
همانگونه که ممکن است حدس زده باشید، FabricPath در حقیقت راهکاری برای غلبه بر مشکلات پروتکل درخت پوشا است و بهعنوان جایگزینی برای آن در نظر گرفته میشود. نکته مهمی که باید در این زمینه به آن اشاره کنیم این است که پروتکل درخت پوشا در لایه 2 مانع شکلگیری حلقه میشود، در حالی که پروتکلهای مسیریابی سیسکو در لایه 3 به دنبال حذف حلقه در شبکه هستند. بهطور معمول، پروتکلهای مسیریابی به اندازه کافی هوشمند هستند که فرآیند بارگذاری ترافیک را بهدرستی انجام دهند، به این معنا که بار بیشازاندازهای به یک کانال ارتباطی وارد نکنند، اما پروتکل درخت پوشا در این زمینه هوشمندی لازم را ندارد و قادر نیست بهشکل فعال-فعال فرآیند انتقال بستههای اطلاعاتی را مدیریت کند. به همین دلیل، برای پیادهسازی الگوی فعال-فعال و ساخت توپولوژی بدون حلقه در لایههای 2 و 3، سیسکو فناوریFabricPath را ابداع کرد.
FabricPath فناوری انحصاری سیسکو است و عملکردی شبیه بهTRILL دارد که استاندارد IETF است. مزیت بزرگی که FabricPath دارد این است که بالاترین سطح از انعطافپذیری بدون بروز مشکل حلقه را ارائه میدهد. قابلیتی که پروتکل درخت پوشا قادر به ارائه آن نیست. همین مسئله باعث شد تا مراکز داده از فناوری Cisco FabricPath بهجای پروتکل درخت پوشا استفاده کنند.
نکته مهمی که باید به آن اشاره داشته باشیم این است که پروتکل سیستم حد واسط (Intermediate System) یا به اختصار IS-IS لایه 2 متفاوت از پروتکل IS-IS لایه 3 است. پروتکل سیستم حد واسط لایه 2 نیازمند پیکربندی نیست و تنها باید FabricPath را فعال کنید تا پروتکل فوق بهشکل خودکار در پسزمینه اجرا شود. پروتکل سیستم حد واسط لایه 2، چشمانداز مشخصی از توپولوژی یکپارچه موجود در شبکه که مبتنی برFabricPath است ارائه میدهد. همچنین، وظیفه متعادلسازی بار ترافیک با استفاده از ECMP را بر عهده دارد.
عملکرد FabricPath به چه صورتی است؟
همانگونه که اشاره کردیم، فناوریFabricPath سیسکو عملکرد بسیار خوبی در خصوص مسیریابی ترافیک در مقیاس بالا و شبکههای مراکز داده داشته و نقش مهمی در اشتراکگذاری و تقسیم درست بار ترافیکی دارد. این فناوری عملکردهای لایه 2 و لایه 3 را با هم ترکیب میکند تا دستگاههای تحت شبکه بهشکل هوشمدانهای اقدام به مسیریابی کنند، بدون آنکه نگرانی از بابت شکلگیری حلقه بهوجود آید. در نقطه مقابل، پروتکل درخت پوشا تنها بهشکل Plug & Play کار میکند و فاقد هوشمندی لایه 3 است. FabricPath مجهز به پروتکل مسیریابی لایه 3 و الگوریتمهای هوشمندی است که در پشت صحنه کار میکنند تا فناوری فوق بتواند معماری فعال-فعال را ارائه کرده و در عین حال مانع شکلگیری حلقه شود. الگوی فوق بهنام معماری IS-IS لایه 2 نیز شناخته میشود و مستقل از IS-IS لایه 3 است. نکته مهمی که باید در این زمینه به آن دقت کنید این است که FabricPath شبیه به پروتکل درخت پوشا، اترنت را بهعنوان پروتکل اساسی در خود جای داده است. همین مسئله باعث شده تا سادگی، انعطافپذیری و گسترشپذیری خوبی ارائه کند و چند مسیر با هزینه برابر ECMP سرنام Equal Cost Multi-pathing را ارائه دهد. لازم به توضیح است که فناوریFabricPath بهعنوان پروتکل مسیریابی (Routing)، هدایت (Forwarding)، کپسولهسازی (Encapsulation) و تونلسازی (Tunneling) مک به مک (MAC-in-MAC) نیز شناخته میشود، زیرا قادر است فریم
MAC-in-MAC محصورشده را برای سوئیچ FabricPath مقصد هدایت کند. هنگامی که قصد استفاده از فناوری FabricPath را دارید به این نکته دقت کنید که هر دستگاه در یک دامنه FabricPath یک شناسه سوئیچ دارد که بهشکل دستی یا پویا از طریق پروتکل تخصیص منابع پویا DRAP سرنام Dynamic Resource Allocation Protocol تخصیص داده میشود. یک شناسه 12 بیتی که اغلب در سرآیند Fabricpath استفاده میشود.
FabricPath چه مزایایی ارائه میدهد؟
در شرایطی که FabricPath بالاترین سطح از قابلیت اطمینان را ارائه میدهد، اما مزایای شاخص دیگری نیز دارد که از مهمترین آنها به موارد زیر باید اشاره کرد:
- فرآیند پیکربندی شبکه را به میزان قابل توجهی ساده میکند. در این حالت، کارشناسان شبکه باید تنها بهفکر پیکربندی موارد ضروری مثل متمایز کردن پورتهای سوئیچهای مرکزی که وظیفه متصل کردن سوئیچها به یکدیگر را دارند، پورتهای لبه که دستگاههای انتهایی به آنها متصل میشوند و غیره باشند. در اینجا نیازی نیست بهفکر تنظیم پارامتری برای دستیابی به پیکربندی بهینه باشید، زیرا آدرس سوئیچها بهطور خودکار اختصاص داده میشوند. در این حالت هزینههای عملیاتی استقرار شبکهها به میزان قابل توجهی کاهش پیدا میکند.
- یک پروتکل کنترل واحد برای ارسال پیامهای یونیکست، مالتیکست و هرس، شبکه محلی مجازی ارائه میدهد. این پروتکل نسبت به یک شبکه مبتنی بر پروتکل درخت پوشا به پیکربندی ترکیبی کمتری نیاز دارد. از اینرو، مدیریت آن آسانتر است.
- طرحهای شبکه ایستا در مورد الگوهای ترافیک و مکان سرورها و سرویسها، فرضیاتی را مطرح میکنند که اگر این فرضیات اشتباه باشند که در بیشتر موارد اینگونه است، کارشناسان شبکه را مجبور میکنند بهفکر بازطراحی دوباره شبکه باشند. مکانیزم تعویض بافت FabricPath بر مبنای راهکاری بدون اختلال در عملکرد نقاط پایانی به کارشناسان شبکه اجازه میدهد تغییرات لازم را اعمال کنند.
- سوئیچهایی که قادر به پشتیبانی از فناوری FabricPath نیستند، میتوانند بهشکل افزونگی به FabricPath بدون نیاز به استفاده از پروتکل درخت پوشا متصل شوند.
- قابلیتهای عیبیابی FabricPath یک سروگردن بالاتر از ابزارهایی است که مبتنی بر پروتکل آیپی کار میکنند. ابزارهایی مثل ping و traceroute که در لایه 2 کار میکنند، تاخیری در انجام محاسبات دارند، زیرا یک مسیر خاص را بین چند مسیر همهزینه برای رسیدن به یک مقصد آزمایش میکنند.
- درست است که FabricPath یک رابط کاربری آماده استفاده ارائه میدهد، با اینحال، پروتکل کنترل آن بر مبنای پروتکل مسیریابی راهگزینی میانی IS-IS پیادهسازی شده که همگرایی بالا و سریعی را ارائه میدهد. به همین دلیل، پروتکلی است که امکان استفاده از آن در محیطهای بزرگ مقیاسپذیر وجود دارد.
- پیشگیری و کاهش حلقه در صفحه داده که این اطمینان خاطر را میدهد که بستهها بهدرستی به مقصد میرسند. فریمهای FabricPath سیسکو یک فیلد زمانبندی (TTL) شبیه به آن چیزی دارند که پروتکل IP از آن استفاده میکند. علاوه بر این، بررسی ارسال مسیر معکوس (RPF) نیز روی آنها اعمال میشود. بهدلیل استفاده از ECMP در صفحه داده، شبکه میتواند از تمامی لینکهای در دسترس میان هر دو دستگاه بهشکل بهینه استفاده کند. سختافزاری که از فناوری FabricPath پشتیبانی میکند، این ظرفیت را دارد تا چند مسیر با هزینه برابر (ECMP) 16 طرفه را پیادهسازی کند که هنگامی که با 16 پورت 10 گیگابیتی ترکیب شود، ظرفیت سوئیچینگ چندترابیتی را میان سوئیچها ارائه میدهد. علاوه بر این، فریمها از طریق کوتاهترین مسیر در دسترس به مقصد ارسال میشوند. ویژگی مذکور زمان تبادل بستههای اطلاعات میان نقاط پایانی را در مقایسه با پروتکل درخت پوشا به میزان قابل توجهی کاهش میدهد.
- با توجه به اینکه FabricPath باید تنها در لبه بافت، اطلاعات موردنیاز درباره زیرمجموعهای از مک آدرسها را بهدست آورد، امکان گسترشپذیری گسترده دامنه سوئیچشده را بهوجود میآورد.
سرآیندهای FabricPath
سرآیند FabricPath شامل فیلدهای زیر است:
- OMAC: مک آدرس خارجی.
- OSA: آدرس منبع خارجی.
- ODA: آدرس مقصد خارجی.
- شناسه سوئیچ (Source ID): برای سوئیچهای مبدا و مقصد استفاده میشود.
- نوع اتر (Ether Type): عملکردی شبیه به اترنت کلاسیک دارد.
- TTL: عملکردی مشابه اترنت کلاسیک دارد.
- FTag (Forwarding Tag): برای انتقال ترافیک در دامنه FabricPath استفاده میشود.
ODA برای پیامهای یونیکست شناختهشده مورد استفاده قرار میگیرد، در شرایطی که FTag برای بستههای یونیکست، مولتیکست و برودکستهای ناشناخته مورد استفاده قرار میگیرد. همانگونه که از سرآیند فوق ممکن است حدس زده باشید، مک آدرس بیرونی سرآیند FabricPath و مک آدرس داخلی سرآیند از نوع اترنت کلاسیک هستند. همین مسئله باعث شده تا فرآیند مسیریابی MAC-in-MAC بهشکل دقیقتر انجام شود. معماری فوق درست در نقطه مقابل، پروتکل درخت پوشا قرار دارد که یک پروتکل صفحه کنترل است، اما فاقد سرآیند است. در نقطه مقابل،FabricPath در هر دو صفحه کنترل و داده کار میکند و درست همانند اترنت یک سرآیند دارد. شکل ۱ سرآیند FabricPath را نشان میدهد.
شکل 1
عملیات FabricPath
بهطور کلی،FabricPath برای شبکه چندمسیری لایه 2 مورد استفاده قرار میگیرد و بهشکل طبیعی مجهز به مکانیزمهایی برای پیشگیری از بروز حلقه است. در نتیجه وابستگی به پروتکل درخت پوشا را حذف میکند. برای یک شبکه مبتنی بر FabricPath سرآیند FabricPath به رابط ورودی متصل میشود و در رابط خروجی دامنه حذف میشود.
در مراکز داده مدرن، توپولوژی شبکه Core/Aggregation/Access بهشکل leaf-spine پیادهسازی میشود که در آن برخی از سوئیچهای برگ (Leaf)، لایه دسترسی را تشکیل میدهند که بهطور کامل به سوئیچهای spine متصل میشوند. FabricPath بیشتر روی سوئیچهای تجمیعشده و مرکزی پیادهسازی میشود. به بیان دقیقتر، کارشناسان شبکه روی سوئیچهای دسترسی (Access) آنرا پیادهسازی نمیکنند. همین مسئله باعث میشود تا سوئیچهای اترنت کلاسیک را در لایه دسترسی داشته باشیم تا بدون مشکل با دامنه FabricPath در لایههای توزیع و تجمیع کار کنند. لازم به توضیح است که سوئیچ FabricPath میتواند یک سوئیچ لبه یا یک سوئیچ مرکزی باشد. یک سوئیچ میتواند یک پورت بهعنوان پورت لبه و پورت دیگری بهعنوان پورت مرکزی داشته باشد که به هر دو شبکه اترنت کلاسیک و FabricPath متصل شود. در این حالت، سوئیچ فوق را سوئیچ لبه (Edge Switch) مینامیم. سوئیچی که تمام پورتهایش بهعنوان پورتهای اصلی FabricPath هستند، بهعنوان سوئیچ مرکزی (Core) نامیده میشود. برای اصطلاحات leaf و spine، سوئیچ leaf در واقع سوئیچ لبه است، در حالی که سوئیچ spine، سوئیچ مرکزی است. این معماری خوشساخت باعث میشود تا بتوانیم انواع مختلفی از ترافیک را در یک شبکه FabricPath بهشرح زیر داشته باشیم:
- یونیکست شناختهشده (Known Unicast)
- یونیکست ناشناخته (Unknown Unicast)
- مالتیکست (Multicast)
- برودکست (Broadcast)
برای ترافیک یونیکست شناختهشده، فیلد ODA مورد استفاده قرار میگیرد، اما برای یونیکست ناشناخته، مالتیکست و برودکست، فرآیند انتقال بستههای اطلاعاتی و ترافیک در FabricPath بر مبنای فیلد FTag انجام میشود که وظیفه هدایت و مدیریت ترافیک چندمقصدی را بر عهده دارد. این کار توسط دو درخت FTag انجام میشود که توسط IS-IS در یک شبکه FabricPath ساخته شدهاند و درختان چندمقصدی نامیده میشوند. دو درخت بدون حلقه چندمقصدی ساختهشده از طریق پروتکل سیستم حد واسط، FTag1 و FTag2 نام دارند. در این حالت، یک درخت برای ترافیک یونیکست، مالتیکست و برودکست ناشناخته استفاده میشود، در حالی که درخت دوم فقط برای ترافیک مالتیکست است. ترافیک مالتیکست میتواند ترافیک کنترل صفحه چندپخشی (Multicast Plane Control) یا صفحه داده (Data Plane) باشد و به همین دلیل است که هر دو درخت FTag آنرا دریافت میکنند. در این حالت FTag 1 برای ترافیک کنترل صفحه چندپخشی و FTag 2 برای ترافیک صفحه داده چندپخشی مورد استفاده قرار میگیرد.
در این حالت، هر درخت گره ریشه خود را دارد که بر مبنای اولویت ریشه انتخاب میشود، جایی که گرهای که بالاترین اولویت را دارد بهعنوان سوئیچ ریشه درخت FTag انتخاب میشود. درختهای FTag توپولوژیهای منطقی دارند که بهشکل خودکار توسط IS-IS ساخته میشوند. شکل ۲ این موضوع را نشان میدهد.
شکل 2
بهطور خلاصه، باید بگوییم که ترافیک یونیکست شناختهشده بر مبنای شناسه سوئیچ مقصد با استفاده از ECMP ارسال میشود و هیچ درخت FTag در آن استفاده نمیشود. با این حال، در مورد ارسال پیامهای یونیکست، مالتیکست و برودکست، این فرآیند پس از ارزیابی درختان FTag انجام میشود. لازم به توضیح است که مسیر بافت در سوئیچهای نکسوس سیسکو فقط در ماژولهای سری F پشتیبانی میشود و در ماژولهای سری M-Series (L3) پشتیبانی نمیشود.
شبکههای محلی مجازی FabricPath
سوئیچها بهشکل پیشفرض دارای شبکههای محلی مجازی کلاسیک اترنت هستند. در مورد FabricPath باید شبکههای محلی مجازیFabricPath را پیکربندی کنید و پورت را به FabricPath تغییر حالت دهید. نکتهای که باید در این زمینه به آن دقت کنید این است که تنها شبکههای محلی مجازی FabricPath میتوانند از پورتهای FabricPath استفاده کنند. حالت FabricPath در شبکههای محلی مجازی فقط بهشکل محلی برای VDC سرنام Virtual Device Context حائز اهمیت است. هر VDC دارای شناسه سوئیچ در FabricPath است. FabricPath مبتنی بر شبکه محلی مجازی است و فقط شبکههای محلی مجازی که برای حالت FabricPath فعال هستند قادر به استفاده از زیرساخت FabricPath هستند. از اینرو، میتوانید شبکههای محلی مجازی خاصی را بهعنوان FabricPath VLAN تعریف کنید و بقیه را در قالب شبکههای محلی مجازی اترنت کلاسیک تعریف کنید.
Conversational MAC Learning
سوئیچینگ ترافیک در FabricPath بر مبنای مولفهConversational MAC Learning انجام میشود. قبل از اینکه عملکرد Conversational MAC Learning را بررسی کنیم، نکته مهمی که باید به آن اشاره کنیم، قابلیت MAC Learning سنتی، یادگیری مبتنی بر منبع است. سوئیچها جداول CAM خود را با یادگیری مک آدرسهای منبع میسازند تا ترافیک را تغییر دهند. در نقطه مقابل، Conversational MAC Learning به این صورت عمل میکند که تنها مک آدرسهای هاستها را یاد میگیرد. مزیت روش فوق این است که یک سوئیچ FabricPath باید مک آدرسهای کمتری را یاد بگیرد و اندازه جدول CAM به میزان قابل توجهی کاهش پیدا میکند، از اینرو به حافظه کمتری نیاز دارد و فرآیند گسترشپذیری بهشکل سادهتری انجام میشود.
اترنت کلاسیک بر مبنای روش پیشفرض یادگیری سنتی عمل میکند، اما این امکان وجود دارد تا Conversational Learning را برای هر شبکه محلی مجازی تنظیم کرد. معماری Conversational Learning بر مبنای «دستدهی سه طرفه»(Three-Way Handshake) است، زیرا فرآیند یادگیری مک آدرسها پس از کامل شدن ارتباط سهطرفه انجام میشود. علاوه براین، باید بدانید که سوئیچهای مرکزی در یک دامنه FabricPath بر مبنای شناسههای سوئیچ، عملیات ارسال بستهها را انجام میدهند. به بیان دقیقتر، نیازی به یادگیری مک آدرسها ندارند. از اینرو، هسته FabricPath فاقد مک آدرس است، درست مثل هستههای فاقد BGP در MPLS.
کلام آخر
FabricPath یکی از فناوریهای کارآمد سیسکو است که سهولت در استقرار، قابلیت اطمینان و گسترشپذیری بالایی برای مسیریابی لایه 3 ارائه میدهد. با استفاده از فناوری مذکور میتوانید شبکههای چندمسیره لایه 2 گسترشپذیر را بدون وابستگی به پروتکل درخت پوشا بسازید.FabricPath بهویژه برای شبکههای مبتنی بر مجازیسازی، ابرهای خصوصی و محیطهای محاسباتی با عملکرد بالا مناسب است.