diff --git a/src/main/java/org/opencord/cordvtn/api/net/ServiceNetwork.java b/src/main/java/org/opencord/cordvtn/api/net/ServiceNetwork.java
index cbdde5f..6b26daf 100644
--- a/src/main/java/org/opencord/cordvtn/api/net/ServiceNetwork.java
+++ b/src/main/java/org/opencord/cordvtn/api/net/ServiceNetwork.java
@@ -22,6 +22,7 @@
 import java.util.Set;
 
 import static com.google.common.base.Preconditions.checkNotNull;
+import static org.opencord.cordvtn.api.dependency.Dependency.Type.BIDIRECTIONAL;
 
 /**
  * Representation of a service network which holds service specific information,
@@ -91,6 +92,19 @@
                 .findAny().isPresent();
     }
 
+    /**
+     * Returns if the given network is the provider of this network with
+     * bidirectional access type.
+     *
+     * @param netId network id
+     * @return true if the given network is a bidrectional provider
+     */
+    public boolean isBidirectionalProvider(NetworkId netId) {
+        return providers.stream().filter(p -> Objects.equals(p.id(), netId))
+                .filter(p -> p.type() == BIDIRECTIONAL)
+                .findAny().isPresent();
+    }
+
     @Override
     public boolean equals(Object obj) {
         if (this == obj) {
