diff --git a/delflow.sh b/delflow.sh
new file mode 100755
index 0000000..f9ec506
--- /dev/null
+++ b/delflow.sh
@@ -0,0 +1,17 @@
+#! /bin/bash
+controller=""
+switches=`ifconfig -a | grep sw |grep -v eth | awk '{print $1}'`
+
+function host2ip (){
+   ip=`grep $1 /etc/hosts |grep -v "ip6"|  awk '{print $1}'`
+   echo $ip
+}
+
+url=""
+for c in $controller; do
+  url="$url tcp:`host2ip $c`:6633"
+done
+echo $url
+for s in $switches; do
+    sudo ovs-ofctl  del-flows  $s
+done
diff --git a/showflow.sh b/showflow.sh
new file mode 100755
index 0000000..757c69d
--- /dev/null
+++ b/showflow.sh
@@ -0,0 +1,17 @@
+#! /bin/bash
+controller=""
+switches=`ifconfig -a | grep sw |grep -v eth | awk '{print $1}'`
+
+function host2ip (){
+   ip=`grep $1 /etc/hosts |grep -v "ip6"|  awk '{print $1}'`
+   echo $ip
+}
+
+url=""
+for c in $controller; do
+  url="$url tcp:`host2ip $c`:6633"
+done
+echo $url
+for s in $switches; do
+    sudo ovs-ofctl  dump-flows  $s
+done
diff --git a/testbed-ctrl-add-ext.sh b/testbed-ctrl-add-ext.sh
new file mode 100755
index 0000000..110eeff
--- /dev/null
+++ b/testbed-ctrl-add-ext.sh
@@ -0,0 +1,18 @@
+#! /bin/bash
+controller="10.128.4.12 10.128.4.13 10.128.4.14 10.128.4.15 10.128.4.16"
+switches=`ifconfig -a | grep "^s" |grep -v eth | awk '{print $1}'`
+
+function host2ip (){
+   ip=`grep $1 /etc/hosts |grep -v "ip6"|  awk '{print $1}'`
+   echo $ip
+}
+
+url=""
+for c in $controller; do
+  url="$url tcp:$c:6633"
+done
+echo $url
+for s in $switches; do
+    echo "set switch $s controller $url"
+    sudo ovs-vsctl set-controller $s $url
+done
diff --git a/testbed-ctrl-none.sh b/testbed-ctrl-none.sh
new file mode 100755
index 0000000..e09835b
--- /dev/null
+++ b/testbed-ctrl-none.sh
@@ -0,0 +1,18 @@
+#! /bin/bash
+controller=""
+switches=`ifconfig -a | grep "^s" |grep -v eth | awk '{print $1}'`
+
+function host2ip (){
+   ip=`grep $1 /etc/hosts |grep -v "ip6"|  awk '{print $1}'`
+   echo $ip
+}
+
+url=""
+for c in $controller; do
+  url="$url tcp:`host2ip $c`:6633"
+done
+echo $url
+for s in $switches; do
+    echo "set switch $s controller $url"
+    sudo ovs-vsctl set-controller $s $url
+done
diff --git a/web/js/onos-topology.js b/web/js/onos-topology.js
index 062d37b..6905c3a 100644
--- a/web/js/onos-topology.js
+++ b/web/js/onos-topology.js
@@ -1,6 +1,6 @@
 function gui(data_source){
-    var width = 960,
-    height = 500;
+    var width = 1280,
+    height = 1280;
     var radius = 8;
     var color = d3.scale.category20();
 
diff --git a/web/topology_rest.py b/web/topology_rest.py
index b109ccc..105c141 100755
--- a/web/topology_rest.py
+++ b/web/topology_rest.py
@@ -14,7 +14,7 @@
 RestIP="localhost"
 RestPort=8080
 #DBName="onos-network-map"
-controllers=["onos9vpc", "onos10vpc", "onos11vpc", "onos12vpc"]
+controllers=["onosgui1", "onosgui2", "onosgui3", "onosgui4"]
 
 DEBUG=1
 pp = pprint.PrettyPrinter(indent=4)
@@ -563,7 +563,7 @@
     onos=os.popen(onos_check % i).read()[:-1]
     status["name"]=i
     status["onos"]=onos
-    status["cassandra"]=1
+    status["cassandra"]=0
     cont_status.append(status)
 
   js = json.dumps(cont_status)
