diff --git a/apps/openstacknetworking/api/src/main/java/org/onosproject/openstacknetworking/api/Constants.java b/apps/openstacknetworking/api/src/main/java/org/onosproject/openstacknetworking/api/Constants.java
index 6635559..f85d914 100644
--- a/apps/openstacknetworking/api/src/main/java/org/onosproject/openstacknetworking/api/Constants.java
+++ b/apps/openstacknetworking/api/src/main/java/org/onosproject/openstacknetworking/api/Constants.java
@@ -60,7 +60,10 @@
     public static final int PRIORITY_EXTERNAL_FLOATING_ROUTING_RULE = 27000;
     public static final int PRIORITY_SNAT_RULE = 26000;
     public static final int PRIORITY_SWITCHING_RULE = 30000;
-    public static final int PRIORITY_FLAT_RULE = 41000;
+    public static final int PRIORITY_FLAT_JUMP_UPSTREAM_RULE = 41000;
+    public static final int PRIORITY_FLAT_JUMP_DOWNSTREAM_RULE = 41000;
+    public static final int PRIORITY_FLAT_UPSTREAM_RULE = 41000;
+    public static final int PRIORITY_FLAT_DOWNSTREAM_RULE = 42000;
     public static final int PRIORITY_DHCP_RULE = 42000;
     public static final int PRIORITY_ADMIN_RULE = 32000;
     public static final int PRIORITY_ACL_RULE = 31000;
diff --git a/apps/openstacknetworking/app/src/main/java/org/onosproject/openstacknetworking/impl/OpenstackSwitchingHandler.java b/apps/openstacknetworking/app/src/main/java/org/onosproject/openstacknetworking/impl/OpenstackSwitchingHandler.java
index 4fb03a2..4869101 100644
--- a/apps/openstacknetworking/app/src/main/java/org/onosproject/openstacknetworking/impl/OpenstackSwitchingHandler.java
+++ b/apps/openstacknetworking/app/src/main/java/org/onosproject/openstacknetworking/impl/OpenstackSwitchingHandler.java
@@ -61,7 +61,10 @@
 import static org.onosproject.openstacknetworking.api.Constants.FORWARDING_TABLE;
 import static org.onosproject.openstacknetworking.api.Constants.OPENSTACK_NETWORKING_APP_ID;
 import static org.onosproject.openstacknetworking.api.Constants.PRIORITY_ADMIN_RULE;
-import static org.onosproject.openstacknetworking.api.Constants.PRIORITY_FLAT_RULE;
+import static org.onosproject.openstacknetworking.api.Constants.PRIORITY_FLAT_DOWNSTREAM_RULE;
+import static org.onosproject.openstacknetworking.api.Constants.PRIORITY_FLAT_JUMP_DOWNSTREAM_RULE;
+import static org.onosproject.openstacknetworking.api.Constants.PRIORITY_FLAT_JUMP_UPSTREAM_RULE;
+import static org.onosproject.openstacknetworking.api.Constants.PRIORITY_FLAT_UPSTREAM_RULE;
 import static org.onosproject.openstacknetworking.api.Constants.PRIORITY_SWITCHING_RULE;
 import static org.onosproject.openstacknetworking.api.Constants.PRIORITY_TUNNEL_TAG_RULE;
 import static org.onosproject.openstacknetworking.api.Constants.VTAG_TABLE;
@@ -170,7 +173,7 @@
                 port.deviceId(),
                 selector.build(),
                 treatment.build(),
-                PRIORITY_FLAT_RULE,
+                PRIORITY_FLAT_JUMP_UPSTREAM_RULE,
                 DHCP_ARP_TABLE,
                 install);
 
@@ -180,7 +183,6 @@
             log.warn("The network does not exist");
             return;
         }
-
         PortNumber portNumber = osNodeService.node(port.deviceId())
                 .phyIntfPortNum(network.getProviderPhyNet());
 
@@ -190,14 +192,30 @@
         }
 
         selector = DefaultTrafficSelector.builder();
-        selector.matchInPort(portNumber);
+        selector.matchInPort(portNumber)
+                .matchEthType(Ethernet.TYPE_IPV4)
+                .matchIPDst(port.ipAddress().toIpPrefix());
 
         osFlowRuleService.setRule(
                 appId,
                 port.deviceId(),
                 selector.build(),
                 treatment.build(),
-                PRIORITY_FLAT_RULE,
+                PRIORITY_FLAT_JUMP_DOWNSTREAM_RULE,
+                DHCP_ARP_TABLE,
+                install);
+
+        selector = DefaultTrafficSelector.builder();
+        selector.matchInPort(portNumber)
+                .matchEthType(Ethernet.TYPE_ARP)
+                .matchArpTpa(port.ipAddress().getIp4Address());
+
+        osFlowRuleService.setRule(
+                appId,
+                port.deviceId(),
+                selector.build(),
+                treatment.build(),
+                PRIORITY_FLAT_JUMP_DOWNSTREAM_RULE,
                 DHCP_ARP_TABLE,
                 install);
     }
@@ -216,7 +234,7 @@
                 instPort.deviceId(),
                 selector,
                 treatment,
-                PRIORITY_FLAT_RULE,
+                PRIORITY_FLAT_DOWNSTREAM_RULE,
                 FLAT_TABLE,
                 install);
 
@@ -230,7 +248,7 @@
                 instPort.deviceId(),
                 selector,
                 treatment,
-                PRIORITY_FLAT_RULE,
+                PRIORITY_FLAT_DOWNSTREAM_RULE,
                 FLAT_TABLE,
                 install);
     }
@@ -264,7 +282,7 @@
                 instPort.deviceId(),
                 selector,
                 treatment,
-                PRIORITY_FLAT_RULE,
+                PRIORITY_FLAT_UPSTREAM_RULE,
                 FLAT_TABLE,
                 install);
     }
