16.5 Commands at a glance
Following is a list of commands used in wireless simulations:
$ns_ node-config -addressingType \<usually flat or hierarchical used for
wireless topologies\>
-adhocRouting \<adhoc rotuing protocol like PUMA, DSR,
TORA, AODV, DSDV etc\>
-llType \<LinkLayer\>
-macType \<MAC type like Mac/802_11\>
-propType \<Propagation model like
Propagation/TwoRayGround\>
-ifqType \<interface queue type like
Queue/DropTail/PriQueue\>
-ifqLen \<interface queue length like 50\>
-phyType \<network inteface type like
Phy/WirelessPhy\>
-antType \<antenna type like Antenna/OmniAntenna\>
-channelType \<Channel type like Channel/WirelessChannel\>
-topoInstance \<the topography instance\>
-wiredRouting \<turning wired routing ON or OFF\>
-mobileIP \<setting the flag for mobileIP ON or OFF\>
-energyModel \<EnergyModel type\>
-initialEnergy \<specified in Joules\>
-rxPower \<specified in W\>
-txPower \<specified in W\>
-agentTrace \<tracing at agent level turned ON or OFF\>
-routerTrace \<tracing at router level turned ON or OFF\>
-macTrace \<tracing at mac level turned ON or OFF\>
-movementTrace \<mobilenode movement logging turned
ON or OFF\>
This command is used typically to configure for a mobilenode. For more info
about this command (part of new node APIs) see chapter titled "Restructuring
ns node and new Node APIs" in ns Notes and Documentation.
$ns_ node optional:hier address
This command is used to create a mobilenode after node configuration is done
as shown in the node-config command. Incase hierarchical addressing is being
used, the hier address of the node needs to be passed as well.
$node log-movement
This command previously used to enable logging of mobilenode's movement has now
been replaced by $ns_ node-config -movementTrace ON or OFF.
create-god num_nodes
This command is used to create a God instance. The number of mobilenodes
is passed as argument which is used by God to create a matrix to store
connectivity information of the topology.
$topo load_flatgrid X Y optional:res
This initializes the grid for the topography object. <X> and <Y> are the x-y
co-ordinates for the topology and are used for sizing the grid. The grid
resolution may be passed as <res>. A default value of 1 is normally used.
$topo load_demfile file-descrptor
For loading DEMFile objects into topography. See ns/dem.cc,.h for details on
DEMFiles.
$ns_ namtrace-all-wireless namtrace X Y
This command is used to initialize a namtrace file for logging node movements
to be viewed in nam. The namtrace file descriptor, the X and Y
co-ordinates of the wireless topology is passed as parameters with
this command.
$ns_ nam-end-wireless stop-time
This command is used to tell nam the simulation stop time given by <stop-time>.
$ns_ initial_node_pos node size
This command defines the node initial position in nam. <size> denotes the size
of node in nam. This function must be called after mobility model has been
defined.
$mobilenode random-motion 0 or 1
Random-motion is used to turn on random movements for the mobilenode, in which
case random destinations are assigned to the node. 0 disables and 1 enables
random-motion.
$mobilenode setdest X Y s
This command is used to setup a destination for the mobilenode. The mobile
node starts moving towards destination given by <X> and <Y> at a speed of
<s> m/s.
$mobilenode reset
This command is used to reset all the objects in the nodes (network
components like LL, MAC, phy etc).
Internal procedures
Following is a list of internal procedures used in wireless networking:
$mobilenode base-station BSnode-hier-addr
This is used for wired-cum-wireless scenarios. Here the mobilenode is provided
with the base-stationnode info for its domain. The address is hierarchical
since wired-cum-wireless scenarios typically use hierarchical addressing.
$mobilenode log-target target-object
The <target-object>, which is normally a trace object, is used to log
mobilenode movements and their energy usage, if energy model is provided.
$mobilenode topography topoinstance
This command is used to provide the node with a handle to the topography
object.
$mobilenode addif
A mobilenode may have more than one network interface. This command is used
to pass handle for a network interface to the node.
$mobilenode namattach namtracefd
This command is used to attach the namtrace file descriptor <namtracefd>
to the mobilenode. All nam traces for the node are then written into this
namtrace file.
$mobilenode radius r
The radius <r> denotes the node's range. All mobilenodes that fall within
the circle of radius <r> with the node at its center are considered as
neighbours. This info is typically used by the gridkeeper.
$mobilenode start
This command is used to start off the movement of the mobilenode.
Tom Henderson
2011-11-05