شبکه های نرم افزار محور (Software Defined Networks) SDN)

از OCCC Wiki
پرش به ناوبری پرش به جستجو

مقدمه

سیر تکاملی دستگاه ها و تجهیزات جانبی سیار ،مجازیسازی سرورها و ظهور سرویسهای کلاود، منجر به بازبینی دوباره معماری رایج شبکهها شده است .معماری بسیاری از شبکههای سنتی، سلسله مراتبی است که با استفاده از گره هایی از سوئیچ های اترنت در یک ساختار درختی شکل می گیرد. این معماری زمانی که بحث ارتباطات کلاینت/سرور مطرح شود، ملموس تر خواهد بود اما چنین معماری ایستایی، برای ارتباطات پویا و نیازهای شرکتها در زمینه مراکز داده و رسانههای سرویس دهنده، کافی نیست [1] . مواجهه با نیاز های کنونی بازار با استفاده از معماری های متداول شبکه تقریباً غیرممکن است .شرکتهای فناوری اطلاعات، برای رویارویای با مسائلی نظیر رکود یا کاهش بودجه از ابزارهای مدیریتی در سطح ماشین و پردازش های دستی بهره می گیرند .شرکتهای ارائه دهنده سرویسهای مخابراتی نیز با چالشهای تشابهی روبرو هستاند، چرا که تقاضا برای دسترسی به پهنای باند شبکههای پویا رو به افزایش چشمگیری است؛ در عین حال، با افزایش هزینه های مربوط به تجهیزات مرکزی و کاهش درآمد، سود این شرکتها به خطر می افتد. معماری شبکههای موجود، به گونهای طراحی نشده اند که نیازهای کنونی شرکتها، سرویس دهنده های مخابراتی و کاربران را بر طرف کنند، به عبارت دیگر، طراحان شبکه با محدودیت های مانند: پیچیدگی ،سیاست های متناقض، فقدان مقیاسپذیری و وابستگی به فروشنده[1] وجود نداشتن هماهنگی بین نیازهای بازار و قابلیت های شبکه، صنعت ITرا بهسوی نقطه انحرافی می کشاند. برای جلوگیری از چنین رخدادی، صنعت معماری تعریف شده با نرمافزار یا SDN را مطرح کرد و استانداردهای مرتبط با آن را توسعه داد.

هدف مقاله فهمیدن چالش ها و فرصت های تحقیقاتی و پژوهشی SDN در آینده اینترنت است. این مقاله به دو قسمت تقسیم شده است.

1.موارد استفاده فعلی از SDN و استاندارد سازی های فعلی در این زمینه موارد و بخشهایی که چالش هایی و مسائیل حل نشده ای در SDN وجود دارد

SDN1.png

موارد استفاده از SDN

1- موارد استفاده در service provider ها

صنایع اخیرا به سمتی رفته اند که در زیر ساختهای شبکه شان هم شبکه های فعلی و هم مدل های SDN را پشتیبانی نمایند.

این تبدیل وضعیت سبب کاهش هزینه ها ی انتقال و افزایش سرعت انتقال میگردد
1.1 موارد استفاده در دیتاسنتر ها Data Centers

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

ارزش SDN در ارتباط درون دیتاسنترها به طور اخص به توانایی در مجازی شبکه و انتزاعی سازی و خودکار سازی خلاصه میگردد. در شکل 2 یک openflow کنترلر مرکزی مشاهده میگردد که کنترل جریان پویای ترافیک بین برنامه های کاربردی که در ماشین های مجازی یا کامپیوتر های فیزیکی در دیتاسنتر قرار دارند را به عهده دارد.

SDN2.png

این برنامه های کاربردی از restful API ها استفاده میکند تا نیازمندیهای خود را به لایه های زیرین ارائه دهد. Restful API ها به آنها قابلیت های زیادی در عملکرد شبکه از جمله کشف توپولوژی ، Qos و loadbalancing را میدهد. از ابزارهای ثالث دیگری در SDN جهت بازیابی لینک های آسیب دیده نیز میتوان استفاده کرد. این openflow که یک نگاه واحد به شبکه دارد و سبب آسان سازی کنترل کامل شبکه میگردد.

1.2 بخش بندی شبکه slicing


Slicing مکانیزمی جهت تقسیم بندی یک زیر ساخت شبکه به چندین بخش کاملا مجزا کنار هم که با هم هزیستی دارند. هر بخش packet forwarding خودش را کنترل میکند بدون تداخل با دیگر بخشها ، حتی اگر بر روی یک زیر ساخت مشترک وجود داشته باشند که SDN به راحتی میتواند با کمک کنترلر های خود این کار را به انجام برساند.

تصویر شماره 3 یک زیر ساخت چند بخشی را نشان میدهد که از طریق سوییچ های openflow متصل هستند برروی یک شبکه مجازی برای ایجاد یک ابر خصوصی یا عمومی .

SDN3.png

