نگاهی به SDN و CisCo One

 

هر روز دنیای IT در حال تغییر است. هر روز فناوری های جدید پا به عرصه میگذارند تا کار را برای اداره شبکه ها با اندازه های مختلف آسان کنند. یکی از این فناوری ها که سال 2005 در دانشگاه استنفرد متولد شد و از 2009 مورد استفاده قرار گرفت SDN میباشد. (SDN (Software-defined Networking یا شبکه مبتنی بر نرم افزار، به مدیریت شبکه های متوسط و بزرگ بصورت مرکزی و براساس نرم افزار گفته میشود. در این شبکه ها بجای اینکه سخت افزار تصمیم بگیرد که بسته های درحال عبور کجا بروند، نرم افزار میباشد که با شرایط تعریفی مورد نیاز با هر بسته رفتار متفاوتی انجام میدهد. برای مثال سوییچ که یک بسته را دریافت میکند پس از تجزیه و تحلیل تصمیم به ارسال به مقصد مورد نظر میگیرد و پس از آن بقیه بسته هایی که از همان نقطه آمده باشند را نیز به همین منوال با آنها رفتارمیکند. اما در شبکه هایی که SDN برروی آن ها فعال میباشد، هر بسته که میرسد میتوان بنا به تعاریفی که ادمین شبکه انجام داده است رفتار مختلفی روی آن انجام شود.

 

 

 

 مشاور فناوری اطلاعات

SDN چیست؟

SDN از یک کنترل کننده بهره میگیرد. این کنترل کننده است که تمامی رفتارهای شبکه را به ما نشان میدهد و درصورت نیاز به تغییر، آن را بصورت تمام خودکار انجام میدهد. در دنیای IT به این کنترل کنندهOpenFlow گفته میشود که یک استاندارد آزاد هست مانند TCP/IP. بوسیله این ابزار شما دیگر نیاز نیست برای تغییر در شبکه خود به پای تک تک سوییچ ها و روترها بروید تا بتوانید تغییر مورد نیاز را در شبکه انجام دهید بخصوص زمانی که تعداد سوییچ های شما برای مثال 100 عدد در دیتا سنتر باشد. با استفاده از SDN شما کافیست برنامه جدید مورد نظر خود را برای شبکه درحال کار بنویسید و آن را تحویل OpenFlow بدهید. پس از آن OpenFlow به سراغ تک تک سوییچ ها میرود و تغییرات را روی آن ها انجام میدهد. بهمین سادگی. تغییری که شاید نیاز به زمانی معادل 1 ماه داشته باشد در یک روز قابل اجرا میباشد.

 

 

Cisco ONE چیست؟

 

مثل همیشه شرکت سیسکو نیز استاندارد مورد تایید خودش را در این زمینه ارائه داده است. بلهCisco ONE. البته سیسکو (ONE (Open Network Environment یک مقدار با SDN متفاوت میباشد. در حقیقت تفاوت در کامل تر بودن میباشد. سیسکو ONE در حقیقت از لایه 7 تا لایه 2 را شامل میشود که بگفته شرکت سیسکو این باعث شده که کنترل داده ها بصورت کاملا مرکزی اداره شود. شرکت سیسکو در مقابل استاندارد OpenFlow پا را یک قدم جلوتر گذاشته و  ( onePK (one Platform Kit را ارائه کرده است که رابط کاربری سیستم عامل های دستگاه های خودش یعنی IOS,IOS-XR,NX-OSمیباشد. بوسیله onePK شما میتوانید تمامی configها ، تغییرات و یا سیاست های جدید را بصورت برنامه هایی به زبان های مختلف مانند Java و یا Python بنویسید و onePK آن ها را برای شما روی دستگاه هایتان پیاده سازی میکند.

 

تا اینجا شاید به خود بگویید خوب؟ حالا که چی؟ این ها که قبلا هم بود. خوب حالا با یک مثال روش کارCisco ONE رو بررسی میکنیم. فرض کنید یک شبکه با حجم ترافیکی معادل 2Pbps یا همان 2 Peta زیر بار میباشد. بدلیل حجم بالای اطلاعات ممکن است بعضی از خطوط ترافیک بالاتری را تحمل کنند.onePK بوسیله سیستم عامل (مانند IOS  یا NX-OS ) و (ASICs (Application-specific integrated circuit تمامی اتفاق هایی که در شبکه میفتد را مانیتور میکند و در اختیارCisco ONE Controllerمیگذارد.این مانیتورینگ طبق گفته های شرکت سیسکو از ابزارهایی مثل SNMP و یا NetFlow بهتر عمل کارده و گزارشاتی کامل تر را نشان میدهد. در اینجاست که ادمین شبکه با دیدن گزارشاتی که سیسکو ONE در اختیارش میگذارد تصمیم به تغییر تنظیمات میکند. بدین وسیله ادمین برنامه مورد نظر خود را طراحی کرده و در اختیار سیسکو ONE قرار میدهد. از این لحظه به بعد سیسکو ONE نسبت به گزارشاتی که از onePK میگیرد تغییرات مورد نیاز را به onePK و یا OpenFlow اعلام میکند و آن ها نیز بصورت گسترده config های مورد نیاز را برروی شبکه پیاده میکنند. حال که نگاه میکنیم میبینیم که بدون نیاز به تغییر configهای دستگاه هایی که در دیتا سنتر داریم همه چیز بصورت خودکار انجام میشود. اینگونه هم دقت اجرای دستورات بالا رفته و هم سرعت تغییر بصورت لحظه ای خواهد شد.

حال شاید بگویید فرق onePK و OpenFlow چیست؟ سیسکو همیشه بدنبال این بوده است که به استفاده کننده از تجهیزاتش نشان دهد ، به فکر آن هاست. وقتی که شما از onePK به جایOpenFlow استفاده کنید قابلیت های بالاتری دارید. برای مثال یکی از بدترین اتفاق ها در دیتا سنترهای بزرگ ، اتصال اشتباه کابل هاست. شما به عنوان ادمین شبکه وقتی قصد تغییر در شبکه را دارید. برنامه خود را نوشتید و تحویل onePK داده اید. onePK پس از تجزیه و تحلیل برنامه شما به سراغ دیتا سنتر میرود. اگر شما به اشتباه کابلی را وصل کرده باشید، هیچ config ای روی دستگاه مورد نظر انجام نمیدهد و به شما اشتباه کارتان را نشان میدهد. به نظر من خیلی قابلیت جالبی به نظر میرسد. دیگر نیاز نیست ساعت ها بدنبال اشتباه خود بگردیم. سیسکو onePK را میتوان بر روی سرورها ، کارت ها و دستگاه های Nexus پیاده سازی کرد.

حال به سراغ حرف های کمی بالاترم یعنی ارائه راه کار لایه 2 تا 7 در Cisco ONE برویم. در راه کاری که شرکت سیسکو مدعی شده، تصمیم گیری از سوییچ ها و روترها خارج شده و به همه لایه ها بر میگردد. اینجا هم برای روشن شدن مسئله از یک مثال استفاده خواهم کرد. فرض کنید یک تارنما قصد پخش برنامه ی زنده ای را دارد. بوسیله Cisco ONE ، شبکه شما با نگاه به اتفاقی که در تارنما میفتد تغییرات مورد نظر را در سوییچ ها و روترها اعمال میکند. این یعنی یک شبکه کاملا هوشمند و کارآمد. مثلا اگر تعداد بینندگان بیش از حد زیاد باشد ، ترافیک مربوطه را به یک مسیر دیگر هدایت میکند.
مشاور فناوری اطلاعات