What is it about?

Network simulators like ns-3 are essential for testing how the internet works without needing physical hardware. However, extracting data from these simulations to understand what is happening "under the hood" is often complex and requires deep technical knowledge of the simulator’s internal code. This paper introduces a new tool called "Socket Statistics" (ss) for the ns-3 simulator. Inspired by the standard command-line tool used in Linux systems, our utility allows researchers to easily monitor network connections, specifically TCP and UDP sockets. Instead of writing complex code to track data transmission, users can now use simple commands to snapshot or periodically record the state of their network simulations. We validated this tool by comparing it against existing, more complex methods and found it to be highly accurate.

Featured Image

Why is it important?

As network protocols become more complex, the barrier to entry for using high-fidelity simulators like ns-3 remains high. Currently, collecting detailed statistics requires a steep learning curve, forcing researchers to manipulate complex "Trace Sources" or parse massive data files. Our work is important because it democratizes access to network statistics in ns-3. By providing a user-friendly API that mimics real-world Linux tools, we significantly reduce the time and coding proficiency required to analyze network behavior. This allows students and researchers to focus on analyzing protocol performance rather than fighting with the simulation tools. Furthermore, our validation proves that this ease of use does not come at the cost of accuracy, making it a reliable alternative for academic research.

Perspectives

During my time working with ns-3, I realized that while the simulator is incredibly powerful, the tooling for simple monitoring felt disconnected from the tools we use in real-world networking, like the Linux ss command. It was frustrating to see how much boilerplate code was needed just to get basic metrics like Round Trip Time (RTT). We developed this module to bridge that gap. I hope this tool saves future researchers hours of debugging time and makes the process of learning network simulation less intimidating.

Sharvani Somayaji
National Institute of Technology Karnataka

Read the Original

This page is a summary of: Linux-like Socket Statistics Utility for ns-3, June 2023, ACM (Association for Computing Machinery),
DOI: 10.1145/3592149.3592164.
You can read the full text:

Read

Resources

Contributors

The following have contributed to this page