همانطور که مشخص است SDN کنترلر (openflow ) میتواند با مدیریت منابع همزمان از هر slice پشتیبانی کند و اجازه دهد همه بخشها بدون مشکل به ارتباطات خود بپردازند.

1.3 کاربرد در تنظیمات بی سیم


کاربرد SDN در شبکه های بی سیم نیز از قابلیت های slicing و ایجاد سرویس های جدید روی منابع مجازی میتوان نام برد. پروتکل های openvirtex و flowvisor را میتوان در openflow نام برد.که میتوان با آنها شبکه بی سیم را به slice های وابسته به پارامتر های متعدد از قبیل src/dst MAC,src/dst IP,src/dst TCP port نام برد. شکل 4 شامل این جزئییات و دیاگرام نحوه استفاده از SDN در شبکه وایرلس نام برد.

SDN4.png

1.4 کاربرد در مهندسی ترافیک


مهندسی ترافیک که روشی نرم افزاری جهت بهبود کارایی شبکه هاست. شامل لایه 2 IP و لایه 3 vpn هاست و ارسال ترافیک را بر روی شبکه های غیر IP را مثل ATM مقدور میسازد.

در شبکه های سنتی از پروتکل هایی مانند BGP.OSPF جهت اشتراک اطلاعات نود ها با دیگر نودها و همسایگانشان را استفاده میگردد. این یعنی یک دید جهانی و global جهت اینکار وجود ندارد.و اینکار کاملا محلی انجام میشود. یعنی اگر کاربری نیاز به کنترل یا تغییر بخشی از مسیر برای بخشی از جریان را داشته باشد ، مدیر باید با تغییر پارامتر ها که بطور مستقیم را ریموت روی تجهیزات انجام میدهد ، این تغییر را تست و اجرایی نماید.

SDN با بوجود آوردن شبک های انعطاف پذیر و قابل برنامه ریزی این امکان را جهت کنترل جریان های مختلف بر اساس خواسته های مشتری را به راحتی میدهد.

شکل 5 یک SDN کنترلر مرکزی را نشان میدهد که سه جریان مختلف را روی بستر های مختلف شامل IP و ATM هستند و از مثلا فرانسه به آلمان منتقل میگردند را نسبت به نوع جریان کنترل و مهندسی ترافیک میکند.

SDN5.png

2 .استاندارد سازی های انجام شده حول SDN

در این بخش به استانداردسازی های انجام شده در حول SDN openflow میپردازیم

2.1 ابتکار Clean slate لوح پاک

یک طراحی معماری جدید با نگاه تغییر اساسی و اساسا طراحی دوباره اینترنت توسط مجامع و موسسات مختلف شروع شده که با هدف عدم ارث پذیری از مشکلات و پایه های اینترنت قبلی دوباره اینترنتی جدید با استناندارهای جدید طراحی گردد. از آن جمله میتوان به NSF با پروژه GENI و FIND,FIRE , OFELIA,SPARC نام برد. 2.2 ONF برای SDN

بنیاد ONF اولین موسسه که به طور تخصصی به SDN پرداخته است که از اهداف آن خارج کردن openflow از حالت آکادمیک به تجاری بوده است. این بنیاد کارگروه های متعددی در زمینه های مختلف جهت تجاری سازی openflow بوجود آورده است.

شکل 6 مثالی از نحوه ارتباط سه شبکه مختلف شامل شبکه های قدیمی و شبکه های با هسته SDN و دیتاسنترهای با استفاده از SDN را بیان کرده است. اینترفیس های اصلی این ارتباطات شامل

1- Northbound ارتباط app ها یا SDN controller

2- Southbound ارتباط با dataplane از طریق API خاص

3- Eastbound ارتباط با شبکه های قدیمی

4- Westbound ارتباط بین SDN ها جهت global کردن شبکه

SDN6.png

3 .چالش ها و فرصت های تکامل معماری SDN

3.1 مزایا و معایب مدل مرکزی SDN

این روش اصلی و پیشنهادی ONF جهت پیاده سازی openflow است.این روش در کنار مزایای زیادی شامل مدیریت مرکزی و گلوبال برای مدیریت بهتر تجهیزات معایبی شامل امکان ایجاد بار زیاد بر روی شبکه جهت ارسال اطلاعات به یک کنترلر ، امکان خرابی بیشتر یک نقطه مرکزی در مقابل تعدادی کنترلر، مشکل گسترش پذیری و تعدادی دیگر از نقاط ضعف روش مرکزی کنترلر SDN است. 3.2 مزایا و معایب مدل توزیع شده SDN

این روش جهت رفع مشکلات روش مرکزی بالاخص مشکل single point of failure مطرح گردید.

ای روش ها به سه کلاس تقسیم شد که شامل:

1- متمرکز بر افزایش کارایی کنترلر ها شامل maestro,Mcnettle

2- این کلاس بر کنترلر ها توزیع شده تکیه دارد از جمله Hyperflow,Onix,Devolved برای توزیع control plane بین بخشهای مختلف شبکه

3- این کلاس بر راه حل های چند لایه توزیع شده تکیه دارد شامل kandoo که مدل دولایه است.

