As part of a broader organisational restructure, data networking research at Swinburne University of Technology has moved from the Centre for Advanced Internet Architecture (CAIA) to the Internet For Things (I4T) Research Lab.

Although CAIA no longer exists, this website reflects CAIA's activities and outputs between March 2002 and February 2017, and is being maintained as a service to the broader data networking research community.

Simple Web Inverted System Simulation - SWISS

Copyright: Center for Advanced Internet Architecture, Author: Wendy Vanhonacker

1. Introduction

      SWISS is a simulation tool allowing the user to evaluate the performance of an inverted capacity network. The main goal was to implement a simple network with only three computers that would allow us to analyse different scenarios with differents network architectures. The tool allows the user to define:


Simulation GUI screenshot

2. Network architecture

      First in order to use this tool, you will need to set up a basic environment for the tool. SWISS has to be installed on one machine, that we will call the client. The general architecture is setup like this:

Basic network architecture

Network architecture

      From the client, you will be able to download a page from a remote server. If this page is cachable, then the page will be automatically downloaded from the cache server which is supposed to be closer from the client. This is what happens in a real life simulation. In an inverted network, the cachable page will be stored in a cache server which will practicalle be as close as possible from the client, so the delay from the client to the cache server is then set to 0 ms.

      The bridge and the server need to have a couple of softwares installed. To setup one of your machine as a bridge, please follow instructions from Appendix1 of "Evaluation of the FreeBSD dummynet network performance simulation tool on a Pentium 4-based Ethernet Bridge" report.
In order to simulate inverted capacity networks you will have to set the server machine with the Jail Host Toolkit (JHT), so that you can have multiple virtual hosts on one machine. If you can't access the toolkit, you can setup three machines connected to the bridge. One jail will act as the main server, the two other ones are 'cache' servers, one for the inverted network and one for non-inverted networks.The virtual network architecture is thus like this:

Virtual network architecture

Virtual Network architecture

The output will be the time that the tool took to download the web page(s). Ultimately you can also have a plot of all the download times.

3. Features

      SWISS is split in two parts. The first one is the population tool that will create web documents to the satisfaction of the user and will populate the servers with these desired documents. The user can describe to the tool the web document he ultimately will simulate, or choose between a set of predefined web documents. The tool will then send those new documents to the corresponding servers. The second part is the simulation where the user can define the network architecture: delays between client and main server and client to cache servers.

4. Requirements

To run SWISS, you need:

5. Installation

  1. Create a directory where you are going to put wget_extended and the swiss tool.
  2. Get wget_extended here
  3. Install wget_extended on you machine. this will replace your actual wget. If you want to keep the older version, install it another directory
  4. Get the swiss tool here
  5. In order to have the right network setup, follow the instructions from Appendix 1. However, when setting the bridge and dummynet, in point 2 you need to create a shell script. Copy the one that is in the network folder, as root do
    scp swiss_tool/network/ BRIDGE_IP:/usr/local/etc/rc.d
    Continue with the rest of the instructions.
  6. On the client, once everything is setup, hardware and software, go to your swiss_tool and run java Swiss as root


As you can see, the tool is split into two tabs, one is the population setup and the other is the simulation setup.

      Population Setup

      You can either create predefined web documents, or create your own web documents. The predefined web document list offers a choice of web pages that have been chosen to be a good representation of typical web pages. You can choose:       When this is done, click on "Start Populate". This might take a minute.
If you want to create a while range of documents, select "All documents( predefined list)".This might take a while.
First it is recommended to clean your servers, in case older document version are still there, click "Clean all existing documents first".
      If you chose to create your own document, go to "Flexible document". This allows you to define your own order of objects with there sizes and cachability. You also need to define whether the document is cachable or not. Then click on " Start populate".

      Simulation Setup

      Once you are sure that the servers are populated, you can simulate them. First you need to choose what kind of network you want to simulate: if it is a realistic network, or an inverted capacity network, or you can still choose both to be able to compare them at the end.
      You also need to setup the architecture of the network: the delays between the client and the servers. Select the number of times you want to download the page.
Then, you need to choose between the list of existing file which one you want to download. You can choose one or multiple pages, depending on there characterisitcs. If you want to see the list of existing documents, click on "Select from the list of existing documents" and choose one from the list (the description of the file will appear if you stay on the name for a while.
Once everything is setup, click on "Start".
After the simulation, the tool will ask you if you want to see a plot of the results.
The results will be saved in the "data" directory.

Last Updated: Friday 27-Feb-2004 18:35:38 EST | Maintained by: Grenville Armitage ( | Authorised by: Grenville Armitage (