diff options
author | Sander Vrijders <sander.vrijders@ugent.be> | 2017-09-12 10:22:08 +0200 |
---|---|---|
committer | Sander Vrijders <sander.vrijders@ugent.be> | 2017-09-12 10:22:08 +0200 |
commit | 6d11410513a7e3de447d509af34984a681e2e68f (patch) | |
tree | b52db9f8f5265fd7cbe126306db5f41482b782c0 /rumba/prototypes/ouroboros.py | |
parent | 715292ba092ea12c1fdad8a369608e348bec26ce (diff) | |
download | rumba-6d11410513a7e3de447d509af34984a681e2e68f.tar.gz rumba-6d11410513a7e3de447d509af34984a681e2e68f.zip |
model: Perform split between different flows
This performs a split between enrollment, data transfer and management
flows.
Diffstat (limited to 'rumba/prototypes/ouroboros.py')
-rw-r--r-- | rumba/prototypes/ouroboros.py | 22 |
1 files changed, 21 insertions, 1 deletions
diff --git a/rumba/prototypes/ouroboros.py b/rumba/prototypes/ouroboros.py index afc80d3..49323c5 100644 --- a/rumba/prototypes/ouroboros.py +++ b/rumba/prototypes/ouroboros.py @@ -124,7 +124,23 @@ class Experiment(mod.Experiment): ssh.execute_commands(self.testbed, e['enrollee'].node.ssh_config, cmds, time_out=None) - time.sleep(2) + + def setup_flows(self, flows): + for el in flows: + for e in el: + ipcp = e['src'] + if flows == self.mgmt_flows: + comp = 'mgmt' + elif flows == self.dt_flows: + comp = 'dt' + else: + assert(False) + + cmd = "irm i conn n " + ipcp.name + " comp " + \ + comp + " dst " + e['dst'].name + ssh.execute_command(self.testbed, + ipcp.node.ssh_config, + cmd, time_out=None) def install_prototype(self): logger.info("Installing Ouroboros...") @@ -138,4 +154,8 @@ class Experiment(mod.Experiment): self.create_ipcps() logger.info("Enrolling IPCPs...") self.enroll_ipcps() + logger.info("Setting up management flows...") + self.setup_flows(self.mgmt_flows) + logger.info("Setting up data transfer flows...") + self.setup_flows(self.dt_flows) logger.info("All done, have fun!") |