شبیه سازی نسل پنجم شبکه تلفن همراه با ماژول 5G-LENA در NS3
این مقاله نحوه نصب ماژول 5G-LENA 3GPP-NR را بر روی NS-3.36 تحت سیستم عامل Debian توضیح می دهد. این مقاله چیزی نیست جز گزارش یادگیری نصب ماژول 5G-LENA 3GPP-NR در نرم افزار NS3 که به صورت تصویری و مرحله به مرحله نشان داده شده است.
رادیو جدید در نسل پنجم شبکه تلفن همراه (5G New Radio)
فناوری 5G NR یک فناوری جدید دسترسی رادیویی (RAT) است که توسط 3GPP برای نسل پنجم شبکه تلفن همراه (5G) توسعه یافته است. این استاندارد جهانی برای رابط هوایی شبکه های 5G طراحی شده است [3]. فناوری 5G NR از باند های فرکانسی در دو محدوده فرکانسی استفاده می کند که شامل محدوده فرکانس اول (FR1) برای باند های 410 مگاهرتز – 7125 مگاهرتز و همچنین محدوده فرکانس دوم (FR2) برای باند های 24250 مگاهرتز – 52600 مگاهرتز می باشد. حالت غیر مستقل (NSA) از 5G NR به گزینه ای از استقرار 5G NR اشاره دارد که برای عملکرد های کنترلی به صفحه کنترل یک شبکه 4G LTE موجود بستگی دارد، در حالی که 5G NR منحصراً بر روی صفحه کاربر متمرکز است.
ماژول 5G-LENA 3GPP-NR
ابزار 5G-Lena یک شبیه ساز شبکه رادیویی جدید (NR) است که به عنوان یک ماژول قابل اتصال به NS3 توسط گروه شبکه های تلفن همراه از مرکز فناوری مخابراتی کاتالونیا (CTTC) که یک موسسه تحقیقاتی عمومی می باشد، طراحی شده است [1]. شبیه ساز تکامل طبیعی LENA ، یک شبیه ساز شبکه LTE/EPC است که توسعه یافته و الهام گرفته از ماژول mmWave می باشد که توسط NYU/UniPD [2] ساخته شده و ویژگی های اساسی PHY-MAC NR را با NR Release 15 ترکیب می کند. ابزار 5G-LENA که ما در این نصب استفاده کردیم، نسخه ای است برای نصب ماژول 3GPP-NR در ns-3-dev مورد استفاده قرار گرفته و برای شبیه سازی شبکه های سلولی غیرمستقل 5G NR تحت NS3 و با استفاده از پروژه 5G-LENA می باشد. شکل معماری زیر از مرجع [4] تمام بلوک های ساختاری از یک میزبان راه دور تا یک تجهیزات کاربر به همراه مدل آنها را توصیف می کند.
با مطالعه لینک های زیر می توانید با ویژگی های این ماژول بیشتر آشنا شوید:
این مراحل نصب مبتنی بر سیستم عامل Debian chroot jail است. بنابراین، قبل از ادامه نصب، باید یک Debian chroot jail تنظیم کنید.
مرحله اول: نصب ns-3-dev
اگر ابزار Git روی سیستم شما نصب نیست، ابتدا آن را نصب کنید.
1 2 | $ sudo apt update $ sudo apt install git |
یک کپی از مخزن ns-3-dev را به شرح زیر دانلود کنید:
در اینجا ما فرض می کنیم که نسخه برنامه فعلی برابر با ns-3.36 است. بنابراین در آینده ممکن است نیاز به نصب نسخه مناسب از ns-3 داشته باشید که با ماژول های 5G-LENA و NR سازگار است.
1 2 3 | $ cd /home/your_home/ $ git clone https://gitlab.com/nsnam/ns-3-dev.git $ cd ns-3-dev |
در این مرحله می توانید به صورت زیر به شاخه انتشار سازگار ns-3 بروید:
1 | $ git checkout ns-3.36 |
در نصب بر اساس chroot jail ممکن است لازم باشد موارد زیر را انجام دهیم:
مرحله دوم: پیکربندی NS3
1 2 | $ cd ns-3-dev $ ./ns3 configure –enable-examples –enable-tests |
تصویر زیر ماژول های پیکربندی شده ای را نشان می دهد که آماده ساخت با نسخه پیش فرض ns-3-dev (3.36) هستند.
مرحله سوم: کامپایل ns-3-dev پیش فرض
1 2 3 | $ ./ns3 build # For example, we may limit jobs as 4 by passing the argument -j4 to limit the CPU usage at the build/compile operation like: # ./ns3 build -j4 |
مرحله چهارم: نصب ماژول NR از GitLab
شما می توانید مدل nr را از مخزن GitLab از طریق خط فرمان به صورت زیر کلون کنید:
1 2 3 4 5 6 7 | $ cd /home/your_home/ns-3-dev $ cd src $ git clone https://gitlab.com/cttc-lena/nr.git #now we should switch to the latest NR release branch. # For example, to switch to the NR version 2.2 we should do the following cd /home/your_home/ns-3-dev/src/nr git checkout 5g-lena-v2.2.y |
توجه: اکنون پروژه Lena در GitLab برای دسترسی عمومی باز است. بنابراین می توان آن را بدون داشتن هیچ گونه توکن و رمز عبور دانلود کرد. تصویر زیر کلود موفقیت آمیز پروژه nr را نشان می دهد.
مرحله پنجم: پیکربندی دوباره ns-3 برای اضافه کردن ماژول جدید Lena
1 2 | $ cd /home/ns-3-dev $ ./ns3 configure –enable-examples –enable-tests |
تصویر زیر عملیات پیکربندی موفقیت آمیز را نشان می دهد که در آن می توانید ماژول هایی را که برای ساخت پیکربندی شده اند مشاهده کنید. لطفاً به ماژول جدید nr در لیست ماژول پیکربندی شده توجه کنید.
مرحله ششم: بیلد ns-3 و کامپایل با ماژول جدید Lena
1 2 | $ cd /home/ns-3-dev $ ./ns3 build |
اگر آن را کامپایل کنید، ممکن است با خطا هایی مانند زیر مواجه شود:
شما می توانید این خطا را به صورت زیر اصلاح کنید:
اکنون دوباره آن را بیلد کنید:
1 2 | $ cd /home/ns-3-dev $ ./ns3 build |
تصویر زیر نصب موفقیت آمیز NS3 با ماژول 5G-LENA NR را نشان می دهد.
مرحله هفتم: آزمایش نصب Lena nr با یک مثال شبیه سازی
پس از کامپایل موفقیت آمیز ns-3 با ماژول nr، عملکرد آن را با اجرای یک شبیه سازی نمونه آزمایش می کنیم. بخش کامنت ها در مثال شبیه سازی cttc-nr-demo.cc نحوه تنظیم یک شبیه سازی با استفاده از مدل کانال 3GPP از TR 38.900 را شرح می دهد. این مثال از یک توپولوژی شبکه ساده تشکیل شده که در آن می توانید تعداد gNbs و UE ها را انتخاب کنید. به پارامترها نگاهی بیندازید تا بدانید چه چیزی را می توانید از طریق خط فرمان پیکربندی کنید. با پیکربندی پیش فرض، این مثال دو جریان ایجاد می کند که از دو باند مختلف (یا بخش پهنای باند) عبور می کند. به طور خاص دو باند ایجاد می شود که هر کدام یک CC دارد و هر CC حاوی یک بخش پهنای باند است.
1 2 | $ cd /home/ns-3-dev $ ./ns3 run cttc-nr-demo |
اکنون شبیه سازی اجرا می شود و خروجی زیر را در پایان شبیه سازی تولید می کند.
نتیجه گیری
پروژه 5G-LENA اغلب در حال بهبود و به روز رسانی است. بنابراین ممکن است نیاز به استفاده از نسخه صحیح ns-3 و نسخه صحیح 5G-LENA برای کامپایل موفقیت آمیز آن تحت NS3 باشد. ما نیز در دیگر مقاله های آموزشی شبکه، ممکن است شبیه سازی جالب تری را با استفاده از این ماژول جدید ارائه کنیم.
منابع
- https://5g-lena.cttc.es/
- https://github.com/nyuwireless-unipd/ns3-mmwave
- https://en.wikipedia.org/wiki/5G_NR
هیچ نظری ثبت نشده است