Performance adjustments for OpenFlow 76/72776/12
authorLuis Gomez <ecelgp@gmail.com>
Fri, 8 Jun 2018 03:54:08 +0000 (20:54 -0700)
committerLuis Gomez <ecelgp@gmail.com>
Mon, 11 Jun 2018 00:20:00 +0000 (17:20 -0700)
- Disable AKKA tell protocol: this helps with OF cluster perf
- Increase OF stats poll interval: this helps with OF stats perf
- Disable switch echos: this also helps with OF stats perf

Change-Id: Iac272e73f39dca71cbd557ce84e9f3ad7d5ef9db
Signed-off-by: Luis Gomez <ecelgp@gmail.com>
csit/configplans/openflowplugin-gate-perf-stats-collection.txt [new symlink]
csit/configplans/openflowplugin-perf-stats-collection.txt [new file with mode: 0644]
csit/libraries/MininetKeywords.robot
csit/scripts/increase_of_stats_interval.sh [new file with mode: 0755]
csit/suites/openflowplugin/Performance_Flow_Config/070_Stats_Collection_100k_WithMininetRestart.robot
csit/testplans/openflowplugin-clustering-perf-bulkomatic.txt

diff --git a/csit/configplans/openflowplugin-gate-perf-stats-collection.txt b/csit/configplans/openflowplugin-gate-perf-stats-collection.txt
new file mode 120000 (symlink)
index 0000000..cb0e756
--- /dev/null
@@ -0,0 +1 @@
+openflowplugin-perf-stats-collection.txt
\ No newline at end of file
diff --git a/csit/configplans/openflowplugin-perf-stats-collection.txt b/csit/configplans/openflowplugin-perf-stats-collection.txt
new file mode 100644 (file)
index 0000000..fd0ded4
--- /dev/null
@@ -0,0 +1,3 @@
+# Place the suites in run order:
+integration/test/csit/scripts/set_persistence_off.sh
+integration/test/csit/scripts/increase_of_stats_interval.sh
index 317db1bde9490b88fc89000ff11b09c5a114d256..b2f7421c42305347f3e062573a8b9d139334cd1d 100644 (file)
@@ -21,7 +21,7 @@ Start Mininet Single Controller
     [Documentation]    Start Mininet with custom topology and connect to controller.
     Log    Clear any existing mininet
     Utils.Clean Mininet System    ${mininet}
-    ${mininet_conn_id}=    SSHKeywords.Open_Connection_To_Tools_System
+    ${mininet_conn_id}=    SSHKeywords.Open_Connection_To_Tools_System    ip_address=${mininet}    timeout=${timeout}
     Set Suite Variable    ${mininet_conn_id}
     Run Keyword If    '${custom}' != '${EMPTY}'    Put File    ${custom}
     Log    Start mininet ${options} to ${controller}
@@ -39,7 +39,7 @@ Start Mininet Multiple Controllers
     ${index_list} =    ClusterManagement.List Indices Or All    given_list=${controller_index_list}
     Log    Clear any existing mininet
     Utils.Clean Mininet System    ${mininet}
-    ${mininet_conn_id}=    SSHKeywords.Open_Connection_To_Tools_System
+    ${mininet_conn_id}=    SSHKeywords.Open_Connection_To_Tools_System    ip_address=${mininet}    timeout=${timeout}
     Set Suite Variable    ${mininet_conn_id}
     Run Keyword If    '${custom}' != '${EMPTY}'    Put File    ${custom}
     Run Keyword If    '${protocol}' == 'ssl'    Install Certificates In Mininet
diff --git a/csit/scripts/increase_of_stats_interval.sh b/csit/scripts/increase_of_stats_interval.sh
new file mode 100755 (executable)
index 0000000..a4ec27b
--- /dev/null
@@ -0,0 +1,20 @@
+#!/bin/bash
+
+cat > ${WORKSPACE}/set_bundleresync_flag.sh <<EOF
+    export CONFFILE=\`find /tmp/${BUNDLEFOLDER} -name "*openflowplugin*config.cfg"\`
+    cp \$CONFFILE /tmp/${BUNDLEFOLDER}/etc/org.opendaylight.openflowplugin.cfg
+    sed -i "s/# basic-timer-delay=3000/basic-timer-delay=10000/" /tmp/${BUNDLEFOLDER}/etc/org.opendaylight.openflowplugin.cfg
+    cat /tmp/${BUNDLEFOLDER}/etc/org.opendaylight.openflowplugin.cfg
+EOF
+
+echo "Running bundleresync_flag script on ODL Controller(s)"
+for i in `seq 1 ${NUM_ODL_SYSTEM}`
+do
+        CONTROLLERIP=ODL_SYSTEM_${i}_IP
+
+        echo "Enabling bundleresync_flag on ${!CONTROLLERIP}"
+        scp ${WORKSPACE}/set_bundleresync_flag.sh ${!CONTROLLERIP}:/tmp/
+        ssh ${!CONTROLLERIP} 'bash /tmp/set_bundleresync_flag.sh'
+done
+
+rm ${WORKSPACE}/set_bundleresync_flag.sh
index 1a2b7f51806a4e881711fac6e215d44402ef7774..a6f8bd65d0f2a24dea3dca0811faaf0031e77ab2 100644 (file)
@@ -24,7 +24,7 @@ ${start_cmd}      sudo mn --controller=remote,ip=${ODL_SYSTEM_IP} --topo linear,
 ${getf_cmd}       sh ./get-total-found.sh
 ${getr_cmd}       sh ./get-total-reported.sh
 ${iperiod}        1s
-${imonitor}       600s
+${imonitor}       60s
 ${ichange}        450s
 ${ratefile}       stats_rate.csv
 ${timefile}       stats_time.csv
@@ -99,6 +99,9 @@ Connect Switches
     Execute Command    sudo mn -c
     Write    ${start_cmd}
     Read Until    mininet>
+    Comment    Below line disables switch echos
+    Write    sh x=`sudo ovs-vsctl --columns=_uuid list Controller | awk '{print $NF}'`; for i in $x; do sudo ovs-vsctl set Controller $i inactivity_probe=0; done
+    Read Until    mininet>
     Wait Until Keyword Succeeds    10s    1s    Are Switches Connected Topo
 
 Create Http Session And Upload Files
index 1bb4a667689ce9db90fae5fecc813d3d91e4621c..9cb4303420a3a3f8e68da4bc910d04388d707106 100644 (file)
@@ -1,4 +1,3 @@
 # Place the suites in run order:
-integration/test/csit/suites/controller/dom_data_broker/restart_odl_with_tell_based_true.robot
 integration/test/csit/suites/openflowplugin/Performance_Bulkomatic/100K_Flows_100DPN_3Node_Cluster_Perf_Test.robot
 integration/test/csit/suites/integration/Create_JVM_Plots.robot