Millicar is an ns-3 module for the simulation of Vehicle-to-Vehicle networks operating at mmWaves[2]. It was developed by SIGNET Lab, University of Padova.
The following figure from [1] shows the Overview of the MilliCar Module, with the Features Implemented at each Layer of the Stack
As per its official GitHub page[2], it
- Provides support to the latest 3GPP channel model for V2X networks,
- Contains custom PHY and MAC classes for supporting the NR frame structure specified by 3GPP,
- Provides full-stack operations including those from RLC and PDCP layers,
- Can be integrated with the LTE module of ns-3,
- Provides helpers and examples to guide users to start with Millicar simulations.
To use this module, we need to install ns3-mmwave and then install Millicar from its official GitHub repository
Millimetre-wave(mmWave) System:
Millimetre-wave (mmWave) communication systems have attracted significant interest regarding meeting the capacity requirements of the future 5G network[5]. MmWave spectrum is between 30 GHz and 300 GHz. Theoretically, this Extremely high-frequency spectrum can provide extremely high-speed wireless communications so that it is used to design the fast 5G Networks. Apart from normal 5G wireless network simulations, it is possible to use mmWave along with the existing V2X and V2V based VANET scenarios to utilize the high-speed communication features of this mmWave system. The image from [4] shows an example 5G network scenario.
mmWave module developed for ns-3 provides the facility to simulate 5G cellular networks operating at mmWaves[5].
Installation of ns3-mmwave
One may follow my procedure for installing ns3-mmwave to install it under Debian operating system or any other Linux variant operating system. It is available at the following link:
Installing mmWave ns-3 Extension Module to Simulate 5G Wireless Systems
Installing mmWave ns-3 Extension Module to Simulate 5G Wireless Systems
So, after installing it, confirm the successful installation of ns3-mmwave at the end of the installation. Or simply type ./waf – it will show a output similar to the following :
Confirm the presence of the mmwave model in the above list of models.
Testing the working of mmWave
The following shows the running a mmWave experiment simulation and verifying the good working of the mmWave installation/
So, after confirming the good working of mmWave, we can proceed installing Milicar under mmWave extenstion folder.
After installing ns-3 with mm-wave, I renamed that ns-3 folder as “ns3-mmwave-milicar” to differentiate with regular mm-wave install.
Installation of Milicar
Cloning Milicar from Github
$ cd /home/your_home/ns3-mmwave-milicar/src
$ git clone https://github.com/signetlabdei/millicar.git ns3-mmwave/src/millicar
The above command will create a folder ‘millicar’ under /home/your_home/ns3-mmwave-milicar/src folder and clone the millicat github spository in it.
Configuring waf again
After successful cloning, we have to entirely recomile ns-3 with mm-wave and millicar. So, for that, we have to configure the waf compile as follows:
$ cd /home/your_home/ns3-mmwave-milicar/
$ ./waf congfigure
Compiling ns-3 with mmwave and Milicar
$ ./waf
It may take long time to compile ns-3 again with mmwave and Milicar. The following terminal output shows the successful installation of mmwave and Milicar under ns-3.
Testing the Milicar Installation
References
- M. Drago, T. Zugno, M. Polese, M. Giordani, M. Zorzi, “Millicar – An ns-3 Module for MmWave NR V2X Networks,” Proc. of the Workshop on ns-3 (WNS3), 2020.
- https://github.com/signetlabdei/millicar
- https://www.nsnam.org/wiki/Installation
- https://www.sciencedirect.com/topics/engineering/millimeter-wave
- Marco Mezzavilla, Menglei Zhang, Michele Polese, Russell Ford, Sourjya Dutta, Sundeep Rangan and Michele Zorzi, End-to-End Simulation of 5G mmWave Networks, IEEE COMMUNICATIONS SURVEYS & TUTORIALS, VOL. 20, NO. 3, 2018
- https://github.com/nyuwireless-unipd/ns3-mmwave
- https://www.ericsson.com/en/reports-and-papers/further-insights/leveraging-the-potential-of-5g-millimeter-wave