diff options
Diffstat (limited to 'examples/vpn.py')
-rwxr-xr-x | examples/vpn.py | 56 |
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() |