رشته فناوری اطلاعات (IT)
آزمایشگاه اجتماعی یک بستر آزمایشگاه برای شبکه اجتماعی (Community Network (CN می باشد که در آن محققان قادر به انجام آزمایش بر روی شبکه ی اجتماعی و همچنین آزمایش بر روی پروتکل ها و برنامه های مستقر در شبکه های اجتماعی واقعی می باشند. ولی آزمایشگاه های اجتماعی کنونی از نظر امکان آزمایش بر روی لایه ی دوم شبکه مثل تست پروتکل های جدید مسیر یابی لایه دو دارای محدودیت می باشد که در این تحقیق قصد داریم این محدودیت را توسط شبکه های مبتنی بر نرم افزار SDN و پروتکل OpenFlow مرتفع سازیم.
یکی از تعاریف کارآمد SDN جداسازی عملکردهای دادهای و عملکردهای کنترلی مسیریاب ها و سایر زیرساختهای لایه دوم شبکههای معمولی با استفاده از یک رابط برنامهنویسی است. تا به حال مراکز تحقیقاتی سازوکارهای مختلفی برای استفاده از راهکار SDN در شبکه ها به وجود آورده اند که کامل ترین نسخه آنها OpenFlow است که یک رابط استاندارد برای مدیریت متمرکز تجهیزات شبکه های رایانه ای در اختیار می گذارد.
در واقع با استفاده از OpenFlow می توان مسیر عبور بسته ها در شبکه روی تجهیزات شبکه ای مختلف را به صورت نرم افزاری تعیین و سیاست های پیچیده مسیریابی و امنیتی را بسادگی پیاده سازی کرد. هدف نهایی و نتیجه مطلوبی که به وسیله راهکار SDN در شبکه ها به دست خواهد آمد، به نظارت دقیق لحظه ای و بررسی صحت عملکرد بستر شبکه و همخوانی با سیاست های مدنظر و عیب یابی سریع تر و دقیق تر مشکلات در شبکه منجر خواهد شد.
فهرست مطالب
فصل اول : مقدمه 1
1.1 مقدمه 2
1.2 طرح مسئله 4
1.3 ضرورت تحقیق 4
1.4 سوالات تحقیق 6
1.5 محدوده ی پژوهش 6
1.6 فرضیات تحقیق 7
1.7 نوآوری های تحقیق 8
1.8 ساختار پایان نامه 8
فصل دوم : ادبیات و پیشینه ی تحقیق 10
2.1 مقدمه 8
2.2 زيرساخت يک شبکه 8
2.2.1 شبکه ها ی کامپيوتری را می توان بر اساس سه ويژگی متفاوت تقسيم نمود : 9
2.2.2 تجهیزات شبکه 14
2.3 شبکه های اجتماعی 16
2.3.1 خصوصیات و عملکرد شبکه های اجتماعی 19
2.4 رسانه های اجتماعی 21
2.4.1 ویژگی های رسانه های اجتماعی 21
2.4.2 انواع رسانههای اجتماعی 22
2.5 تفاوت Social Network و Community Network 23
2.5.1 Social networks 23
2.5.2 Community Network 24
2.6 شبکه های ارتباط بی سیم 26
2.6.1 شبکه های مش بی سیم 26
2.6.2 نقش شبکه های بیسیم مش در شبکه های اجتماعی 31
2.7 آزمایشگاه اجتماعی 32
2.8 محدودیت فناوری شبکه های کنونی 35
2.8.1 پیچیدگی های منتهی به کاهش درآمد 37
2.8.2 سیاست های متناقض 38
2.8.3 فقدان مقیاس پذیری 38
2.8.4 وابستگی به فروشنده 39
2.9 شبکه های نرم افزار محور 39
2.9.1 تاریخچه ی شبکه های نرم افزار محور 40
2.9.2 شبکه های نرم افزار محور 45
2.9.3 معماری SDN : 50
2.10 پروتکل OpenFlow 55
2.10.1 FlowTable 60
2.10.2 Open Flow Switch 61
2.10.3 کنترل کننده 63
2.10.4 حالت های برنامه های کنترلی OpenFlow 66
2.10.5 کاربرد های Open Flow 67
2.10.6 Openflow 69
2.10.7 معماری منطقی سوئیچ 69
2.10.8 مولفههای جدول جریان داده 71
2.10.9 مولفه فیلدهای تطبیق داه شده ورودی یك جدول شامل فیلدهای ضروری زیر است: 71
2.10.10 فیلدهای زیر ممكن است پشتیبانی شوند: 72
2.10.11 مشخصات Openflow كارهای زیر را انجام می دهد: 74
2.10.12 دستورالعملها 4 نوع هستند: 75
2.10.13 خط لوله جدول جریان داده 76
2.10.14 ساختار پروتكل Openflow 78
2.11 مقایسه ی معماری شبکه های نرم افزار محور با معماری فعلی شبکه های کامپیوتری 80
2.12 موانع 82
2.13 چالش ها 83
2.13.1 شبکه های مش بی سیم 83
2.13.2 شبکه های اجتماعی و بستر های آزمایشی شبکه های اجتماعی 84
2.14 کار مرتبط 86
2.14.1 SDN در شبکه های مش بی سیم 87
2.14.2 SDN در محیط های ناهمگن و روستایی 89
2.14.3 SDN در شبکه های تلفن همراه 90
2.15 نتیجه گیری 91
فصل سوم : روش تحقیق 93
3.1 مرور کلی و توصیف ساختار 68
3.1.2 تصمیم گیری 69
3.2 پیاده سازی معماری 79
3.2.1 poxy ، یک پروکسی برای کنترل کننده ی pox of. 80
3.2.2 openVswitch 84
3.2.3 OpenDayLight 85
3.2.4 نرم افزار خارجی 87
3.2.5 آزمایشات L2 در جامعه آزمایشگاه 90
3.3 نتیجه گیری 95
فصل چهارم : ارزیابی 97
4.1 مقدمه 90
4.2 ارزیابی 90
4.2.1 ارزیابی عملکرد 90
4.2.2 تجزیه و تحلیل عملکرد 91
4.2.3 سربار ارتباطات 92
4.3 بحث 96
4.3.1 مقابله با چالش ها 96
4.3.2 مشخصات توزیع شده در این معماری 98
4.4 نتیجه گیری 99
فصل پنجم : نتیجه گیری و پیشنهادات 99
5.1 نتیجه گیری 98
5.1.1 محدودیت های تحقیق 100
5.2 کارهای آتی 102
5.2.1 تعمیم معماری ارائه شده برای شبکه های اجتماعی CN و WMN ها 103
منابع و مآخذ 105
فهرست جدول ها
جدول 2.1 مدل مرجع OSI به همراه پروتکل های قابل اجرا در هر لایه 10
جدول 2.2 مدل مرجع OSI و تجهیزات SDN پیاده سازی شده بر روی این مدل 39
جدول 2.3 پیغام های ورودیهای جریان داده در جداول جریان داده 58
جدول 2.4 مقایسه ی معماری شبکه های نرم افزار محور با معماری فعلی شبکه های کامپیوتری 60
فهرست شکل ها
شکل 2.1 ساختار اجتماعی Social Network 19
شکل 2.2 ساختار اجتماعی Community Network 20
شکل 2.3 ترسیمی از معماری شبکه مش 22
شکل 2.4 نوعی از معماری WMN 25
شکل 2.5 معماری آزمایشگاه اجتماعی 26
شکل 2.6 نگاه انتزاعی به مفهوم آزمایشگاه اجتماعی 27
شکل 2.7 معماری عمودی تجهیزات فعلی شبکه 34
شکل 2.8 معماری افقی تجهیزات شبکه ی SDN 35
شکل 2.9 شمايي از SDN 36
شکل 2.10 ساختار منطقی SDN 38
شکل 2.11 SDN Domain 40
شکل 2.12 اجزای سازنده ی Open Flow 42
شکل 2.13 نمونه ای از شبکه Openflow enabled switch 43
شکل 2.14 فیلد های یک Flow Table 44
شکل 2.15 هدر یک سوئیچ Type0 47
شکل 2.16 معماری منطقی سوئیچ 51
شکل 2.17 خط لوله ی جریان داده 56
شکل 3.1 ساختار کلی معماری 68
شکل 3.2 استقرار OpenVswitch 70
شکل 3.3 استقرار کنترلر 71
شکل 3.4 دو روش ممکن برای دستیابی به اتصالات L2 72
شکل 3.5 نحوه ی صحیح برقراری اتصالات رابط های شبکه ی محلی و مدیریتی 74
شکل 3.6 بقراری اتصال با کنترل کننده 75
شکل 3.7 استقرار پروکسی کنترلر 76
شکل 3.8 ساختار نهایی بستر آزمایشگاهی 77
شکل 3.9 پیاده سازی بخش های اصلی ساختار 82
شکل 3.10 استقرار و پیاده سازی نرم افزار های کنترلر و مدیریت گره ی Confine 83
شکل 3.11 برقراری ارتباط با گره های جامعه توسط پروتکل و اتصالات Batman–adv 84
شکل 3.12 دیدگاه کاربر از توپولوژی 86
شکل 3.13 دیاگرام سلسله مراتبی نحوه ی گردش کار معماری 87
شکل 3.14 دیاگرام همکاری نحوه ی گردش کار معماری 88
شکل 4.1 واسط کاربری OpenDayLight 91
شکل 4.2 دو نقطه اصلی در ایجاد سربار های ارتباطی 93
شکل 4.3 معماری سرور بستر آزمایشی 93
شکل 4.4 معماری گره ی بستر آزمایشی 94