Adapting nepi to ns3.11
authorAlina Quereilhac <alina.quereilhac@inria.fr>
Sat, 30 Jul 2011 10:30:54 +0000 (12:30 +0200)
committerAlina Quereilhac <alina.quereilhac@inria.fr>
Sat, 30 Jul 2011 10:30:54 +0000 (12:30 +0200)
examples/roads09.py
examples/vlc_wireless_netns_ns3.py
src/nepi/testbeds/netns/metadata.py
src/nepi/testbeds/ns3/__init__.py
src/nepi/testbeds/ns3/attributes_metadata.py
src/nepi/testbeds/ns3/connection_metadata.py
src/nepi/testbeds/ns3/factories_metadata.py
src/nepi/testbeds/ns3/traces_metadata.py
test/testbeds/planetlab/integration_cross.py
test/testbeds/planetlab/integration_ns3.py

index 65dfc31..772eec0 100644 (file)
@@ -108,7 +108,7 @@ class Roads09Ns3PLExample(object):
     
 
     def add_ns3_fdnd(self, node, ns3_desc):
-        fdnd = ns3_desc.create("ns3::FileDescriptorNetDevice")
+        fdnd = ns3_desc.create("ns3::FdNetDevice")
         node.connector("devs").connect(fdnd.connector("node"))
         fdnd.enable_trace("FileDescriptorPcapTrace")
         return fdnd
index 93138ca..469c837 100644 (file)
@@ -34,9 +34,9 @@ class VlcWirelessNetnsNs3Example(object):
         return tap
 
     def add_ns3_fdnd(self, node, ns3_desc):
-        fdnd = ns3_desc.create("ns3::FileDescriptorNetDevice")
+        fdnd = ns3_desc.create("ns3::FdNetDevice")
         node.connector("devs").connect(fdnd.connector("node"))
-        fdnd.enable_trace("FileDescriptorPcapTrace")
+        fdnd.enable_trace("FdPcapTrace")
         return fdnd
 
     def add_ns3_node(self, ns3_desc):
@@ -59,9 +59,9 @@ class VlcWirelessNetnsNs3Example(object):
         error = ns3_desc.create("ns3::NistErrorRateModel")
         manager = ns3_desc.create("ns3::ArfWifiManager")
         if access_point:
-            mac = ns3_desc.create("ns3::QapWifiMac")
+            mac = ns3_desc.create("ns3::ApWifiMac")
         else:
-            mac = ns3_desc.create("ns3::QstaWifiMac")
+            mac = ns3_desc.create("ns3::StaWifiMac")
 
         phy.set_attribute_value("Standard", "WIFI_PHY_STANDARD_80211a")
         mac.set_attribute_value("Standard", "WIFI_PHY_STANDARD_80211a")
index 86359f4..d6361b3 100644 (file)
@@ -26,7 +26,7 @@ APPLICATION = "Application"
 TUNCHANNEL = "TunChannel"
 
 NS3_TESTBED_ID = "ns3"
-FDNETDEV = "ns3::FileDescriptorNetDevice"
+FDNETDEV = "ns3::FdNetDevice"
 
 def _follow_trace(testbed_instance, guid, trace_id, filename):
     filepath = testbed_instance.trace_filepath(guid, trace_id, filename)
index 1ea99bd..29cb993 100644 (file)
@@ -2,5 +2,5 @@
 # -*- coding: utf-8 -*-
 
 from constants import TESTBED_ID, TESTBED_VERSION
-from execute import TestbedController 
+from execute import TestbedController, load_ns3_module 
 
