diff --git a/TestON/tests/FUNCintent/FUNCintent.py b/TestON/tests/FUNCintent/FUNCintent.py
index 627275b..1580260 100644
--- a/TestON/tests/FUNCintent/FUNCintent.py
+++ b/TestON/tests/FUNCintent/FUNCintent.py
@@ -419,7 +419,7 @@
 
         assignResult = main.Mininet1.assignSwController( sw=switchList,
                                                          ip=tempONOSip,
-                                                         port='6633' )
+                                                         port='6653' )
         if not assignResult:
             main.cleanup()
             main.exit()
diff --git a/TestON/tests/FUNCintentRest/FUNCintentRest.py b/TestON/tests/FUNCintentRest/FUNCintentRest.py
index e97bc9a..489fdd1 100644
--- a/TestON/tests/FUNCintentRest/FUNCintentRest.py
+++ b/TestON/tests/FUNCintentRest/FUNCintentRest.py
@@ -394,7 +394,7 @@
 
         assignResult = main.Mininet1.assignSwController( sw=switchList,
                                                          ip=tempONOSip,
-                                                         port='6633' )
+                                                         port='6653' )
         if not assignResult:
             main.cleanup()
             main.exit()
diff --git a/TestON/tests/FUNCovsdbtest/FUNCovsdbtest.params b/TestON/tests/FUNCovsdbtest/FUNCovsdbtest.params
index 1f83b50..db24b57 100644
--- a/TestON/tests/FUNCovsdbtest/FUNCovsdbtest.params
+++ b/TestON/tests/FUNCovsdbtest/FUNCovsdbtest.params
@@ -17,7 +17,7 @@
 
     <CTRL>
         <ip1>OC1</ip1>
-        <port1>6633</port1>
+        <port1>6653</port1>
         <ovsdbport>6640</ovsdbport>
     </CTRL>
 
diff --git a/TestON/tests/FUNCvirNetNB/FUNCvirNetNB.params b/TestON/tests/FUNCvirNetNB/FUNCvirNetNB.params
index 7f0e058..f3ae511 100644
--- a/TestON/tests/FUNCvirNetNB/FUNCvirNetNB.params
+++ b/TestON/tests/FUNCvirNetNB/FUNCvirNetNB.params
@@ -24,7 +24,7 @@
 
     <CTRL>
         <ip1>OC1</ip1>
-        <port1>6633</port1>
+        <port1>6653</port1>
     </CTRL>
 
     <HTTP>
diff --git a/TestON/tests/HAclusterRestart/HAclusterRestart.params b/TestON/tests/HAclusterRestart/HAclusterRestart.params
index 627bec2..228e769 100644
--- a/TestON/tests/HAclusterRestart/HAclusterRestart.params
+++ b/TestON/tests/HAclusterRestart/HAclusterRestart.params
@@ -31,13 +31,13 @@
     <tcpdump> False </tcpdump>
 
     <CTRL>
-        <port1>6633</port1>
-        <port2>6633</port2>
-        <port3>6633</port3>
-        <port4>6633</port4>
-        <port5>6633</port5>
-        <port6>6633</port6>
-        <port7>6633</port7>
+        <port1>6653</port1>
+        <port2>6653</port2>
+        <port3>6653</port3>
+        <port4>6653</port4>
+        <port5>6653</port5>
+        <port6>6653</port6>
+        <port7>6653</port7>
     </CTRL>
     <BACKUP>
         <ENABLED> False </ENABLED>
diff --git a/TestON/tests/HAminorityRestart/HAminorityRestart.params b/TestON/tests/HAminorityRestart/HAminorityRestart.params
index 1e08a6b..348768c 100644
--- a/TestON/tests/HAminorityRestart/HAminorityRestart.params
+++ b/TestON/tests/HAminorityRestart/HAminorityRestart.params
@@ -13,13 +13,13 @@
     <tcpdump> False </tcpdump>
 
     <CTRL>
