diff options
Diffstat (limited to 'framework/src/onos/incubator/api/src/main/java/org/onosproject/incubator/net/virtual/VirtualNetworkProvider.java')
-rw-r--r-- | framework/src/onos/incubator/api/src/main/java/org/onosproject/incubator/net/virtual/VirtualNetworkProvider.java | 31 |
1 files changed, 31 insertions, 0 deletions
diff --git a/framework/src/onos/incubator/api/src/main/java/org/onosproject/incubator/net/virtual/VirtualNetworkProvider.java b/framework/src/onos/incubator/api/src/main/java/org/onosproject/incubator/net/virtual/VirtualNetworkProvider.java new file mode 100644 index 00000000..8e5b19a5 --- /dev/null +++ b/framework/src/onos/incubator/api/src/main/java/org/onosproject/incubator/net/virtual/VirtualNetworkProvider.java @@ -0,0 +1,31 @@ +package org.onosproject.incubator.net.virtual; + +import org.onosproject.incubator.net.tunnel.TunnelId; +import org.onosproject.net.ConnectPoint; +import org.onosproject.net.provider.Provider; + +/** + * Entity capable of providing traffic isolation constructs for use in + * implementation of virtual devices and virtual links. + */ +public interface VirtualNetworkProvider extends Provider { + + /** + * Creates a network tunnel for all traffic from the specified source + * connection point to the indicated destination connection point. + * + * @param networkId virtual network identifier + * @param src source connection point + * @param dst destination connection point + */ + TunnelId createTunnel(NetworkId networkId, ConnectPoint src, ConnectPoint dst); + + /** + * Destroys the specified network tunnel. + * + * @param networkId virtual network identifier + * @param tunnelId tunnel identifier + */ + void destroyTunnel(NetworkId networkId, TunnelId tunnelId); + +} |