index 9033998..170d018 100644 (file)
@@ -23,14 +23,14 @@ testbed_attributes = dict({
     "sched_impl_type": dict({
             "name": "SchedulerType",
             "help": "The object class to use as the scheduler implementation. Make sure to pick a thread-safe variant.",
-            "value": "ns3::ThreadsafeMapScheduler",
+            "value": "ns3::MapScheduler",
             "type": Attribute.ENUM,
             "flags": Attribute.ExecReadOnly | Attribute.ExecImmutable,
             "allowed": [
-                "ns3::ThreadsafeMapScheduler",
-                "ns3::ThreadsafeHeapScheduler",
-                "ns3::ThreadsafeListScheduler",
-                "ns3::ThreadsafeCalendarScheduler",
+                "ns3::MapScheduler",
+                "ns3::HeapScheduler",
+                "ns3::ListScheduler",
+                "ns3::CalendarScheduler",
             ],
             "validation_function": validation.is_enum
         }),
index b4b35c1..6d14a26 100644 (file)
@@ -115,7 +115,7 @@ def connect_classifier_sflow(testbed_instance, classifier_guid, sflow_guid):
 def connect_fd(testbed_instance, fdnd_guid, cross_data):
     fdnd = testbed_instance._elements[fdnd_guid]
     endpoint = fdnd.GetEndpoint()
-    # XXX: check the method StringToBuffer of ns3::FileDescriptorNetDevice
+    # XXX: check the method StringToBuffer of ns3::FdNetDevice
     # to see how the address should be decoded
     address = endpoint.replace(":", "").decode('hex')[2:]
     testbed_instance.set(fdnd_guid, "LinuxSocketAddress", address)
@@ -134,7 +134,7 @@ def connect_tunchannel_fd(testbed_instance, tun_guid, fdnd_guid):
     fdnd = testbed_instance._elements[fdnd_guid]
     tun = testbed_instance._elements[tun_guid]
 
-    # XXX: check the method StringToBuffer of ns3::FileDescriptorNetDevice
+    # XXX: check the method StringToBuffer of ns3::FdNetDevice
     # to see how the address should be decoded
     endpoint = fdnd.GetEndpoint()
     address = endpoint.replace(":", "").decode('hex')[2:]
@@ -364,7 +364,7 @@ connections = [
     }),
     dict({
             "from": ( "ns3", "ns3::Node", "devs" ),
-            "to":   ( "ns3", "ns3::FileDescriptorNetDevice", "node" ),
+            "to":   ( "ns3", "ns3::FdNetDevice", "node" ),
             "init_code": connect_node_device,
             "can_cross": False
     }),
@@ -483,25 +483,13 @@ connections = [
             "can_cross": False
     }),
     dict({
-            "from": ( "ns3", "ns3::QapWifiMac", "dev" ),
+            "from": ( "ns3", "ns3::ApWifiMac", "dev" ),
             "to":   ( "ns3", "ns3::WifiNetDevice", "mac" ),
             "init_code": connect_mac_device,
             "can_cross": False
     }),
     dict({
-            "from": ( "ns3", "ns3::QstaWifiMac", "dev" ),
-            "to":   ( "ns3", "ns3::WifiNetDevice", "mac" ),
-            "init_code": connect_mac_device,
-            "can_cross": False
-    }),
-    dict({
-            "from": ( "ns3", "ns3::NqapWifiMac", "dev" ),
-            "to":   ( "ns3", "ns3::WifiNetDevice", "mac" ),
-            "init_code": connect_mac_device,
-            "can_cross": False
-    }),
-    dict({
-            "from": ( "ns3", "ns3::NqstaWifiMac", "dev" ),
+            "from": ( "ns3", "ns3::StaWifiMac", "dev" ),
             "to":   ( "ns3", "ns3::WifiNetDevice", "mac" ),
             "init_code": connect_mac_device,
             "can_cross": False
@@ -770,14 +758,14 @@ connections = [
         "can_cross": False
     }),
     dict({
-        "from": ( "ns3", "ns3::FileDescriptorNetDevice", "->fd" ),
+        "from": ( "ns3", "ns3::FdNetDevice", "->fd" ),
         "to":   ( None, None, "fd->" ),
         "init_code": connect_fd,
         "can_cross": True
     }),
     dict({
         "from": ( "ns3", "ns3::Nepi::TunChannel", "fd->" ),
-        "to":   ( "ns3", "ns3::FileDescriptorNetDevice", "->fd" ),
+        "to":   ( "ns3", "ns3::FdNetDevice", "->fd" ),
         "init_code": connect_tunchannel_fd,
         "can_cross": False
     }),
index fe38f4a..f706f28 100644 (file)
@@ -126,7 +126,7 @@ def fdpcap_trace(testbed_instance, guid, trace_id):
     element = testbed_instance._elements[guid]
     filename = "trace-fd-node-%d-dev-%d.pcap" % (node_guid, interface_number)
     filepath = _follow_trace(testbed_instance, guid, trace_id, filename)
-    helper = testbed_instance.ns3.FileDescriptorHelper()
+    helper = testbed_instance.ns3.FdNetDeviceHelper()
     helper.EnablePcap(filepath, element, explicitFilename = True)
 
 def yanswifipcap_trace(testbed_instance, guid, trace_id):
@@ -174,7 +174,7 @@ trace_functions = dict({
     "P2PAsciiTrace": p2pascii_trace,
     "CsmaPcapTrace": csmapcap_trace,
     "CsmaPcapPromiscTrace": csmapcap_promisc_trace,
-    "FileDescriptorPcapTrace": fdpcap_trace,
+    "FdPcapTrace": fdpcap_trace,
     "YansWifiPhyPcapTrace": yanswifipcap_trace,
     "WimaxPcapTrace": wimaxpcap_trace,
     "WimaxAsciiTrace": wimaxascii_trace,
@@ -566,8 +566,8 @@ factories_order = ["ns3::BasicEnergySource",
     "ns3::SingleModelSpectrumChannel",
     "ns3::MsduStandardAggregator",
     "ns3::EdcaTxopN",
-    "ns3::QstaWifiMac",
-    "ns3::QapWifiMac",
+    "ns3::StaWifiMac",
+    "ns3::ApWifiMac",
     "ns3::QadhocWifiMac",
     "ns3::MinstrelWifiManager",
     "ns3::CaraWifiManager",
@@ -579,8 +579,6 @@ factories_order = ["ns3::BasicEnergySource",
     "ns3::AarfWifiManager",
     "ns3::ArfWifiManager",
     "ns3::WifiNetDevice",
-    "ns3::NqstaWifiMac",
-    "ns3::NqapWifiMac",
     "ns3::AdhocWifiMac",
     "ns3::DcaTxop",
     "ns3::WifiMacQueue",
@@ -610,7 +608,7 @@ factories_order = ["ns3::BasicEnergySource",
     "ns3::PacketSink",
     "ns3::OnOffApplication",
     "ns3::VirtualNetDevice",
-    "ns3::FileDescriptorNetDevice",
+    "ns3::FdNetDevice",
     "ns3::Nepi::TunChannel",
     "ns3::TapBridge",
     "ns3::BridgeChannel",
@@ -1031,7 +1029,7 @@ factories_info = dict({
             "WaypointList"],
         "tags": [tags.MOBILE],
     }),
-     "ns3::FileDescriptorNetDevice": dict({
+     "ns3::FdNetDevice": dict({
         "category": FC.CATEGORY_DEVICES,
         "create_function": create_element,
         "configure_function": configure_device,
@@ -1049,7 +1047,7 @@ factories_info = dict({
         "preconfigure_function": preconfigure_tunchannel,
         "configure_function": postconfigure_tunchannel,
         "prestart_function": wait_tunchannel,
-        "help": "Channel to forward FileDescriptorNetDevice data to "
+        "help": "Channel to forward FdNetDevice data to "
                 "other TAP interfaces supporting the NEPI tunneling protocol.",
         "connector_types": ["fd->", "udp", "tcp"],
         "allow_addresses": False,
@@ -1077,26 +1075,6 @@ factories_info = dict({
         "help": "",
         "connector_types": [],
         "box_attributes": ["SpreadCoef"],
-    }),
-     "ns3::NqstaWifiMac": dict({
-        "category": FC.CATEGORY_MAC_MODELS,
-        "create_function": create_wifi_standard_model,
-        "configure_function": configure_element,
-        "help": "",
-        "connector_types": ["dev"],
-        "box_attributes": ["ProbeRequestTimeout",
-            "AssocRequestTimeout",
-            "MaxMissedBeacons",
-            "CtsTimeout",
-            "AckTimeout",
-            "BasicBlockAckTimeout",
-            "CompressedBlockAckTimeout",
-            "Sifs",
-            "EifsNoDifs",
-            "Slot",
-            "Pifs",
-            "MaxPropagationDelay",
-            "Ssid"],
     }),
      "ns3::Icmpv6L4Protocol": dict({
         "category": FC.CATEGORY_PROTOCOLS,
@@ -1338,25 +1316,6 @@ factories_info = dict({
         "box_attributes": ["X",
            "Y"],
         "tags": [tags.MOBILE],
-    }),
-     "ns3::NqapWifiMac": dict({
-        "category": FC.CATEGORY_MAC_MODELS,
-        "create_function": create_wifi_standard_model,
-        "configure_function": configure_element,
-        "help": "",
-        "connector_types": ["dev"],
-        "box_attributes": ["BeaconInterval",
-            "BeaconGeneration",
-            "CtsTimeout",
-            "AckTimeout",
-            "BasicBlockAckTimeout",
-            "CompressedBlockAckTimeout",
-            "Sifs",
-            "EifsNoDifs",
-            "Slot",
-            "Pifs",
-            "MaxPropagationDelay",
-            "Ssid"],
     }),
      "ns3::HierarchicalMobilityModel": dict({
         "category": FC.CATEGORY_MOBILITY_MODELS,
@@ -1611,7 +1570,7 @@ factories_info = dict({
         "connector_types": [],
         "box_attributes": ["ExtensionNumber"],
     }),
-     "ns3::QstaWifiMac": dict({
+     "ns3::StaWifiMac": dict({
         "category": FC.CATEGORY_MAC_MODELS,
         "create_function": create_wifi_standard_model,
         "configure_function": configure_element,
@@ -1780,7 +1739,7 @@ factories_info = dict({
         "connector_types": [],
         "box_attributes": ["OptionNumber"],
     }),
-     "ns3::QapWifiMac": dict({
+     "ns3::ApWifiMac": dict({
         "category": FC.CATEGORY_MAC_MODELS,
         "create_function": create_wifi_standard_model,
         "configure_function": configure_element,
index b7b074c..09f286a 100644 (file)
@@ -19,8 +19,8 @@ traces = dict({
                 "help": "Trace to sniff packets from a Csma network device"
               }),
     "fdpcap": dict({
-                "name": "FileDescriptorPcapTrace",
-                "help": "Trace to sniff packets from a FileDescriptor network device"
+                "name": "FdPcapTrace",
+                "help": "Trace to sniff packets from a file descriptor network device"
               }),
     "yanswifipcap": dict({
                 "name": "YansWifiPhyPcapTrace",
index 8dcb8cb..d790ea3 100755 (executable)
@@ -159,7 +159,7 @@ class PlanetLabMultiIntegrationTestCase(unittest.TestCase):
         ns1.connector("protos").connect(ipv41.connector("node"))
         ns1.connector("protos").connect(arp1.connector("node"))
         ns1.connector("protos").connect(icmp1.connector("node"))
-        ns1if = ns3.create("ns3::FileDescriptorNetDevice")
+        ns1if = ns3.create("ns3::FdNetDevice")
         ns1if.enable_trace("FileDescriptorPcapTrace")
         ns1if.set_attribute_value("label", "ns1if")
         ns1tc = ns3.create("ns3::Nepi::TunChannel")
index b9ef952..dfb39d8 100755 (executable)
@@ -184,7 +184,7 @@ class PlanetLabCrossIntegrationTestCase(unittest.TestCase):
         ns1.connector("protos").connect(ipv41.connector("node"))
         ns1.connector("protos").connect(arp1.connector("node"))
         ns1.connector("protos").connect(icmp1.connector("node"))
-        ns1if = ns3_desc.create("ns3::FileDescriptorNetDevice")
+        ns1if = ns3_desc.create("ns3::FdNetDevice")
         ns1if.enable_trace("FileDescriptorPcapTrace")
         ns1if.set_attribute_value("label", "ns1if")
         ns1.connector("devs").connect(ns1if.connector("node"))
@@ -263,7 +263,7 @@ class PlanetLabCrossIntegrationTestCase(unittest.TestCase):
         ns1.connector("protos").connect(ipv41.connector("node"))
         ns1.connector("protos").connect(arp1.connector("node"))
         ns1.connector("protos").connect(icmp1.connector("node"))
-        ns1if = ns3_desc.create("ns3::FileDescriptorNetDevice")
+        ns1if = ns3_desc.create("ns3::FdNetDevice")
         ns1if.enable_trace("FileDescriptorPcapTrace")
         ns1if.set_attribute_value("label", "ns1if")
         ns1.connector("devs").connect(ns1if.connector("node"))
@@ -368,7 +368,7 @@ class PlanetLabCrossIntegrationTestCase(unittest.TestCase):
         ns1.connector("protos").connect(ipv41.connector("node"))
         ns1.connector("protos").connect(arp1.connector("node"))
         ns1.connector("protos").connect(icmp1.connector("node"))
-        ns1if = ns3_desc.create("ns3::FileDescriptorNetDevice")
+        ns1if = ns3_desc.create("ns3::FdNetDevice")
         ns1if.enable_trace("FileDescriptorPcapTrace")
         ns1if.set_attribute_value("label", "ns1if")
         ns1.connector("devs").connect(ns1if.connector("node"))