-        <port1>6633</port1>
-        <port2>6633</port2>
-        <port3>6633</port3>
-        <port4>6633</port4>
-        <port5>6633</port5>
-        <port6>6633</port6>
-        <port7>6633</port7>
+        <port1>6653</port1>
+        <port2>6653</port2>
+        <port3>6653</port3>
+        <port4>6653</port4>
+        <port5>6653</port5>
+        <port6>6653</port6>
+        <port7>6653</port7>
     </CTRL>
     <BACKUP>
         <ENABLED> False </ENABLED>
diff --git a/TestON/tests/HAsanity/HAsanity.params b/TestON/tests/HAsanity/HAsanity.params
index 0aefe97..cae5b3c 100644
--- a/TestON/tests/HAsanity/HAsanity.params
+++ b/TestON/tests/HAsanity/HAsanity.params
@@ -32,13 +32,13 @@
     <tcpdump> False </tcpdump>
 
     <CTRL>
-        <port1>6633</port1>
-        <port2>6633</port2>
-        <port3>6633</port3>
-        <port4>6633</port4>
-        <port5>6633</port5>
-        <port6>6633</port6>
-        <port7>6633</port7>
+        <port1>6653</port1>
+        <port2>6653</port2>
+        <port3>6653</port3>
+        <port4>6653</port4>
+        <port5>6653</port5>
+        <port6>6653</port6>
+        <port7>6653</port7>
     </CTRL>
     <BACKUP>
         <ENABLED> False </ENABLED>
diff --git a/TestON/tests/HAsingleInstanceRestart/HAsingleInstanceRestart.params b/TestON/tests/HAsingleInstanceRestart/HAsingleInstanceRestart.params
index ce0abe0..3e31402 100644
--- a/TestON/tests/HAsingleInstanceRestart/HAsingleInstanceRestart.params
+++ b/TestON/tests/HAsingleInstanceRestart/HAsingleInstanceRestart.params
@@ -28,7 +28,7 @@
     <tcpdump> False </tcpdump>
 
     <CTRL>
-        <port1>6633</port1>
+        <port1>6653</port1>
     </CTRL>
     <BACKUP>
         <ENABLED> False </ENABLED>
diff --git a/TestON/tests/SAMPstartTemplate/SAMPstartTemplate.params b/TestON/tests/SAMPstartTemplate/SAMPstartTemplate.params
index 1fa6036..d0ac5c7 100755
--- a/TestON/tests/SAMPstartTemplate/SAMPstartTemplate.params
+++ b/TestON/tests/SAMPstartTemplate/SAMPstartTemplate.params
@@ -24,7 +24,7 @@
     </GIT>
 
     <CTRL>
-        <port>6633</port>
+        <port>6653</port>
     </CTRL>
 
     <SLEEP>
diff --git a/TestON/tests/SCPFcbench/SCPFcbench.params b/TestON/tests/SCPFcbench/SCPFcbench.params
index 3050d0e..161c657 100644
--- a/TestON/tests/SCPFcbench/SCPFcbench.params
+++ b/TestON/tests/SCPFcbench/SCPFcbench.params
@@ -11,7 +11,7 @@
 
     <TEST>
         <skipCleanInstall>yes</skipCleanInstall>
-        <cbenchCMD>cbench -c localhost -p 6633 -m 1000 -l 70 -s 16 -M 100000 -w 10 -D 5000 -</cbenchCMD>
+        <cbenchCMD>cbench -c localhost -p 6653 -m 1000 -l 70 -s 16 -M 100000 -w 10 -D 5000 -</cbenchCMD>
         <mode>t</mode>                     #t throughput
     </TEST>
 
@@ -23,7 +23,7 @@
     <CTRL>
         <USER>admin</USER>
         <ip1>OC1</ip1>
-        <port1>6633</port1>
+        <port1>6653</port1>
     </CTRL>
 
     <MN>
@@ -34,7 +34,7 @@
         <user>admin</user>
         <ip1>localhost</ip1>
     </BENCH>
-    
+
     <CBENCH>
         <user>sdn</user>
     </CBENCH>
