aboutsummaryrefslogtreecommitdiff
path: root/examples/vpn.py
diff options
context:
space:
mode:
Diffstat (limited to 'examples/vpn.py')
-rwxr-xr-xexamples/vpn.py56
1 files changed, 56 insertions, 0 deletions
diff --git a/examples/vpn.py b/examples/vpn.py
new file mode 100755
index 0000000..4ad9f6d
--- /dev/null
+++ b/examples/vpn.py
@@ -0,0 +1,56 @@
+#!/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 rumba.testbeds.qemu as qemu
+
+# import prototype plugins
+import rumba.prototypes.ouroboros as our
+import rumba.prototypes.rlite as rl
+import rumba.prototypes.irati as irati
+
+import rumba.log as log
+
+log.set_logging_level('DEBUG')
+
+
+n1 = NormalDIF("n1")
+n2 = NormalDIF("n2")
+e1 = ShimEthDIF("e1")
+e2 = ShimEthDIF("e2")
+e3 = ShimEthDIF("e3")
+
+a = Node("a",
+ difs = [e1, n1, n2],
+ dif_registrations = {n1 : [e1], n2 : [n1]})
+
+b = Node("b",
+ difs = [e1, e2, n1],
+ dif_registrations = {n1 : [e1, e2]})
+
+c = Node("c",
+ difs = [e2, e3, n1],
+ dif_registrations = {n1 : [e2, e3]})
+
+d = Node("d",
+ difs = [e3, n1, n2],
+ dif_registrations = {n1 : [e3], n2 : [n1]})
+
+tb = qemu.Testbed(exp_name = 'example1',
+ username = 'sander')
+
+exp = our.Experiment(tb, nodes = [a, b, c, d])
+
+print(exp)
+
+#try:
+# exp.swap_in()
+# exp.bootstrap_prototype()
+#finally:
+# exp.swap_out()