WANulator Documentation

System Requirements:

You can use any Kind of PC you have handy – it should be able to boot from USB stick and have at least one better two network interface cards. Please note that the latest and shiniest HW may not be supported. Setup:

Setup:

Currently only a Web-Browser is pre-installed on the Wanulator as a client application. Thus the following setup is recommended for transparently testing all kind of client/server applications (The box representing the server may also be a whole network with more than one server component e.g. when testing SIP/VoIP applications):
Eth0 and Eth1 are the Linux names (oldschool - nowadays a predictable nameschema is used) for your first and second network interface installed on the PC running Wanulator. After booting the test PC from the Wanulator ISO you will be confronted with the system setup dialog. If you are working with the above setup choose switched mode and select eth0/eth1 interfaces. You may also change your keyboard layout and configure the statistic refresh timer in the other tabs: After leaving the Setup you enter the main wanulator application window. Before continuing creating test setups you should check if your application under test on your client PC works without problems.

Main Window:

The main window will show you a menu bar, a tool bar and an overview of all selected interfaces where you can apply the test functions to. Of cause all function slots of the interfaces will be empty after initial setup (thus showing the NOP symbol):

In the top slot you can configure bandwidth limitations of the interface. Currently only upstream settings are possible. So for simulating typical end user line speeds you need to apply limitations on both interfaces. E.g. 768KBit/s on up of Eth0 and 128 kBit/s on up of Eth1 for an old fashioned DSL line. Similar, all functions you assign to a slot will apply to the outgoing traffic of that interface.
They will be executed from top to down in the order of assignment. You assign a function by selecting it from the tool bar and then clicking on a free slot. Any click on a already assigned slot will open the function configuration dialog – except you choose the NOP function from the tool bar – which will clear a function from the slot. After assignment the main window will display a summary of the functions parameters as well as a statistic (make sure you configured the statistic refresh timer to some useful value > 0 in the setup tab).

Function Configuration Dialog:

The first part of the configuration is specifying how to apply the function to a packet stream. Therefore it will reoccur in all function configurations. The second part of the configuration is to set specific parameters which affect the behavior of the function.

  • Filter: You can chose from predefined protocol filters to apply the function only to a specific packet stream. Currently you can adjust all filter settings in the edit->filter menu. There are also 3 user defined filters available you can adjust to your needs.
  • Chance The function is applied statistically to the given percentage of the packet stream.
  • Static: The function is applied to every nth packet. By choosing this option and setting the parameter to one you will apply the function to every packet.
  • Once: the function will only be applied to the first packet.
  • Off: The function is switched off.
  • Burst: If the function is triggered it will also apply to the next n packets where n can be configured

For more information of the function specific parameters please see the descriptions of the functions:

Function Descriptions:

  • NOP: No operation – it clears a slot.
  • Delay: Delays the packet stream. You can choose between a static delay – delaying every packet with the given value – or jitter delaying every packet with a random value between 0 and the given value.
  • Drop: Just throws away the packet.
  • Dup: Duplicates a packet.
  • Mix: Waits for n packets of the data stream to overtake before the packet is reinserted.
  • Overwrites the content of the packet with random data starting from offset len bytes.