diff --git a/TestON/tests/SCPFflowTp1g/SCPFflowTp1g.params b/TestON/tests/SCPFflowTp1g/SCPFflowTp1g.params
index 76e05ba..7a777ad 100644
--- a/TestON/tests/SCPFflowTp1g/SCPFflowTp1g.params
+++ b/TestON/tests/SCPFflowTp1g/SCPFflowTp1g.params
@@ -1,10 +1,10 @@
 <PARAMS>
 
     <testcases>1,2,1,2,1,2,1,2,1,2,1,2,1,2</testcases>
-    
+
     <SCALE>1,3,3,5,5,7,7</SCALE>
     <max>7</max>
-    
+
 
 
     <ENV>
@@ -14,16 +14,16 @@
 
     <TEST>
         <enableFlowRuleStoreBackup>true</enableFlowRuleStoreBackup>
-        <skipCleanInstall>yes</skipCleanInstall> 
+        <skipCleanInstall>yes</skipCleanInstall>
         <warmUp>5</warmUp>                              #number of runs to warm up the system
         <sampleSize>20</sampleSize>                     #number of runs to take data from
-        <neighbors>0,a</neighbors>                      #list of number of neighbors, a = all 
+        <neighbors>0,a</neighbors>                      #list of number of neighbors, a = all
         <flows>122500</flows>
         <switches>35</switches>
         <cooldown>10</cooldown>
-        <testCMD0>flow-tester.py -f</testCMD0>          #base command 
-        <testCMD1> -n </testCMD1>                       #neighbors 
-        
+        <testCMD0>flow-tester.py -f</testCMD0>          #base command
+        <testCMD1> -n </testCMD1>                       #neighbors
+
     </TEST>
 
     <GIT>
@@ -33,27 +33,27 @@
 
     <CTRL>
         <USER>admin</USER>
-        
+
         <ip1>OC1</ip1>
-        <port1>6633</port1>
-        
+        <port1>6653</port1>
+
         <ip2>OC2</ip2>
-        <port2>6633</port2>
-        
+        <port2>6653</port2>
+
         <ip3>OC3</ip3>
-        <port3>6633</port3>
-        
+        <port3>6653</port3>
+
         <ip4>OC4</ip4>
-        <port4>6633</port4>
-        
+        <port4>6653</port4>
+
         <ip5>OC5</ip5>
-        <port5>6633</port5>
-        
+        <port5>6653</port5>
+
         <ip6>OC6</ip6>
-        <port6>6633</port6> 
-       
+        <port6>6653</port6>
+
         <ip7>OC7</ip7>
-        <port7>6633</port7>
+        <port7>6653</port7>
 
     </CTRL>
 
diff --git a/TestON/tests/SCPFintentEventTp/SCPFintentEventTp.params b/TestON/tests/SCPFintentEventTp/SCPFintentEventTp.params
index cbd8a8d..a2561e9 100644
--- a/TestON/tests/SCPFintentEventTp/SCPFintentEventTp.params
+++ b/TestON/tests/SCPFintentEventTp/SCPFintentEventTp.params
@@ -1,8 +1,8 @@
 <PARAMS>
 
     <testcases>1,2,1,2,1,2,1,2,1,2,1,2,1,2</testcases>
-    
-    <debugMode></debugMode>  #nothing means false 
+
+    <debugMode></debugMode>  #nothing means false
 
     <ENV>
     <cellName>intentTP</cellName>
@@ -17,29 +17,29 @@
         <checkout>master</checkout>
     </GIT>
 
-    <CTRL> 
+    <CTRL>
         <USER>admin</USER>
 
         <ip1>OC1</ip1>
-        <port1>6633</port1>
+        <port1>6653</port1>
 
         <ip2>OC2</ip2>
-        <port2>6633</port2>
+        <port2>6653</port2>
 
         <ip3>OC3</ip3>
-        <port3>6633</port3>
+        <port3>6653</port3>
 
         <ip4>OC4</ip4>