این روش نیز مشکلاتی اعم از عدم دید کامل شبکه ، مشکلات پیدا کردن تعداد مناسبی کنترلر هنگام گسترش شبکه و در نهایت اکثر روشها الگوریتم های محلی دارند و تنها به همسایه های خود پاسخگو هستند در حالیکه هزمان سازی بین آنها جهت دید کامل شبکه مورد نیاز است.

3.3 فرصت های بدست آمده در مدل معماری Hybrid

با در نظر گرفتن مزایا و معایب روش های ذکر شده و ترکیب روشها ، روش hybrid جهت پوشش ضعف های هر روش قابل استفاده است.این روش کاربردی خواهد بود در حالتهایی که از پروتکل های توزیع شده در سوییچ های محلی و یا مرکزی استفاده میگردد. این باعث میشود بتوان از شبکه های زیر ساخت فعلی به روز گشت بدون نیاز به تغییر کل سیستم.


4 .SDN برای شبکه های cloud-based

با توجه به افزایش سرویس های cloud-base و ایجاد مدل های مقرون به صرفه ، این نوع سرویس ها در حال گسترش است. ولی این نوع سرویس ها پیش نیاز های شبکه ایی بسیار بالا با کارایی بالا نیاز داردکه خود ایجاد چالش های فراروانی میکند. SDN به عنوان مکمل virtualization میتواند باعث گذر از چالش های آن گردد.

ما در این بخش به چالش ها و فرصت های موجود دراین بخش میپردازیم:

4.1 SDN برای ICN(information-centric networking)

استفاده از SDN در شبکه های اطلاعات محور و محتوا محور در عوض شبک های آدرس محور و ایجاد راه حل های مربوطه بدون استفاده از تغییر سخت افزاری

4.2 SDN برای دیتا سنتر ها و ابر ها

همانطور که گفته شد SDN با ایجاد قابلیتهایی نظیر مجازی سازی شبکه و خودکار سازی تخصیص منابع توانسته است قابلیت های فراوانی به دیتاسنترها و ابرها ایجاد کند.

4.3 NFV(network function virtualization)

مجازی سازی توابع شبکه از دیگر قابلیتهایی است که امکان ایجاد شبکه های متعدد هزمان را بر روی یک زیر درخت میدهد. توابع شبمه روی ماشین های مجازی قرا میگیرد

5 .SDN در شبکه های بیسیم

SDWN یا همان شبکه های بیسیم نرم افزار محور ، تکنولوژی SDN برای بیسیم است که مدیریت منابع بیسیم و مسیریابی و مالتی هومینگ را فراهم میکند. SDWN با ایجاد data plane قابل برنامه ریزی ، اینترفیس های ماژولار قابل برنامه ریزی ایجاد میکند. اینکار به نوعی باعث جداسازی شبکه به decision and processing plane میشود همچ.ن OPENWRT

5.1 Mobility and multihoming management with SDN

5.2 SDN for Mobile Cloud برای ابرهای همراه

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

6 .چالش های امنیتی در SDN

امنیت چیزی که در SDN به آن کمتر پرداخته شده است و خود یکی از چالش های اساسی SDN میباشد. مثلا openflow استفاده از TCP خالی را پیشنهاد داده و TLS را به عنوان option معرفی کرده است. ولی امنیت باعث کاهش کارایی میشود ، لذا خود یک چالش است که بتوانیم مدیریت کنیم مصالحه بین امنیت شبکه و کارایی را

7 .نتیجه گیری

به عنوان نتیجه میتوان به این موضوع پرداخت که اکثر تحقیقات امروزی بر روی معماری SDN متمرکز است. در حالیکه نسل بعدی SDN-networking تنها به ساده سازی پیاده سازی کمک نخواهد کرد بلکه نگهداری و به روز رسانی برنامه های کاربردی را نیز آسان تر خواهد کرد. در این مقاله حوزه های مختلفی از چالش و فرصت های پیشر رو در زمینه های مدل های معماری ، برنامه ریزی، مدیریت ، بیسیم و موبایل ، و ابر و امنیت پرداخته شد. البته این نشان دهنده آن نیست که ما تمام حوزه های و فرصت و چالش ها را دراین زمینه پوشش دادیم .
مراجع
Hakiri, Akram, et al. "Software-Defined Networking: Challenges and research opportunities for Future Internet." Computer Networks 75 (2014): 453-471

Masutani, Hitoshi, et al. "Requirements and design of flexible NFV network infrastructure node leveraging SDN/OpenFlow." Optical Network Design and Modeling, 2014 International Conference on. IEEE, 2014.

Jammal, Manar, et al. "Software defined networking: State of the art and research challenges." Computer Networks 72 (2014): 74-98.

Valdivieso Caraguay, A. L., L. I. Barona Lopez, and L. J. Garcia Villalba. "Evolution and Challenges of Software Defined Networking." Future Networks and Services (SDN4FNS), 2013 IEEE SDN for. IEEE, 2013.