توضیحات
شبیه سازی پروتکل بیت تورنت بر روی بستر محدود با استفاده از زبان پایتون python
بيت تورنت نوعي پروتکل اشتراک گذاری فایل به صورت همتا به همتا(peer to peer) میباشد بدین معنا که بر خلاف سرویس های متداول اشتراک گذاری که سروری مرکزی وظیفه توزیع و اشتراک گذاری فایل ها را بر عهده دارد در این پروتکل عمده کار توزیع و اشتراک گذاری توسط کاربران انجام میگیرد. در واقع بر خلاف سرویس های متداول که با افزایش تعداد کاربران کم میشود در این سرویس افزایش کاربران کمک کننده نیز می باشد. این پروتکل در سال 2001 رو نمایی شد و نسخه ابتدایی آن نیز با زیان پایتون نوشته شده بود.
در این نوشته ما شبیه سازی پروتکل بیت تورنت را بر روی بستر محدود و با تعداد مشخصی از کلاینت ها بررسی خواهیم کرد که در ادامه به آن میپردازیم.
پیاده سازی یک فریم ورک برای شبیه سازی
از آن جایی که منابع موجود برای شبیه سازی این پروتکل با زبان پایتون تا کنون به صورت اصولی ارایه نشده است (البته به جز یک یا 2 مورد که خود با مشکلات و محدودیت های فراوانی همراه هستند) تصمیم گرفته شد تا برای این شبیه سازی فریم ورکی از پایه طراحی و پیاده سازی شود.
در مورد استفاده از شبیه سازهای متداول همچون cisco packet tracer,opnet,omnet,ns2-3,gns3 نیز یا به ذات توانایی اجرای همچین شبیه سازی را نداشتند (همچون gns3-cisco packet tracer) یا پیاده سازی در آن ها با محدودیت ها و مشکلات فراوانی همراه بود (همچون Opnet) یا پیاده سازی در آن ها برای چنین پروتکلی کاری طولانی (با توجه به محدودیت زمانی) و پیچیده بود (همچون omnetوns2-3). تمام این دلایل به علاوه flexibility بالای زبان پایتون و لینوکس تصمیم گرفته شد تا شبیه سازی بر روی این بستر پیاده سازی شود.
در این شبیه سازی از لینوکس نسخهlubuntu 16.04 64 بیت استفاده شد. Lubntu نسخه بر پایه ی Ubuntu میباشد که با توجه به حجم شبیه سازی نیاز است از نستخه ای نسبتا سبک استفاده شود که lubuntu به نسبت توزیع های لینوکس با توجه به استفاده از دستکتاپ مینیمال LXDE سبکتر میباشد.
همچینین این هاست بر روی virtualbox نسخه 4.3.36 نصب شده است که سیستم فیزیکی استفاده شده برای پروژه نیز دارای مشخصات1.2 RAM 4 gig, CPU core i3 میباشد.
به vm کانفیگ شده برای استفاده در شبیه سازی 2 گیگ رم و 2 هسته صد در صد سی پی یو به آن اختصاص داده شده است.
در شکل 1 نمای کلی توضیحات فوق و مجازی سازی آمده است.
شکل 1
در جداول 1و2 کلیه مشخصات سیستم های مورد استفاده آمده است.
Features |
Object |
Core i3 – 2.1 GHz 3M |
CPU |
4 Gig |
RAM |
Debian-Linux 3.16.0.4-pae i686 |
Operating System |
جدول 1
Features |
Object |
2 Cores / 100 percent |
CPU |
2 Gig |
RAM |
Lubuntu X64 16.04 |
Operating System |
50G |
HDD |
جدول 2
در این شبیه سازی ما از تکنولوژی جدید LXC برای شبیه سازی تک تک هاستها (کامپیوتر ها) استفاده کردیم که مبنای اصلی ما 20 هاست به همراه یک سرور فایل شیرینگ/ترکر بوده است. از این تکنولوژی در چندین شبیه ساز جدید شبکه از جمله Mininet و CORE که جزو شبیه سازهای بسیار خوب شبکه میباشند استفاده شده است.
این تکنولوژی با جداسازی User NameSpace و Network NameSpaceاز سیستم عامل اصلی امکان ساخت Container های مجازی را روی بستر سیستم عامل موجود بدون نیاز به HyperVisor جانبی فراهم می آورد. این امر باعث می شود تا در عمل هاست های مجازی با کمترین بارگذاری روی سیستم اصلی ساخته و لود شوند . بسته به نوع سناریوی شبیه سازی به تعدادی هاست که به طور همزمان در حال فعالیت می باشند نیاز می باشد که این مطلوب با توجه به ویژگی های ذکر شده در این تکنولوژی بسیار مناسب این امر می باشد.
تفاوت این سیستم با سیستم متداول مجازی سازی (استفاده از HyperVisor) در شکل شماره 2 آمده است.
- پخش کردن ترافیک در کل شبکه و خارج کردن Node یا Node هایی خاص از ترافیک سنگین و نقطه شکست.
- صرفه جویی در خرید Server و تجهیزات مربوطه.
- امنیت بهتر به لحاظ IP Address های خاص.
شبیه سازی پروتکل بیت تورنت بر روی بستر محدود با استفاده از زبان پایتون python توسط کارشناسان گروه ۱.۲.۳ پروژه پیاده سازی گردیده و به تعداد محدودی قابل فروش می باشد.فایلهای پروژه به صورت کامل پس از خرید فایل بلافاصله در اختیار شما قرار خواهد گرفت.
سفارش پروژه مشابه
درصورتیکه این پروژه دقیقا مطابق خواسته شما نمی باشد، با کلیک بر روی کلید زیر پروژه دلخواه خود را سفارش دهید.
دیدگاهها
هیچ دیدگاهی برای این محصول نوشته نشده است.