mmWave Cellular Network Simulator

A millimeter wave module that can be used to evaluate cross-layer and end-to-end performance of 5G mmWave networks.
5/5 (1 reviews)
Categories: LTE

mmWave ns-3 module

This is an ns-3 mmWave module for the simulation of 5G mmWave cellular networks. A description of this module can be found on IEEExplore (open access).

The mmWave module for ns-3 can be used to simulate 5G cellular networks at mmWave frequencies. This module builds on top of the LTE one, and currently includes features such as:

  • Support of a wide range of channel models, including the model based on 3GPP TR 38.901 for frequencies between 0.5 and 100 GHz. Ray tracing and measured traces can also be used.

  • Custom PHY and MAC classes supporting the 3GPP NR frame structure and numerologies. They support dynamic TDD, and are parameterized and highly customizable in order to be flexible enough for testing different designs.

  • Custom schedulers for the dynamic TDD format

  • Carrier Aggregation at the MAC layer

  • Enhancements to the RLC layer with re-segmentation of packets for retransmissions

  • Dual Connectivity with LTE base stations, with fast secondary cell handover and channel tracking

  • Simulation of core network elements (with also the MME as a real node)

The following papers describe in detail the features implemented in the mmWave module:

These other papers describe features that were implemented in older releases:

If you use this module in your research, please cite M. Mezzavilla, M. Zhang, M. Polese, R. Ford, S. Dutta, S. Rangan, M. Zorzi, "End-to-End Simulation of 5G mmWave Networks," in IEEE Communications Surveys & Tutorials, vol. 20, no. 3, pp. 2237-2263, thirdquarter 2018. bibtex available here

Future work

We are actively developing new features for the mmWave module, including:

  • 3GPP NR beam tracking

  • 3GPP NR Integrated Access and Backhaul feature (see this repo for more details)


This module is being developed by NYU Wireless and the University of Padova. This work was supported in part by the U.S. Department of Commerce National Institute of Standards and Technology through the Project “An End-to-End Research Platform for Public Safety Communications above 6 GHz” under Award 70NANB17H16.


Works with ns-3.31

Build History : mmWave Cellular Network Simulator v3.0

Release Notes

<p>In this release: </p> <ul> <li> <p>the models for MAC and PHY layers have been updated to support frame structure and PHY numerology compliant with the 3GPP NR specifications</p> </li> <li> <p>a new channel model based on 3GPP TR 38.901 has been included (see <a href="">this paper</a>)</p> </li> <li> <p>the module now supports the possibility to run simulations using channel traces obtained from an open source ray tracer (see <a href="">this paper</a> and <a href="">this example</a>)</p> </li> <li> <p>new beamforming models supporting SVD- and DFT-based schemes have been added</p> </li> <li> <p>some old channel models have been removed because no longer maintained</p> </li> <li> <p>all the examples have been updated to support the new features</p> </li> <li> <p>the other modules have been updated to ns-3.31</p> </li> </ul>


Works with ns-3.29

Build History : mmWave Cellular Network Simulator 2.0

Release Notes

<p>This release adds new features, including:</p> <ul> <li>Carrier Aggregation</li> <li>Support for multiple antenna arrays at the base stations (sectors) and at the UEs (panels).</li> </ul> <p>Moreover, the inter-RAT handover without dual connectivity is not supported anymore, thus dual connectivity is needed to handle heterogeneous LTE-mmWave networks. Moreover, the mmwave module code is now in the mmwave namespace, thus add "using mmwave;" to your existing examples. Apart from this, the code is backward compatible, therefore old scripts still work.</p>
Bakefile : Link


Works with ns-3.27

Build History : mmWave Cellular Network Simulator 1.2

Release Notes

<p>The new-handover branch is updated to ns-3.27. See for a reference of the module's functionalities</p>


Works with ns-3.26

Build History : mmWave Cellular Network Simulator v1.1

Release Notes

<p>version 1.1</p>
Bakefile : Link


Works with ns-3.26

Build History : mmWave Cellular Network Simulator v1.0

Release Notes

<p>version 1.0</p>
Bakefile : Link


The mmwave repository and downloads are a self-contained ns-3 distribution and can be used stand-alone. Please refer to [the ns-3 website]( for detailed instructions. The project [wiki]( contains additional information.

To report bugs, please open an issue in the [module GitHub repository]( or write an email to the maintainers. The lead maintainers are Michele Polese and Tommaso Zugno.

Contributions to the module are welcome. Please open a Pull Request on the [main repository]( against the new-handover branch. You can also get in touch with the module maintainers, to improve the coordination of the development and avoid duplicated efforts.

This ns-3 extension is a separately maintained fork.

Version v3.0

Released Sept. 15, 2020

Works with ns-3.31