mirror of
https://github.com/opennetworkinglab/onos.git
synced 2025-10-20 20:02:17 +02:00
55 lines
2.2 KiB
Python
55 lines
2.2 KiB
Python
#!/usr/bin/env python
|
|
|
|
"""
|
|
"""
|
|
from mininet.topo import Topo
|
|
from mininet.net import Mininet
|
|
from mininet.node import 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
|
|
|
|
class AttMplsTopoExt( Topo ):
|
|
"Internet Topology Zoo Specimen."
|
|
|
|
def __init__( self ):
|
|
"Create a topology."
|
|
|
|
# Initialize Topology
|
|
Topo.__init__( self )
|
|
|
|
# add nodes, switches first...
|
|
MINE = self.addSwitch( 's31', dpid='0000001000000001') # 44.977862, -93.265427
|
|
BISM = self.addSwitch( 's32', dpid='0000001000000002') # 46.817887, -100.786109
|
|
BOIS = self.addSwitch( 's33', dpid='0000001000000003') # 43.617834, -116.216903
|
|
RENO = self.addSwitch( 's34', dpid='0000001000000004') # 39.533310, -119.796940
|
|
ALBU = self.addSwitch( 's35', dpid='0000001000000005') # 35.109657, -106.626698
|
|
|
|
# ... and now hosts
|
|
MINE_host = self.addHost( 'h31', mac='00:10:00:00:00:01' )
|
|
BISM_host = self.addHost( 'h32', mac='00:10:00:00:00:02' )
|
|
BOIS_host = self.addHost( 'h33', mac='00:10:00:00:00:03' )
|
|
RENO_host = self.addHost( 'h34', mac='00:10:00:00:00:04' )
|
|
ALBU_host = self.addHost( 'h35', mac='00:10:00:00:00:05' )
|
|
|
|
# add edges between switch and corresponding host
|
|
self.addLink( MINE , MINE_host )
|
|
self.addLink( BISM , BISM_host )
|
|
self.addLink( BOIS , BOIS_host )
|
|
self.addLink( RENO , RENO_host )
|
|
self.addLink( ALBU , ALBU_host )
|
|
|
|
# add edges between switches
|
|
self.addLink( MINE , BISM, bw=10, delay='0.979030824185ms')
|
|
self.addLink( BISM , BOIS, bw=10, delay='0.806374975652ms')
|
|
self.addLink( BOIS , RENO, bw=10, delay='0.686192970166ms')
|
|
self.addLink( BOIS , ALBU, bw=10, delay='0.605826192092ms')
|
|
self.addLink( RENO , ALBU, bw=10, delay='1.4018238197ms')
|
|
self.addLink( RENO , MINE, bw=10, delay='0.232315346482ms')
|
|
self.addLink( BISM , ALBU, bw=10, delay='1.07297714274ms')
|
|
|
|
topos = { 'att': ( lambda: AttMplsTopoExt() ) }
|