diff --git a/drivers/default/src/main/java/org/onosproject/driver/query/FullVlanAvailable.java b/drivers/default/src/main/java/org/onosproject/driver/query/FullVlanAvailable.java
index 2bd1455..be6d5d5 100644
--- a/drivers/default/src/main/java/org/onosproject/driver/query/FullVlanAvailable.java
+++ b/drivers/default/src/main/java/org/onosproject/driver/query/FullVlanAvailable.java
@@ -18,6 +18,7 @@
 import java.util.Set;
 import java.util.stream.IntStream;
 
+import com.google.common.collect.ImmutableSet;
 import org.onlab.packet.VlanId;
 import org.onlab.util.GuavaCollectors;
 import org.onosproject.net.PortNumber;
@@ -36,6 +37,9 @@
 
     private static final int MAX_VLAN_ID = VlanId.MAX_VLAN;
     private static final Set<VlanId> ENTIRE_VLAN = getEntireVlans();
+    private static final Set<Integer> EXCLUDED = ImmutableSet.of(
+            (int) VlanId.NO_VID,
+            (int) VlanId.RESERVED);
 
     @Override
     public Set<VlanId> queryVlanIds(PortNumber port) {
@@ -44,6 +48,7 @@
 
     private static Set<VlanId> getEntireVlans() {
         return IntStream.range(0, MAX_VLAN_ID)
+                .filter(x -> !EXCLUDED.contains(x))
                 .mapToObj(x -> VlanId.vlanId((short) x))
                 .collect(GuavaCollectors.toImmutableSet());
     }
diff --git a/utils/misc/src/main/java/org/onlab/packet/VlanId.java b/utils/misc/src/main/java/org/onlab/packet/VlanId.java
index 92d8a59..682203c 100644
--- a/utils/misc/src/main/java/org/onlab/packet/VlanId.java
+++ b/utils/misc/src/main/java/org/onlab/packet/VlanId.java
@@ -29,6 +29,9 @@
     // required.
     public static final short ANY_VALUE = (short) 0x1000;
 
+    public static final short NO_VID = 0;       // 0 is not used for VLAN ID
+    public static final short RESERVED = 4095;  // represents all tagged traffic
+
     public static final VlanId NONE = VlanId.vlanId(UNTAGGED);
     public static final VlanId ANY = VlanId.vlanId(ANY_VALUE);
 
