diff --git a/core/api/src/main/java/org/onosproject/net/device/DeviceService.java b/core/api/src/main/java/org/onosproject/net/device/DeviceService.java
index 1cb90e8..b1ab0e6 100644
--- a/core/api/src/main/java/org/onosproject/net/device/DeviceService.java
+++ b/core/api/src/main/java/org/onosproject/net/device/DeviceService.java
@@ -39,6 +39,15 @@
     int getDeviceCount();
 
     /**
+     * Returns the number of currently available devices known to the system.
+     *
+     * @return number of available devices
+     */
+    default int getAvailableDeviceCount() {
+        return getDeviceCount();
+    }
+
+    /**
      * Returns a collection of the currently known infrastructure
      * devices.
      *
diff --git a/core/api/src/main/java/org/onosproject/net/device/DeviceServiceAdapter.java b/core/api/src/main/java/org/onosproject/net/device/DeviceServiceAdapter.java
index 9c6887c..146a93a 100644
--- a/core/api/src/main/java/org/onosproject/net/device/DeviceServiceAdapter.java
+++ b/core/api/src/main/java/org/onosproject/net/device/DeviceServiceAdapter.java
@@ -56,6 +56,11 @@
     }
 
     @Override
+    public int getAvailableDeviceCount() {
+        return 0;
+    }
+
+    @Override
     public Iterable<Device> getDevices() {
         return Collections.emptyList();
     }
diff --git a/core/api/src/main/java/org/onosproject/net/utils/ForwardingDeviceService.java b/core/api/src/main/java/org/onosproject/net/utils/ForwardingDeviceService.java
index e1f8110..60ae84e 100644
--- a/core/api/src/main/java/org/onosproject/net/utils/ForwardingDeviceService.java
+++ b/core/api/src/main/java/org/onosproject/net/utils/ForwardingDeviceService.java
@@ -63,6 +63,11 @@
     }
 
     @Override
+    public int getAvailableDeviceCount() {
+        return delegate.getAvailableDeviceCount();
+    }
+
+    @Override
     public Iterable<Device> getDevices() {
         return delegate.getDevices();
     }
diff --git a/core/net/src/main/java/org/onosproject/net/device/impl/DeviceManager.java b/core/net/src/main/java/org/onosproject/net/device/impl/DeviceManager.java
index cc80502..c0bf128 100644
--- a/core/net/src/main/java/org/onosproject/net/device/impl/DeviceManager.java
+++ b/core/net/src/main/java/org/onosproject/net/device/impl/DeviceManager.java
@@ -209,6 +209,12 @@
     }
 
     @Override
+    public int getAvailableDeviceCount() {
+        checkPermission(DEVICE_READ);
+        return store.getAvailableDeviceCount();
+    }
+
+    @Override
     public Iterable<Device> getDevices() {
         checkPermission(DEVICE_READ);
         return store.getDevices();
diff --git a/core/net/src/test/java/org/onosproject/net/device/impl/DeviceManagerTest.java b/core/net/src/test/java/org/onosproject/net/device/impl/DeviceManagerTest.java
index 941944f..84028c4 100644
--- a/core/net/src/test/java/org/onosproject/net/device/impl/DeviceManagerTest.java
+++ b/core/net/src/test/java/org/onosproject/net/device/impl/DeviceManagerTest.java
@@ -144,6 +144,7 @@
         assertNotNull("one device expected", it.next());
         assertFalse("only one device expected", it.hasNext());
         assertEquals("incorrect device count", 1, service.getDeviceCount());
+        assertEquals("incorrect available device count", 1, service.getAvailableDeviceCount());
         assertTrue("device should be available", service.isAvailable(DID1));
     }
 
@@ -165,6 +166,7 @@
         validateEvents(DEVICE_AVAILABILITY_CHANGED);
 
         assertEquals("incorrect device count", 2, service.getDeviceCount());
+        assertEquals("incorrect available device count", 2, service.getAvailableDeviceCount());
     }
 
     @Test
@@ -225,8 +227,8 @@
         assertEquals("wrong port count", 2, service.getPorts(DID1).size());
 
         Port port = service.getPort(DID1, P1);
-        assertEquals("incorrect port", P1, service.getPort(DID1, P1).number());
-        assertEquals("incorrect state", true, service.getPort(DID1, P1).isEnabled());
+        assertEquals("incorrect port", P1, port.number());
+        assertEquals("incorrect state", true, port.isEnabled());
     }
 
     @Test
@@ -234,10 +236,12 @@
         connectDevice(DID1, SW1);
         connectDevice(DID2, SW2);
         assertEquals("incorrect device count", 2, service.getDeviceCount());
+        assertEquals("incorrect available device count", 2, service.getAvailableDeviceCount());
         admin.removeDevice(DID1);
         assertNull("device should not be found", service.getDevice(DID1));
         assertNotNull("device should be found", service.getDevice(DID2));
         assertEquals("incorrect device count", 1, service.getDeviceCount());
+        assertEquals("incorrect available device count", 1, service.getAvailableDeviceCount());
 
     }
 
