diff --git a/providers/lldp/src/main/java/org/onlab/onos/provider/lldp/impl/LinkDiscovery.java b/providers/lldp/src/main/java/org/onlab/onos/provider/lldp/impl/LinkDiscovery.java
index 4282199..3862437 100644
--- a/providers/lldp/src/main/java/org/onlab/onos/provider/lldp/impl/LinkDiscovery.java
+++ b/providers/lldp/src/main/java/org/onlab/onos/provider/lldp/impl/LinkDiscovery.java
@@ -83,6 +83,7 @@
     private final PacketService pktService;
     private final MastershipService mastershipService;
     private Timeout timeout;
+    private boolean isStopped;
 
     /**
      * Instantiates discovery manager for the given physical switch. Creates a
@@ -289,11 +290,13 @@
 
     public void stop() {
         timeout.cancel();
+        isStopped = true;
     }
 
     public void start() {
         timeout = Timer.getTimer().newTimeout(this, 0,
                                               TimeUnit.MILLISECONDS);
+        isStopped = false;
     }
 
     /**
@@ -352,4 +355,15 @@
        }
     }
 
+    public boolean containsPort(Long portNumber) {
+        if (slowPorts.contains(portNumber) || fastPorts.contains(portNumber)) {
+            return true;
+        }
+        return false;
+    }
+
+    public boolean isStopped() {
+        return isStopped;
+    }
+
 }
