Skip to content
Hany Assasa edited this page Mar 26, 2020 · 32 revisions

Introduction:

This is a repository for the development of the WLAN IEEE 802.11ad/ay standard in network simulator ns-3. Both IEEE 802.11ad/ay supports wireless networking in the unlicensed 60 GHz band. Our implementation paves the way to perform high fidelity simulations for large dense wireless networks consisting of devices with heterogeneous capabilities and constraints. For more information on the project, please refer to our publications.

New Release:

We are happy to release a new version of our ns-3 IEEE 802.11ad model. The new version brings a lot of new features and capabilities:

  1. Beamforming Codebook design for beamforming training and beam steering.
  2. Quasi-deterministic channel model to simulate real propagation environments.
  3. Codebook Generator application in MATLAB to generate codebook samples similar to ones used in Qualcomm QCA9500 Chipset.
  4. Multi-antenna beamforming training.
  5. Accurate BER vs. SNR lookup tables for all PHY layers.
  6. Beam refinement for both transmit and receive beam patterns.
  7. Multi-AP support without the need for decentralized clustering.

We are still in the process of cleaning up the project and many comprehensive set of examples.

Features:

The implemented model supports the following features:

  1. DMG Channel Access Periods (BTI/A-BFT/ATI/DTI with both CBAP and Service Periods).
  2. Beamforming Training (BT) in both BHI and DTI access periods.
  3. DMG PLCP Model for 802.11ad frame transmission and reception.
  4. Abstract DMG PHY layer for DMG CTRL/SC/OFDM.
  5. 60 GHz Directional Antenna Model.
  6. Fast Session Transfer (FST) Mechanism.
  7. DMG Relay Support (Full Duplex and Half Duplex Modes).
  8. Dynamic Allocation of Service Period (Polling).
  9. Service Period Allocation.
  10. Beamformed Link Maintenance for Service Period Allocation.
  11. Decentralized Clustering.
  12. Spatial Sharing and Interference Assessment.

Project Road-map:

We are developing the following set of features:

  1. Add 802.11ay PHY frame structure, new MAC frame formats, and new Information Elements.
  2. Add support for SU/MU-MIMO signaling, beamforming, and communication.

Limitation:

Below is a list of the limitation in the code:

  1. Data communication in SP allocation does not support A-MPDU aggregation and only A-MSDU aggregation. The reason is A-MPDU aggregation requires establishing Block Acknowledgement agreement between the initiator and the responder, which requires a bi-directional transmission in the SP allocation. However, communication in SP is only allowed in a uni-directional way. To solve the previous problem, Reverse Directional Protocol is required.
  2. Not all the features have been tested in complex scenarios. In case, you run into a bug, feel free to report it.

Prerequisites:

Before start using the 802.11ad model, please keep the following in mind:

  1. Understand WLAN IEEE 802.11 MAC/PHY operations. There are plenty of references on the Internet describing CSMA/CA protocol and the evolution of 802.11 protocol.
  2. Get familiar with ns-3 and how to run simulations in ns-3. Have a look on the tutorial page of the simulator.
  3. Understand the existing Wifi Model in ns-3 which implements WLAN IEEE 802.11a/b/g/n/ac/ax.
  4. Finally, do not contact me asking how to use the model or provide you with some documentation on how to use ns-3. I will ignore your email :)

Once you have completed all these steps, you can proceed with my model.

Building the Project:

The current implementation is based on ns3-26. As I changed some of the Wifi module APIs, this will affect Mesh module too. For this reason, you should disable building both examples and tests; otherwise, the build will fail. To save time and evaluate the IEEE 802.11ad model only, type the following command:

./waf configure --disable-examples --disable-tests --disable-python --enable-modules='applications','core','internet','point-to-point','wifi','flow-monitor','spectrum'
./waf build

The previous command builds the required models only to run IEEE 802.11ad with its provided scripts in debug mode. To build the project in optimized mode for fast execution type the following command:

./waf configure --disable-examples --disable-tests --disable-python --enable-modules='applications','core','internet','point-to-point','wifi','flow-monitor','spectrum' --enable-static -d optimized
./waf build

Tutorial Scripts:

The project includes different scripts located in the scratch folder to test the previously listed features and mechanisms. At the beginning of each script, we added some description regarding the tested functionality, network topology, expected output, and usage method.

Publications:

The implementation is based on the existing model of the WLAN IEEE 802.11 in ns-3. The following papers include background on IEEE 802.11ad, implementation details, and evaluation section for this model. If you use our model in your research, please cite the following papers:

Reporting:

In case you come across a bug during the usage of the original model, please report the problem to the following email address (hany.assasa@gmail.com). In the email, please include the following:

  1. Simulation file with a small description of the simulated scenario and the expected output.
  2. The set of input parameters which caused the simulation to crash.

Please do not report any problem related to your modification of the original code.

Author Information:

The model is developed and maintained by Hany Assasa. For more information about the author research, please check his website.

Clone this wiki locally