Personal computers (office-pc1 and office-pc2) from the network 192.168.1.0/24 are connected to the LAN switch (office-switch) which is connected to the router (office-router). The server (office-host) from the network 192.168.2.0/24 is directly connected to the router (office-router). Personal computers from the first network have route only to the network 192.168.2.0/24. The server from the second network has the default route. Quagga routing is enabled on the router in order to be able to serve and receive dynamic route updates.
Now draw a router, a host, a LAN switch and two PCs. Using the Link tool connect the LAN switch to the router and then connect each PC to the LAN switch. Connect the host directly to the router. The created network topology should look like the one in Figure 4.1.
When nodes are connected with the Link tool (the direction does not matter), the source node, the destination node and the link automatically get preconfigured parameters. When a mouse pointer is above a node or a link, some of the configured parameters are shown on the left side of the statusbar placed at the bottom of the window (Figure 4.2).
Some of the parameters can be visible on the canvas: interface names (link layer: e0, e1, e2 and network layer: eth0, eth1), IPv4/IPv6 addresses of network layer elements (PC, host, router), node names (router1, host1, switch1, pc1, pc2) and link labels (Bandwidth, Delay, BER or Duplicate if their values are not default).
You can manipulate with the visibility of nodes and links parameters from the View menu (Figure 4.3). In this simple scenario we do not want for IPv6 addresses to be visible, so we will turn the Show IPv6 Addresses option off.
To delete the network element select it using the Select tool and then use the Delete keyboard button. You can also delete it by right clicking on it and clicking on the Delete label in the popped up menu. The node deletion is automatically followed by the deletion of associated links.
Using the Select tool you can also move around a group of connected nodes which can be selected using the Ctrl keyboard button in addition to the left click. To select the whole network topology use Select All option from the Edit menu.
For automatic rearranging of all network elements or rearranging the selected group of network elements use Rearrange and Rearrange All options from the Tools menu. To stop the rearranging process click with the Select tool.
Although preconfigured parameters of network elements are usually sufficient to start a simulation (automatically provided IPv4/IPv6 addresses, the default static route on the PC and the host and routing model and protocols parameters on the router as well), in this scenario we will set up our own parameters.
To open the network element configuration window:
Network elements configuration parameters can be also changed through the topology tree. To show the topology tree turn on the Show Topology Tree option from the View menu. The tree with a list of network topology elements (nodes and links) will be shown on the right side of the window (Figure 4.5). To open the network element configuration window double click or use the Enter keyboard button on node, interface or link label in the topology tree.
Depending on the type of a network element in our topology, there are 4 types of configuration windows:
There are also other types of configuration windows which are explained in other sections:
We will change the LAN switch name and data packet scheduling method (from preconfigured First In First Out (FIFO) data packet scheduling method to Weighted Fair Queuing (WFQ) method).
Change the node name to office-switch. To change data packet scheduling method select the link layer interface e0 from the list of interfaces, choose WFQ option from the Queue menu and click on the Apply button (Figure 4.6).
Packet scheduling method is now applied and you can see new queuing discipline for interface e0 in the column Queue disc (Figure 4.7).
Repeat the same procedure for the other link layer interfaces. Changed configuration is already applied so you can close the configuration window with the Cancel button but you can also use the Apply and Close button.
Besides a node name field, PC/Host/Click router configuration window contains startup services, routing parameters and custom configuration parameters (in the window associated with the Configuration tab) and network interface parameters (in the window associated with the Interfaces tab).
We will change the node name, network interface parameters and routing parameters.
Change the host node name to office-host and PC node names to office-pc1 and office-pc2. To change IPv4 address left click on the Interfaces tab, select interface eth0 from the list of interfaces, change the IPv4 address field and click on the Apply button (Figure 4.9). We will change the host IPv4 address field to 192.168.2.5/24 (now it belongs to 192.168.2.0/24) and PC IPv4 address fields to 192.168.1.5/24 and 192.168.1.7/24 (now they belong to network 192.168.1.0/24). IP address fields require the CIDR notation, so the IPv4 address is followed by a slash and a network length.
PCs and Hosts both use static routing. The preconfigured routing table contains only the default route. Every static route, as well as the default route, consists of:
If the route syntax is wrong, that route will be silently ignored.
We will add the static route on office-pc1 and office-pc2 for the network 192.168.2.0/24 through the gateway 192.168.1.1 (Figure 4.10).
On office-host we will change default gateway address to 192.168.2.1 (Figure 4.11).
IPv6 addresses and default routes (placed below IPv4 addresses and routes) can be deleted.
To apply the changed configuration and close the configuration window click on the Apply and Close button.
We will only change the node name and network interface parameters.
Change the node name to office-router and IPv4 addresses on both network interfaces: 192.168.1.1/24 on the network interface eth0 and 192.168.2.1/24 on the network interface eth1.
There are three possible routing models:
In the case of quagga and xorp routing models, there are options for enabling/disabling RIP, RIPng, OSPFv2 and OSPFv3. By default, all new quagga or xorp router instances will have both RIPv2 and RIPng enabled. The defaults can be changed with the Tools Routing protocol defaults option from the menubar, which will be applied to all selected routers (if any) at the time of change, as well as to all the subsequentially created ones (see Section 5.3.5). In the case of static routing model, the router uses routes from the static routes field that has the same syntax as the static routes field in the PC/Host/Click router configuration window.
We will leave the default router model - quagga with RIP and RIPng protocols enabled, and OSPFv2 and OSPFv3 protocols disabled (Figure 4.12).
Default values are as follows: the link which transmits packets without errors and without any possibility for the packet duplication with the unlimited link bandwidth and the zero propagation delay. The link width is set to value 2 and the link color is red.
We will leave default values on all links except on the link between office-switch and office-router (Figure 4.14). On that link we will set up the delay of 30000 s. Delay will be tested during the network simulation with the traceroute tool (see Section 4.1.3).
NOTE: Although you can draw network topology on any system that supports Tcl/Tk (Linux, FreeBSD, Windows, Mac OS X, Solaris), an experiment can only be started on FreeBSD and Linux operating systems with root permissions (Figure 4.15 and Figure 4.16)!
In addition to configured parameters, each node will be set with the loopback interface, a router will have the kernel forwarding enabled, and a host node will have portmap and inetd started.
Information about the time spent instantiating the network topology is shown in the statusbar (Figure 4.17).
In the right corner of the statusbar you can also see that IMUNES now works in the execute mode, as well as experiment unique identifier.
Note that both the node and the link menu in the execute menu offer the possibility to open the configuration window (Configure label).
From the node configuration window in the execute mode it is possible to change only the node name. Other node parameters such as link layer interface parameters, network interface parameters and routing parameters can be changed from the shell window on each node. To change those parameters from the node configuration window, stop the node (using the Stop label), change parameters and then start the node agin (using the Start label).
On the other side, from the link configuration window in the execute mode it is possible to change the following link parameters: link bandwidth, the propagation delay, the bit error rate and the probability of package duplication. It is also possible to change display properties: the link width and the link color.
We will now check if the virtual network topology is properly configured. Open the shell window (e.g. Shell window csh or simply double click on the node) on the network element (e.g. office-pc1).
We will test delay on the link between office-switch and office-router, which is set to 30000 s (30 ms), by using the traceroute tool:
After the virtual network is successfully built, configured and tested, it can be saved with File Save or File Save As options from the menubar. The virtual network topology is saved in IMUNES network configuration file format (.imn).
The structure of the configuration file is simple and suitable for changing with a text editor (see Appendix 8).
The other way to open an imn file is to start IMUNES with that file as an argument: imunes simple-topology.imn