-        <port4>6633</port4>
+        <port4>6653</port4>
 
         <ip5>OC5</ip5>
-        <port5>6633</port5>
+        <port5>6653</port5>
 
         <ip6>OC6</ip6>
-        <port6>6633</port6>
+        <port6>6653</port6>
 
          <ip7>OC7</ip7>
-        <port7>6633</port7> 
+        <port7>6653</port7>
     </CTRL>
 
     <MN><ip1>OCN</ip1></MN>
@@ -49,8 +49,8 @@
         <ip1>OCN</ip1>
     </BENCH>
 
-    <TEST> 
-        <loadFrom>1,1,1,1,1,1,1</loadFrom>                                     #generate load on server, 1 = generator on 
+    <TEST>
+        <loadFrom>1,1,1,1,1,1,1</loadFrom>                                     #generate load on server, 1 = generator on
         <numSwitches>10,10,10,10,10,10,10</numSwitches>
         <skipCleanInstall>yes</skipCleanInstall>
         <duration>400</duration>
diff --git a/TestON/tests/SCPFintentInstallWithdrawLat/SCPFintentInstallWithdrawLat.params b/TestON/tests/SCPFintentInstallWithdrawLat/SCPFintentInstallWithdrawLat.params
index b4ed0b5..1521a75 100644
--- a/TestON/tests/SCPFintentInstallWithdrawLat/SCPFintentInstallWithdrawLat.params
+++ b/TestON/tests/SCPFintentInstallWithdrawLat/SCPFintentInstallWithdrawLat.params
@@ -29,25 +29,25 @@
         <USER>admin</USER>
 
         <ip1>OC1</ip1>
-        <port1>6633</port1>
+        <port1>6653</port1>
 
         <ip2>OC2</ip2>
-        <port2>6633</port2>
+        <port2>6653</port2>
 
         <ip3>OC3</ip3>
-        <port3>6633</port3>
+        <port3>6653</port3>
 
         <ip4>OC4</ip4>
-        <port4>6633</port4>
+        <port4>6653</port4>
 
         <ip5>OC5</ip5>
-        <port5>6633</port5>
+        <port5>6653</port5>
 
         <ip6>OC6</ip6>
-        <port6>6633</port6>
+        <port6>6653</port6>
 
         <ip7>OC7</ip7>
-        <port7>6633</port7>
+        <port7>6653</port7>
 
     </CTRL>
 
diff --git a/TestON/tests/SCPFintentRerouteLat/SCPFintentRerouteLat.params b/TestON/tests/SCPFintentRerouteLat/SCPFintentRerouteLat.params
index 896ef7f..73175d1 100644
--- a/TestON/tests/SCPFintentRerouteLat/SCPFintentRerouteLat.params
+++ b/TestON/tests/SCPFintentRerouteLat/SCPFintentRerouteLat.params
@@ -4,7 +4,7 @@
 
     <SCALE>1,3,5,7</SCALE>
     <max>7</max>
- 
+
     <ENV>
         <cellName>intentRerouteCell</cellName>
         <cellApps>drivers,null,intentperf,metrics</cellApps>
@@ -13,11 +13,11 @@
     <TEST>
         <skipCleanInstall>yes</skipCleanInstall>
         <warmUp>5</warmUp>
-        <sampleSize>20</sampleSize>                     
+        <sampleSize>20</sampleSize>
         <wait></wait>
         <intents>1,100,1000</intents>                       #list format, will be split on ','
-        <debug>True</debug>     
-       
+        <debug>True</debug>
+
         <s1>1,1,1,1,1,1,1,1</s1>
         <s3>2,2,1,1,3,3,3,1</s3>
         <s5>2,2,1,1,3,4,5,3</s5>
@@ -40,27 +40,27 @@
 
     <CTRL>
         <USER>admin</USER>
-        
+
         <ip1>OC1</ip1>
-        <port1>6633</port1>
-        
+        <port1>6653</port1>
+
         <ip2>OC2</ip2>
