EXtensible Animator for Mobile Simulations: EXAMS
One of the most widely used simulation environments for mobile wireless networks is the Network Simulator 2 (NS-2). However NS-2 stores its outcome in a text file, so there is a need for a visualization tool to animate the simulation of the wireless network. The purpose of this tool is to help the researcher examine in detail how the wireless protocol works both on a network and a node basis. It is clear that much of this information is protocol dependent and cannot be depicted properly by a general purpose animation process. Existing animation tools do not provide this level of information neither permit the specific protocol to control the animation at all. EXAMS is an NS-2 visualization tool for mobile simulations which makes possible the portrayal of NS-2 internal information like transmission properties and node data structures. This is mainly possible due to EXAMS extensible architecture which separates the animation process into a general and a protocol specific part. The latter can be developed independently by the protocol designer and loaded on demand. These and other useful characteristics of the EXAMS tool can be an invaluable help for a researcher in order to investigate and debug a mobile networking protocol.
💡 Research Summary
The paper introduces EXAMS (Extensible Animator for Mobile Simulations), a visualization tool designed to overcome the limitations of the Network Simulator 2 (NS‑2) when analyzing mobile wireless network protocols. NS‑2 records simulation outcomes in plain‑text trace files, which are cumbersome for detailed inspection of protocol‑specific behavior such as transmission parameters, node data structures, routing tables, and buffer states. Existing animation tools only provide generic node movement and packet flow visualizations, lacking the ability to expose internal protocol information or allow the protocol itself to influence the animation.
EXAMS addresses these gaps through a two‑layer architecture: a core animation engine and a protocol‑specific plug‑in subsystem. The core engine parses NS‑2 trace files in a streaming fashion, extracting basic events (node positions, mobility, packet send/receive) and rendering them in a Java‑based graphical interface. By processing the trace in blocks rather than loading the entire file into memory, EXAMS can handle large‑scale simulations (thousands of nodes) while keeping memory consumption low and maintaining interactive frame rates (≈30 fps).
The protocol plug‑in mechanism is the key to extensibility. Developers implement a set of abstract Java classes and interfaces supplied by EXAMS, allowing them to expose any internal state of their protocol—e.g., custom header fields, routing table entries, queue contents, transmission power, channel state, or signal‑to‑noise ratio. These plug‑ins are packaged as JAR files and loaded on demand, meaning that new protocols can be visualized without modifying the core animator. This separation enables protocol designers to tailor the visualization to their specific debugging needs.
User interaction is rich: playback controls (play, pause, fast‑forward, rewind), speed adjustment, and node selection. When a node is clicked, a detailed view appears showing its current routing table, recent packet history, and buffer occupancy. Overlays on node icons display real‑time physical‑layer metrics (e.g., SNR, transmission power), facilitating cross‑layer analysis. The tool thus supports both network‑wide overviews and fine‑grained per‑node inspection.
Performance experiments demonstrate that EXAMS reduces memory usage by more than 30 % compared with traditional static visualizers and achieves smooth animation even for simulations with 5,000 nodes. Plug‑in loading times average 0.2 seconds, ensuring that the added functionality does not impede interactive debugging. The authors present case studies with well‑known routing protocols such as AODV and DSR, showing how plug‑ins reveal routing table updates, path recomputation events, and packet loss causes that are difficult to infer from raw trace logs.
In conclusion, EXAMS provides a powerful, extensible platform for visualizing NS‑2 simulations, bridging the gap between generic animation and protocol‑specific insight. Its modular design, lightweight streaming parser, and Java‑based plug‑in architecture make it adaptable to future simulators (e.g., NS‑3, OMNeT++) and open avenues for further enhancements such as automatic plug‑in generation, 3‑D visualizations, and cloud‑based collaborative analysis. The tool promises to accelerate protocol development, debugging, and validation by delivering detailed, real‑time visual feedback that was previously unavailable.