Continuing wireless overlay ...
authorAlina Quereilhac <alina.quereilhac@inria.fr>
Thu, 29 Sep 2011 21:32:59 +0000 (23:32 +0200)
committerAlina Quereilhac <alina.quereilhac@inria.fr>
Thu, 29 Sep 2011 21:32:59 +0000 (23:32 +0200)
examples/wireless_overlay.py
src/nepi/testbeds/planetlab/node.py

index 92d054e..3896017 100644 (file)
@@ -287,6 +287,7 @@ class WirelessOverlay(object):
         netns_desc = self.add_netns_testbed(exp_desc)
         netns_node = self.add_netns_node(netns_desc)
 
+        """
         ## NS3 ##
         ns3_desc = self.add_ns3_in_pl(exp_desc, pl_desc, pl_node1, pl_iface1, "ns3")
         wifi_chan = self.add_ns3_wifi_channel(ns3_desc)
@@ -331,19 +332,19 @@ class WirelessOverlay(object):
             self.add_route(netns_node, network, 30, (self.base_addr%2))
             self.add_route(pl_node1, network, 30, (self.base_addr%6))
             self.add_route(ap_node, network, 30, wifi_addr)
-        
+        """ 
         # connection PL1/NETNS
         pl_addr = (self.base_addr%2)
         netns_addr = (self.base_addr%1)
         self.add_pl_netns_connection(pl_desc, pl_node1, pl_addr,
             netns_desc, netns_node, netns_addr)
-
+        """
         # connection PL1/NS3
         pl_addr = (self.base_addr%5)
         ns3_addr = (self.base_addr%6)
         self.add_pl_ns3_connection(pl_desc, pl_node1, pl_addr,
             ns3_desc, ap_node, ns3_addr)
-
+        """
         # APPLICATIONS
         command = "xterm" 
         app = netns_desc.create("Application")
@@ -351,6 +352,30 @@ class WirelessOverlay(object):
         app.set_attribute_value("user", self.user)
         app.connector("node").connect(netns_node.connector("apps"))
 
+        # applications
+        #target = "{#[%s].addr[0].[Address]#}" % label
+        servers = []
+        clients = []
+        net = 0
+        target = self.base_addr%2
+        port = 5001
+        command = "sleep 2; vlc -I dummy %s --sout '#rtp{dst=%s,port=%d,mux=ts}' vlc://quit" \
+            % (self.movie, target, port)
+        vlc_server = netns_desc.create("Application")
+        vlc_server.set_attribute_value("command", command)
+        vlc_server.set_attribute_value("user", self.user)
+        vlc_server.connector("node").connect(netns_node.connector("apps"))
+        servers.append(vlc_server.guid)
+
+        command = "sudo dbus-uuidgen --ensure; vlc -I dummy rtp://%s:%d/test.ts --sout '#std{access=file,mux=ts,dst=big_buck_bunny_stream.ts}' "  % (target, port)
+        vlc_client = pl_desc.create("Application")
+        vlc_client.set_attribute_value("buildDepends", "vlc")
+        vlc_client.set_attribute_value("rpmFusion", True)
+        vlc_client.set_attribute_value("command", command)
+        vlc_client.connector("node").connect(pl_node1.connector("apps"))
+        clients.append(vlc_client.guid)
+
+        """
         # ROUTES
         self.add_route(netns_node, (self.base_addr%32), 27, (self.base_addr%2))
         self.add_route(netns_node, (self.base_addr%4), 30, (self.base_addr%2))
@@ -358,7 +383,7 @@ class WirelessOverlay(object):
         self.add_route(pl_node1, (self.base_addr%32), 27, (self.base_addr%6))
 
         self.add_route(ap_node, (self.base_addr%0), 30, (self.base_addr%5))
-
+        """
         xml = exp_desc.to_xml()
         controller = ExperimentController(xml, self.root_dir)
         controller.start()
@@ -369,25 +394,6 @@ class WirelessOverlay(object):
         controller.shutdown()
 
         """
-            # applications
-            #target = "{#[%s].addr[0].[Address]#}" % label
-            target = self.base_addr%(net+1)
-            port = 5000 + net + 1
-            command = "vlc -I dummy %s --sout '#rtp{dst=%s,port=%d,mux=ts}' vlc://quit" \
-                % (self.movie, target, port)
-            vlc_server = netns_desc.create("Application")
-            vlc_server.set_attribute_value("command", command)
-            vlc_server.set_attribute_value("user", self.user)
-            vlc_server.connector("node").connect(server.connector("apps"))
-            servers.append(vlc_server.guid)
-
-            command = "vlc rtp://%s:%d/test.ts" % (target, port)
-            vlc_client = netns_desc.create("Application")
-            vlc_client.set_attribute_value("command", command)
-            vlc_client.set_attribute_value("user", self.user)
-            vlc_client.connector("node").connect(nodei.connector("apps"))
-            clients.append(vlc_client.guid)
-
         xml = exp_desc.to_xml()
         controller = ExperimentController(xml, self.root_dir)
         controller.start()
index a1e9bcd..b8407e2 100644 (file)
@@ -432,7 +432,7 @@ class Node(object):
                     RPM_FUSION_URL = self.RPM_FUSION_URL
                     
                 rpmFusion = (
-                  '( rpm -q $(rpm -q -p %(RPM_FUSION_URL)s) || rpm -i %(RPM_FUSION_URL)s ) &&'
+                  'sudo -S rpm -q $(rpm -q -p %(RPM_FUSION_URL)s) || rpm -i %(RPM_FUSION_URL)s'
                 ) % {
                     'RPM_FUSION_URL' : RPM_FUSION_URL
                 }