
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 (Olivier.Bonaventure@info.fundp.ac.be) 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
S. Bush
http://www.crd.ge.com/~bushsf/an
The Atropos Toolkit is an active network toolkit that allows experimentation with predictive capability within a network while the network is operating. The toolkit is an active application that executes within a network assuming an overlay active network exists (included in the Atropos Toolkit). Active networking provides a framework in which executable code within data packets executes on intermediate network nodes. The Atropos Toolkit provides an infrastructure that maintains state and enforces event causality, easing the development of numerous small and predictive network component models. User-defined algorithms, injected into the network, allow system state to be predicted and efficiently propagated throughout the network.
A. Azcorra, M. Calderón, D. Larrabeiti, M. Urueña
http://matrix.it.uc3m.es/~sara
Simple Active Router Assistant (SARA) is a Java-based execution environment designed to provide a few pragmatic active network functions to legacy IPv4/IPV6 routers by transparently outsourcing costly active packet processing to so-called assistants (collocated Linux boxes). These functions enable remote load and execution of transparent active applications on assistants, triggered by end users but in general provided by a third-party application service provider from a choice of safe multiuser application repository.
A. Varga
http://www.hit.bme.hu/phd/vargaa/omnetpp
OMNeT++ is a discrete event simulation package written in C++. The primary application area of OMNeT++ is the simulation of computer networks and other distributed systems. Simulation models are composed of hierarchically nested modules that communicate with message passing. Module functionality is programmed using C++, while the model structure is defined by a topology description language. Modules can be combined and reused flexibly, thus allowing the composition of models with any granular hierarchy. OMNeT++ has been used for various purposes, including the simulation of Internet nodes and the dynamics of the TCP/IP protocols.
Infonet Group,
University of Namur (FUNDP), Belgium
Atropos Toolkit
The Atropos Toolkit allows experimentation with prediction algorithm parameters including trade-offs among prediction accuracy, computational complexity, memory size, bandwidth, and projection window length (sliding window into the future). Atropos facilitates experimentation in a distributed, active, and truly proactive management environment. Currently Atropos is being used in the study of algorithmic information theory, including Kolmogorov-Chaitin Complexity estimation, for determining and optimizing the amount of code vs. data within active packets. In recent versions, load and processor usage prediction applications have been experi- mentally validated using the Atropos Toolkit.
The Atropos Toolkit is written in Java and the source code is provided. Libraries implementing an active overlay network and simple graphing capabilities are included. There is an Atropos mailing list for users to provide feedback and limited support.
SARA
The main features of SARA include: full Java access to active packets, from raw IP headers to application payload (a raw socket class,JNI, is packaged in the execution environment); active node location transparency (active packets are addressed to the end system and cause on-the-fly loading and processing of active applications running on the active nodes along the path); dynamic code loading from a secure repository of trusted code; standard access to router state via SNMP by active applications (optional); and IPv6 support using the standard router alert option value for active networks.
The current version of SARA runs on Linux together with an enhanced Ericsson-Telebit AXI462 Router (for the dual router-assistant setup) as well as on a standalone Linux router. On Linux, it requires Linux 2.4 Kernel with IPtables 1.2.5, Glibc >= 2.2.2, and Java VM 1.4. Limited technical support is available via a mailing list.
OMNeT++
The package contains the C++ simulation kernel library, a manual, a simulation kernel API reference, a graphical topology editor, a graphical runtime environment with powerful animation and tracing capabilities as well as a command-line runtime environment for batch execution, and several other tools and sample simulations. OMNeT++ today contains detailed IP, TCP, and FDDI protocol models and several other simulation models (File System Simulator, Ethernet, Framework for Simulation of Mobility, etc.). Other simulation models (IPv6, Hiperlan/2) have been announced.
OMNeT++ is open source, free for non-profit use, and has an active user community. It has been tested on Linux and Solaris with gcc, and on Windows using the Cygwin compiler and Microsoft Visual C++. The Web site provides source code, binaries, documentation, mailing lists, a Web-based discussion forum, and yearly workshops.