onos/tools/test/topos/rftest.py
Thomas Vachuska e76f653a89 Improving net test tools and scenarios.
Change-Id: I2b53fa7b28e1135d2356ae58d4ee8ac35184d9b8
2015-07-09 06:47:53 +00:00

41 lines
972 B
Python

#!/usr/bin/python
import sys
from mininet.net import Mininet
from mininet.cli import CLI
from mininet.log import setLogLevel
from mininet.node import RemoteController
from rftesttopo import ReactiveForwardingTestTopo
setLogLevel( 'info' )
def pingloop( net ):
setLogLevel( 'error' )
try:
while True:
net.ping()
finally:
setLogLevel( 'info' )
def run(controllers=[ '127.0.0.1' ]):
Mininet.pingloop = pingloop
net = Mininet( topo=ReactiveForwardingTestTopo(), build=False, autoSetMacs=True )
ctrl_count = 0
for controllerIP in controllers:
net.addController( 'c%d' % ctrl_count, RemoteController, ip=controllerIP )
ctrl_count = ctrl_count + 1
net.build()
net.start()
CLI( net )
net.stop()
if __name__ == '__main__':
if len( sys.argv ) > 1:
controllers = sys.argv[ 1: ]
else:
print 'Usage: rf-test.py <c0 IP> <c1 IP> ...'
exit( 1 )
run( controllers )