Requirement

  • Save the mininet script given below as pathmap_test.py and run the mininet script in the mininet environment where Mininet is installed.
  • Create topology using the below mininet script:
from mininet.topo import Topo
  class MyTopo( Topo ):
    "Simple topology example."
    def __init__( self ):
        "Create custom topo."
        # Initialize topology
        Topo.__init__( self )
        # Add hosts and switches
        leftHost = self.addHost( 'h1' )
        rightHost = self.addHost( 'h2' )
        leftSwitch = self.addSwitch( 's1' )
        middleSwitch = self.addSwitch( 's2' )
        middleSwitch2 = self.addSwitch( 's4' )
        rightSwitch = self.addSwitch( 's3' )
        # Add links
        self.addLink( leftHost, leftSwitch )
        self.addLink( leftSwitch, middleSwitch )
        self.addLink( leftSwitch, middleSwitch2 )
        self.addLink( middleSwitch, rightSwitch )
        self.addLink( middleSwitch2, rightSwitch )
        self.addLink( rightSwitch, rightHost )
 topos = { 'mytopo': ( lambda: MyTopo() ) }
 mininet> net
 c0
 s1 lo:  s1-eth1:h1-eth0 s1-eth2:s2-eth1 s1-eth3:s4-eth1
 s2 lo:  s2-eth1:s1-eth2 s2-eth2:s3-eth1
 s3 lo:  s3-eth1:s2-eth2 s3-eth2:s4-eth2 s3-eth3:h2-eth0
 s4 lo:  s4-eth1:s1-eth3 s4-eth2:s3-eth2
 h1 h1-eth0:s1-eth1
 h2 h2-eth0:s3-eth3
  • Generate traffic by pinging between hosts h1 and h2 before creating the portmaps respectively
  mininet> h1 ping h2
  PING 10.0.0.2 (10.0.0.2) 56(84) bytes of data.
  From 10.0.0.1 icmp_seq=1 Destination Host Unreachable
  From 10.0.0.1 icmp_seq=2 Destination Host Unreachable
  From 10.0.0.1 icmp_seq=3 Destination Host Unreachable
  From 10.0.0.1 icmp_seq=4 Destination Host Unreachable

loading table of contents...