diff --git a/trellis/README.md b/trellis/README.md
index f3d0cff..c8f53d6 100644
--- a/trellis/README.md
+++ b/trellis/README.md
@@ -33,6 +33,10 @@
 ## Quagga
 Trellis needs a special FPM patch for Quagga.
 
+In order to start the quagga related daemons, you should create a user `quagga`
+and set the correct read/write permission to local state directory(`--localstatedir`)
+and configuration directory(`--sysconfdir`).
+
 ```
 git clone -b onos-1.11 https://gerrit.opencord.org/quagga
 cd quagga
diff --git a/trellis/trellis.py b/trellis/trellis.py
index dd57eb4..2e9d8bc 100755
--- a/trellis/trellis.py
+++ b/trellis/trellis.py
@@ -6,12 +6,13 @@
 from mininet.net import Mininet
 from mininet.cli import CLI
 from mininet.log import setLogLevel
-from mininet.node import RemoteController, OVSBridge, Host
+from mininet.node import RemoteController, OVSBridge, Host, OVSSwitch
 from mininet.nodelib import NAT
 from ipaddress import ip_network
 from routinglib import BgpRouter
 from routinglib import RoutedHost, RoutedHost6
 from trellislib import DhcpClient, Dhcp6Client, DhcpRelay, DhcpServer, Dhcp6Server
+from functools import partial
 
 class Trellis( Topo ):
     "Trellis basic topology"
@@ -109,7 +110,8 @@
     setLogLevel('debug')
     topo = Trellis()
 
-    net = Mininet(topo=topo, controller=None)
+    switch = partial(OVSSwitch, protocols='OpenFlow13')
+    net = Mininet(topo=topo, controller=None, switch=switch)
     net.addController(RemoteController('c0', ip='192.168.56.11'))
     net.addController(RemoteController('c1', ip='192.168.56.12'))
     net.addController(RemoteController('c2', ip='192.168.56.13'))
diff --git a/trellis/trellis_dualhome.py b/trellis/trellis_dualhome.py
index 534a26d..4d2b744 100755
--- a/trellis/trellis_dualhome.py
+++ b/trellis/trellis_dualhome.py
@@ -6,7 +6,7 @@
 from mininet.net import Mininet
 from mininet.cli import CLI
 from mininet.log import setLogLevel
-from mininet.node import RemoteController, OVSBridge, Host
+from mininet.node import RemoteController, OVSBridge, Host, OVSSwitch
 from mininet.link import TCLink
 from mininet.nodelib import NAT
 from ipaddress import ip_network
@@ -14,6 +14,7 @@
 from routinglib import RoutedHost, RoutedHost6
 from trellislib import DhcpClient, Dhcp6Client, DhcpRelay, DhcpServer, Dhcp6Server
 from trellislib import DualHomedDhcpClient
+from functools import partial
 
 class Trellis( Topo ):
     "Trellis basic topology"
@@ -177,7 +178,8 @@
     setLogLevel('debug')
     topo = Trellis()
 
-    net = Mininet(topo=topo, controller=None)
+    switch = partial(OVSSwitch, protocols='OpenFlow13')
+    net = Mininet(topo=topo, controller=None, switch=switch)
     #net.addController(RemoteController('c0', ip='192.168.56.11'))
     #net.addController(RemoteController('c1', ip='192.168.56.12'))
     #net.addController(RemoteController('c2', ip='192.168.56.13'))
diff --git a/trellis/trellis_remote_dhcp.py b/trellis/trellis_remote_dhcp.py
index 33a5974..1942dd2 100755
--- a/trellis/trellis_remote_dhcp.py
+++ b/trellis/trellis_remote_dhcp.py
@@ -6,12 +6,13 @@
 from mininet.net import Mininet
 from mininet.cli import CLI
 from mininet.log import setLogLevel
-from mininet.node import RemoteController, OVSBridge, Host
+from mininet.node import RemoteController, OVSBridge, Host, OVSSwitch
 from mininet.nodelib import NAT
 from ipaddress import ip_network
 from routinglib import BgpRouter
 from routinglib import RoutedHost
 from trellislib import DhcpClient, DhcpServer, DhcpRelay
+from functools import partial
 
 class Trellis( Topo ):
     "Trellis basic topology"
@@ -117,7 +118,8 @@
     setLogLevel('debug')
     topo = Trellis()
 
-    net = Mininet(topo=topo, controller=None)
+    switch = partial(OVSSwitch, protocols='OpenFlow13')
+    net = Mininet(topo=topo, controller=None, switch=switch)
     net.addController(RemoteController('c0', ip='192.168.56.11'))
     net.addController(RemoteController('c1', ip='192.168.56.12'))
     net.addController(RemoteController('c2', ip='192.168.56.13'))
diff --git a/trellis/trellis_vlan.py b/trellis/trellis_vlan.py
index e8caf95..0000f62 100755
--- a/trellis/trellis_vlan.py
+++ b/trellis/trellis_vlan.py
@@ -6,13 +6,14 @@
 from mininet.net import Mininet
 from mininet.cli import CLI
 from mininet.log import setLogLevel
-from mininet.node import RemoteController, OVSBridge, Host
+from mininet.node import RemoteController, OVSBridge, Host, OVSSwitch
 from mininet.nodelib import NAT
 from ipaddress import ip_network
 from routinglib import BgpRouter
 from routinglib import RoutedHost
 from trellislib import DhcpClient, DhcpServer
 from trellislib import TaggedDhcpClient, TaggedDhcpServer
+from functools import partial
 
 class Trellis( Topo ):
     "Trellis basic topology"
@@ -105,7 +106,8 @@
     setLogLevel('debug')
     topo = Trellis()
 
-    net = Mininet(topo=topo, controller=None)
+    switch = partial(OVSSwitch, protocols='OpenFlow13')
+    net = Mininet(topo=topo, controller=None, switch=switch)
     net.addController(RemoteController('c0', ip='192.168.56.11'))
     net.addController(RemoteController('c1', ip='192.168.56.12'))
     net.addController(RemoteController('c2', ip='192.168.56.13'))
