#!/usr/bin/env/python 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 shimmilan-nice = ShimEthDIF("shimmilan-nice", link_speed=0)) shimmilan-zurich = ShimEthDIF("shimmilan-zurich", link_speed=0)) shimbarcelona-lyon = ShimEthDIF("shimbarcelona-lyon", link_speed=0)) shimflorence-rome = ShimEthDIF("shimflorence-rome", link_speed=0)) shimbarcelona-valencia = ShimEthDIF("shimbarcelona-valencia", link_speed=0)) shimlyon-nice = ShimEthDIF("shimlyon-nice", link_speed=0)) shimmilan-venice = ShimEthDIF("shimmilan-venice", link_speed=0)) shimpisa-rome = ShimEthDIF("shimpisa-rome", link_speed=0)) shimmadrid-valencia = ShimEthDIF("shimmadrid-valencia", link_speed=0)) shimlyon-paris = ShimEthDIF("shimlyon-paris", link_speed=0)) shimnaples-rome = ShimEthDIF("shimnaples-rome", link_speed=0)) shimflorence-pisa = ShimEthDIF("shimflorence-pisa", link_speed=0)) shimbarcelona-madrid = ShimEthDIF("shimbarcelona-madrid", link_speed=0)) shimmunich-vienna = ShimEthDIF("shimmunich-vienna", link_speed=0)) shimflorence-milan = ShimEthDIF("shimflorence-milan", link_speed=0)) shimlisbon-madrid = ShimEthDIF("shimlisbon-madrid", link_speed=0)) shimvenice-vienna = ShimEthDIF("shimvenice-vienna", link_speed=0)) shimmunich-zurich = ShimEthDIF("shimmunich-zurich", link_speed=0)) shimflorence-venice = ShimEthDIF("shimflorence-venice", link_speed=0)) fravpn = NormalDIF("fravpn") ibervpn = NormalDIF("ibervpn") eu = NormalDIF("eu") itavpn = NormalDIF("itavpn") vienna = Node("vienna", difs=[venice-vienna, munich-vienna], dif_registrations={}) milan = Node("milan", difs=[florence-milan, milan-venice, milan-zurich, milan-nice, eu, itavpn], dif_registrations={eu: [milan-venice, florence-milan, milan-zurich, milan-nice], itavpn: [eu]}) zurich = Node("zurich", difs=[milan-zurich, munich-zurich], dif_registrations={}) paris = Node("paris", difs=[lyon-paris, eu, fravpn], dif_registrations={fravpn: [eu], eu: [lyon-paris]}) venice = Node("venice", difs=[florence-venice, milan-venice, venice-vienna, eu, itavpn], dif_registrations={eu: [milan-venice, florence-venice, venice-vienna], itavpn: [eu]}) pisa = Node("pisa", difs=[pisa-rome, florence-pisa, eu, itavpn], dif_registrations={eu: [pisa-rome, florence-pisa], itavpn: [eu]}) valencia = Node("valencia", difs=[barcelona-valencia, madrid-valencia, eu, ibervpn], dif_registrations={ibervpn: [eu], eu: [barcelona-valencia, madrid-valencia]}) lisbon = Node("lisbon", difs=[lisbon-madrid, eu, ibervpn], dif_registrations={ibervpn: [eu], eu: [lisbon-madrid]}) barcelona = Node("barcelona", difs=[barcelona-lyon, barcelona-madrid, barcelona-valencia, eu, ibervpn], dif_registrations={ibervpn: [eu], eu: [barcelona-lyon, barcelona-madrid, barcelona-valencia]}) nice = Node("nice", difs=[milan-nice, lyon-nice, eu, fravpn], dif_registrations={fravpn: [eu], eu: [milan-nice, lyon-nice]}) lyon = Node("lyon", difs=[lyon-nice, lyon-paris, barcelona-lyon, eu, fravpn], dif_registrations={fravpn: [eu], eu: [lyon-paris, lyon-nice, barcelona-lyon]}) madrid = Node("madrid", difs=[barcelona-madrid, madrid-valencia, lisbon-madrid, eu, ibervpn], dif_registrations={ibervpn: [eu], eu: [barcelona-madrid, madrid-valencia, lisbon-madrid]}) munich = Node("munich", difs=[munich-zurich, munich-vienna], dif_registrations={}) florence = Node("florence", difs=[florence-rome, florence-pisa, florence-milan, florence-venice, eu, itavpn], dif_registrations={eu: [florence-pisa, florence-rome, florence-milan, florence-venice], itavpn: [eu]}) naples = Node("naples", difs=[naples-rome, eu, itavpn], dif_registrations={eu: [naples-rome], itavpn: [eu]}) rome = Node("rome", difs=[naples-rome, pisa-rome, florence-rome, eu, itavpn], dif_registrations={eu: [naples-rome, pisa-rome, florence-rome], itavpn: [eu]}) tb = qemu.Testbed(exp_name = "europe-vpns-small", bzimage = "/home/mcapitani/RINA/checkouts/rlite/demo/buildroot/bzImage", initramfs = "/home/mcapitani/RINA/checkouts/rlite/demo/buildroot/rootfs.cpio") exp = rl.Experiment(tb, nodes = [a, b, c, d]) print(exp) exp.run()