def topology(): "Create a network." net = Mininet( ) print "*** Creating nodes" sta1 = net.addStation( 'sta1' ) sta2 = net.addStation( 'sta2' ) sta3 = net.addStation( 'sta3' ) print "*** Configuring wifi nodes" net.configureWifiNodes() print "*** Creating links" net.addMesh(sta1, ssid='meshNet') net.addMesh(sta2, ssid='meshNet') net.addMesh(sta3, ssid='meshNet') print "*** Starting network" net.build() print "*** Running CLI" CLI( net ) print "*** Stopping network" net.stop()
def topology(): "Create a network." net = Mininet(controller=Controller, accessPoint=OVSKernelAP, enable_wmediumd=True, enable_interference=True) print "*** Creating nodes" sta1 = net.addStation('sta1', mac='00:00:00:00:00:11') sta2 = net.addStation('sta2', mac='00:00:00:00:00:12') ap1 = net.addAccessPoint('ap1', wlans=2, ssid='ssid1,', position='10,10,0') ap2 = net.addAccessPoint('ap2', wlans=2, ssid='ssid2,', position='30,10,0') c0 = net.addController('c0', controller=Controller, ip='127.0.0.1', port=6633) print "*** Configuring wifi nodes" net.configureWifiNodes() print "*** Associating Stations" net.addLink(sta1, ap1) net.addLink(sta2, ap2) net.addMesh(ap1, intf='ap1-wlan2', ssid='mesh-ssid') net.addMesh(ap2, intf='ap2-wlan2', ssid='mesh-ssid') print "*** Starting network" net.build() c0.start() ap1.start([c0]) ap2.start([c0]) print "*** Running CLI" CLI(net) print "*** Stopping network" net.stop()
def topology(): "Create a network." net = Mininet(controller=Controller, link=TCLink, accessPoint=OVSKernelAP) print "*** Creating nodes" h1 = net.addHost('h1', mac='00:00:00:00:00:11') h2 = net.addHost('h2', mac='00:00:00:00:00:12') ap1 = net.addWirelessMeshAP('ap1') ap2 = net.addWirelessMeshAP('ap2') c0 = net.addController('c0', controller=Controller, ip='127.0.0.1', port=6653) print "*** Configuring wifi nodes" net.configureWifiNodes() print "*** Associating Stations" net.addLink(h1, ap1) net.addLink(h2, ap2) net.addMesh(ap1, ssid='mesh-ssid') net.addMesh(ap2, ssid='mesh-ssid') print "*** Starting network" net.build() c0.start() ap1.start([c0]) ap2.start([c0]) print "*** Running CLI" CLI(net) print "*** Stopping network" net.stop()
def topology(): "Create a network." net = Mininet(enable_wmediumd=True, enable_interference=True) print "*** Creating nodes" sta1 = net.addStation('sta1', position='10,10,0') sta2 = net.addStation('sta2', position='50,10,0') sta3 = net.addStation('sta3', position='90,10,0') print "*** Configuring wifi nodes" net.configureWifiNodes() print "*** Creating links" net.addMesh(sta1, ssid='meshNet', channel=5) net.addMesh(sta2, ssid='meshNet', channel=5) net.addMesh(sta3, ssid='meshNet', channel=5) print "*** Starting network" net.build() print "*** Running CLI" CLI(net) print "*** Stopping network" net.stop()
def topology(): "Create a network." net = Mininet( controller=RemoteController, link=TCLink, switch=OVSKernelSwitch ) sta = [] print "*** Creating nodes" for n in range(10): sta.append(n) sta[n] = net.addStation( 'sta%s' % (n+1), wlans=2, mac='00:00:00:00:00:%s' % (n+1), ip='192.168.0.%s/24' % (n+1) ) phyap1 = net.addPhysicalBaseStation( 'phyap1', ssid= 'SBRC16-MininetWiFi', mode= 'g', channel= '1', position='50,115,0', wlan='wlan11' ) sta11 = net.addStation( 'sta11', ip='10.0.0.111/8', position='120,200,0') ap2 = net.addBaseStation( 'ap2', ssid= 'ap2', mode= 'g', channel= '11', position='100,175,0' ) ap3 = net.addBaseStation( 'ap3', ssid= 'ap3', mode= 'g', channel= '6', position='150,50,0' ) ap4 = net.addBaseStation( 'ap4', ssid= 'ap4', mode= 'g', channel= '1', position='175,150,0' ) c1 = net.addController( 'c1', controller=Controller, port=6653 ) root = Node( 'root', inNamespace=False ) print "*** Creating links" for station in sta: net.addMesh(station, ssid='meshNet') """uncomment to plot graph""" net.plotGraph(max_x=240, max_y=240) """Routing""" net.meshRouting('custom') """Seed""" net.seed(20) print "*** Associating and Creating links" net.addLink(phyap1, ap2) net.addLink(ap2, ap3) net.addLink(ap3, ap4) print "*** Starting network" net.build() c1.start() phyap1.start( [c1] ) ap2.start( [c1] ) ap3.start( [c1] ) ap4.start( [c1] ) ip = 201 for station in sta: station.cmd('ifconfig %s-wlan1 10.0.0.%s/8' % (station, ip)) ip+=1 "*** Available models: RandomWalk, TruncatedLevyWalk, RandomDirection, RandomWayPoint, GaussMarkov, ReferencePoint, TimeVariantCommunity ***" net.startMobility(startTime=0, model='RandomWalk', max_x=200, max_y=220, min_v=0.1, max_v=0.2) print "*** Running CLI" CLI( net ) print "*** Stopping network" net.stop()
def topology(): "Create a network." net = Mininet( controller=RemoteController, link=TCLink, switch=OVSKernelSwitch ) staList = [] print "*** Creating nodes" for n in range(10): staList.append(n) staList[n] = net.addStation( 'sta%s' % (n+1), wlans=2, mac='00:00:00:00:00:%s' % (n+1), ip='192.168.0.%s/24' % (n+1) ) phyap1 = net.addPhysicalBaseStation( 'phyap1', ssid= 'SBRC16-MininetWiFi', mode= 'g', channel= '1', position='50,115,0', phywlan='wlan11' ) sta11 = net.addStation( 'sta11', ip='10.0.0.111/8', position='120,200,0') ap2 = net.addAccessPoint( 'ap2', ssid= 'ap2', mode= 'g', channel= '11', position='100,175,0' ) ap3 = net.addAccessPoint( 'ap3', ssid= 'ap3', mode= 'g', channel= '6', position='150,50,0' ) ap4 = net.addAccessPoint( 'ap4', ssid= 'ap4', mode= 'g', channel= '1', position='175,150,0' ) c1 = net.addController( 'c1', controller=Controller, port=6653 ) root = Node( 'root', inNamespace=False ) print "*** Configuring wifi nodes" net.configureWifiNodes() """uncomment to plot graph""" net.plotGraph(max_x=240, max_y=240) """Routing""" net.meshRouting('custom') """Seed""" net.seed(20) print "*** Associating and Creating links" for sta in staList: net.addMesh(sta, ssid='meshNet') net.addLink(phyap1, ap2) net.addLink(ap2, ap3) net.addLink(ap3, ap4) print "*** Starting network" net.build() c1.start() phyap1.start( [c1] ) ap2.start( [c1] ) ap3.start( [c1] ) ap4.start( [c1] ) ip = 201 for sta in staList: sta.setIP('10.0.0.%s/8' % ip, intf="%s-wlan1" % sta) ip+=1 "*** Available models: RandomWalk, TruncatedLevyWalk, RandomDirection, RandomWayPoint, GaussMarkov, ReferencePoint, TimeVariantCommunity ***" net.startMobility(startTime=0, model='RandomWalk', max_x=200, max_y=220, min_v=0.1, max_v=0.2) print "*** Running CLI" CLI( net ) print "*** Stopping network" net.stop()
def topology(): "Create a network." net = Mininet( controller=Controller, link=TCLink, switch=OVSKernelSwitch ) print "*** Creating nodes" car = [] for x in range(0,20): car.append(x) for x in range(0,20): car[x] = net.addVehicle( 'car%s' % x, wlans=2, ip='10.0.0.%s/8' % (x+1) ) bs1 = net.addBaseStation( 'BS1', ssid= 'new-ssid1', mode= 'g', channel= '1' ) bs2 = net.addBaseStation( 'BS2', ssid= 'new-ssid2', mode= 'g', channel= '6' ) bs3 = net.addBaseStation( 'BS3', ssid= 'new-ssid3', mode= 'g', channel= '11' ) c1 = net.addController( 'c1', controller=Controller ) print "*** Associating and Creating links" for x in range(0,20): net.addMesh(car[x], ssid='mesh') net.addLink(bs1, bs2) net.addLink(bs1, bs3) print "*** Starting network" net.build() c1.start() bs1.start( [c1] ) bs2.start( [c1] ) bs3.start( [c1] ) """Available Options: sumo, sumo-gui""" #Put your sumocfg file in /mininet/sumo/data net.useExternalProgram('sumo-gui', config_file='map.sumocfg') """Routing""" #net.meshRouting('custom') print "*** Running CLI" CLI( net ) print "*** Stopping network" net.stop()
def topology(): "Create a network." net = Mininet(controller=Controller, link=TCLink, switch=OVSKernelSwitch) print "*** Creating nodes" car = [] for x in range(0, 20): car.append(x) for x in range(0, 20): car[x] = net.addVehicle('car%s' % x, wlans=2, ip='10.0.0.%s/8' % (x + 1)) bs1 = net.addBaseStation('BS1', ssid='new-ssid1', mode='g', channel='1') bs2 = net.addBaseStation('BS2', ssid='new-ssid2', mode='g', channel='6') bs3 = net.addBaseStation('BS3', ssid='new-ssid3', mode='g', channel='11') c1 = net.addController('c1', controller=Controller) print "*** Associating and Creating links" for x in range(0, 20): net.addMesh(car[x], ssid='mesh') net.addLink(bs1, bs2) net.addLink(bs1, bs3) print "*** Starting network" net.build() c1.start() bs1.start([c1]) bs2.start([c1]) bs3.start([c1]) """Available Options: sumo, sumo-gui""" #Put your sumocfg file in /mininet/sumo/data net.useExternalProgram('sumo-gui', config_file='map.sumocfg') """Routing""" #net.meshRouting('custom') print "*** Running CLI" CLI(net) print "*** Stopping network" net.stop()
def topology(mobility): "Create a network." net = Mininet(enable_wmediumd=True, enable_interference=True) print "*** Creating nodes" if mobility: sta1 = net.addStation('sta1') sta2 = net.addStation('sta2') sta3 = net.addStation('sta3') else: sta1 = net.addStation('sta1', position='10,10,0') sta2 = net.addStation('sta2', position='50,10,0') sta3 = net.addStation('sta3', position='90,10,0') print "*** Configuring wifi nodes" net.configureWifiNodes() print "*** Creating links" net.addMesh(sta1, ssid='meshNet', channel=5) net.addMesh(sta2, ssid='meshNet', channel=5) net.addMesh(sta3, ssid='meshNet', channel=5) if mobility: net.plotGraph(max_x=100, max_y=100) net.seed(20) net.startMobility(time=0, model='RandomDirection', max_x=100, max_y=100, min_v=0.5, max_v=0.8) print "*** Starting network" net.build() print "*** Running CLI" CLI(net) print "*** Stopping network" net.stop()
def topology(): "Create a network." net = Mininet( ) print "*** Creating nodes" sta1 = net.addStation( 'sta1' ) sta2 = net.addStation( 'sta2' ) sta3 = net.addStation( 'sta3' ) print "*** Creating links" net.addMesh(sta1, ssid='meshNet') net.addMesh(sta2, ssid='meshNet') net.addMesh(sta3, ssid='meshNet') print "*** Starting network" net.build() print "*** Running CLI" CLI( net ) print "*** Stopping network" net.stop()
def topology(): "Create a network." net = Mininet(enable_wmediumd=True, enable_interference=True) print "*** Creating nodes" sta1 = net.addStation('sta1', position='10,10,0') sta2 = net.addStation('sta2', position='60,10,0') sta3 = net.addStation('sta3', position='100,10,0') sta4 = net.addStation('sta4', position='10,140,0') sta5 = net.addStation('sta5', position='60,140,0') sta6 = net.addStation('sta6', position='100,140,0') print "*** Configuring Propagation Model" net.propagationModel(model="logDistance", exp=4.5) print "*** Configuring wifi nodes" net.configureWifiNodes() print "*** Creating links" net.addMesh(sta1, ssid='meshNet') net.addMesh(sta2, ssid='meshNet') net.addMesh(sta3, ssid='meshNet') net.addHoc(sta4, ssid='adhocNet') net.addHoc(sta5, ssid='adhocNet') net.addHoc(sta6, ssid='adhocNet') net.plotGraph(max_x=200, max_y=200) print "*** Starting network" net.build() print "*** Running CLI" CLI(net) print "*** Stopping network" net.stop()
def topology(): "Create a network." net = Mininet( controller=Controller, link=TCLink, switch=OVSKernelSwitch ) print "*** Creating nodes" car1 = net.addVehicle( 'car1', wlans=2, mac='00:00:00:00:00:01', ip='10.0.0.1/8', min_speed=1, max_speed=5 ) car2 = net.addVehicle( 'car2', wlans=2, mac='00:00:00:00:00:02', ip='10.0.0.2/8', min_speed=5, max_speed=10 ) car3 = net.addVehicle( 'car3', mac='00:00:00:00:00:03', ip='10.0.0.3/8', min_speed=10, max_speed=15 ) car4 = net.addVehicle( 'car4', mac='00:00:00:00:00:04', ip='10.0.0.4/8', min_speed=15, max_speed=20 ) car5 = net.addVehicle( 'car5', mac='00:00:00:00:00:05', ip='10.0.0.5/8', min_speed=15, max_speed=20 ) bs1 = net.addBaseStation( 'BS1', ssid= 'new-ssid1', mode= 'g', channel= '1' ) bs2 = net.addBaseStation( 'BS2', ssid= 'new-ssid2', mode= 'g', channel= '6' ) bs3 = net.addBaseStation( 'BS3', ssid= 'new-ssid3', mode= 'g', channel= '11' ) c1 = net.addController( 'c1', controller=Controller ) print "*** Associating and Creating links" net.addMesh(car1, ssid='mesh') net.addMesh(car2, ssid='mesh') net.addMesh(car3, ssid='mesh') net.addMesh(car4, ssid='mesh') net.addMesh(car5, ssid='mesh') net.addLink(bs1, bs2) net.addLink(bs1, bs3) print "*** Starting network" net.build() c1.start() bs1.start( [c1] ) bs2.start( [c1] ) bs3.start( [c1] ) """uncomment to plot graph""" net.plotGraph(max_x=500, max_y=500) """Number of Roads""" net.roads(4) """Seed""" net.seed(20) """Start Mobility""" net.startMobility(startTime=0) print "*** Running CLI" CLI( net ) print "*** Stopping network" net.stop()
def topology(): """Create a network. sta1 <--> sta2 <--> sta3""" print "*** Network creation" net = Mininet() print "*** Creating nodes" sta1 = net.addStation('sta1', range=50, position='10,10,0') sta2 = net.addStation('sta2', range=50, position='20,10,0') sta3 = net.addStation('sta3', range=50, position='30,10,0') print "*** Configure wmediumd" # This should be done right after the station has been initialized sta1.wmediumdIface = DynamicWmediumdIntfRef(sta1) sta2.wmediumdIface = DynamicWmediumdIntfRef(sta2) sta3.wmediumdIface = DynamicWmediumdIntfRef(sta3) intfrefs = [sta1.wmediumdIface, sta2.wmediumdIface, sta3.wmediumdIface] links = [ WmediumdSNRLink(sta1.wmediumdIface, sta2.wmediumdIface, 15), WmediumdSNRLink(sta2.wmediumdIface, sta1.wmediumdIface, 15), WmediumdSNRLink(sta2.wmediumdIface, sta3.wmediumdIface, 15), WmediumdSNRLink(sta3.wmediumdIface, sta2.wmediumdIface, 15) ] WmediumdStarter.initialize(intfrefs, links, with_server=True) print "*** Configuring wifi nodes" net.configureWifiNodes() print "*** Start wmediumd" WmediumdStarter.start() print "*** Plotting graph ***" net.plotGraph(max_x=200, max_y=200) print "*** Enabling Mesh Routing ***" net.meshRouting('custom') print "*** Creating links" net.addMesh(sta1, ssid='adNet') net.addMesh(sta2, ssid='adNet') net.addMesh(sta3, ssid='adNet') print "*** Starting network" net.start() print "\n\n\n" print "*** Pinging sta2" sta1.cmdPrint('ping -c 1 10.0.0.2') print "*** Update wmediumd" WmediumdServerConn.connect() # Required when the position of the nodes are previously defined. Useful to set channel params. net.autoAssociation() CLI(net) print "*** Stopping network" net.stop() print "*** Stopping wmediumd" WmediumdServerConn.disconnect() WmediumdStarter.stop()
def topology(): "Create a network." net = Mininet( controller=RemoteController, accessPoint=UserAP, enable_wmediumd=True, enable_interference=True ) staList = [] internetIface = 'enp2s0' usbDongleIface = 'wlan2' print "*** Creating nodes" for n in range(10): staList.append(n) staList[n] = net.addStation( 'sta%s' % (n+1), wlans=2, mac='00:00:00:00:00:' + '%02x' % (n+1), ip='192.168.0.%s/24' % (n+1)) phyap1 = net.addPhysicalBaseStation( 'phyap1', wlans=2, protocols='OpenFlow13', ssid='Sigcomm-2016-Mininet-WiFi,Sigcomm-2016-Mininet-WiFi', mode='g', channel='1', position='50,115,0', phywlan=usbDongleIface) ap2 = net.addAccessPoint( 'ap2', protocols='OpenFlow13', ssid='ap-ssid2', mode='g', channel='11', position='100,175,0' ) ap3 = net.addAccessPoint( 'ap3', protocols='OpenFlow13', ssid='ap-ssid3', mode='g', channel='6', position='150,115,0' ) ap4 = net.addAccessPoint( 'ap4', protocols='OpenFlow13', ssid='ap-ssid4', mode='g', channel='11', position='100,55,0' ) c5 = net.addController( 'c5', controller=RemoteController, port=6653 ) sta11 = net.addStation( 'sta11', ip='10.0.0.111/8', position='60,100,0') h12 = net.addHost( 'h12', ip='10.0.0.109/8') root = net.addHost( 'root', ip='10.0.0.254/8', inNamespace=False ) print "*** Configuring Propagation Model" net.propagationModel(model="logDistance", exp=4) print "*** Configuring wifi nodes" net.configureWifiNodes() print "*** Creating links" for sta in staList: net.addMesh(sta, ssid='meshNet') net.plotGraph(max_x=240, max_y=240) "Seed" net.seed(20) print "*** Associating and Creating links" net.addLink(phyap1, ap2) net.addLink(ap2, ap3) net.addLink(sta11, phyap1, 0, 1) net.addLink(ap3, ap4) net.addLink(ap4, phyap1) net.addLink(root, ap3) net.addLink(phyap1, h12) print "*** Starting network" net.build() c5.start() phyap1.start( [c5] ) ap2.start( [c5] ) ap3.start( [c5] ) ap4.start( [c5] ) time.sleep(2) 'output=all,flood' ap3.cmd('dpctl unix:/tmp/ap3 meter-mod cmd=add,flags=1,meter=1 drop:rate=100') ap3.cmd('dpctl unix:/tmp/ap3 flow-mod table=0,cmd=add in_port=4,eth_type=0x800,ip_dst=10.0.0.100,meter:1 apply:output=flood') phyap1.cmd('dpctl unix:/tmp/phyap1 flow-mod table=0,cmd=add in_port=2,ip_dst=10.0.0.109,eth_type=0x800,ip_proto=6,tcp_dst=80 apply:set_field=tcp_dst:80,set_field=ip_dst:10.0.0.111,output=5') phyap1.cmd('dpctl unix:/tmp/phyap1 flow-mod table=0,cmd=add in_port=1,eth_type=0x800,ip_proto=6,tcp_src=80 apply:set_field=ip_src:10.0.0.109,output=2') fixNetworkManager( root, 'root-eth0' ) startNAT(root, internetIface) sta11.cmd('ip route add default via 10.0.0.254') sta11.cmd('pushd /home/fontes; python3 -m http.server 80 &') ip = 201 for sta in staList: sta.setIP('10.0.0.%s/8' % ip, intf="%s-wlan1" % sta) sta.cmd('ip route add default via 10.0.0.254') ip+=1 net.startMobility(startTime=0, model='RandomWalk', max_x=200, max_y=200, min_v=0.1, max_v=0.2) print "*** Running CLI" CLI( net ) print "*** Stopping network" net.stop()
def topology(): "Create a network." net = Mininet( controller=RemoteController, link=TCLink, switch=UserSwitch ) sta = [] print "*** Creating nodes" for n in range(10): sta.append(n) sta[n] = net.addStation( 'sta%s' % (n+1), wlans=2, mac='00:00:00:00:00:%s' % (n+1), ip='192.168.0.%s/24' % (n+1) ) phyap1 = net.addPhysicalBaseStation( 'phyap1', protocols='OpenFlow13', ssid= 'ap-ssid1', mode= 'g', channel= '1', position='50,115,0', wlan='wlan11' ) ap2 = net.addBaseStation( 'ap2', protocols='OpenFlow13', ssid= 'ap-ssid2', mode= 'g', channel= '11', position='100,175,0' ) ap3 = net.addBaseStation( 'ap3', protocols='OpenFlow13', ssid= 'ap-ssid3', mode= 'g', channel= '6', position='150,115,0' ) ap4 = net.addBaseStation( 'ap4', protocols='OpenFlow13', ssid= 'ap-ssid4', mode= 'g', channel= '6', position='100,55,0' ) sta11 = net.addStation( 'sta11', ip='10.0.0.111/8', position='120,200,0') c1 = net.addController( 'c1', controller=RemoteController, port=6653 ) root = Node( 'root', inNamespace=False ) print "*** Creating links" for station in sta: net.addMesh(station, ssid='meshNet') """uncomment to plot graph""" net.plotGraph(max_x=240, max_y=240) """Routing""" net.meshRouting('custom') """Seed""" net.seed(20) print "*** Associating and Creating links" net.addLink(phyap1, ap2) net.addLink(ap2, ap3) net.addLink(sta11, ap2) net.addLink(ap3, ap4) net.addLink(ap4, phyap1) link = net.addLink( root, ap3 ) link.intf1.setIP( '10.254', 8 ) """Adding datapath""" net.addOfDataPath('ap3', 'wlan0') print "*** Starting network" net.build() c1.start() phyap1.start( [c1] ) ap2.start( [c1] ) ap3.start( [c1] ) ap4.start( [c1] ) time.sleep(2) """output=all,flood""" ap3.cmd('dpctl unix:/tmp/ap3 meter-mod cmd=add,flags=1,meter=1 drop:rate=100') ap3.cmd('dpctl unix:/tmp/ap3 flow-mod table=0,cmd=add in_port=4,eth_type=0x800,ip_dst=10.0.0.100, meter:1 apply:output=flood') startNAT( root ) sta11.cmd('ip route add default via 10.0.0.254') sta11.cmd('pushd /homt/alpha; python3 -m http.server 80 &') ip = 201 for station in sta: station.cmd('ifconfig %s-wlan1 10.0.0.%s/8' % (station, ip)) station.cmd('ip route add default via 10.0.0.254') ip+=1 "*** Available models: RandomWalk, TruncatedLevyWalk, RandomDirection, RandomWayPoint, GaussMarkov, ReferencePoint, TimeVariantCommunity ***" net.startMobility(startTime=0, model='RandomWalk', max_x=200, max_y=220, min_v=0.1, max_v=0.2) print "*** Running CLI" CLI( net ) print "*** Stopping network" net.stop()
def topology(): "Create a network." net = Mininet(controller=Controller, link=TCLink, switch=OVSKernelSwitch) print "*** Creating nodes" car1 = net.addVehicle('car1', wlans=2, mac='00:00:00:00:00:01', ip='10.0.0.1/8', min_speed=1, max_speed=5) car2 = net.addVehicle('car2', wlans=2, mac='00:00:00:00:00:02', ip='10.0.0.2/8', min_speed=5, max_speed=10) car3 = net.addVehicle('car3', mac='00:00:00:00:00:03', ip='10.0.0.3/8', min_speed=10, max_speed=15) car4 = net.addVehicle('car4', mac='00:00:00:00:00:04', ip='10.0.0.4/8', min_speed=15, max_speed=20) car5 = net.addVehicle('car5', mac='00:00:00:00:00:05', ip='10.0.0.5/8', min_speed=15, max_speed=20) bs1 = net.addBaseStation('BS1', ssid='new-ssid1', mode='g', channel='1') bs2 = net.addBaseStation('BS2', ssid='new-ssid2', mode='g', channel='6') bs3 = net.addBaseStation('BS3', ssid='new-ssid3', mode='g', channel='11') c1 = net.addController('c1', controller=Controller) print "*** Associating and Creating links" net.addMesh(car1, ssid='mesh') net.addMesh(car2, ssid='mesh') net.addMesh(car3, ssid='mesh') net.addMesh(car4, ssid='mesh') net.addMesh(car5, ssid='mesh') net.addLink(bs1, bs2) net.addLink(bs1, bs3) print "*** Starting network" net.build() c1.start() bs1.start([c1]) bs2.start([c1]) bs3.start([c1]) """uncomment to plot graph""" net.plotGraph(max_x=500, max_y=500) """Number of Roads""" net.roads(4) """Seed""" net.seed(20) """Start Mobility""" net.startMobility(startTime=0) print "*** Running CLI" CLI(net) print "*** Stopping network" net.stop()
def topology(): "Create a network." net = Mininet( controller=RemoteController, link=TCLink, switch=UserSwitch ) staList = [] internetIface = 'eth0' usbDongleIface = 'wlan0' print "*** Creating nodes" for n in range(10): staList.append(n) staList[n] = net.addStation( 'sta%s' % (n+1), wlans=2, mac='00:00:00:00:00:%s' % (n+1), ip='192.168.0.%s/24' % (n+1) ) phyap1 = net.addPhysicalBaseStation( 'phyap1', protocols='OpenFlow13', ssid='Sigcomm-2016-Mininet-WiFi', mode= 'g', channel= '1', position='50,115,0', phywlan=usbDongleIface ) ap2 = net.addBaseStation( 'ap2', protocols='OpenFlow13', ssid='ap-ssid2', mode= 'g', channel= '11', position='100,175,0' ) ap3 = net.addBaseStation( 'ap3', protocols='OpenFlow13', ssid='ap-ssid3', mode= 'g', channel= '6', position='150,115,0' ) ap4 = net.addBaseStation( 'ap4', protocols='OpenFlow13', ssid='ap-ssid4', mode= 'g', channel= '11', position='100,55,0' ) c5 = net.addController( 'c5', controller=RemoteController, port=6653 ) sta11 = net.addStation( 'sta11', ip='10.0.0.111/8', position='60,100,0') h12 = net.addHost( 'h12', ip='10.0.0.109/8') root = net.addHost( 'root', ip='10.0.0.254/8', inNamespace=False ) print "*** Creating links" for sta in staList: net.addMesh(sta, ssid='meshNet') """uncomment to plot graph""" net.plotGraph(max_x=240, max_y=240) """Routing""" net.meshRouting('custom') """Seed""" net.seed(20) print "*** Associating and Creating links" net.addLink(phyap1, ap2) net.addLink(ap2, ap3) net.addLink(sta11, ap2) net.addLink(ap3, ap4) net.addLink(ap4, phyap1) net.addLink(root, ap3) net.addLink(phyap1, h12) print "*** Starting network" net.build() c5.start() phyap1.start( [c5] ) ap2.start( [c5] ) ap3.start( [c5] ) ap4.start( [c5] ) time.sleep(2) """output=all,flood""" ap3.cmd('dpctl unix:/tmp/ap3 meter-mod cmd=add,flags=1,meter=1 drop:rate=100') ap3.cmd('dpctl unix:/tmp/ap3 flow-mod table=0,cmd=add in_port=4,eth_type=0x800,ip_dst=10.0.0.100,meter:1 apply:output=flood') phyap1.cmd('dpctl unix:/tmp/phyap1 flow-mod table=0,cmd=add in_port=2,ip_dst=10.0.0.109,eth_type=0x800,ip_proto=6,tcp_dst=80 apply:set_field=tcp_dst:80,set_field=ip_dst:10.0.0.111,output=5') phyap1.cmd('dpctl unix:/tmp/phyap1 flow-mod table=0,cmd=add in_port=1,eth_type=0x800,ip_proto=6,tcp_src=80 apply:set_field=ip_src:10.0.0.109,output=2') fixNetworkManager( root, 'root-eth0' ) startNAT(root, internetIface) sta11.cmd('ip route add default via 10.0.0.254') sta11.cmd('pushd /home/fontes; python3 -m http.server 80 &') ip = 201 for sta in staList: sta.setIP('10.0.0.%s/8' % ip, intf="%s-wlan1" % sta) sta.cmd('ip route add default via 10.0.0.254') ip+=1 "*** Available models: RandomWalk, TruncatedLevyWalk, RandomDirection, RandomWayPoint, GaussMarkov, ReferencePoint, TimeVariantCommunity ***" net.startMobility(startTime=0, model='RandomWalk', max_x=200, max_y=200, min_v=0.1, max_v=0.2) print "*** Running CLI" CLI( net ) print "*** Stopping network" net.stop()
def topology(): """Create a network. sta1 <--> sta2 <--> sta3""" print "*** Network creation" net = Mininet() print "*** Creating nodes" sta1 = net.addStation('sta1', range=200) sta2 = net.addStation('sta2', range=200) sta3 = net.addStation('sta3', range=200) print "*** Configure wmediumd" # This should be done right after the station has been initialized sta1.wmediumdIface = DynamicWmediumdIntfRef(sta1) sta2.wmediumdIface = DynamicWmediumdIntfRef(sta2) sta3.wmediumdIface = DynamicWmediumdIntfRef(sta3) intfrefs = [sta1.wmediumdIface, sta2.wmediumdIface, sta3.wmediumdIface] links = [ WmediumdLink(sta1wlan0, sta2wlan0, 15), WmediumdLink(sta2wlan0, sta1wlan0, 15), WmediumdLink(sta2wlan0, sta3wlan0, 15), WmediumdLink(sta3wlan0, sta2wlan0, 15) ] WmediumdConn.set_wmediumd_data(intfrefs, links, with_server=True) WmediumdConn.connect_wmediumd_on_startup() print "*** Configuring wifi nodes" net.configureWifiNodes() net.plotGraph(max_x=240, max_y=240) net.meshRouting('custom') net.seed(20) print "*** Creating links" net.addMesh(sta1, ssid='adNet') net.addMesh(sta2, ssid='adNet') net.addMesh(sta3, ssid='adNet') print "*** Starting network" net.start() print "\n\n\n" print "*** Pinging sta2" sta1.cmdPrint('ping -c 1 10.0.0.2') print "*** Setting up the mobility model" net.startMobility(startTime=0, model='RandomDirection', max_x=220, max_y=220, min_v=0.1, max_v=0.2) print "*** Update wmediumd" WmediumdServerConn.connect() CLI(net) print "*** Stopping network" net.stop() print "*** Stopping wmediumd" WmediumdServerConn.disconnect() WmediumdConn.disconnect_wmediumd()
def topology(): "Create a network." net = Mininet(controller=RemoteController, accessPoint=OVSKernelAP, enable_wmediumd=True, enable_interference=True) staList = [] print("*** Creating nodes") for n in range(10): staList.append(n) staList[n] = net.addStation('sta%s' % (n + 1), wlans=2, mac='00:00:00:00:00:' + '%02x' % (n + 1), ip='192.168.0.%s/24' % (n + 1)) phyap1 = net.addPhysicalBaseStation( 'phyap1', ssid='SBRC16-MininetWiFi,SBRC16-MininetWiFi', mode='g', channel='1', wlans=2, position='50,115,0', phywlan='wlan2') net.addStation('sta11', ip='10.0.0.111/8', position='120,200,0') ap2 = net.addAccessPoint('ap2', ssid='ap2', mode='g', channel='11', position='100,175,0') ap3 = net.addAccessPoint('ap3', ssid='ap3', mode='g', channel='6', position='150,50,0') ap4 = net.addAccessPoint('ap4', ssid='ap4', mode='g', channel='1', position='175,150,0') c1 = net.addController('c1', controller=Controller, port=6653) Node('root', inNamespace=False) net.propagationModel(model="logDistance", exp=4) print("*** Configuring wifi nodes") net.configureWifiNodes() 'plotting graph' net.plotGraph(max_x=220, max_y=220) 'Seed' net.seed(20) print("*** Associating and Creating links") for sta in staList: net.addMesh(sta, ssid='meshNet') net.addLink(phyap1, ap2) net.addLink(ap2, ap3) net.addLink(ap3, ap4) net.startMobility(time=0, model='RandomWalk', max_x=220, max_y=220, min_v=0.1, max_v=0.2) print("*** Starting network") net.build() c1.start() phyap1.start([c1]) ap2.start([c1]) ap3.start([c1]) ap4.start([c1]) ip = 201 for sta in staList: sta.setIP('10.0.0.%s/8' % ip, intf="%s-wlan1" % sta) ip += 1 print("*** Running CLI") CLI(net) print("*** Stopping network") net.stop()
def topology(): "Create a network." net = Mininet(controller=RemoteController, link=TCLink, switch=OVSKernelSwitch) sta = [] print "*** Creating nodes" for n in range(10): sta.append(n) sta[n] = net.addStation('sta%s' % (n + 1), wlans=2, mac='00:00:00:00:00:%s' % (n + 1), ip='192.168.0.%s/24' % (n + 1)) phyap1 = net.addPhysicalBaseStation('phyap1', ssid='ap-ssid1', mode='g', channel='1', position='50,115,0', wlan='wlan11') ap2 = net.addBaseStation('ap2', ssid='ap-ssid2', mode='g', channel='11', position='100,175,0') c1 = net.addController('c1', controller=Controller, port=6653) root = Node('root', inNamespace=False) print "*** Creating links" for station in sta: net.addMesh(station, ssid='meshNet') """uncomment to plot graph""" net.plotGraph(max_x=240, max_y=240) """Routing""" net.meshRouting('custom') """Seed""" net.seed(20) print "*** Associating and Creating links" net.addLink(phyap1, ap2) print "*** Starting network" net.build() c1.start() phyap1.start([c1]) ap2.start([c1]) ip = 201 for station in sta: station.cmd('ifconfig %s-wlan1 10.0.0.%s/8' % (station, ip)) ip += 1 "*** Available models: RandomWalk, TruncatedLevyWalk, RandomDirection, RandomWayPoint, GaussMarkov, ReferencePoint, TimeVariantCommunity ***" net.startMobility(startTime=0, model='RandomWalk', max_x=200, max_y=220, min_v=0.1, max_v=0.2) print "*** Running CLI" CLI(net) print "*** Stopping network" net.stop()
def topology(): "Create a network." net = Mininet(controller=RemoteController, link=TCLink, switch=UserSwitch) staList = [] print "*** Creating nodes" for n in range(10): staList.append(n) staList[n] = net.addStation('sta%s' % (n + 1), wlans=2, mac='00:00:00:00:00:%s' % (n + 1), ip='192.168.0.%s/24' % (n + 1)) phyap1 = net.addPhysicalBaseStation('phyap1', protocols='OpenFlow13', ssid='ap-ssid1', mode='g', channel='1', position='50,115,0', phywlan='wlan1') ap2 = net.addBaseStation('ap2', protocols='OpenFlow13', ssid='ap-ssid2', mode='g', channel='11', position='100,175,0') ap3 = net.addBaseStation('ap3', protocols='OpenFlow13', ssid='ap-ssid3', mode='g', channel='6', position='150,115,0') ap4 = net.addBaseStation('ap4', protocols='OpenFlow13', ssid='ap-ssid4', mode='g', channel='6', position='100,55,0') sta11 = net.addStation('sta11', ip='10.0.0.111/8', position='120,200,0') c1 = net.addController('c1', controller=RemoteController, port=6653) root = Node('root', inNamespace=False) print "*** Creating links" for sta in staList: net.addMesh(sta, ssid='meshNet') """uncomment to plot graph""" net.plotGraph(max_x=240, max_y=240) """Routing""" net.meshRouting('custom') """Seed""" net.seed(20) print "*** Associating and Creating links" net.addLink(phyap1, ap2) net.addLink(ap2, ap3) net.addLink(sta11, ap2) net.addLink(ap3, ap4) net.addLink(ap4, phyap1) link = net.addLink(root, ap3) link.intf1.setIP('10.254', 8) """Adding datapath""" net.addOfDataPath('ap3', 'wlan0') print "*** Starting network" net.build() c1.start() phyap1.start([c1]) ap2.start([c1]) ap3.start([c1]) ap4.start([c1]) time.sleep(2) """output=all,flood""" ap3.cmd( 'dpctl unix:/tmp/ap3 meter-mod cmd=add,flags=1,meter=1 drop:rate=100') ap3.cmd( 'dpctl unix:/tmp/ap3 flow-mod table=0,cmd=add in_port=4,eth_type=0x800,ip_dst=10.0.0.100, meter:1 apply:output=flood' ) startNAT(root) sta11.cmd('ip route add default via 10.0.0.254') sta11.cmd('pushd /homt/alpha; python3 -m http.server 80 &') ip = 201 for sta in staList: sta.setIP('10.0.0.%s/8' % ip, intf="%s-wlan1" % sta) sta.cmd('ip route add default via 10.0.0.254') ip += 1 "*** Available models: RandomWalk, TruncatedLevyWalk, RandomDirection, RandomWayPoint, GaussMarkov, ReferencePoint, TimeVariantCommunity ***" net.startMobility(startTime=0, model='RandomWalk', max_x=200, max_y=220, min_v=0.1, max_v=0.2) print "*** Running CLI" CLI(net) print "*** Stopping network" net.stop()