Add a simple performance test that sends a continuous stream 66/1066/5
authorRadek Zetik <radekx.zetik@intel.com>
Mon, 20 Jul 2015 04:33:58 +0000 (05:33 +0100)
committerMaryam Tahhan <maryam.tahhan@intel.com>
Tue, 4 Aug 2015 09:40:23 +0000 (09:40 +0000)
Implement a simple performance test that sends a continuous
stream of traffic to the vSwitch at line rate for 30 seconds
and measures the throughput
Note: there is issue with calculating of the Tx Fps and Mbps
based on the results from the IxNetwork traffic generator.
This issue will be fixed in a later patch.

JIRA: VSPERF-27

Change-Id: Ic72225888735d33398a602462af159e901fb5957
Signed-off-by: Radek Zetik <radekx.zetik@intel.com>
Reviewed-by: Maryam Tahhan <maryam.tahhan@intel.com>
conf/01_testcases.conf
core/component_factory.py
core/traffic_controller_rfc2544.py
docs/NEWS.md
tools/pkt_gen/ixnet/ixnet.py

index f0fe8ad..7b6c007 100755 (executable)
@@ -55,4 +55,13 @@ PERFORMANCE_TESTS = [
         "biDirectional": "False",
         "Description": "LTD.Throughput.RFC2544.PacketLossRatioFrameModification"
     },
+    {
+        "Name": "phy2phy_cont",
+        "Traffic Type": "continuous",
+        "Collector": "cpu",
+        "Deployment": "p2p",
+        "Description": "RFC2544 Phy2Phy Continuous Stream",
+        "biDirectional": "True",
+    },
+
 ]
index eb963d6..c101f5d 100644 (file)
@@ -38,14 +38,13 @@ def create_traffic(traffic_type, trafficgen_class):
 
     traffic_types: 'rfc2544_throughput'
 
-    :param traffic_type: Name of traffic type 
+    :param traffic_type: Name of traffic type
     :param trafficgen_class: Reference to traffic generator class to be used.
     :return: A new ITrafficController
     """
-    #TODO - full mapping from all traffic_types to
-    #correct controller class
     return TrafficControllerRFC2544(trafficgen_class)
 
+
 def create_vswitch(deployment_scenario, vswitch_class):
     """Return a new IVSwitchController for the deployment_scenario.
 
index bcea956..aae3ef8 100644 (file)
@@ -86,6 +86,9 @@ class TrafficControllerRFC2544(ITrafficController, IResults):
                 result = self._traffic_gen_class.send_rfc2544_back2back(
                     traffic, trials=int(self._trials),
                     duration=int(get_test_param('rfc2544_duration', 20)))
+            elif traffic['traffic_type'] == 'continuous':
+                result = self._traffic_gen_class.send_cont_traffic(
+                    traffic, time=int(get_test_param('rfc2544_duration', 30)))
             else:
                 result = self._traffic_gen_class.send_rfc2544_throughput(
                     traffic, trials=int(self._trials),
index 3ca47d6..892bfab 100644 (file)
@@ -9,6 +9,7 @@ once the community has digested the initial release.
 
 ## New
 
+* Performance testing with continuous stream
 * CentOS7 support
   * Verified on CentOS7
   * Install & Quickstart documentation
@@ -19,6 +20,7 @@ once the community has digested the initial release.
   * Framework support for non-Ixia traffic generators
   * Framework support for different VNFs
 * Python3
+* Support for biDirectional functionality for ixnet interface
 
 ## Missing
 
index 58373a1..bb999f7 100755 (executable)
@@ -200,7 +200,7 @@ class IxNet(trafficgen.ITrafficGenerator):
         """
         pass
 
-    def send_cont_traffic(self, traffic=None, time=20, framerate=0,
+    def send_cont_traffic(self, traffic=None, time=30, framerate=100,
                           multistream=False):
         """See ITrafficGenerator for description
         """
@@ -208,7 +208,7 @@ class IxNet(trafficgen.ITrafficGenerator):
 
         return self.stop_cont_traffic()
 
-    def start_cont_traffic(self, traffic=None, time=20, framerate=0,
+    def start_cont_traffic(self, traffic=None, time=30, framerate=100,
                            multistream=False):
         """Start transmission.
         """