-        <port2>6633</port2>
-        
+        <port2>6653</port2>
+
         <ip3>OC3</ip3>
-        <port3>6633</port3>
-        
+        <port3>6653</port3>
+
         <ip4>OC4</ip4>
-        <port4>6633</port4>
-        
+        <port4>6653</port4>
+
         <ip5>OC5</ip5>
-        <port5>6633</port5>
-        
+        <port5>6653</port5>
+
         <ip6>OC6</ip6>
-        <port6>6633</port6> 
-       
+        <port6>6653</port6>
+
         <ip7>OC7</ip7>
-        <port7>6633</port7>
+        <port7>6653</port7>
 
     </CTRL>
 
diff --git a/TestON/tests/SCPFmaxIntents/SCPFmaxIntents.params b/TestON/tests/SCPFmaxIntents/SCPFmaxIntents.params
index a4231d9..7009498 100755
--- a/TestON/tests/SCPFmaxIntents/SCPFmaxIntents.params
+++ b/TestON/tests/SCPFmaxIntents/SCPFmaxIntents.params
@@ -29,7 +29,7 @@
     </GIT>
 
     <CTRL>
-        <port>6633</port>
+        <port>6653</port>
     </CTRL>
 
     <SLEEP>
diff --git a/TestON/tests/SCPFportLat/SCPFportLat.params b/TestON/tests/SCPFportLat/SCPFportLat.params
index bc3d704..f4250ca 100644
--- a/TestON/tests/SCPFportLat/SCPFportLat.params
+++ b/TestON/tests/SCPFportLat/SCPFportLat.params
@@ -38,7 +38,7 @@
         <ofpRoleReply>OF 1.3 90 of_role_reply</ofpRoleReply>
         <featureReply>OF 1.3 98 of_features_reply</featureReply>
         <roleRequest>OF 1.3 90 of_role_request</roleRequest>
-        <tcpSynAck>TCP 74 6633</tcpSynAck>
+        <tcpSynAck>TCP 74 6653</tcpSynAck>
         <finAckSequence>FIN</finAckSequence>
     </TSHARK>
 
diff --git a/TestON/tests/SCPFscaleTopo/Dependency/scaleTopoFunction.py b/TestON/tests/SCPFscaleTopo/Dependency/scaleTopoFunction.py
index 075f4f2..4965331 100644
--- a/TestON/tests/SCPFscaleTopo/Dependency/scaleTopoFunction.py
+++ b/TestON/tests/SCPFscaleTopo/Dependency/scaleTopoFunction.py
@@ -198,7 +198,7 @@
     switchList =  main.Mininet1.getSwitch()
     assignResult = main.Mininet1.assignSwController( sw=switchList,
                                                      ip=main.ONOSip[ 0 ],
-                                                     port=6633 )
+                                                     port=6653 )
 
     for sw in switchList:
         response = main.Mininet1.getSwController( sw )
diff --git a/TestON/tests/SCPFscaleTopo/SCPFscaleTopo.params b/TestON/tests/SCPFscaleTopo/SCPFscaleTopo.params
index c1a35f9..62150b3 100755
--- a/TestON/tests/SCPFscaleTopo/SCPFscaleTopo.params
+++ b/TestON/tests/SCPFscaleTopo/SCPFscaleTopo.params
@@ -28,7 +28,7 @@
     </GIT>
 
     <CTRL>
-        <port>6633</port>
+        <port>6653</port>
     </CTRL>
 
     <SLEEP>
diff --git a/TestON/tests/SCPFswitchLat/SCPFswitchLat.params b/TestON/tests/SCPFswitchLat/SCPFswitchLat.params
index ceb184e..701c034 100644
--- a/TestON/tests/SCPFswitchLat/SCPFswitchLat.params
+++ b/TestON/tests/SCPFswitchLat/SCPFswitchLat.params
@@ -19,7 +19,7 @@
         <ip1>OC1</ip1>
         <ip2>OC2</ip2>
         <ip3>OC3</ip3>
