NetSolver 1.0

The power of simulation at a fraction of the cost

Last Updated: November 4, 1999

Software

Click here to download a Windows (32-bit) implementation of NetSolver version 1.01. This version has fixes for some bugs in previous version 1.0 (370K zip file).

Overview

NetSolver computes the time evolution of instantaneous ensemble metrics of TCP/IP networks at a cost several orders cheaper than packet-level simulation. 

A TCP/IP network is described by nodes, links, and traffic classes. Nodes represent end-hosts, routers, and switches. Links interconnect nodes and are bi-directional. Traffic classes represent end-to-end TCP and UDP connections.
NetSolver computes link metrics such as average buffer occupancy, utilization, and loss rate at time t, and traffic-class metrics such as achieved throughput at time t. To do this, NetSolver models the TCP/IP network by a time-dependent queueing network and numerically solves the queueing differential equations using an approximation technique called the Z-iteration. 
A TCP source is modeled by a time-dependent stochastic source whose current rate is determined by its profile and the current network state. The profile is an empircally-obtained function expressing the instantaneous throughput of the source in terms of instantaneous roundtrip time and instantaneous loss rate. Different TCP implementations have different profiles, which translates to significant differences in performance. In Net Solver 1.0, the user may choose between the TCP Reno implementations in NetBSD 1.2 and in the ns simulator. 

The user can easily compare results computed by NetSolver against those obtained by the ns network simulator. Specifically, NetSolver can generate the ns script of a network, run ns, and include the results in graphs.
For more information: 
  • Profiles of some TCP Reno implementions
  • Evaluations of some TCP/IP networks and comparisons against ns simulations
  • Z-iteration numerical solution method
  •  

    User Interface

    The program has a graphical interface with separate windows for network topology, traffic classes, and plots of computed metrics.
    More about user interface.

    Displaying Routes

    The traffic classes are routed on shortest-path routes. Once the routes are computed (using Compute Routes or  Compute Metrics), the path of a traffic class can be highlighted by selecting the traffic class in the Traffic View.

    Defining a Network

    The user can define a network by drawing its nodes, links, and traffic classes. Nodes: Adding / Deleting / Editing.
    Links: Adding / Deleting / Editing.
    Traffic Classes: Adding / Deleting / Editing..

    Computing Performance Metrics

    NetSolver can compute instantaneous ensemble metrics, for example, average buffer occupancy, utilization, and loss rate at time t for each link, achieved throughput at time t for a TCP connection, etc. To perform the computation, the user must supply some parameters such as the evaluation time, evaluation step size, TCP profile, etc. More about computing metrcis.

    Generating ns Scripts

    NetSolver can generate the ns script for a network, run ns, and display the ns results together with the results computed by NetSolver. More about generating ns scripts.

    Graphing the Results

    After the evaluation is performed, the user can graph the evolution of the computed metrics versus time.
    Graphing the metrics.

    Printing

    Printing and saving graphs and networks.