اهداف دوره
- آشنایی با اصطلاحات و مفاهیم شبکه های SDN
- آشنایی با شبیه سازی شبکه های مبتنی بر نرم افزار (SDN)
- آشنایی با ساختار داخلی و مکانیزم های توسعه کنترلرهای SDN
- آشنایی با OpneFlow
- آشنایی با Opnen VSwitch
- آشنایی با کنترلر ODL
- آشنایی با کنترلر RYU
- آشنایی با کنترلر ONOS
- آشنایی با Mininet WiFi
- آشنایی با شبیه ساز Mininet
- آرزیابی و مدل سازی شبکه های SDN با شبیه ساز Mininet
- آشنایی با نحوه اتصال سناریوی Mininet به کنترلر
- گزارش گیری و اجرای دستورات روی کنترلر از طریق REST API ها
- مشاهده، Capture و آنالیز ترافیک مبادله شده در شبیه ساز Mininet توسط ابزار وایرشارک (Wireshark)
- مفهوم TSDN با Transport SDN
- ویژگی های ذاتی، مزایا و کاربردهای شبکه های انتقال (Transport SDN)
- رابطه بین GMPLS با TSDN
- انواع شبکه های TSDN
مخاطبین دوره
پکیج آموزش جامع SDN برای دانشجویان تحصیلات تکمیلی و محققین شبکه که قصد ورود به تحقیقات در حوزه SDN را دارند، بسیار مفید و کاربردی خواهد بود. همچنین مهندسین کارمندان و ادمین های فعال در حوزه شبکه می توانند با سپری کردن این دوره، با دید کاملی شروع به پیاده سازی SDN در سازمان محل فعالیت نمایند.
ضمناً شرکت ها و ارگان های دولتی که نیاز به آموزش سازمانی کارکنان دارند، می توانند با ما تماس حاصل کنند، و در رابطه با شرایط مناسب و تخفیف های ما برای ثبت نام های گروهی یا آموزش اختصاصی برای سازمان ها، اطلاعات لازم را کسب نمایند.
دموی رایگان از محتوای دوره
دموهای رایگان پکیج آموزش جامع SDN در این قسمت قابل مشاهده می باشد. چنانچه دموی جدیدی از این دوره، ارائه شود، در همین قسمت درج خواهد شد. همچنین شما می توانید از طریق “ثبت نام در وب سایت” دموهای جدید این دوره را به محض ارائه شدن، از طریق ایمیل دریافت نمایید. امیدواریم این دوره را بپسندید و از این آموزش لذت ببرید.
مفاهیم SDN
وضعیت کنونی SDN
آشنایی با شبکه های SDN
نحوه نصب و دستورات اولیه Mininet
اتصال سناریوی mininet به کنترلر ODL
محاسبه میزان Packet Loss در کنترلر ODL
اتصال سناریوی mininet به کنترلر RYU
استخراج آماره های شبکه در کنترلر RYU
ارسال دستور به کنترلر RYU از طریق فرامین REST API
محاسبه تأخیر و اتلاف بسته در کنترلر RYU
نحوه اتصال به ONOS و اجرای یک سناریوی ساده
معرفی SDWAN
مروری بر شبکه های انتقال مبتنی بر SDN
SDN چیست؟
برای معرفی شبیه سازی شبکه های SDN یا شبکه های نرم افزار محور ابتدا ببینیم sdn چیست؟ در تعریف شبکه های مبتنی بر نرم افزار (SDN) باید بدانیم که SDN یک مفهوم حاصل از ترکیب چندین تکنولوژی شبکه است که هدف آن چابک سازی و مجازی سازی اجزای شبکه از جمله سرورها و دیتاسنترهای مجازی سازی شده می باشد.
SDN یا شبکه های مبتنی بر نرم افزار (Software Defined Network) یک الگو یا معماری جدیدی است که با شکستن این تجمیع عمودی و جداسازی فیزیکی سطح کنترل شبکه (Control Plane) از سطح روترها و سوئیچ ها (Forwarding Plane)، از پیچیدگی مدیریت شبکه بکاهد و کنترل شبکه را در یک نقطه متمرکز نماید. به صورتی که کنترل چندین دستگاه شبکه در یک نقطه به صورت نرم افزاری صورت می گیرد.
SDN با تغییراتی که در معماری شبکه ایجاد کرده توانسته است کنترل هوشمندی شبکه را با نرم افزار و به صورت یکپارچه فراهم نماید. مدیران شبکه می توانند با استفاده از برنامه های SDN ای که خودشان هم می توانند بنویسند (برنامه های SDN وابسته به نرم افزار خاصی نبوده و مالکیت اختصاصی ندارند)، منابع شبکه سازمان خود را به سرعت مدیریت، امن سازی و بهینه سازی نمایند.
برای آشنایی بیشتر با SDN می توانید مقاله آموزش SDN را مطالعه نمایید.
هدف اصلی SDN چیست؟
موضوع SDN یکی از شاخه های پرطرفدار IT در میان متخصصین و محققین حوزه شبکه می باشد. هدف اصلی SDN این است که مهندسین و ادمین های شبکه را قادر سازد تا نسبت به تغییرات نیازمندی های تجاری سازمان ها پاسخگویی سریع تری داشته باشند. در یک شبکه نرم افزار محور، ادمین شبکه می تواند از یک کنسول مرکزی، بدون دست زدن به سوئیچ ها عمل Traffic Shaping یا همان Packet Shaping را انجام دهد و همچنین می تواند سرویس هایی را به هر جایی در شبکه که نیاز باشد ارائه کند بدون اینکه نگران این موضوع باشند که سرور یا مولفه های سخت افزاری دیگر به چه نوع تجهیزاتی متصل هستند.
تکنولوژی های کلیدی برای پیاده سازی SDN عبارتند از:
- جداسازی عملکردی (Functional Separation)
- مجازی سازی شبکه (Network Virtualization)
- خودکارسازی از طریق قابلیت برنامه نویسی (Automation through Programmability)
برای آشنایی بیشتر با مجازی سازی کارکردهای شبکه (Network Function Virtualization : NFV) می توانید به آموزشی NFV مراجعه نمایید.
سرفصل مطالب
ماژول 1 – مفاهیم SDN
در این ماژول شما به صورت کامل با اصطلاحات و مفاهیم شبکه های SDN آشنا خواهید شد و پس از آن خواهید توانست با یک دید کامل و دانش کافی وارد تحقیقات در حوزه SDN شوید.
1: مفاهیم و کلیات شبکه های SDN
- مشکلات شبکه های فعلی
- تعریف مفاهیم مربوط به بخش داده ای و کنترلی
- هدف از ارائه SDN
- معماری شبکه SDN
- تشریح ساختار کنونی شبکه های فعلی
- نقاط ضعف و مشکلات شبکه های فعلی
- وجه تمایز معماری شبکه های SDN با شبکه های فعلی
- مزایا و ویژگی های شبکه های SDN
- چالش های موجود در شبکه های SDN
2: معرفی OFN و OpenFlow
- معرفی مشهورترین شبکه های SDN در حال استفاده توسط کمپانی های معتبر
- معرفی ONF
- معرفی پروتکل OpenFlow
- جایگاه آن در معماری SDN
- ویژگی های OpenFlow
- مفهوم OVS یا Open VSwitch
- سوئیچ های فیزیکی
3: تشریح کامل OpenFlow
- مفهوم GroupTable و MeterTable در OpenFlow
- نسخه های مختلف Openflow از V1.0 تا V1.5
- تفاوت SDN و OpenFlow
- شبکه های SDN غیر از OpenFlow
4: معرفی شبیه سازها و کنترلرهای شبکه های SDN
- معرفی شبیه ساز های مهم شبکه های SDN
- معرفی Mininet
- معرفی کنترلرهای مهم و پر کاربرد شبکه های SDN :
- OpenDayLight
- Floodlight
- Beacon
- NOX
- POX
- Ryu
- ONOS
- Cherry
- Faucet
- OpenContrail
- نسخه های مختلف کنترلر ODL
5: ارتباط SDN با NFV و Cloud
- رابطه SDN با NFV
- رابطه NFV با Cloud
ماژول 2 – SDN مقدماتی ( آموزش Mininet و کنترلر ODL)
در این ماژول، ابتدا شما را با شبیه سازیی SDN توسط شبیه ساز Mininet آشنا می کنیم تا بتوانید مطالعه و ارزیابی خود را روی شبکه های SDN آغاز کنید. سپس با کنترلر OpneDayLight آشنا خواهید شد. OpneDayLight از معروف ترین کنترلرهای SDN بوده و در این بخش به صورت کامل شما را با ساختار داخلی و مکانیزم های توسعه کنترلر OpenDayLight آشنا خواهیم کرد. سپس به صورت کامل نحوه اتصال سناریوی طراحی شده در mininet به OpenDayLight را فرا می گیرید و در نهایت با گزارش گیری و اجرای دستورات روی کنترلر از طریق REST API ها آشنا می شوید.
در پایان خواهید توانست، از شبیه ساز Mininet و کنترلر OpenDayLight برای مطالعه، ارزیابی و مدل سازی شبکه های SDN استفاده نمایید. با ابزارهایی همچون Wireshark برای تبادل اطلاعات نیز آشنا خواهید شد و خواهید دید چگونه می توان با وایرشارک ترافیک مبادله شده در شبیه ساز Mininet را Capture و مشاهده و آنالیز نمود. همچنین در این ماژول با OpneFlow و Opnen VSwitch آشنا خواهید شد.
بخش اول: آموزش شبیه ساز Mininet
MiniNet چیست؟
شبیه ساز MiniNet ، محیط نرم افزاری است که اکثر شرکت ها و تیم های پژوهشی، دانشجویان و محققین حوزه شبکه برای مدل سازی، شبیه سازی، Emulation و تحلیل و ارزیابی کارآیی شبکه های SDN (شبکه های مبتنی بر نرم افزار) و پروتکل های موجود در شبکه های SDN از آن استفاده می کنند.
شبیه ساز مینی نت، اکثر ویژگی ها و امکانات متداول برای شبیه سازی SDN را پوشش می دهد. با استفاده از شبیه ساز مینی نت می توان یک شبکه SDN را قبل از پیاده سازی واقعی، مدل سازی نموده و پارامترهای مختلف شبکه را در شبیه سازی تغییر داد و نتایج حاصل از شبیه سازی ها را مورد ارزیابی و مقایسه قرار داد. پس از هر شبیه سازی SDN می توان یک سری آماره یا Statistic را از نتایج شبیه سازی استخراج نمود. آماره ها در واقع پارامترهایی هستند که با انجام شدن هر شبیه سازی ، مقدار آنها مشخص می شود.
۱: معرفی شبیه ساز Mininet – قسمت اول
- معرفی شبیه ساز Mininet
- بررسی قابلیت های mininet
- نحوه دانلود و نصب mininet
- تشریح ساختار mininet
- راه اندازی یک توپولوژی ساده و اولیه در mininet
۲: معرفی شبیه ساز Mininet – قسمت دوم
- معرفی مهمترین دستورات داخلی شبیه ساز mininet
- نحوه ایجاد توپولوژی های مختلف اعم از خطی و درختی
- تنظیم پارامترهای مربوط به یک توپولوژی در mininet
۳: معرفی شبیه ساز Mininet – قسمت سوم
- روش های استفاده از محیط گرافیکی Mininet برای ساخت سناریوهای شبیه سازی دلخواه
۴: معرفی شبیه ساز Mininet – قسمت چهارم
- نحوه اجرای Wireshark و تبادل اطلاعات در Mininet
- نحوه ذخیره نتایج در فایل
۵: معرفی شبیه ساز Mininet – قسمت پنجم
- اسکریپت نویسی در MiniNet جهت ایجاد یک توپولوژی دلخواه
- نحوه اجرای برنامه ها در پس زمینه Mininet
۶: معرفی شبیه ساز Mininet – قسمت ششم
- ارسال پارامترهای شبیه سازی از خط فرمان
- خودکارسازی اجرای شبیه سازی
بخش دوم: آموزش کنترلر OpenDayLight
۱: آشنایی کامل با کنترلر OpenDayLight
- معرفی کامل کنترلر OpenDayLight
- بررسی مزایای کنترلر
۲: ماژول ها و نسخه های مختلف کنترلر OpenDayLight
- بررسی ساختار و ماژول های کنترلر ODL
- نسخه های مختلف کنترلر OpenDayLight
- معرفی نسخه های Lite و مبتنی بر سورس کد کنترلر اوپن دیلایت
۳: نحوه اجرا و کامپایل کنترلر OpenDayLight
- نحوه نصب نسخه مبتنی بر سورس کد کنترلر OpenDayLigh در لینوکس
- آموزش نحوه کامپایل کنترلر اوپن دیلایت به کمک MAVEN
- نحوه معرفی کتابخانه های کنترلر ODL به Eclipse جهت کد نویسی در این پروتکل
بخش سوم: اتصال سناریو به کنترلر
۱: معرفی OpenFlow
- نحوه ایجاد یک سناریوی دلخواه در Mininet
- نحوه اتصال سناریوی ایجاد شده به کنترلر OpenDayLight
۲: ایجاد و اتصال سناریو به کنترلر OpenDayLight
- تشریح قوانین نصب شده توسط کنترلر
- آماره (Statistic) های مربوط به سوئیچ
- توضیح آمار مربوط به سوئیچ ها
بخش چهارم: ارسال فرمان به کنترلر از طریق REST API
۱: مفهوم REST و روش های ارسال فرامین REST با دستورات curl
- مفهوم REST و دستورات آن
۲: ادامه روش های ارسال فرامین REST به کنترلر
- نحوه ارسال فرامین به کنترلر از طریق REST API ها توسط دستور Curl و محیط مرورگر
بخش پنجم: گزارش گیری و اجرای دستور بر روی کنترلر
۱: ارسال دستورات REST از طریق برنامه نویسی جاوا
- ارسال دستورات Rest API از طریق برنامه نویسی جاوا
۲: ارسال فرمان گزارش گیری، نصب و حذف قوانین سوئیچ
- جمع آوری و نمایش گزارش ها از سوئیچ های شبکه
- فرامین نصب و حذف قوانین بر روی سوئیچ ها
بخش ششم: روش ایجاد باندل برای کنترلر
۱: نحوه ایجاد باندل برای کنترلر ODL
- مراحل ایجاد یک باندل جهت نصب بر روی کنترلر
۲: نصب قوانین Reactive برای کنترلر ODL
- نصب قوانین Reactive برای کنترلر ODL
۳: نحوه ایجاد یک باندل توازن بار برای کنترلر ODL
- پیکربندی فایل های مورد نیاز و همچنین دستورات مورد نیاز برای ایجاد یک باندل توازن بار
- طراحی یک ماژول در کنترلر جهت پیاده سازی عملیات توازن بار بر روی شبکه
ماژول 3 – SDN پشرفته (کنترلر ODL)
در این ماژول سعی کرده ایم تا شما را با مباحث پیشرفته شبکه های SDN و کنترلر ODL آشنا کنیم تا شما بتوانید تحقیقات و ارزیابی تخصصی روی شبکه های SDN انجام دهید. در این ماژول، ابتدا با توابع و باندل های پرکاربرد کنترلر ODL آشنا می شوید. سپس مراحل ایجاد یک باندل دلخواه را خواهید دید. در این ماژول خواهید دید که چگونه می توان یک باندل نمونه برای گزارش گیری از وضعیت سوئیچ ها ایجاد نمود. سپس با نحوه ایجاد یک باندل برای گزارش گیری از قوانین نصب شده بر روی سوئیچ ها آشنا خواهید شد و خواهید دید چگونه می توان یک باندل برای نصب و حذف قوانین بر روی یک سوئیچ ایجاد نمود.
همچنین نحوه ایجاد یک باندل برای گزارش گیری دوره ای از سوئیچ ها و ذخیره نتایج در فایل خروجی تشریح خواهد شد. در این ماژول با روش ایجاد یک باندل نمونه برای مسیریابی دلخواه و نصب آن روی سوئیچ ها، ایجاد باندل برای محاسبه تأخیر لینک ها، محاسبه میزان اتلاف بسته، utilization لینک ها نیز آشنا خواهید شد.
بخش اول: توابع و باندل های پر کاربرد کنترلر ODL و مراحل ایجاد یک باندل
در این بخش، توابع کتابخانه ای مهم و همچنین ماژول ها و باندلهای پر کاربرد کنترلر OpenDayLight تشریح می شود و مفاهیم مرتبط با باندل ها و دستورات اضافه کردن و متوقف کردن و حذف و یا راه اندازی مجدد آنها تشریح خواهد شد. همچنین کلیه مراحل مورد نیاز برای ایجاد یک باندل دلخواه نیز توضیح داده شده است.
- تشریح توابع و باندل های پرکاربرد کنترلر ODL
- مراحل ایجاد یک باندل دلخواه برای گزارش گیری از وضعیت شبکه
بخش دوم: ایجاد باندل هایی برای گزارش گیری، نصب و حذف قوانین سوئیچ ها و ذخیره نتایج در فایل
در این بخش، ابتدا یک باندل نمونه ساخته می شود تا به کمک آن بتوان انواع اطلاعات را در مورد وضعیت سوئیچ ها گزارش گیری کرد. سپس باندلی برای نصب و حذف قوانین روی سوئیچ ایجاد می شود و در نهایت باندلی ایجاد می شود که پس از گزارش گیری از قوانین روی سوئیچ، نتایج را در فایل ذخیره نماید.
- مراحل ایجاد یک باندل برای گزارش گیری از قوانین نصب شده روی سوئیچ ها
- مراحل ایجاد یک باندل برای نصب و حذف قوانین سوئیچ ها
- ایجاد یک باندل برای گزارش گیری از سوئیچ ها و ذخیره نتایج در فایل
بخش سوم: نحوه محاسبه Delay ، Packet Loss و Utilization از طریق ایجاد باندل
از آنجایی که به طور پیش فرض در تمامی کنترلر ها ، امکان محاسبه Delay ، Packet Loss ، Utilization وجود ندارد، این بخش جزء کلیدی ترین و مهمترین مباحث در مبحث کنترلر است. در این بخش نحوه ایجاد باندل هایی برای محاسبه نرخ اتلاف بسته، تأخیر و utilization لینک ها آموزش داده می شود و برای محاسبه هر کدام از این موارد، الگوریتم و رابطه ریاضی مربوطه به صورت کامل تشریح می شود.
- ایجاد باندل برای محاسبه Utilization لینک ها
- ایجاد باندل برای محاسبه تأخیر لینک ها
- ایجاد باندل برای محاسبه میزان اتلاف بسته
بخش چهارم: ایجاد یک باندل نمونه جهت مسیریابی دلخواه و نصب آن بر روی سوئیچ ها
در این بخش نحوه ایجاد یک باندل برای محاسبه مسیرها بر اساس الگوریتم مسیریابی دلخواه و نصب مسیرها بر روی سوئیچ ها جهت هدایت بسته ها تشریح می گردد.
- ساخت باندل جهت ایجاد یک مسیریابی جدید
بخش پنجم: ایجاد، ارسال و دریافت ترافیک، ذخیره و تحلیل نتایج
در این بخش، نحوه ایجاد ترافیک و همچنین روش ارسال و دریافت ترافیک تشریح می شود. در این بخش شما با ابزارهای تولید ترافیک آشنا می شوید و خواهید دید که چگونه می توان نتایج را ذخیره و سپس آن را تجزیه و تحلیل نمود.
- ایجاد، ارسال و دریافت ترافیک، ذخیره و تحلیل نتایج
ماژول 4 – SDN پشرفته (کنترلر RYU)
کنترلر RYU چیست؟ ریو یک کلمه ژاپنی به معنی “Flow” است (به صورت “re-yooh” تلفظ می شود). ryu یک فریمورک شبکه sdn مبتنی بر کامپوننت است. RYU از معروف ترین کنترلرهای SDN می باشد. کنترلر Ryu اجزای نرم افزاری با API کاملاً مشخص ارائه می دهد که ایجاد برنامه های جدید مدیریت و کنترل شبکه را برای توسعه دهندگان آسان می کند. Ryu از پروتکل های مختلفی مانند OpenFlow ، Netconf OF-config و … برای مدیریت دستگاه های شبکه پشتیبانی می کند. در این ماژول شما را با ساختار داخلی و مکانیزم های توسعه کنترلر RYU و همچنین نحوه به کارگیری کنترلر RYU در مدیریت یک شبکه SDN آشنا خواهیم کرد.
۱: معرفی کنترلر Ryu و روش نصب آن
- معرفی کنترلر Ryu
- دستورات نصب کنترلر
- نحوه اجرای کنترلر
- اتصال سناریو Mininet به Ryu
- راه اندازی واسط گرافیکی وب کنترلر Ryu
۲: معماری کنترلر Ryu
- معماری کنترلر Ryu
- مفاهیم کلیدی در معماری Ryu
۳: تحلیل رفتار و اجرای سوئیچ لایه ۲ در Ryu
- نحوه عملکرد یک سوئیچ لایه ۲
- اجرای سناریو به کمک سوئیچ لایه ۲
- تحلیل کد مربوط به سوئیچ لایه ۲ در Ryu
- ساختار کدنویسی App ها در Ryu
- مفاهیم مهم و کاربردی در تحلیل کد مربوط به App ها در Ryu
۴: جمع آوری آمار شبکه و قوانین سوئیچ ها در Ryu
- معرفی App جمع آوری آمار Traffic Monitor
- تشریح کد Traffic Monitor
- اجرای سناریو و تست Traffic Monitor
۵: گزارشگیری و پیکربندی Ryu با استفاده از REST
- مفهوم REST API
- برقراری ارتباط با کنترلر از طریق REST API ها
- پیکربندی و گزارشگیری از Ryu با استفاده از REST API
- لیست توابع کاربردی REST API در Ryu
- نوشتن یک برنامه برای تعامل با Ryu بر اساس REST
۶: نحوه نصب و حذف قوانین بر روی سوئیچ ها توسط Ryu
- فرامین نصب یک Flow Rule
- فرامین حذف Flow Rule
۷: معرفی پروتکل OpenFlow1.3
- معرفی پروتکل OF1.3
- فیلدهای Match در OF1.3
- عملیات مرتبط با OF1.3
۸: پردازش بسته ها در Ryu و استخراج اطلاعات بسته
- معرفی کلاس های مرتبط با بسته های مختلف
- نحوه ایجاد یک بسته در کنترلر و ارسال آن به شبکه
۹: ایجاد فایروال در Ryu به کمک REST
- معرفی APP مربوط به فایروال در Ryu
- ایجاد سناریو مبتنی بر فایروال
- اجرای قوانین بر روی فایروال
- حذف قوانین بر روی فایروال
۱۰: پیاده سازی QoS در Ryu
- مفهوم QoS
- ایجاد سناریو و اعمال QoS به کمک Ryu
- تست و اعتبار سنجی QoS
۱۱: محاسبه تاخیر و اتلاف بسته در Ryu
- روش محاسبه تاخیر لینک ها در Ryu
- روش محاسبه میزان اتلاف بسته در Ryu
۱۲ : افزودن ماژول مسیریابی به کنترلر Ryu
- ایجاد یک ماژول مسیریابی Reactive
- ایجاد یک ماژول مسیریابی Proactive
- اجرای عملیات محاسبه مسیر با استفاده از الگوریتم دایجسترا
۱۳: طراحی و پیاده سازی یک ماژول مسیریابی مبتنی بر QoS در کنترلر Ryu
- محاسبه کوتاهترین مسیر بر اساس تاخیر لینک ها
- محاسبه کوتاهترین مسیر بر اساس میزان اتلاف بسته در لینک ها
- محاسبه کوتاهترین مسیر بر اساس هزینه لینک متشکل از تاخیر و اتلاف
۱۴: طراحی و پیاده سازی یک ماژول مسیریابی چندمسیری در کنترلر Ryu
- محاسبه مفهوم Multipath Routing
- مفهوم GroupTable در OF1.3
- پیاده سازی ماژول مسیریابی چند مسیره
- پیاده سازی سناریو مبتنی بر مسیر یابی Multipath
ماژول 5 – شبیه سازی شبکه های SDWAN
در این ماژول، ابتدا با مفاهیم اصلی شبکه های SDWAN آشنا خواهید شد. سپس با کنترلر توزیع شده ONOS و نحوه نصب کنترلر ONOS و چگونگی اتصال به آن را فرا خواهید گرفت. در این ماژول خواهید دید چطور می توان از طریق REST API با کنترلر ONOS تعامل برقرار کرد و اطلاعات و پیکربندی آن را جمع آوری نمود. در نهایت شما با ONOS Clustering آشنا خوهید شد و نحوه طراحی یک محیط SDN با کنترلر توزیع شده را به طور عملی خواهید آموخت. از آنجا که این موضوع در سطح پیشرفته SDN است، شما به طور کامل با نحوه ماژول نویسی در ONOS نیز آشنا خواهید شد و به طور عملی با نحوه طراحی یک ماژول سفارشی جهت مسیریابی با استفاده از الگوریتم دایجسترا و کلونی مورچگان را فرا خواهید گرفت. در پایان شبیه سازی شبکه های SD-WAN با استفاده از Mininet WiFi را نیز یاد خواهید گرفت.
SDWAN چیست؟
شرکت سیسکو SDWAN را اینگونه تعریف می کند: SD-WAN عبارت است از مدیریت شبکه های WAN با رویکرد SDN.
مزایای کلیدی SDWAN عبارتند از:
- افزایش پهنای باند با هزینه کمتر
- مدیریت متمرکز از طریق یک کنسول مدیریت ساده، که نیاز به پیکربندی دستی و حضور کارکنان IT در محل را کاهش می دهد
- اشراف کامل در شبکه، زیرا کنترلر یک اشراف کلی از شبکه به اپراتورها می دهد
- امکان انتخاب های بیشتر برای نوع ارتباط و انتخاب ارائه دهنده سرویس، زیرا شبکه می تواند بر روی سخت افزار COTS قرار داشته باشد و از هر دو نوع ارتباطات خصوصی و عمومی برای مسیریابی ترافیک استفاده کند.
کنترلر ONOS چیست؟
ONOS مخفف Open Network Operating System یکی از معروف ترین کنترلرهای توزیع شده SDN است که لایه control plane را برای یک شبکه SDN، مدیریت اجزای شبکه، مانند سوئیچ ها و لینک ها، و اجرای برنامه های نرم افزاری یا ماژول ها برای ارائه خدمات ارتباطی به کاربران نهایی و شبکه های همسایه فراهم می کند. کنترلر ONOS می تواند به عنوان یک سیستم توزیع شده در چندین سرور اجرا شود و به شما این امکان را می دهد تا از CPU و منابع حافظه چندین سرور استفاده کنید در حالی که تحمل خطا را در مقابل خرابی سرور بالاتر برده و به طور بالقوه از بروزرسانی های زنده سخت افزاری و نرم افزاری، بدون قطع شدن ترافیک شبکه، پشتیبانی می کند.
بخش اول: مفاهیم شبکه های SDWAN
۱: معرفی اجمالی SD-WAN
- وضعیت فعلی شبکه های WAN
- تعریف SDWAN
- دلایل نیاز به SDWAN
- معماری SDWAN
- مزایای بکارگیری SDWAN
- مقایسه SDWAN, SDN
- SDWAN های موجود
- معرفی SDWAN شرکت سیسکو و Huawei
بخش دوم: کنترلر توزیع شده ONOS
1: کنترلرهای توزیع شده، معرفی ONOS و معماری آن
- سطح کنترلی توزیع شده (کنترلر توزیع شده)
- معرفی کنترلر ONOS
- معماری ONOS
- امکانات و ویژگی های ONOS
2: نصب ONOS
- نصب آخرین نسخه ONOS برای Administartor ها
- نصب آخرین ONOS برای Developer ها
- دستورات نصب ONOS
- پیکربندی محیط توسعه IntelliJ برای نوشتن و کامپایل ماژول های ONOS
3: نحوه اتصال به ONOS و اجرای یک سناریو ساده
- نصب Mininet
- اتصال به کنترلر با استفاده از Karaf shell
- برخی دستورات مهم KARAF
- اتصال به کنترلر با استفاده از واسط وب
- معرفی قسمت های مختلف واسط وب و دستورات آن
4: تعامل به ONOS به کمک REST API و جمع آوری اطلاعات و پیکربندی
- نصب RESTCLient در Mozilla
- دستورات REST API برای تعامل با ONOS جهت پیکربندی
- دستورات REST API برای تعامل با ONOS برای جمع آوری اطلاعات متنوع
- نوشتن یک برنامه مجزا برای تعامل با ONOS از طریق REST API ها
5: طراحی یک محیط SDN با کنترلر توزیع شده (ONOS Clustering)
- مفاهیم Clustering در ONOS
- نصب ابزارها و ملزومات جهت پیاده سازی Clustering
- پیکربندی Docker
- دستورات و فایلهای پیکربندی مورد نیاز برای Clustering
- اجرای یک محیط سه کنترله و نحوه تعامل با آن
- اتصال بخش های مختلف یک توپولوژی به کنترلر های جداگانه
6: ماژول نویسی در ONOS
- ساختار App ها و ماژول ها در ONOS
- نحوه نوشتن یک ماژول
- نحوه کامپایل ماژول توسط bazel
- نحوه کامپایل ماژول در IntelliJ
- نحوه نصب ماژول طراحی شده در کنترلر ONOS
- نحوه فعال یا غیر فعال کردن یک ماژول
- طراحی یک ماژول سفارشی جهت مسیریابی با استفاده از الگوریتم دایجسترا و کلونی مورچگان
بخش سوم: شبیه سازی SDWAN به وسیله Mininet WiFi (جدید)
- معرفی Mininet WiFi
- آموزش نصب Mininet WiFi
- دستورات کاربردی Mininet WiFi
- طراحی سناریوی بی سیم (SDWAN) با کدنویسی پایتون در Mininet WiFi
- اتصال سناریو بیسیم ایجاد شده در Mininet WiFi به کنترلر
- مدیریت سناریو بیسیم مینی نت وای فای توسط کنترلر
ماژول 6 – شبکه های انتقال SDN
T-SDN یا Transport SDN یکی از موضوعات جدید در شبکه های انتقال است. Transport SDN چیست؟ Transport SDN یا شبکه های انتقال مبتنی بر نرم افزار ، تکنولوژی جدیدی است که با به کارگیری SDN کمک می کند تا محدودیت ها و مشکلات فعلی موجود در شبکه های انتقال نوری (Optical Transport Networks) برطرف شود. در این ماژول به معرفی شبکه های TSDN از جنبه های مختلف و همچنین چگونگی گذار از شبکه های انتقال فعلی به شبکه های انتقال مبتنی بر نرم افزار (T-SDN) خواهیم پرداخت.
1: مفاهیم و کلیات T-SDN
- مفهوم Transport SDN
- ویژگی های ذاتی شبکه های Transport
- مزایای شبکه های Transport SDN
2: کاربرد T-SDN و ارتباط آن با شبکه های MPLS
- موارد کاربرد Transport SDN
- رابطه بین GMPLS با TSDN
3: معرفی استانداردها و ابزارهای شبیه سازی T-SDN
- شبکه TSDN و Virtualization
- شبیه سازهای موجود برای TSDN
- انواع شبکه های TSDN
- استانداردهای مختلف در حوزه TSDN
- شرکت هایی که در حال حاضر از Transport SDN استفاده می کنند
- پروژه های متن باز در حوزه TSDN
4: شبکه های TSDN پیاده سازی شده
- ADVA
- Alcatel-Lucent
- Ciena
- Coriant
- Ericsson
- Fujitsu
- Huawei
- Infinera
- Juniper
5: آینده T-SDN و چالش های موجود
- چالش ها و مسائل پیش رو در TSDN
- موارد کاربرد (Use Case) شبکه های انتقال TSDN از نظر ONF
- دلایل نیاز به بکارگیری Transport SDN در شبکه های Telecom Carrier
- سرویس های TSDN
- مراحل گذر از شبکه های فعلی به TSDN
منابع و مراجع
- SDN: Software Defined Networks
- Demystifying SDN for Optical Transport Networks
- Optimizing Multi-Layer Networks with Carrier SDN
- Software Defined Network Architecture for Transport Networks
ابزارهای مورد نیاز دوره
- ffmpeg و VLC (ارسال و دریافت ترافیک ویدئویی)
- Qpsnr (محاسبه PSNR ترافیک ویدئویی)
- Opendaylight
- RYU
- ONOS
- Eclipse
- Wireshark
- Mininet 2.2.2 on Ubuntu 14.04 LTS – 64 bit
- Mininet 2.2.2 on Ubuntu 14.04 LTS – 32 bit
- User & Pass: mininet
درخواست مشاوره
برای کسب اطلاعات بیشتر درباره این دوره درخواست مشاوره خود را ارسال کنید و یا با ما در تماس باشید.
درخواست مشاورهدوره های مرتبط
دوره اصول و مبانی برنامه نویسی
دوره هایپرلجر فابریک مقدماتی | HyperLedger Fabric
دوره آموزش شبیه ساز GNS3
معرفی دوره برای آموزش GNS3 ابتدا باید ببینیم GNS3 چیست؟ یک شبکه کامپیوتری یا مخابراتی، شامل تجهیزاتی است که اجرای…
دوره آموزش شبیه ساز Omnet
معرفی دوره OMNET چیست؟ یک شبکه کامپیوتری یا مخابراتی، شامل تجهیزات و زیرساختی است که اجرای آن در مقیاس تجاری،…
پکیج آموزش جامع NS3
اهداف دوره در پکیج آموزش جامع NS3، شما پس از آموزش کامل آموزش ns3، شبیه سازی انواع شبکه های سیمی،…
پکیج آموزش جامع Opnet
معرفی دوره قبل از آشنایی با شبیه ساز OPNET ابتدا باید با شبکه آشنا شویم. یک شبکه کامپیوتری یا مخابراتی،…
دوره آموزش مجازی سازی کارکردهای شبکه NFV
معرفی دوره مفهوم مجازی سازی کارکردهای شبکه (NFV) در تعریف NFV و پاسخ به سوال “NFV چیست” باید بگوییم NFV عبارت…
دوره آموزش برد رزبری پای – ۳ Raspberry Pi
معرفی دوره رزبری پای چیست؟ Raspberry Pi یک برد الکترونیکی است که برای پیاده سازی پروژه های کنترلی مورد استفاده…
دوره آموزش اینترنت اشیا با Packet Tracer
معرفی دوره آموزش اینترنت اشیا اخیراً بسیار پر اهمیت شده است چرا که با پیشرفت سریع علوم و تکنولوژی در…
پکیج آموزش جامع NS2
معرفی دوره قبل از آموزش NS2 ابتدا ببینیم شبکه چیست. یک شبکه کامپیوتری یا مخابراتی، شامل یک سری تجهیزات و…
امتیاز دانشجویان دوره
نظرات
۱,۲۰۰,۰۰۰ تومان قیمت اصلی ۱,۲۰۰,۰۰۰ تومان بود.۱,۰۰۰,۰۰۰ تومانقیمت فعلی ۱,۰۰۰,۰۰۰ تومان است.
دکتر رضا محمدی
مدرس دورههای SDN و NFVدکتری تخصصی (PHD) رشته مهندسی فناوری اطلاعات – گرایش شبکه های کامپیوتری – دانشگاه صنعتی شیراز - عضو هیئت علمی دانشگاه بوعلی همدان - مدرس دورههای SDN و NFV
پردرآمدترین مهارت ها را یاد بگیرید
طرح استعدادیابی
ارشدان بلاکچین
(Blockchain Seniors)
تا کنون بیش از 1000 دانشجو در این طرح شرکت کرده اند.
شما هم دوست دارید برای تضمین آینده کاری خودتان به این جمع بپیوندید؟
همین امروز شروع کنید!
مجید شبیری(مدیریت)
با سلام و عرض ادب خدمت دوستان گرامی که با دوره آموزشی SDN همراه ما هستند.
اگر سوالی در رابطه با این مبحث داشتید لطفا در بخش نظرات عنوان بفرمایید.
با تشکر و قدردانی از همراهی شما دوستان گرامی.
Rahmatiniam
سلام. وقت بخیر
آموزش های دوره مقدماتی minineetشامل آموزش در محیط mininer و دستور نویسی های مربوطه هست یا پاورپوینت بیس هست؟!
سید مجید شبیری(مدیریت)
سلام
وقت بخیر
این دوره آموزشی کاملاً کاربردی است و آموزش ها در محیط Mininet به صورت عملی است. بالطبع مباحث تئوری و مفاهیم باید به صورت اسلاید باشد تا انتقال مفاهیم با کیفیت بالاتر و به صورت موثر صورت بگیرد. ولی قسمت های عملی از جمله دستورات Mininet و کار کردن با کنترلر به صورت عملی در محیط واقعی صورت گرفته است.
امیدوارم با استفاده از آموزش های SDN تحقیقات موفقی داشته باشید.
setareh
سلام
برای شبیه سازی الگوریتم در این شبیه ساز کدوم دوره رو ثبت نام کنم؟
سید مجید شبیری(مدیریت)
با سلام
در ماژول پیشرفته SDN افزودن یک مسیریابی جدید آموزش داده شده است.
موفق باشید.