From 76dcbbcd987189af72964c0ac6c845f50634fb34 Mon Sep 17 00:00:00 2001 From: Michael Marsh <mmarsh@cs.umd.edu> Date: Mon, 19 Feb 2018 12:34:02 -0500 Subject: [PATCH] configure link before starting netem --- start_testbed.py | 15 +++++++++------ 1 file changed, 9 insertions(+), 6 deletions(-) diff --git a/start_testbed.py b/start_testbed.py index 52eec78..d6a8a84 100755 --- a/start_testbed.py +++ b/start_testbed.py @@ -55,12 +55,6 @@ def connect_nodes(node1, node2): 'peer', 'name', dev_2 ]) - # Configure the link for network emulation. - subprocess.call([ - 'sudo', - 'tc', 'qdisc', 'add', 'dev', dev_1, 'root', 'handle', '1:0', 'netem' - ]) - # Add the link endpoints to the container namespaces. def add_to_ns(dev,ns): subprocess.call([ @@ -93,6 +87,15 @@ def connect_nodes(node1, node2): route_from_to(ctr1,ctr2,dev_1) route_from_to(ctr2,ctr1,dev_2) + # Configure the link for network emulation. + def enable_netem(ns, dev): + subprocess.call([ + 'sudo', 'ip', 'netns', 'exec', ns, + 'tc', 'qdisc', 'add', 'dev', dev, 'root', 'handle', '1:0', 'netem' + ]) + enable_netem(ctr1['name'],dev_1) + enable_netem(ctr2['name'],dev_2) + def make_mesh(): global nodelist -- GitLab