bar.gif (100 bytes)

The Software Tools for Networking column contains brief presentations of software tools that are freely available on the Internet and could be useful for the readers of this magazine. Each presentation is based on an extended abstract submitted by the authors of the tools that was copy edited and checked for accuracy against the version of the tool available on the Internet. Authors willing to have their tools presented in this manner should send a 300-word description of their tool in ASCII format with the URL of the tool by email to Olivier Bonaventure (bonaventure@ieee.org) with an indication that the description is submitted for the IEEE Network Software Tools for Networking column. Appropriate tools will be presented in this column.
Olivier Bonaventure
Dept. of Computing Science and Engineering
Université Catholique de Louvain (UCL), Belgium


NCTUns 1.0

S. Y. Wang
http://NSL.csie.nctu.edu.tw/nctuns.html

The NCTUns 1.0 network simulator is a successor to the Harvard network simulator. The NCTUns 1.0 is a high-fidelity and extensible discrete event network simulator capable of simulating various protocols used in both wired and wireless IP networks. Its core technology is based on a kernel reentering simulation methodology. In NCTUns 1.0, real-world TCP/IP protocol stacks are directly used to generate accurate simulation results, and all real-world application programs can directly run on any network simulated by this tool.
      The NCTUns 1.0. is equipped with a GUI environment to help a user to quickly (1) specify network topologies, (2) edit protocol parameters, (3) control the execution of simulations, (4) plot logged performance curves, and (5) play back logged packet transfer animations. It uses a distributed architecture to support remote and concurrent simulations on multiple machines. A user can just download the GUI program, use it to specify his (her) simulation job, and then submit the job to a remote simulation server for execution. When the job is finished, the results will be automatically transferred back to the GUI program for further analysis. NCTUns' simulation engine uses an open system architecture to allow a user to easily add protocol modules. Adding a new protocol module into an existing protocol stack of a node or replacing an old one with a new one can be done via the GUI program's node editor.
      Due to the kernel reentering simulation methodology, NCTUns 1.0 needs to modify the kernel of the underlying operating system. Right now only FreeBSD 4.7 and 4.6 are supported; however, porting the simulator to the Linux platform is underway. The NCTUns 1.0 is written in C++. It is open source, free for nonprofit use, and has an active user community. The Web site provides the package, documentation (papers, GUI user manual, and protocol module developer manual), demo videos, mailing lists, and a free simulation center service.

Visualization Tool for Ad Hoc Networks

F. Fitzek, P. Seeling, M. Reisslein, and M. Zorzi
http://www.acticom.de/vitan.html

In the study of ad hoc wireless networks, researchers often face the problem of analyzing complex networks formed by nodes (terminals) that are placed in a wide variety of topologies. The placement of the nodes, and their respective wireless transmission and reception capabilities typically give rise to a complex network graph consisting of nodes interconnected by wireless links (edges) of heterogeneous quality (capacity).
      The Visualization Tool for Ad Hoc Networks (ViTAN) is a tool for visualizing this network graph of link qualities (capacities) between the terminals in wireless ad hoc networks. The tool takes the location of the terminals (specified as Cartesian coordinates) and the link qualities between the terminals (specified as positive integers) as input. The tool produces a visualization of the graph of the terminals' connectivities in the .fig format, which can easily be converted to any common graphic format. ViTAN does not evaluate the connectivities and link qualities in ad hoc networks. Instead, ViTAN takes the link qualities obtained from other tools, simulations, or analytical evaluations as input and graphically visualizes these link qualities and the resulting connectivities in the network. ViTAN facilitates the visual study of complex ad hoc networks by depicting higher link qualities with thicker edges and in darker gray shades. In addition, ViTAN draws the edges at different depth levels of the .fig format, depending on the corresponding link quality. This feature enables the selective display and visual study of the connectivities provided by links within a specific quality range.
      ViTAN is written in Perl, and the source code is provided. The current distribution contains detailed documentation.

SIP Express Router (SER)

A. Pelinescu, Onciul, J. Janak, and J. Kuthan
http://www.iptel.org/ser/

The SIP Express Router (SER) is a high-performance configurable open-source server implementing Session Initiation Protocol (SIP, RFC 3216). SIP is a signaling protocol that is often used to establish voice-over-IP calls, advertise their presence status, send and receive instant messages, and maintain any kind of session including games and chats. A major benefit of SIP is it creates an open framework for composing services out of multiple components.
      SER features flexibility that allows it to act in many roles needed for implementation of such services. For example, it can act as registrar and location server to provide mobility to users. It can also act as an access control element that guards PSTN gateways or any other scare SIP resources. It can be easily extended by using its built-in configuration language and its support for "plug-in" modules. Several plug-ins are available, including messaging gateways to SMS and Jabber, RADIUS accounting and authorization, SIMPLE presence agent, and ENUM.
      There is also an application interface that provides effective coupling with SIP-unaware applications. The applications, like Web interface or administrative tools, can easily watch and manipulate server status, initiate SIP transactions and build features such as click-to-dial. The application interface is language-independent and can be used along with different programming languages.
      SER is open source and written in C. It supports IPv4 and IPv6 and runs on Linux, BSD, and Solaris. The Web site provides source code, binaries, technical documentation, and a user forum for technical support.