-        <ip4>OC4</ip4> 
+        <ip4>OC4</ip4>
         <ip5>OC5</ip5>
         <ip6>OC6</ip6>
         <ip7>OC7</ip7>
@@ -39,7 +39,7 @@
         <ofpRoleReply>OF 1.3 90 of_role_reply</ofpRoleReply>
         <featureReply>OF 1.3 98 of_features_reply</featureReply>
         <roleRequest>OF 1.3 90 of_role_request</roleRequest>
-        <tcpSynAck>TCP 74 6633</tcpSynAck>
+        <tcpSynAck>TCP 74 6653</tcpSynAck>
         <finAckSequence>FIN</finAckSequence>
     </TSHARK>
 
@@ -66,7 +66,7 @@
         <iterIgnore>5</iterIgnore>
 
         <singleSwThreshold>0,1000</singleSwThreshold>
-    
+
         <tabletFile>tablets_3node.json</tabletFile>
    </TEST>
 
diff --git a/TestON/tests/SDNIPfunction/Dependency/SDNIPfuntionMininet.py b/TestON/tests/SDNIPfunction/Dependency/SDNIPfuntionMininet.py
index a1554b2..2da5241 100755
--- a/TestON/tests/SDNIPfunction/Dependency/SDNIPfuntionMininet.py
+++ b/TestON/tests/SDNIPfunction/Dependency/SDNIPfuntionMininet.py
@@ -208,12 +208,12 @@
 
     sw1, sw2, sw3, sw4, sw5, sw6 = \
     net.get( 'sw1', 'sw2', 'sw3', 'sw4', 'sw5', 'sw6' )
-    sw1.cmd( 'ovs-vsctl set-controller sw1 tcp:10.128.4.52:6633' )
-    sw2.cmd( 'ovs-vsctl set-controller sw2 tcp:10.128.4.52:6633' )
-    sw3.cmd( 'ovs-vsctl set-controller sw3 tcp:10.128.4.52:6633' )
-    sw4.cmd( 'ovs-vsctl set-controller sw4 tcp:10.128.4.52:6633' )
-    sw5.cmd( 'ovs-vsctl set-controller sw5 tcp:10.128.4.52:6633' )
-    sw6.cmd( 'ovs-vsctl set-controller sw6 tcp:10.128.4.52:6633' )
+    sw1.cmd( 'ovs-vsctl set-controller sw1 tcp:10.128.4.52:6653' )
+    sw2.cmd( 'ovs-vsctl set-controller sw2 tcp:10.128.4.52:6653' )
+    sw3.cmd( 'ovs-vsctl set-controller sw3 tcp:10.128.4.52:6653' )
+    sw4.cmd( 'ovs-vsctl set-controller sw4 tcp:10.128.4.52:6653' )
+    sw5.cmd( 'ovs-vsctl set-controller sw5 tcp:10.128.4.52:6653' )
+    sw6.cmd( 'ovs-vsctl set-controller sw6 tcp:10.128.4.52:6653' )
 
 
     # Set up sw100 as a learning
diff --git a/TestON/tests/SDNIPfunction/SDNIPfunction.params b/TestON/tests/SDNIPfunction/SDNIPfunction.params
index 44c1cb2..a50d461 100644
--- a/TestON/tests/SDNIPfunction/SDNIPfunction.params
+++ b/TestON/tests/SDNIPfunction/SDNIPfunction.params
@@ -10,7 +10,7 @@
     <CTRL>
         <numCtrl>1</numCtrl>
         <ip1>10.128.4.52</ip1>
-        <port1>6633</port1>
+        <port1>6653</port1>
     </CTRL>
 
     <GIT>
diff --git a/TestON/tests/SDNIPperf/Dependency/SDNIPperfMininet.py b/TestON/tests/SDNIPperf/Dependency/SDNIPperfMininet.py
index 4971bd9..0784c2a 100755
--- a/TestON/tests/SDNIPperf/Dependency/SDNIPperfMininet.py
+++ b/TestON/tests/SDNIPperf/Dependency/SDNIPperfMininet.py
@@ -195,12 +195,12 @@
 
 
     sw1, sw2, sw3, sw4, sw5, sw6 = net.get( 'sw1', 'sw2', 'sw3', 'sw4', 'sw5', 'sw6' )
