شبکه تعریف شده با نرم افزار (SDN) یک رویکرد انقلابی برای مدیریت شبکه است که هدف آن ساده سازی و متمرکز کردن کنترل منابع شبکه است. زیرساخت شبکه زیربنایی را از برنامهها و سرویسهایی که از آن استفاده میکنند انتزاع میکند و مدیریت شبکه را انعطافپذیرتر، پویا و کارآمدتر میسازد. SDN صفحه کنترل را از صفحه داده جدا می کند و به مدیران شبکه اجازه می دهد دستگاه های شبکه را از طریق یک کنترل کننده نرم افزار متمرکز مدیریت و پیکربندی کنند. این فناوری به دلیل پتانسیل آن در بهبود چابکی شبکه، مقیاس پذیری و مقرون به صرفه بودن مورد توجه و پذیرش قابل توجهی قرار گرفته است.
تاریخچه پیدایش شبکه های نرم افزاری تعریف شده
مفهوم شبکه های نرم افزاری تعریف شده ریشه در تحقیقات اولیه در مورد شبکه های قابل برنامه ریزی در طول دهه 1990 دارد. اولین ذکر مهم از اصطلاح "شبکه های تعریف شده از طریق نرم افزار" در سال 2005 زمانی که تیمی از محققان دانشگاه استنفورد این مفهوم را در مقاله ای با عنوان "اتان: در دست گرفتن کنترل شرکت" مطرح کردند.
محققان معماری شبکه ای را تصور کردند که در آن صفحه کنترل از صفحه داده جدا می شود و به مدیران شبکه اجازه می دهد تا کنترل دقیقی بر جریان های ترافیک شبکه و سیاست های امنیتی اعمال کنند. این شروع SDN به عنوان یک زمینه مطالعاتی متمایز و برانگیختن علاقه در جامعه شبکه بود.
اطلاعات دقیق در مورد شبکه های تعریف شده توسط نرم افزار
SDN الگوی جدیدی را برای مدیریت و کنترل شبکه ها ارائه می دهد که به سازمان ها اجازه می دهد تا به سطوح بی سابقه ای از انعطاف پذیری، مقیاس پذیری و اتوماسیون دست یابند. به طور سنتی، دستگاه های شبکه (روترها، سوئیچ ها، و غیره) مسئول هر دو انتقال داده ها و تصمیمات کنترل بودند. با این حال، SDN تصمیمات کنترل را به یک کنترلکننده نرمافزار متمرکز منتقل میکند، در حالی که دستگاههای شبکه تنها بر روی ارسال دادهها بر اساس دستورالعملهای کنترلکننده تمرکز میکنند.
اجزای اصلی SDN عبارتند از:
-
کنترلر SDN: مغز مرکزی SDN، مسئول مدیریت و کنترل دستگاه های شبکه است. از طریق APIهای جنوب (مثلاً OpenFlow) با دستگاههای دارای SDN فعال ارتباط برقرار می کند و از طریق APIهای به شمال با برنامه ها ارتباط برقرار می کند.
-
APIهای Southbound: پروتکل ها و رابط هایی که ارتباط بین کنترل کننده SDN و دستگاه های شبکه را امکان پذیر می کند. OpenFlow پرکاربردترین API برای جنوب است که به کنترلر اجازه می دهد تا جداول جریان را در سوئیچ های شبکه برنامه ریزی کند.
-
APIهای Northbound: APIهایی که به برنامهها و سرویسها اجازه میدهند با کنترلکننده SDN ارتباط برقرار کنند و پیچیدگی شبکه را انتزاع کنند. این APIها توسعه برنامه های SDN را برای موارد استفاده مختلف امکان پذیر می کنند.
-
برنامه های SDN: برنامههای نرمافزاری سفارشی که بر روی کنترلکننده SDN ساخته شدهاند که میتوانند به صورت پویا منابع شبکه را بر اساس الزامات و سیاستهای خاص کنترل و پیکربندی کنند.
ساختار داخلی شبکه های نرم افزاری تعریف شده
شبکه های تعریف شده توسط نرم افزار چگونه کار می کنند؟ SDN بر اساس چند اصل اساسی عمل می کند:
-
کنترل متمرکز: SDN صفحه کنترل را متمرکز می کند، به این معنی که مدیران شبکه یک دید جهانی و کنترل بر کل شبکه دارند. این امر مدیریت شبکه را ساده می کند و امکان پیکربندی مجدد پویا سیاست های شبکه را فراهم می کند.
-
دستگاه های شبکه قابل برنامه ریزی: دستگاه های شبکه سازگار با SDN، مانند سوئیچ ها و روترها، دارای جدایی بین صفحه کنترل و صفحه داده هستند. صفحه کنترل در کنترل کننده متمرکز SDN قرار دارد، در حالی که صفحه داده ارسال بسته را مدیریت می کند.
-
حمل و نقل مبتنی بر جریان: SDN بر مفهوم جریان ها تکیه دارد، که جریان های خاصی از ترافیک شبکه هستند که می توانند به صورت جداگانه شناسایی و مدیریت شوند. کنترلر SDN قوانین جریان را تعریف می کند و آنها را در دستگاه های شبکه نصب می کند و بر این اساس ترافیک را هدایت می کند.
-
باز کردن API ها: SDN از API های باز مانند OpenFlow برای فعال کردن ارتباط بین کنترلر SDN و دستگاه های شبکه استفاده می کند. این گشودگی قابلیت همکاری را ترویج می کند و نوآوری را در اکوسیستم SDN تشویق می کند.
تجزیه و تحلیل ویژگی های کلیدی شبکه های تعریف شده با نرم افزار
ویژگی های کلیدی شبکه تعریف شده توسط نرم افزار که آن را از رویکردهای مدیریت شبکه سنتی متمایز می کند عبارتند از:
-
انعطاف و چابکی: SDN ارائه سریع و خودکار خدمات شبکه را امکانپذیر میسازد و سازگاری با نیازمندیهای تجاری و شرایط شبکه را آسانتر میکند.
-
مدیریت متمرکز: با SDN، مدیران شبکه میتوانند کل شبکه را از یک نقطه کنترل مدیریت و پیکربندی کنند و وظایف مدیریت شبکه را سادهتر کنند.
-
مجازی سازی شبکه: SDN اجازه مجازیسازی شبکه را میدهد و امکان ایجاد چندین شبکه منطقی را فراهم میکند که میتوانند از یکدیگر جدا شوند.
-
مهندسی ترافیک پویا: SDN بهینه سازی و مسیریابی ترافیک در زمان واقعی را امکان پذیر می کند که منجر به بهبود عملکرد و کارایی شبکه می شود.
-
افزایش امنیت: کنترل متمرکز SDN اجرای سیاست های امنیتی منسجم را در سراسر شبکه تسهیل می کند و وضعیت امنیتی کلی را بهبود می بخشد.
انواع شبکه های نرم افزاری تعریف شده
شبکه های تعریف شده توسط نرم افزار را می توان بر اساس دامنه و کاربرد آن به انواع مختلفی دسته بندی کرد. در اینجا انواع اصلی SDN آورده شده است:
تایپ کنید | شرح |
---|---|
SDN در مراکز داده | تمرکز بر بهینه سازی شبکه های مرکز داده با بهبود استفاده و مدیریت منابع. |
SDN در شبکه های گسترده (WAN) | هدف آن سادهسازی و سادهسازی مدیریت شبکههای گسترده، افزایش اتصال است. |
SDN در شبکه های پردیس | شبکه های پردیس سازمانی را هدف قرار می دهد و کنترل متمرکز و اجرای سیاست های شبکه را ارائه می دهد. |
SD-WAN (شبکه گسترده نرم افزاری) | ترکیبی از اصول SDN با فناوری WAN برای ارائه یک شبکه انعطاف پذیر و مقرون به صرفه. |
راه های استفاده از شبکه های تعریف شده توسط نرم افزار، مشکلات و راه حل های آنها
شبکه های تعریف شده با نرم افزار موارد استفاده و مزایای مختلفی را در صنایع مختلف ارائه می دهند. برخی از موارد استفاده رایج عبارتند از:
-
پردازش ابری: SDN با فعال کردن تخصیص منابع بر اساس تقاضا، مقیاس بندی کارآمد شبکه و متعادل کردن بار پویا، شبکه ابری را تقویت می کند.
-
مجازی سازی شبکه: SDN ایجاد شبکههای مجازی را قادر میسازد و به ارائهدهندگان خدمات این امکان را میدهد تا خدمات چند مستاجر را با بخشهای شبکه ایزوله ارائه دهند.
-
برش شبکه: SDN برش شبکه را تسهیل میکند و اپراتورها را قادر میسازد منابع و خدمات خاصی را به گروههای کاربری مختلف اختصاص دهند.
-
ارکستراسیون شبکه: SDN هماهنگ سازی شبکه را ساده می کند و امکان اتوماسیون و ساده سازی پیکربندی های پیچیده شبکه را فراهم می کند.
چالش ها و راه حل ها:
-
نگرانی های امنیتی: متمرکز کردن کنترل در SDN خطرات امنیتی بالقوه را معرفی می کند. احراز هویت قوی، رمزگذاری و ممیزی های امنیتی منظم می تواند این نگرانی ها را کاهش دهد.
-
قابلیت همکاری: اطمینان از سازگاری بین راه حل های SDN از فروشندگان مختلف می تواند چالش برانگیز باشد. اتخاذ استانداردهای باز و APIها به دستیابی به قابلیت همکاری بهتر کمک می کند.
-
مقیاس پذیری: با افزایش پیچیدگی شبکه ها، کنترل کننده های SDN ممکن است با مشکلات مقیاس پذیری مواجه شوند. کنترلرهای SDN توزیع شده و متعادل کننده بار می توانند این چالش را برطرف کنند.
ویژگی های اصلی و مقایسه با اصطلاحات مشابه
در اینجا برخی از ویژگی های کلیدی و مقایسه شبکه های تعریف شده توسط نرم افزار با اصطلاحات مرتبط آورده شده است:
مشخصه | شبکه های نرم افزاری تعریف شده | مجازی سازی عملکرد شبکه (NFV) | شبکه های سنتی |
---|---|---|---|
جداسازی هواپیمای کنترلی | آره | آره | خیر |
جداسازی صفحه داده | آره | خیر | خیر |
مدیریت متمرکز | آره | خیر | خیر |
پیکربندی پویا شبکه | آره | آره | خیر |
بر روی برنامه ریزی و اتوماسیون تمرکز کنید | آره | آره | خیر |
دیدگاه ها و فناوری های آینده مرتبط با شبکه های نرم افزاری تعریف شده
آینده شبکههای تعریفشده توسط نرمافزار، با چندین فنآوری و روند نوظهور که انتظار میرود چشمانداز را شکل دهند، نویدبخش است:
-
شبکه مبتنی بر هدف (IBN): هدف IBN سادهسازی بیشتر مدیریت شبکه با اجازه دادن به مدیران برای تعریف مقاصد سطح بالا است و جزئیات پیادهسازی را به کنترلکننده SDN واگذار میکند.
-
ادغام 5G: انتظار میرود SDN نقش حیاتی در شبکههای 5G ایفا کند و برش کارآمد شبکه و تخصیص پویا منابع را برای پشتیبانی از خدمات متنوع 5G ممکن میسازد.
-
محاسبات لبه: SDN میتواند مدیریت کارآمد شبکه را در محیطهای محاسباتی لبه، تضمین اتصالات کم تأخیر و استفاده بهینه از منابع تسهیل کند.
-
SDN مبتنی بر هوش مصنوعی: هوش مصنوعی (AI) احتمالاً در SDN ادغام خواهد شد و تصمیم گیری هوشمندتر و تجزیه و تحلیل شبکه پیش بینی را امکان پذیر می کند.
چگونه می توان از سرورهای پروکسی استفاده کرد یا با شبکه های تعریف شده توسط نرم افزار مرتبط شد
سرورهای پروکسی را می توان به طور یکپارچه با شبکه های نرم افزاری تعریف شده ادغام کرد تا امنیت، حریم خصوصی و عملکرد شبکه را افزایش دهد. در اینجا چند مورد استفاده از ترکیب سرورهای پروکسی با SDN آورده شده است:
-
افزایش ناشناس بودن: سرورهای پروکسی را می توان در نقاط استراتژیک در یک SDN مستقر کرد تا ناشناس بودن و حریم خصوصی آنلاین را به کاربران ارائه دهد.
-
فیلتر محتوا: کنترلکنندههای SDN میتوانند از سرورهای پراکسی برای اجرای سیاستهای فیلتر کردن محتوا و کنترل دسترسی در سراسر شبکه استفاده کنند.
-
تعادل بار: سرورهای پروکسی می توانند به توزیع ترافیک شبکه در چندین سرور کمک کنند و از استفاده بهینه از منابع و بهبود عملکرد کلی اطمینان حاصل کنند.
-
حفاظت از تهدید: با هدایت ترافیک شبکه از طریق سرورهای پراکسی مجهز به ویژگی های امنیتی، SDN می تواند توانایی شبکه را برای شناسایی و کاهش تهدیدات افزایش دهد.
لینک های مربوطه
برای اطلاعات بیشتر در مورد شبکه های تعریف شده توسط نرم افزار، می توانید منابع زیر را بررسی کنید:
-
SDN Central: یک وب سایت جامع اختصاص داده شده به اخبار، آموزش ها و منابع SDN.
-
بنیاد شبکه باز (ONF): یک سازمان غیرانتفاعی متمرکز بر ترویج SDN و راه حل های شبکه منبع باز.
-
ابتکار IEEE SDN: ابتکار IEEE برای تقویت تحقیق و توسعه در زمینه SDN.
-
OpenFlow: وب سایت رسمی OpenFlow، اطلاعاتی در مورد پروتکل باز SDN ارائه می دهد.
در نتیجه، شبکههای تعریفشده توسط نرمافزار بهعنوان یک فناوری دگرگونکننده ظهور کردهاند که با جدا کردن صفحه کنترل از صفحه داده، مدیریت شبکه را متحول میکند. با متمرکز کردن کنترل شبکه و معرفی قابلیت برنامه ریزی، SDN انعطاف پذیری، مقیاس پذیری و کارایی بی نظیری را ارائه می دهد. با پتانسیل خود برای شکل دادن به آینده شبکه، SDN قرار است نقش مهمی در تکامل سیستمها و خدمات ارتباطی مدرن ایفا کند.