Skip to main content

Stimulate communication in the network | mininet


COMMUNICATION IN THE NETWORK


Data can be transferred in a network using the following methods:

[ Hint: Use xterm to access separate CLI for hosts ]
[ Ex: xterm h1 h2 ]

1. Using SimpleHTTPServer and wget :


SimpleHTTPServer is a python based server application for hosting the files in a system to anyone with the system's IP address.

wget is used to obtain the file from the server.

This results in obtaining a default file 'index.html' from the server.

To run a server: python -m SimpleHTTPServer 80 &
To run a client: wget -o - [server_ip]

Server started:

File has been accessed and stored on the client-side:

Acknowledgment sent to the server:
Thus a file is being transferred between the hosts.

2. Using iperf


Iperf is a widely used tool for network performance measurement and tuning. It helps in transferring actual data between the hosts.

It can transfer data in two ways:

  • TCP transfer

Server: iperf -s
Client: iperf -c [server_ip]



Details known: Amount of data transferred, bandwidth used

  • UDP transfer

Server: iperf -s -u
Client: iperf -c [server_ip] -u -b [bandwidth_value]



Details known: Amount of data transferred, bandwidth used, jitter, total number of datagrams, number of datagrams lost, etc. 

iperf has many options to modify bandwidth value, amount of data transferred, time taken to transfer, etc.

Thus helping us to stimulate traffic in the network and analyze network performance.

Good Luck!


Comments

Popular posts from this blog

Topologies in mininet

The default topology in mininet consists of two hosts and two switches. There are many other topologies available in mininet, such as single  single creates a topology with a single switch attached to the number of hosts that are mentioned by the user sudo mn --topo single,[no_of_hosts] Fig 1. [ sudo mn --topo single,2 ] reversed  reversed creates a topology similar to the single command but the interfaces are assigned in a reverse order sudo mn --topo reversed,[no_of_hosts] Fig 2. [ sudo mn --topo reversed,2 ] linear  The linear keyword creates a linear topology with the specified number of switches and hosts sudo mn --topo linear,[no_of_switches],[no_of_hosts_for_each_switch] Fig 3. [ sudo mn --topo linear,3,2 ] tree  The tree keyword creates a tree topology of the specified depth of switches. We can also specify the number of children sudo mn --topo tree,[depth],[no_of_children] Fig 4. [ sudo mn --topo ...

CUSTOM TOPOLOGY IN MININET

CREATE CUSTOM TOPOLOGY IN MININET To create a custom topology in the mininet environment, we are going to use a python code. It is very simple, no need to acquire deep knowledge of python programming language especially for this task. 1. Import necessary packages *Topo from mininet.topo import Topo subpackage topo is being imported from the package mininet. 2. Create a class object class MYTOPO ( Topo ) : (Don't forget to have a similar class name and filename) 3. Create init method init method in python has similar functions as constructors in java. def __init__( self ):    Topo.__init__( self ) 4. Add Hosts Hostname=self.addHost ( "hostname" ) 5. Add switches switch_name=self.addSwitch ( "switch name" ) 6. Add links self.addLink ( "node name 1", "node name 2" ) 7. Name your topology Finally, we name the topo to call it in the command line. topos = { 'cust': ( lambda: MYT...

dpctl in mininet

dpctl command in mininet The dpctl program is a command-line tool for monitoring OpenFlow switches. It can show the flows, features, configuration, table entries, etc. of the switches. It can work with any OpenFlow switches. dpctl is a switch management utility. dpctl show Shows the basic information of the switch, its flow table, ports. 2. dpctl dump-desc [switch] Prints switch description 3. dpctl dump-ports [switch] Prints port statistics of the network devices attached to the switch 4. dpctl dump-ports-desc [switch] Gives detailed statistics of the network devices attached to the switch 5. dpctl dump-flows [switch] Print all flow entries in the associated switch dpctl dump-flows [switch] [flow] Print all the matched flows in the associated switch Flows and flow table: Before data transfer Stimulating TCP data transfer Observing TCP flows in switches Stimulating ICMP flows using pingall and observing...