Skip to main content

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.

  1. 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 the ICMP flows in the switches


6. dpctl dump-tables [switch]

Prints the table statistics of the switch

Flow table: After data transfer


7. dump-aggregate

Prints the aggregate flow statistics of the switch

  • dpctl dump-aggregate [switch] [flow]

Prints the aggregate stats of the matched flows in the associated switch

Output showing the aggregate of flow entries


These were the commonly used dpctl command to manage the OpenFlow switches.

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...