شبیه سازی شبکه های رادیو شناختی (CRE-NS3) با NS3
در این بخش آموزش نصب ابزار شبیه سازی شبکه های رادیو شناختی (CRE-NS3) که تحت نرم افزار NS3 ساخته شده را با شما به اشتراک می گذاریم که این ابزار بهبود یافته ابزار CRCN می باشد که قبلا براساس نرم افزار NS2 پیاده سازی شده بود. در ادامه توضیحاتی از معرفی شبکه رادیو شناختی ارائه شده و مراحل نصب و راه اندازی CRE-NS3 قرار داده شده است.
رادیو شناختی (Cognitive Radio)
رادیو شناختی یک سیستم ارتباطی بی سیم هوشمند است. هر رادیو به طور متناوب از محیط اطراف خود آگاه بوده و می تواند پارامتر های رادیویی خود را به صورت پویا تنظیم کند و کانال ها را بر اساس سیاست های از پیش تعریف شده تغییر دهد. به طور خاص، یک شبکه رادیو شناختی باید بتواند رسانه را حس کند و استنباط کند که آیا یک کاربر اصلی در شبکه فعال است یا خیر، بتواند تصمیم بگیرد که آیا می تواند به یک کانال خالی سوئیچ کند یا خیر، و اگر قادر به سوئیچ است، نوع کانال را نیز مشخص کند، و این اطلاعات را با رادیو های اطراف خود به اشتراک می گذارد تا داده ها از سر گرفته شوند. [1] در مرجع [4] نویسندگان چارچوبی را برای نرم افزار شبیه ساز NS3 پیشنهاد کردند که برای شبکه های بزرگ مناسب است. رویکرد آنها چندین قابلیت CR را معرفی می کند، مانند سنجش طیف، تشخیص کاربر اولیه، و دست به دست شدن (Hand off) طیف. شبیه ساز آنها در مقایسه با نسخه های قبلی که برای محیط شبیه ساز NS2 پیاده سازی شده بود، بهبود هایی را در زمان اجرا و استفاده از حافظه نشان می دهد.
ابزار رادیویی شناختی (CRE-NS3) برای NS3
این ابزار برای افزودن قابلیت های شبکه رادیویی شناختی (CR) بر روی نرم افزار شبیه سازی NS3 ساخته شده است. همانطور که در مرجع [1] ارائه شده، این ابزار ساختار های زیر را ارائه می دهد:
شکل زیر نیز نمای کلی تغییرات انجام شده در هسته شبیه ساز NS3 را برای ساخت این افزونه رادیویی شناختی نشان می دهد.
هر گره NS3 ممکن است هر تعداد رابط شناختی را در هر کدام از گره ها ترکیب کند. جزییات بیشتر و جزیی تر در مورد تغییرات مورد نیاز برای اجرای این افزونه را می توان در مرجع [2] یافت. همچنین اسناد API را نیز می توان از مرجع [3] بررسی کرد
آماده سازی سیستم برای نصب NS3
پیش نیاز ها وابستگی های لازم ns3 را نصب کنید:
1 2 3 4 5 | # refresh the database of available packages $ apt-get update #install the dependencies $ apt install g++ python3 python3-dev pkg-config sqlite3 tbase5-dev qtchooser qt5-qmake qtbase5-dev-tools #(see https://www.nsnam.org/wiki/Installation for more details) |
مراحل نصب ابزار CRE-NS3
این شبیه ساز در حال حاضر بر روی ns-3.17 ساخته شده است. ابتدا شما باید از Mercurial برای بهره مندی از All-in-one استفاده کنید.
1 | hg clone http://code.nsnam.org/ns-3-allinone |
با تایپ دستور cd وارد پوشه جدید ساخته شده بروید و ns-3.17 را دانلود کنید.
1 2 | cd ns-3-allinone ./download.py -n ns-3.17 |
با این کار ns-3.17 و سایر اجزای مورد نیاز برای داشتن یک شبیه ساز کاملاً کاربردی ns-3 دانلود می شود.
سپس دایرکتوری ns-3.17 را حذف کنید و منابع خود را که شامل CRE-NS3 هستند در آن دایرکتوری بررسی کنید. شاخه ای که ما به آن نیاز داریم cognitive نام دارد.
1 2 | rm -r ns-3.17 git clone https://github.com/abdulla-alali/CRE-NS3.git -b cognitive ns-3.17 |
اکنون می توانید کل پروژه را بیلد کنید.
1 | ./build.py |
مرحله پیکربندی NS3
1 2 | $ cd /home/your_home/ns-3.17 $ ./waf configure |
تصویر زیر پایان یک فرآیند پیکربندی موفق را نشان می دهد.
مرحله کامپایل NS3
1 2 | $ cd /home/your_home/ns-3.17 $ ./waf -vv |
تصویر زیر نصب موفقیت آمیز ابزار رادیویی شناختی را در ns-3.17 نشان می دهد.
آزمایش تست با یک نمونه اسکریپت
اکنون می توانید مثال شبیه سازی شبکه رادیویی شناختی را به صورت زیر اجرا کنید و نتایج را مشاهده کنید.
1 2 | $ cd /home/your_home/ns-3.17 $ ./waf –run example |
تصویر زیر اجرای موفق شبیه سازی را نشان می دهد.
تصویر زیر خروجی NetAnim شبیه سازی مثال رادیویی شناختی را نشان می دهد.
انیمیشن گیف زیر شبکه رادیویی شناختی را به صورت عملی نشان می دهد.
منابع
- https://coe.northeastern.edu/Research/krclab/crens3/index.html
- https://coe.northeastern.edu/Research/krclab/crens3/paper/cre-ns3.pdf
- http://www.coe.neu.edu/Research/krclab/crens3-doc
- Al-Ali and K. R. Chowdhury, “Simulating Dynamic Spectrum Access using ns-3 for Wireless Networks in Smart Environments,” IEEE SECON Workshop on Self-Organizing Wireless Access Networks for Smart City, Singapore, June 2014.
هیچ نظری ثبت نشده است