refactored some future naming to be more consistent, added new data objects to pass into coreemu api to help make scripting easier, set sessions to master by default now
This commit is contained in:
parent
1404ca19c5
commit
3ea885e2eb
9 changed files with 550 additions and 449 deletions
|
@ -6,12 +6,13 @@ import datetime
|
|||
|
||||
import parser
|
||||
from core.emane.ieee80211abg import EmaneIeee80211abgModel
|
||||
from core.future.coreemu import FutureIpv4Prefix, CoreEmu
|
||||
from core.future.coreemu import CoreEmu
|
||||
from core.future.futuredata import IpPrefixes
|
||||
|
||||
|
||||
def example(options):
|
||||
# ip generator for example
|
||||
prefix = FutureIpv4Prefix("10.83.0.0/16")
|
||||
prefixes = IpPrefixes(ip4_prefix="10.83.0.0/16")
|
||||
|
||||
# create emulator instance for creating sessions and utility methods
|
||||
coreemu = CoreEmu()
|
||||
|
@ -27,8 +28,8 @@ def example(options):
|
|||
# create nodes
|
||||
for i in xrange(options.nodes):
|
||||
node = session.create_emane_node()
|
||||
coreemu.add_interface(emane_network, node, prefix)
|
||||
node.setposition(x=150 * (i + 1), y=150)
|
||||
coreemu.add_interface(emane_network, node, prefixes)
|
||||
|
||||
# instantiate session
|
||||
session.instantiate()
|
||||
|
@ -39,7 +40,7 @@ def example(options):
|
|||
|
||||
# shutdown session
|
||||
raw_input("press enter to exit...")
|
||||
session.shutdown()
|
||||
coreemu.shutdown()
|
||||
|
||||
|
||||
def main():
|
||||
|
|
|
@ -8,13 +8,14 @@
|
|||
import datetime
|
||||
|
||||
import parser
|
||||
from core.future.coreemu import FutureIpv4Prefix, CoreEmu
|
||||
from core.future.coreemu import CoreEmu
|
||||
from core.future.futuredata import IpPrefixes
|
||||
from core.netns.nodes import CoreNode, SwitchNode
|
||||
|
||||
|
||||
def example(options):
|
||||
# ip generator for example
|
||||
prefix = FutureIpv4Prefix("10.83.0.0/16")
|
||||
prefixes = IpPrefixes("10.83.0.0/16")
|
||||
|
||||
# create emulator instance for creating sessions and utility methods
|
||||
coreemu = CoreEmu()
|
||||
|
@ -26,7 +27,7 @@ def example(options):
|
|||
# create nodes
|
||||
for _ in xrange(options.nodes):
|
||||
node = session.create_node(cls=CoreNode)
|
||||
coreemu.add_interface(switch_network, node, prefix)
|
||||
coreemu.add_interface(switch_network, node, prefixes)
|
||||
|
||||
# instantiate session
|
||||
session.instantiate()
|
||||
|
@ -37,13 +38,13 @@ def example(options):
|
|||
|
||||
print "starting iperf server on node: %s" % first_node.name
|
||||
first_node.cmd(["iperf", "-s", "-D"])
|
||||
address = str(prefix.addr(first_node.objid))
|
||||
address = prefixes.ip4_address(first_node)
|
||||
print "node %s connecting to %s" % (last_node.name, address)
|
||||
last_node.client.icmd(["iperf", "-t", str(options.time), "-c", address])
|
||||
first_node.cmd(["killall", "-9", "iperf"])
|
||||
|
||||
# shutdown session
|
||||
session.shutdown()
|
||||
coreemu.shutdown()
|
||||
|
||||
|
||||
def main():
|
||||
|
|
|
@ -8,41 +8,32 @@
|
|||
import datetime
|
||||
|
||||
import parser
|
||||
from core.data import NodeData, LinkData
|
||||
from core.enumerations import NodeTypes, EventTypes
|
||||
from core.future.coreemu import FutureIpv4Prefix, CoreEmu
|
||||
from core.future.coreemu import CoreEmu
|
||||
from core.future.futuredata import IpPrefixes, NodeOptions
|
||||
|
||||
|
||||
def example(options):
|
||||
# ip generator for example
|
||||
prefix = FutureIpv4Prefix("10.83.0.0/16")
|
||||
prefixes = IpPrefixes(ip4_prefix="10.83.0.0/16")
|
||||
|
||||
# create emulator instance for creating sessions and utility methods
|
||||
coreemu = CoreEmu()
|
||||
session = coreemu.create_session(master=True)
|
||||
session = coreemu.create_session()
|
||||
|
||||
# must be in configuration state for nodes to start, when using "node_add" below
|
||||
session.set_state(EventTypes.CONFIGURATION_STATE.value)
|
||||
|
||||
# create switch network node
|
||||
node_data = NodeData(node_type=NodeTypes.SWITCH.value)
|
||||
switch_id = session.node_add(node_data)
|
||||
node_options = NodeOptions(_type=NodeTypes.SWITCH)
|
||||
switch = session.add_node(node_options)
|
||||
|
||||
# create nodes
|
||||
for _ in xrange(options.nodes):
|
||||
node_data = NodeData(node_type=NodeTypes.DEFAULT.value)
|
||||
node_id = session.node_add(node_data)
|
||||
node = session.get_object(node_id)
|
||||
inteface_index = node.newifindex()
|
||||
address = prefix.addr(node_id)
|
||||
link_data = LinkData(
|
||||
node1_id=node_id,
|
||||
node2_id=switch_id,
|
||||
interface1_id=inteface_index,
|
||||
interface1_ip4=str(address),
|
||||
interface1_ip4_mask=prefix.prefixlen,
|
||||
)
|
||||
session.link_add(link_data)
|
||||
node_options = NodeOptions(_type=NodeTypes.DEFAULT)
|
||||
node = session.add_node(node_options)
|
||||
interface = prefixes.create_interface(node)
|
||||
session.add_link(node.objid, switch.objid, interface_one=interface)
|
||||
|
||||
# instantiate session
|
||||
session.instantiate()
|
||||
|
@ -53,9 +44,9 @@ def example(options):
|
|||
|
||||
print "starting iperf server on node: %s" % first_node.name
|
||||
first_node.cmd(["iperf", "-s", "-D"])
|
||||
address = str(prefix.addr(first_node.objid))
|
||||
print "node %s connecting to %s" % (last_node.name, address)
|
||||
last_node.client.icmd(["iperf", "-t", str(options.time), "-c", address])
|
||||
first_node_address = prefixes.ip4_address(first_node)
|
||||
print "node %s connecting to %s" % (last_node.name, first_node_address)
|
||||
last_node.client.icmd(["iperf", "-t", str(options.time), "-c", first_node_address])
|
||||
first_node.cmd(["killall", "-9", "iperf"])
|
||||
|
||||
# shutdown session
|
||||
|
|
|
@ -5,17 +5,13 @@
|
|||
# and repeat for minnodes <= n <= maxnodes with a step size of
|
||||
# nodestep
|
||||
|
||||
import datetime
|
||||
|
||||
import parser
|
||||
from core.data import NodeData, LinkData
|
||||
from core.enumerations import NodeTypes, EventTypes
|
||||
from core.future.coreemu import FutureIpv4Prefix, CoreEmu
|
||||
from core.future.futuredata import IpPrefixes, NodeOptions
|
||||
|
||||
|
||||
def example(nodes):
|
||||
# ip generator for example
|
||||
prefix = FutureIpv4Prefix("10.83.0.0/16")
|
||||
prefixes = IpPrefixes("10.83.0.0/16")
|
||||
|
||||
# create emulator instance for creating sessions and utility methods
|
||||
coreemu = globals()["coreemu"]
|
||||
|
@ -25,24 +21,15 @@ def example(nodes):
|
|||
session.set_state(EventTypes.CONFIGURATION_STATE.value)
|
||||
|
||||
# create switch network node
|
||||
node_data = NodeData(node_type=NodeTypes.SWITCH.value)
|
||||
switch_id = session.node_add(node_data)
|
||||
node_options = NodeOptions(_type=NodeTypes.SWITCH)
|
||||
switch = session.add_node(node_options)
|
||||
|
||||
# create nodes
|
||||
for _ in xrange(nodes):
|
||||
node_data = NodeData(node_type=NodeTypes.DEFAULT.value)
|
||||
node_id = session.node_add(node_data)
|
||||
node = session.get_object(node_id)
|
||||
inteface_index = node.newifindex()
|
||||
address = prefix.addr(node_id)
|
||||
link_data = LinkData(
|
||||
node1_id=node_id,
|
||||
node2_id=switch_id,
|
||||
interface1_id=inteface_index,
|
||||
interface1_ip4=str(address),
|
||||
interface1_ip4_mask=prefix.prefixlen,
|
||||
)
|
||||
session.link_add(link_data)
|
||||
node_options = NodeOptions(_type=NodeTypes.DEFAULT.value)
|
||||
node = session.add_node(node_options)
|
||||
interface = prefixes.create_interface(node)
|
||||
session.add_link(node.objid, switch.objid, interface_one=interface)
|
||||
|
||||
# instantiate session
|
||||
session.instantiate()
|
||||
|
|
|
@ -8,14 +8,15 @@
|
|||
import datetime
|
||||
|
||||
import parser
|
||||
from core.future.coreemu import FutureIpv4Prefix, CoreEmu
|
||||
from core.future.coreemu import CoreEmu
|
||||
from core.future.futuredata import IpPrefixes
|
||||
from core.mobility import BasicRangeModel
|
||||
from core.netns.nodes import WlanNode, CoreNode
|
||||
|
||||
|
||||
def example(options):
|
||||
# ip generator for example
|
||||
prefix = FutureIpv4Prefix("10.83.0.0/16")
|
||||
prefixes = IpPrefixes("10.83.0.0/16")
|
||||
|
||||
# create emulator instance for creating sessions and utility methods
|
||||
coreemu = CoreEmu()
|
||||
|
@ -29,7 +30,7 @@ def example(options):
|
|||
wireless_nodes = []
|
||||
for _ in xrange(options.nodes):
|
||||
node = session.create_node(cls=CoreNode)
|
||||
coreemu.add_interface(wlan_network, node, prefix)
|
||||
coreemu.add_interface(wlan_network, node, prefixes)
|
||||
wireless_nodes.append(node)
|
||||
|
||||
# link all created nodes with the wireless network
|
||||
|
@ -44,13 +45,13 @@ def example(options):
|
|||
|
||||
print "starting iperf server on node: %s" % first_node.name
|
||||
first_node.cmd(["iperf", "-s", "-D"])
|
||||
address = str(prefix.addr(first_node.objid))
|
||||
address = prefixes.ip4_address(first_node)
|
||||
print "node %s connecting to %s" % (last_node.name, address)
|
||||
last_node.client.icmd(["iperf", "-t", str(options.time), "-c", address])
|
||||
first_node.cmd(["killall", "-9", "iperf"])
|
||||
|
||||
# shutdown session
|
||||
session.shutdown()
|
||||
coreemu.shutdown()
|
||||
|
||||
|
||||
def main():
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue