Seamless and Secure Mobility logo

Seamless and Secure Mobility

Documentation on software modules

IEEE 802.16 module for NS-2

Software mobility package for NS-2

Overview

An overview of the model is given in the following presentation
 

Installation

The release file available for the IEEE 802.16 module for NS-2 contains instructions to install the module.

Frequently encountered error message:
If you get the following message, you forgot to re-compile the entire system after adding the module.
invalid command name "Mac/802_16"
          while executing
"Mac/802_16 set debug_ 0"
          (file "sample/.tcl" line 45)

Installation

Instructions for installing the mobility package for NS-2.

User and design information

The IEEE 802.16 model documentation describes the available features, the TCL configuration, and design aspects of the implementation.
word icon pdf icon
A file describing the IEEE 802.16 package classes pdf icon
or an online version of the IEEE 802.16 package classes.

User and design information

The mobility package contains modifications to the standard NS-2 releases and also new modules.

Updates and BUG fixes

  1. Problem: Duplicate variable declarations
    The variable "Packet *pktBuf_;" is declared in both mac802_16.h and mac802_16SS.h
    Solution: remove the declaration in mac802_16SS.h

Updates and BUG fixes

  1. Problem: MAC 802.11 stalls after scanning
    In certain situations, the MAC 802.11 will lock its transmission after a scan.
    Solution: add the following code in your mac-802_11.cc on lines 3852 and 3915:
        //resume transmission
        if (mhBackoff_.busy() == 0 && mhDefer_.busy() == 0 && mhSend_.busy() == 0) {
        tx_resume ();
        }
  2. Problem: Error message during compilation:
    hsntg/nd.cc: In constructor `NDAgent::NDAgent()':
    hsntg/nd.cc:127: error: call of overloaded `bind(const char[17], uint32_t*)' is ambiguous
    Solution: The error may occur depending on the version of gcc used.
    Replace bind("prefix_lifetime_", &prefix_lifetime_); with bind("prefix_lifetime_", (unsigned int*) &prefix_lifetime_);

Frequently Asked Questions (FAQs)

IEEE 802.16 model for NS-2

  1. Q: What does "bash: ns: command not found" mean?
    A: The NS-2 simulator is not properly installed/compiled. Execute "./configure; make clean; make" from the ns-2.29 directory.
  2. Q: What does invalid command name "Phy/WirelessPhy/OFDM" while executing "Phy/WirelessPhy/OFDM set g_0" mean?
    A: The OFDM class is unknown to NS. This means the code has not been recompiled. Execute "./configure; make clean; make" from the ns-2.29 directory.
  3. Q: What does invalid command name "Mac/802_16" while executing "Mac/802_16 set debug_ 0" mean?
    A: The Mac/802_16 class is unknown to NS. This means the code has not been recompiled. Execute "./configure; make clean; make" from the ns-2.29 directory.
  4. Q: Compilation error "NeighborEntry already defined".
    A: A class with the same name is defined in the diffusion3 subdirectory. Rename the class NeighborEntry to WimaxNeighborEntry where used.
    Note: The updated pre-release contains the modification.
  5. Q: Does the current model support class of service (UGS, RTPS, NRTPS and BE)?
    A: No. Though the architecture defines the structures to use it, the current scheduler does not make use of it.
  6. Q: What scheduler is implemented?
    A: The scheduler allocates downlink bandwidth first according to pending traffic. Next, the contention periods are allocated in the uplink bandwidth. The rest of the uplink bandwidth is then allocated to one MS (The MS is picked in a Round Robin fashion). Currently the BS does not consider bandwidth requests from the MSs.
  7. Q: How to set the -DDEBUG_WIMAX switch?
    A: Look for the line starting with "DEFINE = -DTCP_DELAY_BIND_ALL" and add the -DDEBUG_WIMAX.
  8. Q: How to set the datarate?
    A: Unlike the 802.11 implementation, the datarate is not something set in TCL. Since each burst can use a different modulation and therefore have different datarates, we opted for a dynamic calculation of the datarate. By setting the frequency bandwidth, cyclic prefix and the modulation, the datarate will change. The scripts located in tcl/wimax/datarate/ show the maximum throughput achieved with frequency bandwitdh of 7MHz.

Mobility package for NS-2

  1. Q: The scripts are not running in the pre-release dated 01/27/07. What is the problem?
    A: The model is under development. Therefore some older scripts may not have been updated. Download the new release with udpated examples.
  2. Q: How do I install the mobility package?
    A: The mobility package contains a complete ns-2.29 directory. Delete the default ns-2.29 directory and replace it with the one provided in the compressed file.
  3. Q: Segmentation fault when using older scripts with the new model.
    A: The structures have changed for the MAC and classifer classes. The scripts have to be updated.

Horizontal rule
www.antd.nist.gov
Web site owner: The National Institute of Standards and Technology
U.S. Flag

Disclaimer Notice & Privacy Policy / Security Notice
Send comments or suggestions to webmaster@antd.nist.gov
The National Institute of Standards and Technology is an Agency of the U.S. Commerce Department's Technology Administration

Created, maintained and owned by: ANTD's webmaster
Last updated: September, 2006
Date Created: September, 2006

Back to NIST Home