Next: 4. Quick Intro
Up: IMUNES manual
Previous: 2. Introduction
IMUNES can be used either through the simple Tcl/Tk based graphical user
interface (GUI) or through the command line interface (CLI).
3. User Interface Layout
We will run IMUNES on FreeBSD with some kind of X11 window manager and explain
the main GUI components. If X11 is not running you can start it using
startx command. To run IMUNES GUI use imunes command.
IMUNES GUI is a simple Tcl/Tk based management console, allowing specification
and management of virtual network topologies. Its main parts are the work space
in the middle, called canvas, the menubar on the top, the toolbox on the left
side and the statusbar at the bottom (Figure 3.1)
The default working mode after the initial start (or after creating a new
virtual network configuration file with the File New option from
the menubar) is edit mode. The edit mode is used to build and configure network
topologies, contrary to the execute mode whose purpose is the network
simulation. The network simulation will be explained later in the Section
The toolbox, placed on the left side of the GUI, contains tools for building
network topologies and tools for adding annotations (Figure
3.2). These tools are all available in the edit mode. In
the execute mode these tools, except the Select tool, are shaded and can
not be used.
Each toolbox item shown in Figure 3.2, from left to right,
is described below.
- Select tool - The default tool for selecting and moving
Building the network topology:
- Link - Tool that is used to create network links between nodes.
- Hub - The link layer element that forwards every incoming packet
to all of its ports and, thus, to every connected node.
- LAN switch - The link layer element that forwards incoming
packets to connected nodes using the table of destination addresses and its
- Router - The network layer element that is capable of packet
forwarding using the routes obtained by dynamic routing protocols (available
through quagga or xorp by default installation or any other standard FreeBSD
- Host - The network layer element that does not forward packets
and has static routes. It starts standard network services, via portmap and
- PC - The network layer element that also does not forward
packets and has static routes. Unlike host, it does not start any network
- Physical interface (RJ45) - Tool that provides the possibility
to connect a virtual node with the physical interface.
- Text - Tool for adding a new text on the canvas.
- Oval - Tool for adding a new oval on the canvas.
- Rectangle - Tool for adding a new rectangle on the canvas.
- Freeform - Tool for adding a new freeform on the canvas.
The menubar consists of menus that provide access to various functions (Figure
3.3). Some options from the menubar are automatically disabled in
the execute mode.
The File menu contains options for configuration files management
- New - Create a new virtual network configuration file.
- Open - Open an existing IMUNES network configuration file (.imn)
by selecting it from the invoked File Open dialog.
- Save, Save As - Save the current virtual network topology
in IMUNES network configuration file format (.imn).
- Print - Print the current canvas using Tcl/Tk PostScript and
send it through the pipe to the default printing command (lpr) (that can
also be changed, (e.g > filename)).
- Print to file - Print all canvases to PDF or PostScript file.
- Close - Close the virtual network configuration file. NOTE: If
the experiment is not explicitly terminated it remains running.
- Quit - Exit the IMUNES GUI.
- Recently used files - A list of recently used files. Clicking on
one of the files opens that configuration file.
The Edit menu contains options for handling elements on the canvas.
The Canvas menu contains options for canvas management.
- Undo - Undo the last change on the canvas reverting it to an
- Redo - Reverse the undo command.
- Cut, Copy, Paste - Cut or copy elements from
source and paste them to destination.
- Select all - Select a whole network topology.
- Select adjacent - Select nodes connected to the selected
node(s). This feature is also available through the node menu.
- New - Create a new empty canvas.
- Rename - Rename the current canvas through the invoked dialog.
- Delete - Delete the current canvas.
- Resize - Resize the current canvas through the invoked dialog.
- Background image - Change background on the current canvas (see
- Previous, Next, First, Last - Switch between available canvases.
The View menu contains options for showing / hiding links and nodes
parameters on the canvas, options for changing icon size, zooming options, etc.
- Icon size - Change the size (normal or small) of all network
elements (see Section 5.4.3).
- Show [network element parameter] - Show or hide information such
as interface names, IPv4/IPv6 addresses, etc. These options are usually saved
in the .imn files, providing consistent look of scenarios running on different
- Show Topology Tree - Show or hide the tree with a list of all
network topology elements.
- Show Background Image - Show or hide background image.
- Show Annotations - Show or hide annotations (text, oval,
- Show Grid - Show or hide grid.
- Zoom In, Zoom Out - Magnify (Zoom In) or reduce
(Zoom Out) the size of the display.
- Themes - Choose one of the themes from the submenu. Each theme
represents a collection of styles, where a style describes the appearance (or
appearances) of a Ttk widget class.
The Tools menu contains the network topology management tools.
- Auto rearrange all - Automatically rearrange position of all
network elements on canvas.
- Auto rearrange selected - Automatically rearrange position of
the selected group of network elements.
- Align to grid - Arrange all network elements on canvas aligning
them to grid.
- Randomize MAC bytes - Randomizes the 4th and 5th byte of the
automatically generated MAC address.
- IPv4 address pool - Set variable-mask IPv4 address pool through
the invoked dialog in order to replace default 10.0.0.0/24 address pool (see
Section 5.3.3). This will be applied to all the
subsequentially created network layer elements.
- Routing protocol defaults - Set the routing protocol defaults
(routing model and protocols) through the invoked dialog (see Section
5.3.5). This will be applied to all selected
routers (if any) at the time of change, as well as to all the subsequentially
- ns2 imunes converter - Convert a file from ns2 network
configuration file format to IMUNES network configuration file format (.imn)
The TopoGen menu contains options for simple and fast specification of
various network topologies (see Section 5.3.2).
The Widgets menu contains options for displaying information about the
- None - Do not show any information about the virtual network.
- ifconfig - Show network interfaces parameters. To see these
parameters, place the mouse pointer on the virtual node.
- Routing table - Show the routing table. To see the routing table,
place the mouse pointer on the virtual node.
- Custom... - Allows the specification of the command that will be
executed inside a virtual node. The result of the command will be displayed
inside the widget.
- Route - Show the route from the node x to the node y. To see the
route, click on the node x and then place the mouse pointer on the node y.
The Events menu - This menu is used to configure event scheduling.
- Start scheduling - Start the scheduling of events.
- Stop scheduling - Stop the scheduling of events.
- Event editor - Schedule events on the links through the opened
The Experiment menu is used to start and terminate an experiment. It
also enables to attach to a running experiment.
- Execute - Start an experiment and switch to the execute mode. In
the process of starting an experiment, IMUNES creates and configures the
virtual network. All events during that process will be shown in the statusbar.
- Terminate - Terminate an experiment and switch to the edit mode.
During the termination process, IMUNES will shut down all network elements and
it will terminate active services on each node. The termination is finished
when the message about the successful cleanup shows up in the statusbar.
- Restart - Terminate and restart the running experiment.
- Attach to experiment - This option opens opens a window with the
list of running experiments on the current computer. It allows to resume
running experiments that are shown in the Attach to experiment window
shown in Figure 5.9.
The Help menu contains the option About that invokes the
About dialog box for viewing version information.
Next: 4. Quick Intro
Up: IMUNES manual
Previous: 2. Introduction