diff --git a/VERSION b/VERSION
index 0e80d41..1c1ea95 100644
--- a/VERSION
+++ b/VERSION
@@ -1 +1 @@
-2.3.14
+2.3.15_dev
diff --git a/pyvoltha/common/openflow/utils.py b/pyvoltha/common/openflow/utils.py
index 747ca0b..bf9c48e 100644
--- a/pyvoltha/common/openflow/utils.py
+++ b/pyvoltha/common/openflow/utils.py
@@ -319,6 +319,15 @@
 
 # frequently used extractors:
 
+def get_metadata_from_write_metadata(flow):
+    for instruction in flow.instructions:
+        if instruction.type == ofp.OFPIT_WRITE_METADATA:
+            return instruction.write_metadata.metadata
+    return None
+
+def get_tp_id_from_metadata(write_metadata_value):
+    return (write_metadata_value >> 32) & 0xffff
+
 def get_actions(flow):
     """Extract list of ofp_action objects from flow spec object"""
     assert isinstance(flow, ofp.ofp_flow_stats)
@@ -327,6 +336,11 @@
         if instruction.type == ofp.OFPIT_APPLY_ACTIONS:
             return instruction.actions.actions
 
+def get_default_vlan(flow):
+    for field in get_ofb_fields(flow):
+        if field.type == VLAN_VID:
+            return field.vlan_vid & 0xfff
+    return 0
 
 def get_ofb_fields(flow):
     assert isinstance(flow, ofp.ofp_flow_stats)