-    sw1.cmd( 'ovs-vsctl set-controller sw1 tcp:10.254.1.201:6633' )
-    sw2.cmd( 'ovs-vsctl set-controller sw2 tcp:10.254.1.201:6633' )
-    sw3.cmd( 'ovs-vsctl set-controller sw3 tcp:10.254.1.201:6633' )
-    sw4.cmd( 'ovs-vsctl set-controller sw4 tcp:10.254.1.201:6633' )
-    sw5.cmd( 'ovs-vsctl set-controller sw5 tcp:10.254.1.201:6633' )
-    sw6.cmd( 'ovs-vsctl set-controller sw6 tcp:10.254.1.201:6633' )
+    sw1.cmd( 'ovs-vsctl set-controller sw1 tcp:10.254.1.201:6653' )
+    sw2.cmd( 'ovs-vsctl set-controller sw2 tcp:10.254.1.201:6653' )
+    sw3.cmd( 'ovs-vsctl set-controller sw3 tcp:10.254.1.201:6653' )
+    sw4.cmd( 'ovs-vsctl set-controller sw4 tcp:10.254.1.201:6653' )
+    sw5.cmd( 'ovs-vsctl set-controller sw5 tcp:10.254.1.201:6653' )
+    sw6.cmd( 'ovs-vsctl set-controller sw6 tcp:10.254.1.201:6653' )
 
     # Set up sw100 as a learning
     sw100 = net.get( 'sw100' )
diff --git a/TestON/tests/SDNIPperf/SDNIPperf.params b/TestON/tests/SDNIPperf/SDNIPperf.params
index b3c8f7a..a7c774d 100644
--- a/TestON/tests/SDNIPperf/SDNIPperf.params
+++ b/TestON/tests/SDNIPperf/SDNIPperf.params
@@ -9,7 +9,7 @@
     <CTRL>
         <numCtrl>1</numCtrl>
         <ip1>10.254.1.201</ip1>
-        <port1>6633</port1>
+        <port1>6653</port1>
     </CTRL>
 
     <GIT>
diff --git a/TestON/tests/USECASE_SdnipI2/Dependency/USECASE_SdnipI2MN.py b/TestON/tests/USECASE_SdnipI2/Dependency/USECASE_SdnipI2MN.py
index 28d4725..d2d7eca 100755
--- a/TestON/tests/USECASE_SdnipI2/Dependency/USECASE_SdnipI2MN.py
+++ b/TestON/tests/USECASE_SdnipI2/Dependency/USECASE_SdnipI2MN.py
@@ -338,7 +338,7 @@
     # connect all switches to controller
     for i in range ( 1, numSw + 1 ):
         swX = net.get( 'sw%s' % ( i ) )
-        swX.cmd( 'ovs-vsctl set-controller sw%s tcp:%s:6633' % ( i, onos1IP ) )
+        swX.cmd( 'ovs-vsctl set-controller sw%s tcp:%s:6653' % ( i, onos1IP ) )
 
     # Start Quagga on border routers
     '''
diff --git a/TestON/tests/USECASE_SdnipI2/USECASE_SdnipI2.params b/TestON/tests/USECASE_SdnipI2/USECASE_SdnipI2.params
index b13806a..e94f1c3 100644
--- a/TestON/tests/USECASE_SdnipI2/USECASE_SdnipI2.params
+++ b/TestON/tests/USECASE_SdnipI2/USECASE_SdnipI2.params
@@ -10,7 +10,7 @@
     <CTRL>
         <numCtrl>1</numCtrl>
         <ip1>10.128.4.52</ip1>
-        <port1>6633</port1>
+        <port1>6653</port1>
     </CTRL>
 
     <GIT>
