HLS patch for ns-2.29 and for ns-2.33
HLS - Hierarchical Location Service for Mobile Ad-hoc Networks
This is the homepage of HLS (Hierarchical Location Service), a location service for
getting information on positions of nodes in a mobile ad-hoc network. It was implemented in
an older ns-2 version and is now available for version 2.29 and 2.33 of the
ns-2 network simulator. HLS was developed during
the diploma thesis of Wolfgang Kiess.
This page is part of the Homepage of the Computer networks research group at the University of Düsseldorf, Germany.
Contacts: Wolfgang Kiess and
HLS is available as patch for versions 2.29 and 2.33 of the ns-2 network simulator.
It will not be included in the official ns-2 release, so please download the patch and
follow the install instructions below.
ns-2.29 patch: [ns2-hls-patch.tar.gz]
ns-2.33 patch: [ns2.33-hls-patch.tar.gz]
(Thanks a lot to Thomas Dall'Agnese for providing the ns-2.33 version!)
Additional download for scenario and traffic generation: [scen_trafgen.tar.gz]
Note: it has been reported that the patch does not work on 64bit systems.
Unpack the tar archive. The new archive includes three files. The patch file,
a short README file and a file about the changes done by applying the patch.
Apply the patch from your ns-2 directory and execute the patch:
patch -p1 < <path to ns-2.XX-hls.patch>
Changes when establishing the patch:
The patch adds three new directories and some new files:
- The gpsr directory that includes the functionality of "greedy perimeter stateless routing".
- The hls directory. Includes all stuff important for hls to work.
- The locservice directory. Includes everything necessary for location services like HLS to work. Also included are the locservices GLS and RLS.
- The two C++ codefiles geo_util.h, geo_util.cc are added to the mobile directory
- gpsr.tcl is added to the tcl/mobility/ directory. This is important for establishing a gpsr agent.
When you have applied the patch, there is a directory called utils in the new directory hls.
There is a tcl script file included that should help you to get used to work with gpsr and
location services. There are also some sample files included.
- mobile/god.h / god.cc
- trace/cmu-trace.h / cmu-trace.cc
- mac/mac-802_11.h / mac-802_11.cc
- queue/priqueue.h / priqueue.cc
Before you continue, do a make clean, followed by make.
You can start with the sample script hls.tcl. Execution: ../../ns hls.tcl
When further documentation or a performance analysis as well as a comparison of HLS with GLS is
required, please refer to the following master's thesis and the corresponding paper: