SDN یا Software Defined Network به ارائه راهکاری برای پیکربندی و مدیریت متمرکز تجهیزات فیزیکی و مجازیِ شبکه از قبیل روترها، سوئیچها و Gatewayها در دیتاسنتر میپردازد. اجزای مجازی شبکه مانند Hyper-V Virtual Switch، Hyper-V Network Virtualization و Windows Server Gateway به گونهای طراحی شدهاند که از عناصر یکپارچه زیرساخت مبتنی بر نرمافزار شبکه باشند. در صورتی که طراحی تجهیزات مطابق و سازگار با SDN باشد، علاوه بر اینکه کاربران میتوانند از سوئیچهای فیزیکی، روترها و سایر تجهیزات سختافزاری موجود استفاده نمایند، امکان ایجاد یکپارچگی بیشتر بین شبکه مجازی و فیزیکی نیز فراهم میگردد.
شبکههای مبتنی بر نرمافزار به این دلیل ایجاد میشوند که Network Plane شامل Management, Control, Data Plane بوده و محدود به تجهیزات شبکه نمیگردد اما این موارد برای استفاده در مواردی همچون نرمافزارهای مدیریت دیتاسنتر، جدا از یکدیگر هستند.
SDN، امکان مدیریت شبکه دیتاسنتر به صورت دینامیک را در اختیار کاربر قرار میدهد تا از این طریق یک راهکار خودکار و متمرکز جهت تامین الزامات برنامههای کاربردی و بارهای کاری کاربر فراهم نماید. بنابراین SDN به ارائه قابلیتهای زیر میپردازد:
- قابلیت جداسازی برنامههای کاربردی و بارهای کاری از شبکه فیزیکی اصلی، که این روند از طریق مجازیسازی شبکه، اجرا میگردد. فرآیندهای جداسازی درست مانند مجازیسازی سرور که با استفاده از Hyper-V انجام میگیرد، به صورت هماهنگ و سازگار با برنامههای کاربردی و بارهای کاری عمل میکنند. برای مثال، SDN به ارائه فرآیندهای جداسازی مجازی برای اجزای فیزیکی شبکه مانند IP، سوئیچها و تعدیلکنندههای بار میپردازد.
- قابلیت تعریف و کنترل Policyها به صورت متمرکز که در هر دو شبکه فیزیکی و مجازی قابل اجرا میباشد، به عنوان نمونه میتوان از جریان ترافیک بین این دو نوع شبکه نام برد.
- قابلیت اجرای Policyهای شبکه متناسب با تغییرات مقیاس، حتی در هنگام پیادهسازی بارهای کاری جدید یا انتقال بارهای کاری به سراسر شبکههای مجازی یا فیزیکی وجود دارد.
معرفی تکنولوژیهای Windows Server برای SDN
Windows Server شامل تکنولوژیهای شبکه مبتنی بر نرمافزار به شرح زیر میباشد:
1- کنترلر شبکه
کنترلر شبکه (Network Controller) به ارائه یک نقطه خودکارسازیِ قابلبرنامهریزی و متمرکز برای مدیریت، پیکربندی، مانیتور و عیبیابی زیرساختهای فیزیکی و مجازی شبکه در دیتاسنتر میپردازد. کاربران با استفاده از کنترلر شبکه میتوانند به جای اجرای فرآیند پیکربندی تجهیزات و سرویسهای شبکه به صورت دستی، این فرآیند را خودکارسازی نمایند. کنترلر شبکه یک Role کاملا مقیاسپذیر با دسترسپذیری بالا میباشد و به ارائه یک API یا واسط برنامهنویسی کاربردی (Southbound API) برای ایجاد ارتباط میان کنترلر شبکه و شبکه و یک API دیگر (Northbound API) برای برقراری ارتباط میان کاربر و کنترلر شبکه میپردازد.
با استفاده از Windows PowerShell، Representational State Transfer API یا به اختصار REST و یا برنامه های مدیریتی، میتوان از کنترلر شبکه برای مدیریت زیرساخت فیزیکی و مجازی در شبکه استفاده نمود:
- Hyper-V VM و سوئیچهای مجازی
- سوئیچهای فیزیکی شبکه
- روترهای فیزیکی شبکه
- نرمافزار فایروال
- Gateway VPN شامل RRAS Multitenant Gateways
- تعدیلکنندههای بار
2- Hyper-V Network Virtualization
Hyper-V Network Virtualization به کاربران کمک میکند تا برنامههای کاربردی و بارهای کاری خود را با استفاده از شبکههای مجازی، از شبکه فیزیکی جدا نمایند. شبکههای مجازی در حین اجرا بر روی یک ساختار شبکه فیزیکی مشترک، به ارائه فرآیندهای ضروری برای جداسازی به صورت Multitenant پرداخته و بدین ترتیب کاربرد منابع را افزایش میدهند. کاربران برای تضمین بازده سرمایهگذاری فعلی خود میتوانند شبکههای مجازی را بر روی ابزارهای فعلی شبکه تنظیم نمایند. به علاوه لازم به ذکر است که شبکههای مجازی با شبکههای VLAN سازگار میباشند.
3- Hyper-V Virtual Switch
Hyper-V Virtual Switch به عنوان یک سوئیچ مبتنی بر نرمافزار در لایه 2 شبکه اترنت به شمار میرود که پس از نصب Hyper-V Server Role در Hyper-V Manager قابل دسترس میباشد. این سوئیچ دارای قابلیتهای مدیریتشده و توسعهپذیر است که ماشینهای مجازی را به هر دو نوع شبکه مجازی و فیزیکی متصل میسازد. علاوه بر این، Hyper-V Virtual Switch این قابلیت را داراست که پیادهسازی Policy در سطح سرویس، امنیت و جداسازی فراهم نماید.
به علاوه، Hyper-V Virtual Switch به سازمانها کمک میکند تا افزونههای امنیتی و مدیریتی را به منظور گسترش همکاری ایجاد نمایند. برای مثال شرکت Cisco از آزاد بودن دسترسی به افزونه Nexus 1000V برای Hyper-V virtual Switch خبر داده است که شامل یکپارچهسازی این افزونه با System Center 2012 SP1 Virtual Machine Manager میباشد. همچنین شرکت NEC از یک پشتیبانی مبتنی بر System Center 2012 SP1 Virtual Machine Manager برای افزونه Hyper-V Virtual Switch مبتنی بر OpenFlow خبر داده است. به علاوه 5NINE و inMon هم محصولات جدیدی مبتنی بر افزونههای سوئیچ Windows Server 2012 Hyper-V به بازار عرضه کردهاند. این امکان نیز برای کاربران وجود دارد که در Hyper-V Virtual Switch موجود در Windows Server 2016 به پیادهسازی (SET(Switch Embedded Teaming و (Remote Direct Memory Access (RDMA بپردازند.
4- مجازیسازی عملکرد شبکه
عملکردهای اجرایی شبکه توسط تجهیزات سختافزاری مانند Load Balancer، فایروال ها، روترها، سوئیچها و غیره به صورت فزایندهای در قالب تجهیزات مجازی در دیتاسنترهای مبتنی بر نرمافزار امروزی، مجازیسازی میشوند. لازم به ذکر است فرآیند مجازیسازی عملکرد شبکه یک روند رو به رشد برای مجازیسازی سرور و شبکه میباشد. تجهیزات مجازی با سرعت و روندی روبهرشد ایجاد شده و بازار کاملا جدیدی را پدید میآورند. به نظر میرسد که این تجهیزات در پلتفرمهای مجازیسازی و سرویسهای Cloud کاربرد و علاقمندی بیشتری داشته باشند.
تکنولوژیهای زیر برای NFV درحالحاضر در دسترس میباشند:
- (SLB (Software Load Balancer و (NAT (Network Address Translation
NAT و Load Balancer لایه 4 قادر به افزایش توان عملیاتی با پشتیبانی از Direct Server Return میباشند که از طریق آن ترافیک بازگشتی شبکه از Load Balancer Multiplexer عبور مینماید.
- فایروال دیتاسنتر
این فایروال توزیعی به ارائه لیست کنترل دسترسی (ACL) بصورت جزء به جزء میپردازد که کاربرد Policyهای فایروال را در سطح واسط کاربری ماشینهای مجازی یا در سطح زیرشبکه امکانپذیر میسازد.
- Gateways
کاربران با کمک Gateway میتوانند ترافیک بین شبکههای مجازی و غیرمجازی را مرتبط نمایند؛ و از آن مهمتر اینکه میتوانند Site-to-Site VPN Gateway، GatewayForwarding و (GRE (Generic Routing Encapsulation Gateway را پیادهسازی نمایند. ضمن اینکه از افزونگی M+N در Gateway پشتیبانی میشود.
5- (RDMA (Remote Direct Memory Access و (SET (Switch Embedded Teaming
در Windows Server 2016 ، کاربران میتوانند RDMA را بر روی آداپتورهای شبکه فعال نمایند که به یک Hyper-V Virtual Switch همراه با Switch Embedded Teaming یا بدون آن محدود میشود. بدین ترتیب کاربران میتوانند در هنگام استفاده همزمان از RDMA و SET از تعداد کمتری از آداپتورهای شبکه استفاده نمایند.
SET به عنوان یکی از راهکارهای جایگزین NIC Teaming محسوب میشود که در محیطهای شامل Hyper-V و Stack SDN در Windows Server 2016 قابلاستفاده میباشد. SET برخی از قابلیتهای عملکردی NIC Teaming را در Hyper-V Virtual Switch ادغام میکند. با استفاده از SET میتوان یک تا هشت آداپتور فیزیکی شبکه اترنت را در قالب یک یا چند آداپتور شبکه مجازی و مبتنی بر نرمافزار گروهبندی نمود. این آداپتورهای مجازی شبکه از این امکان برخوردار هستند تا قابلیت عملکرد سریع و Fault Tolerance را در صورت بُروز خرابی در آداپتور فراهم نمایند. آداپتورهای شبکه که عضوی از SET میباشند، باید بر روی یک Host فیزیکیHyper-V نصب شوند تا بتوانند در یک گروه قرار گیرند.
همچنین کاربران میتوانند از دستورات Windows PowerShell برای راهاندازی (DCB (Data Center Bridging، ارائه یک Hyper-V Virtual Switch همراه با RDMA Virtual NIC و همچنین ارائه یک Hyper-V Virtual Switch به همراه SET و RDMA vNICs استفاده نمایند.
6- RRAS Multitenant Gateway
Routing and Remote Access Service (RRAS) Multitenant Gateway به عنوان یک Gateway و روتر نرمافزاری مبتنی بر ماشین مجازی به شمار میرود که به سازمانها و ارائهدهندگان سرویس Cloud و سازمانها اجازه میدهد ترافیک شبکه Cloud و دیتاسنتر را بین شبکههای مجازی و فیزیکی از جمله اینترنت، مسیریابی نمایند.
7- NIC Teaming
با بهرهمندی از تکنولوژی NIC Teaming میتوان حدود یک تا 32 آداپتور فیزیکی شبکه اترنت را در یک یا چند آداپتور مجازیِ مبتنی بر نرمافزار شبکه گروهبندی نمود. آداپتورهای مجازی شبکه در صورت خرابی یکی از آداپتورها به ارائه قابلیت Fault Tolerance و عملکرد سریع میپردازند.
زمانی که آداپتورهای شبکه در قالب یک NIC Team پیکربندی میشوند، در واقع به هسته اصلی از راهکار NIC Teaming مرتبط شده و سپس یک یا چند آداپتور مجازی (تحت عنوان Team NICs یا Team Interface) برای سیستمعامل ارائه میگردد. Windows Server 2016 تا 32 واسط کاربری تیمی را برای هر گروه پشتیبانی مینماید. همچنین تعداد زیادی الگوریتم وجود دارد که ترافیک خروجی (بار) را بین NICها توزیع مینماید.
علاوه بر این میتوان از NIC Teaming به همراه ماشین مجازی و VLAN نیز استفاده نمود.