Computer Networking Reserach Laboratory

Dept. of Electrical & Computer Engineering, Colorado State Univeristy

Introduction
VCSIMTOOL can be used to create different topologies, generate Virtual Coordinates (VCs) using minimum hop distance and directional VCs, anchor placement, and topology preserving maps in 2-D and 3-D space. It can be used to:
  • Generate topologies
  • Network visualization
  • Anchor selection
  • Show network connectivity
  • Compare/evaluate different routing schemes
Files
How to use VCSIMTOOL
Import the Network
'Import' option under File menu enables user to import different network shapes and sizes. The 'Location' option requires the physical coordinates [(x,y) for 2D and (x,y,z) for 3D] of the sensors to be given as an input in a .mat file. The 'Network' option requires .mat file with a multi-dimensional array of 0s' and 1s' where 1s' represent the node being present in the network and 0s' represent the absence of nodes at the particular position.
Generation of Topologies
The size of the network to be simulated must be specified by the user. Node placement could either be 'Uniform' or 'Random'. In 'Random' placement user must specify the node density in a given area assuming each node is placed unit distance apart. Voids stand for the obstacles or absence of nodes in real environment. User can also import the topologies by providing nodes [x, y] coordinates or whole network as matrix. Place Node allows user to individually place each node. Void creation could be accomplished in the following ways:
  • 2D Network
    1. Linear - Vertices of polygon shaped obstacles must be given by user. The vertices are joined by a straight line to form a closed shape void.
    2. Interpolation - Approximate vertices are given to form the interpolated closed shape.
    3. Rectangle - Rectangular shaped polygons could be easily created.
    4. Circle - It is easy to create elliptical shape voids with this option.
  • 3D Network
    1. Brush - Draw a void in the network of your own
    2. Spherical - Create a spherical void by specifying the center and radius
    3. Rectangular - Create a rectangular void by specifying one vertex and dimensions of the rectangle
'Placement Tolerance' specifies the placement tolerance allowed for each node. 10% placement tolerance mean nodes are placed within circle of 0.1 unit distance radius.
Anchor Selection
Anchors are specific nodes from which hop distances are counted to form virtual coordinates. Anchors are shown in 'Red' color(only in 2D). Three types of anchor selection methods are provided:
  1. Random - User must specify percentage of anchors within given network. Random nodes are then selected as anchors.
  2. Manual - User can either select particular nodes as anchors via mouse or by specifying approximate coordinates. The nearest node will be selected as anchor.
  3. ENS - Extreme node search is an anchor selection scheme based on VCS. It requires selection of two anchors manually in case of a 2D network. The initial selection could again be done via mouse or specifying approximate coordinates.
The 'Anchors' box shows the positions of selected anchors.
Connectivity
By pressing Connectivity button a user can see the connectivity information within nodes.
  1. None - No algorithms applied
  2. Rectangular - Planarization of network with rectangular topology
  3. Hexagonal - Planarization of network with hexagonal topology
  4. Triangular - Planarization of network with triangular topology
Start
It is used to create the topology preserving maps and virtual coordinate information of nodes.
  1. Gap Data Info - Shows the difference of 'Directional Virtual Coordinates' within two nodes.
  2. Node Data Info - Shows the hop count distances to the anchors.
Routing
2D Routing
  1. GPSR - Greedy perimeter stateless routing
  2. GLR - Geological Routing
3D Routing
  1. GLR - Geological Routing
  2. GDSTR 3D - Greedy Distributed Spanning Tree Routing
Analysis
This tool has two options for performing Routing Analysis - Exhaustive and Random. Exhaustive Routing anlaysis calculates the path from each node to every other node. If a node cannot be reached from one node within the specified TTL, the packet is considered to be dropped and routing fails in that case. Similarly Random routing analysis allows the user to specify a percentage of Source/Destination (S/D) pairs in which the nodes are selected randomly and routing is performed. A TTL value of 0 means the routing should be perfomed till the destination is reached without dropping the packet.
Once the analysis is completed, the 'Results' button is enabled which gives the follwing results.
  • % Completed - Percentage of paths completed to the total paths calculated
  • Avg. Path Length - Average path length (in hops)
  • Var. Path Length - Variance path length (in hops)
  • Total paths calc. - Total number of paths calculated
  • Histogram of hops against the number of nodes
Contact
Anura P. Jayasumana
Professor
Electrical & Computer Engineering Department
Colorado State University
Fort Collins, CO.
Email: Anura.Jayasumana at Colostate.edu

Aravindhan Vijayaraj
Email: aravindh at colostate.edu


Feel free to contact us if you have any questions about our research and findings. We also welcome your feedback.

© 2018 CNRL. All Rights Reserved