removed usage of iperf in examples, to remove need of another dependency, renamed parser module examples used to avoid conflict with std library module

This commit is contained in:
Blake Harnden 2020-02-04 09:48:37 -08:00
parent 8c4931819b
commit 866e13e0ef
3 changed files with 25 additions and 30 deletions

View file

@ -15,18 +15,18 @@ def parse(name):
help="number of nodes to create in this example", help="number of nodes to create in this example",
) )
parser.add_argument( parser.add_argument(
"-t", "-c",
"--time", "--count",
type=int, type=int,
default=DEFAULT_TIME, default=DEFAULT_TIME,
help="example iperf run time in seconds", help="number of time to ping node",
) )
args = parser.parse_args() args = parser.parse_args()
if args.nodes < 2: if args.nodes < 2:
parser.error(f"invalid min number of nodes: {args.nodes}") parser.error(f"invalid min number of nodes: {args.nodes}")
if args.time < 1: if args.count < 1:
parser.error(f"invalid test time: {args.time}") parser.error(f"invalid ping count({args.count}), count must be greater than 0")
return args return args

View file

@ -1,7 +1,7 @@
import datetime
import logging import logging
import parser import time
import params
from core.emulator.coreemu import CoreEmu from core.emulator.coreemu import CoreEmu
from core.emulator.emudata import IpPrefixes from core.emulator.emudata import IpPrefixes
from core.emulator.enumerations import EventTypes, NodeTypes from core.emulator.enumerations import EventTypes, NodeTypes
@ -33,14 +33,10 @@ def example(args):
# get nodes to run example # get nodes to run example
first_node = session.get_node(2) first_node = session.get_node(2)
last_node = session.get_node(args.nodes + 1) last_node = session.get_node(args.nodes + 1)
logging.info("starting iperf server on node: %s", first_node.name)
first_node.cmd("iperf -s -D")
first_node_address = prefixes.ip4_address(first_node) first_node_address = prefixes.ip4_address(first_node)
logging.info("node %s connecting to %s", last_node.name, first_node_address) logging.info("node %s pinging %s", last_node.name, first_node_address)
output = last_node.cmd(f"iperf -t {args.time} -c {first_node_address}") output = last_node.cmd(f"ping -c {args.count} {first_node_address}")
logging.info(output) logging.info(output)
first_node.cmd("killall -9 iperf")
# shutdown session # shutdown session
coreemu.shutdown() coreemu.shutdown()
@ -48,11 +44,13 @@ def example(args):
def main(): def main():
logging.basicConfig(level=logging.INFO) logging.basicConfig(level=logging.INFO)
args = parser.parse("switch") args = params.parse("switch")
start = datetime.datetime.now() start = time.perf_counter()
logging.info("running switch example: nodes(%s) time(%s)", args.nodes, args.time) logging.info(
"running switch example: nodes(%s) ping count(%s)", args.nodes, args.count
)
example(args) example(args)
logging.info("elapsed time: %s", datetime.datetime.now() - start) logging.info("elapsed time: %s", time.perf_counter() - start)
if __name__ == "__main__": if __name__ == "__main__":

View file

@ -1,7 +1,7 @@
import datetime
import logging import logging
import parser import time
import params
from core.emulator.coreemu import CoreEmu from core.emulator.coreemu import CoreEmu
from core.emulator.emudata import IpPrefixes, NodeOptions from core.emulator.emudata import IpPrefixes, NodeOptions
from core.emulator.enumerations import EventTypes, NodeTypes from core.emulator.enumerations import EventTypes, NodeTypes
@ -37,14 +37,10 @@ def example(args):
# get nodes for example run # get nodes for example run
first_node = session.get_node(2) first_node = session.get_node(2)
last_node = session.get_node(args.nodes + 1) last_node = session.get_node(args.nodes + 1)
logging.info("starting iperf server on node: %s", first_node.name)
first_node.cmd("iperf -s -D")
address = prefixes.ip4_address(first_node) address = prefixes.ip4_address(first_node)
logging.info("node %s connecting to %s", last_node.name, address) logging.info("node %s pinging %s", last_node.name, address)
output = last_node.cmd(f"iperf -t {args.time} -c {address}") output = last_node.cmd(f"ping -c {args.count} {address}")
logging.info(output) logging.info(output)
first_node.cmd("killall -9 iperf")
# shutdown session # shutdown session
coreemu.shutdown() coreemu.shutdown()
@ -52,12 +48,13 @@ def example(args):
def main(): def main():
logging.basicConfig(level=logging.INFO) logging.basicConfig(level=logging.INFO)
args = parser.parse("wlan") args = params.parse("wlan")
start = time.perf_counter()
start = datetime.datetime.now() logging.info(
logging.info("running wlan example: nodes(%s) time(%s)", args.nodes, args.time) "running wlan example: nodes(%s) ping count(%s)", args.nodes, args.count
)
example(args) example(args)
logging.info("elapsed time: %s", datetime.datetime.now() - start) logging.info("elapsed time: %s", time.perf_counter() - start)
if __name__ == "__main__": if __name__ == "__main__":