aboutsummaryrefslogtreecommitdiff
path: root/examples
diff options
context:
space:
mode:
authorVincenzo Maffione <v.maffione@gmail.com>2017-03-18 18:31:09 +0100
committerVincenzo Maffione <v.maffione@gmail.com>2017-03-18 18:31:09 +0100
commit6c5ef6498549db725a59638753cd491c4d8bd573 (patch)
treef68ed2edac4a79bd24952d594bfeadddeb9b8586 /examples
parentf5138ef9dffa1ce22a71a07724307b884c9dbaf5 (diff)
downloadrumba-6c5ef6498549db725a59638753cd491c4d8bd573.tar.gz
rumba-6c5ef6498549db725a59638753cd491c4d8bd573.zip
examples: add two layers example (from demonstrator)
Diffstat (limited to 'examples')
-rwxr-xr-xexamples/two-layers.py52
1 files changed, 52 insertions, 0 deletions
diff --git a/examples/two-layers.py b/examples/two-layers.py
new file mode 100755
index 0000000..3fba54e
--- /dev/null
+++ b/examples/two-layers.py
@@ -0,0 +1,52 @@
+#!/usr/bin/env python
+
+# An example script using the rumba package
+
+from rumba.model import *
+
+# import testbed plugins
+import rumba.testbeds.emulab as emulab
+import rumba.testbeds.jfed as jfed
+import rumba.testbeds.faketestbed as fake
+
+# import prototype plugins
+import rumba.prototypes.ouroboros as our
+import rumba.prototypes.rlite as rl
+import rumba.prototypes.irati as irati
+
+n1 = NormalDIF("n1")
+n2 = NormalDIF("n2")
+n3 = NormalDIF("n3")
+
+e1 = ShimEthDIF("e1")
+e2 = ShimEthDIF("e2")
+e3 = ShimEthDIF("e3")
+
+a = Node("a",
+ difs = [n3, n1, e1],
+ dif_registrations = {n3: [n1], n1 : [e1]},
+ registrations = {"rinaperf.server" : [n3]},
+ bindings = {"rinaperf.server" : "/usr/bin/rinaperf"})
+
+b = Node("b",
+ difs = [n1, e1, e2],
+ dif_registrations = {n1 : [e1, e2]})
+
+c = Node("c",
+ difs = [n3, n1, n2, e2, e3],
+ dif_registrations = {n3: [n1, n2], n1 : [e2], n2: [e3]})
+
+d = Node("d",
+ difs = [n3, n2, e3],
+ dif_registrations = {n3: [n2], n2 : [e3]})
+
+tb = fake.Testbed(exp_name = "twolayers",
+ username = "vmaffio",
+ proj_name = "cert.pem",
+ password = "")
+
+exp = irati.Experiment(tb, nodes = [a, b, c, d])
+
+print(exp)
+
+exp.run()