diff options
Diffstat (limited to 'framework/src/onos/tools/test/topos/newFuncTopo.py')
-rw-r--r-- | framework/src/onos/tools/test/topos/newFuncTopo.py | 148 |
1 files changed, 0 insertions, 148 deletions
diff --git a/framework/src/onos/tools/test/topos/newFuncTopo.py b/framework/src/onos/tools/test/topos/newFuncTopo.py deleted file mode 100644 index 5edf7f78..00000000 --- a/framework/src/onos/tools/test/topos/newFuncTopo.py +++ /dev/null @@ -1,148 +0,0 @@ -#!/usr/bin/python - -""" -Custom topology for Mininet -""" -from mininet.topo import Topo -from mininet.net import Mininet -from mininet.node import Host, RemoteController -from mininet.node import Node -from mininet.node import CPULimitedHost -from mininet.link import TCLink -from mininet.cli import CLI -from mininet.log import setLogLevel -from mininet.util import dumpNodeConnections -from mininet.node import ( UserSwitch, OVSSwitch, IVSSwitch ) - -class VLANHost( Host ): - def config( self, vlan=100, **params ): - r = super( Host, self ).config( **params ) - intf = self.defaultIntf() - self.cmd( 'ifconfig %s inet 0' % intf ) - self.cmd( 'vconfig add %s %d' % ( intf, vlan ) ) - self.cmd( 'ifconfig %s.%d inet %s' % ( intf, vlan, params['ip'] ) ) - newName = '%s.%d' % ( intf, vlan ) - intf.name = newName - self.nameToIntf[ newName ] = intf - return r - -class IPv6Host( Host ): - def config( self, v6Addr='1000:1/64', **params ): - r = super( Host, self ).config( **params ) - intf = self.defaultIntf() - self.cmd( 'ifconfig %s inet 0' % intf ) - self.cmd( 'ip -6 addr add %s dev %s' % ( v6Addr, intf ) ) - return r - -class dualStackHost( Host ): - def config( self, v6Addr='2000:1/64', **params ): - r = super( Host, self ).config( **params ) - intf = self.defaultIntf() - self.cmd( 'ip -6 addr add %s dev %s' % ( v6Addr, intf ) ) - return r - -class MyTopo( Topo ): - - def __init__( self ): - # Initialize topology - Topo.__init__( self ) - # Switch S5 Hosts - host1=self.addHost( 'h1', ip='10.1.0.2/24' ) - host2=self.addHost( 'h2', cls=IPv6Host, v6Addr='1000::2/64' ) - host3=self.addHost( 'h3', ip='10.1.0.3/24', cls=dualStackHost, v6Addr='2000::2/64' ) - #VLAN hosts - host4=self.addHost( 'h4', ip='100.1.0.2/24', cls=VLANHost, vlan=100 ) - host5=self.addHost( 'h5', ip='200.1.0.2/24', cls=VLANHost, vlan=200 ) - #VPN-1 and VPN-2 Hosts - host6=self.addHost( 'h6', ip='11.1.0.2/24' ) - host7=self.addHost( 'h7', ip='12.1.0.2/24' ) - #Multicast Sender - host8=self.addHost( 'h8', ip='10.1.0.4/24' ) - - # Switch S6 Hosts - host9=self.addHost( 'h9', ip='10.1.0.5/24' ) - host10=self.addHost( 'h10', cls=IPv6Host, v6Addr='1000::3/64' ) - host11=self.addHost( 'h11', ip='10.1.0.6/24', cls=dualStackHost, v6Addr='2000::3/64' ) - #VLAN hosts - host12=self.addHost( 'h12', ip='100.1.0.3/24', cls=VLANHost, vlan=100 ) - host13=self.addHost( 'h13', ip='200.1.0.3/24', cls=VLANHost, vlan=200 ) - #VPN-1 and VPN-2 Hosts - host14=self.addHost( 'h14', ip='11.1.0.3/24' ) - host15=self.addHost( 'h15', ip='12.1.0.3/24' ) - #Multicast Receiver - host16=self.addHost( 'h16', ip='10.1.0.7/24' ) - - # Switch S7 Hosts - host17=self.addHost( 'h17', ip='10.1.0.8/24' ) - host18=self.addHost( 'h18', cls=IPv6Host, v6Addr='1000::4/64' ) - host19=self.addHost( 'h19', ip='10.1.0.9/24', cls=dualStackHost, v6Addr='2000::4/64' ) - #VLAN hosts - host20=self.addHost( 'h20', ip='100.1.0.4/24', cls=VLANHost, vlan=100 ) - host21=self.addHost( 'h21', ip='200.1.0.4/24', cls=VLANHost, vlan=200 ) - #VPN-1 and VPN-2 Hosts - host22=self.addHost( 'h22', ip='11.1.0.4/24' ) - host23=self.addHost( 'h23', ip='12.1.0.4/24' ) - #Multicast Receiver - host24=self.addHost( 'h24', ip='10.1.0.10/24' ) - - s1 = self.addSwitch( 's1' ) - s2 = self.addSwitch( 's2' ) - s3 = self.addSwitch( 's3' ) - s4 = self.addSwitch( 's4' ) - s5 = self.addSwitch( 's5' ) - s6 = self.addSwitch( 's6' ) - s7 = self.addSwitch( 's7' ) - - self.addLink(s5,host1) - self.addLink(s5,host2) - self.addLink(s5,host3) - self.addLink(s5,host4) - self.addLink(s5,host5) - self.addLink(s5,host6) - self.addLink(s5,host7) - self.addLink(s5,host8) - - self.addLink(s6,host9) - self.addLink(s6,host10) - self.addLink(s6,host11) - self.addLink(s6,host12) - self.addLink(s6,host13) - self.addLink(s6,host14) - self.addLink(s6,host15) - self.addLink(s6,host16) - - self.addLink(s7,host17) - self.addLink(s7,host18) - self.addLink(s7,host19) - self.addLink(s7,host20) - self.addLink(s7,host21) - self.addLink(s7,host22) - self.addLink(s7,host23) - self.addLink(s7,host24) - - self.addLink(s1,s2) - self.addLink(s1,s3) - self.addLink(s1,s4) - self.addLink(s1,s5) - self.addLink(s2,s3) - self.addLink(s2,s5) - self.addLink(s2,s6) - self.addLink(s3,s4) - self.addLink(s3,s6) - self.addLink(s4,s7) - topos = { 'mytopo': ( lambda: MyTopo() ) } - -# HERE THE CODE DEFINITION OF THE TOPOLOGY ENDS - -def setupNetwork(): - "Create network" - topo = MyTopo() - network = Mininet(topo=topo, autoSetMacs=True, controller=None) - network.start() - CLI( network ) - network.stop() - -if __name__ == '__main__': - setLogLevel('info') - #setLogLevel('debug') - setupNetwork() |