Search in sources :

Example 61 with OpenstackNode

use of org.onosproject.openstacknode.api.OpenstackNode in project onos by opennetworkinglab.

the class OpenstackRecoverPortsCommand method doExecute.

@Override
protected void doExecute() {
    OvsdbController controller = get(OvsdbController.class);
    OpenstackNodeService nodeService = get(OpenstackNodeService.class);
    OpenstackNetworkService networkService = get(OpenstackNetworkService.class);
    DeviceService deviceService = get(DeviceService.class);
    if (isAll) {
        hostnames = nodeService.completeNodes().stream().map(OpenstackNode::hostname).toArray(String[]::new);
    }
    if (hostnames == null) {
        print("Please specify one of hostname or --all options.");
        return;
    }
    for (String hostname : hostnames) {
        networkService.ports().forEach(p -> {
            if (hostname.equals(p.getHostId())) {
                OpenstackNode osNode = nodeService.node(p.getHostId());
                if (osNode != null) {
                    Set<String> recoveredPortNames = recoverOvsPort(controller, OVS_DB_PORT, osNode, p, deviceService.getPorts(osNode.intgBridge()));
                    recoveredPortNames.forEach(pn -> print(pn + " is recovered!"));
                }
            }
        });
    }
}
Also used : OpenstackNodeService(org.onosproject.openstacknode.api.OpenstackNodeService) OpenstackNetworkService(org.onosproject.openstacknetworking.api.OpenstackNetworkService) DeviceService(org.onosproject.net.device.DeviceService) OvsdbController(org.onosproject.ovsdb.controller.OvsdbController) OpenstackNode(org.onosproject.openstacknode.api.OpenstackNode)

Example 62 with OpenstackNode

use of org.onosproject.openstacknode.api.OpenstackNode in project onos by opennetworkinglab.

the class OpenstackRecoverPortsCommand method recoverOvsPort.

/**
 * Recovers the openvswitch port from conf.db corruption.
 *
 * @param controller    ovsdb controller
 * @param ovsdbPort     ovsdb port number
 * @param node          openstack node
 * @param osPort        an openstack port
 * @param ovsPorts      set of openvswitch ports
 *
 * @return a set of recovered port name
 */
private Set<String> recoverOvsPort(OvsdbController controller, int ovsdbPort, OpenstackNode node, Port osPort, List<org.onosproject.net.Port> ovsPorts) {
    OvsdbClientService client = getOvsdbClient(node, ovsdbPort, controller);
    if (client == null) {
        return ImmutableSet.of();
    }
    Set<String> portNames = ovsPorts.stream().filter(ovsPort -> ovsPort.annotations() != null || ovsPort.annotations().keys().contains(PORT_NAME)).map(ovsPort -> ovsPort.annotations().value(PORT_NAME)).collect(Collectors.toSet());
    String tapPort = ifaceNameFromOsPortId(osPort.getId());
    Set<String> recoveredPortNames = Sets.newConcurrentHashSet();
    if (!portNames.contains(tapPort)) {
        Map<String, String> extIdMap = ImmutableMap.of(ATTACHED_MAC, osPort.getMacAddress(), IFACE_ID, osPort.getId(), IFACE_STATUS, StringUtils.lowerCase(osPort.getState().name()), VM_ID, osPort.getDeviceId());
        OvsdbInterface ovsIface = OvsdbInterface.builder().name(tapPort).options(ImmutableMap.of()).data(ImmutableMap.of(EXTERNALIDS, extIdMap)).build();
        client.createInterface(INTEGRATION_BRIDGE, ovsIface);
        recoveredPortNames.add(tapPort);
    }
    return ImmutableSet.copyOf(recoveredPortNames);
}
Also used : EXTERNALIDS(org.onosproject.ovsdb.rfc.table.Interface.InterfaceColumn.EXTERNALIDS) OpenstackNode(org.onosproject.openstacknode.api.OpenstackNode) DeviceService(org.onosproject.net.device.DeviceService) INTEGRATION_BRIDGE(org.onosproject.openstacknode.api.Constants.INTEGRATION_BRIDGE) StringUtils(org.apache.commons.lang3.StringUtils) Command(org.apache.karaf.shell.api.action.Command) OpenstackNetworkService(org.onosproject.openstacknetworking.api.OpenstackNetworkService) OvsdbController(org.onosproject.ovsdb.controller.OvsdbController) Map(java.util.Map) OvsdbInterface(org.onosproject.ovsdb.controller.OvsdbInterface) OpenstackNetworkingUtil.ifaceNameFromOsPortId(org.onosproject.openstacknetworking.util.OpenstackNetworkingUtil.ifaceNameFromOsPortId) Port(org.openstack4j.model.network.Port) OpenstackNodeService(org.onosproject.openstacknode.api.OpenstackNodeService) ImmutableSet(com.google.common.collect.ImmutableSet) OpenstackNetworkingUtil.getOvsdbClient(org.onosproject.openstacknetworking.util.OpenstackNetworkingUtil.getOvsdbClient) ImmutableMap(com.google.common.collect.ImmutableMap) Set(java.util.Set) Argument(org.apache.karaf.shell.api.action.Argument) Collectors(java.util.stream.Collectors) Sets(com.google.common.collect.Sets) AbstractShellCommand(org.onosproject.cli.AbstractShellCommand) List(java.util.List) Service(org.apache.karaf.shell.api.action.lifecycle.Service) Completion(org.apache.karaf.shell.api.action.Completion) OvsdbClientService(org.onosproject.ovsdb.controller.OvsdbClientService) Option(org.apache.karaf.shell.api.action.Option) OvsdbInterface(org.onosproject.ovsdb.controller.OvsdbInterface) OvsdbClientService(org.onosproject.ovsdb.controller.OvsdbClientService)

Example 63 with OpenstackNode

use of org.onosproject.openstacknode.api.OpenstackNode in project onos by opennetworkinglab.

the class OpenstackRoutingSnatHandler method setStatelessSnatDownstreamRules.

private void setStatelessSnatDownstreamRules(InstancePort srcInstPort, String segmentId, Type networkType, IpAddress externalIp, ExternalPeerRouter externalPeerRouter, TpPort patPort, InboundPacket packetIn) {
    IPv4 iPacket = (IPv4) packetIn.parsed().getPayload();
    IpAddress internalIp = IpAddress.valueOf(iPacket.getSourceAddress());
    TrafficSelector.Builder sBuilder = DefaultTrafficSelector.builder().matchEthType(Ethernet.TYPE_IPV4).matchIPProtocol(iPacket.getProtocol()).matchIPDst(IpPrefix.valueOf(externalIp.getIp4Address(), VM_PREFIX)).matchIPSrc(IpPrefix.valueOf(iPacket.getDestinationAddress(), VM_PREFIX));
    TrafficTreatment.Builder tBuilder = DefaultTrafficTreatment.builder().setEthDst(packetIn.parsed().getSourceMAC()).setIpDst(internalIp);
    if (!externalPeerRouter.vlanId().equals(VlanId.NONE)) {
        sBuilder.matchVlanId(externalPeerRouter.vlanId());
        tBuilder.popVlan();
    }
    switch(networkType) {
        case VXLAN:
        case GRE:
        case GENEVE:
            tBuilder.setTunnelId(Long.parseLong(segmentId));
            break;
        case VLAN:
            tBuilder.pushVlan().setVlanId(VlanId.vlanId(segmentId));
            break;
        default:
            final String error = String.format("%s %s", ERR_UNSUPPORTED_NET_TYPE, networkType.toString());
            throw new IllegalStateException(error);
    }
    switch(iPacket.getProtocol()) {
        case IPv4.PROTOCOL_TCP:
            TCP tcpPacket = (TCP) iPacket.getPayload();
            sBuilder.matchTcpSrc(TpPort.tpPort(tcpPacket.getDestinationPort())).matchTcpDst(patPort);
            tBuilder.setTcpDst(TpPort.tpPort(tcpPacket.getSourcePort()));
            break;
        case IPv4.PROTOCOL_UDP:
            UDP udpPacket = (UDP) iPacket.getPayload();
            sBuilder.matchUdpSrc(TpPort.tpPort(udpPacket.getDestinationPort())).matchUdpDst(patPort);
            tBuilder.setUdpDst(TpPort.tpPort(udpPacket.getSourcePort()));
            break;
        default:
            break;
    }
    OpenstackNode srcNode = osNodeService.node(srcInstPort.deviceId());
    osNodeService.completeNodes(GATEWAY).forEach(gNode -> {
        TrafficTreatment treatment = getDownstreamTreatment(networkType, tBuilder, gNode, srcNode);
        osFlowRuleService.setRule(appId, gNode.intgBridge(), sBuilder.build(), treatment, PRIORITY_SNAT_RULE, GW_COMMON_TABLE, true);
    });
}
Also used : TCP(org.onlab.packet.TCP) UDP(org.onlab.packet.UDP) IPv4(org.onlab.packet.IPv4) TrafficSelector(org.onosproject.net.flow.TrafficSelector) DefaultTrafficSelector(org.onosproject.net.flow.DefaultTrafficSelector) IpAddress(org.onlab.packet.IpAddress) OpenstackNode(org.onosproject.openstacknode.api.OpenstackNode) DefaultTrafficTreatment(org.onosproject.net.flow.DefaultTrafficTreatment) TrafficTreatment(org.onosproject.net.flow.TrafficTreatment)

Example 64 with OpenstackNode

use of org.onosproject.openstacknode.api.OpenstackNode in project onos by opennetworkinglab.

the class OpenstackRoutingSnatHandler method setStatefulSnatRules.

private void setStatefulSnatRules(RouterInterface routerIface, boolean install) {
    Subnet osSubnet = osNetworkAdminService.subnet(routerIface.getSubnetId());
    Network osNet = osNetworkAdminService.network(osSubnet.getNetworkId());
    Type netType = osNetworkAdminService.networkType(osSubnet.getNetworkId());
    if (netType == FLAT) {
        log.warn("FLAT typed network does not need SNAT rules");
        return;
    }
    Optional<Router> osRouter = osRouterService.routers().stream().filter(router -> routerIface.getId().equals(router.getId())).findAny();
    if (!osRouter.isPresent()) {
        log.warn("Cannot find a router attached with the given router interface {} ", routerIface);
        return;
    }
    IpAddress natAddress = externalGatewayIpSnatEnabled(osRouter.get(), osNetworkAdminService);
    if (natAddress == null) {
        log.debug("NAT address is not found");
        return;
    }
    IpAddress extRouterAddress = getGatewayIpAddress(osRouter.get());
    if (extRouterAddress == null) {
        log.warn("External router address is not found");
        return;
    }
    ExternalPeerRouter externalPeerRouter = osNetworkService.externalPeerRouter(extRouterAddress);
    if (externalPeerRouter == null) {
        log.warn("External peer router not found");
        return;
    }
    Map<OpenstackNode, PortRange> gwPortRangeMap = getAssignedPortsForGateway(ImmutableList.copyOf(osNodeService.nodes(GATEWAY)));
    osNodeService.completeNodes(GATEWAY).forEach(gwNode -> {
        if (install) {
            PortRange gwPortRange = gwPortRangeMap.get(gwNode);
            Map<String, PortRange> netPortRangeMap = getAssignedPortsForNet(getNetIdByRouterId(routerIface.getId()), gwPortRange.min(), gwPortRange.max());
            PortRange netPortRange = netPortRangeMap.get(osNet.getId());
            setStatefulSnatUpstreamRule(gwNode, natAddress, Long.parseLong(osNet.getProviderSegID()), externalPeerRouter, netPortRange.min(), netPortRange.max(), install);
        } else {
            setStatefulSnatUpstreamRule(gwNode, natAddress, Long.parseLong(osNet.getProviderSegID()), externalPeerRouter, 0, 0, install);
        }
    });
}
Also used : ConsistentMap(org.onosproject.store.service.ConsistentMap) InstancePort(org.onosproject.openstacknetworking.api.InstancePort) PortNumber(org.onosproject.net.PortNumber) DeviceService(org.onosproject.net.device.DeviceService) Constants(org.onosproject.openstacknetworking.api.Constants) InstancePortEvent(org.onosproject.openstacknetworking.api.InstancePortEvent) DriverService(org.onosproject.net.driver.DriverService) DefaultTrafficTreatment(org.onosproject.net.flow.DefaultTrafficTreatment) USE_STATEFUL_SNAT_DEFAULT(org.onosproject.openstacknetworking.impl.OsgiPropertyConstants.USE_STATEFUL_SNAT_DEFAULT) StorageService(org.onosproject.store.service.StorageService) Type(org.onosproject.openstacknetworking.api.OpenstackNetwork.Type) Map(java.util.Map) ApplicationId(org.onosproject.core.ApplicationId) KryoNamespaces(org.onosproject.store.serializers.KryoNamespaces) MastershipService(org.onosproject.mastership.MastershipService) ExternalPeerRouter(org.onosproject.openstacknetworking.api.ExternalPeerRouter) OpenstackNodeService(org.onosproject.openstacknode.api.OpenstackNodeService) Deactivate(org.osgi.service.component.annotations.Deactivate) Set(java.util.Set) PacketService(org.onosproject.net.packet.PacketService) OpenstackNetworkingUtil.externalGatewayIpSnatEnabled(org.onosproject.openstacknetworking.util.OpenstackNetworkingUtil.externalGatewayIpSnatEnabled) USE_STATEFUL_SNAT(org.onosproject.openstacknetworking.impl.OsgiPropertyConstants.USE_STATEFUL_SNAT) RulePopulatorUtil(org.onosproject.openstacknetworking.util.RulePopulatorUtil) InstancePortListener(org.onosproject.openstacknetworking.api.InstancePortListener) OPENSTACK_NETWORKING_APP_ID(org.onosproject.openstacknetworking.api.Constants.OPENSTACK_NETWORKING_APP_ID) OpenstackNetworkingUtil.externalPeerRouterFromSubnet(org.onosproject.openstacknetworking.util.OpenstackNetworkingUtil.externalPeerRouterFromSubnet) PRIORITY_EXTERNAL_ROUTING_RULE(org.onosproject.openstacknetworking.api.Constants.PRIORITY_EXTERNAL_ROUTING_RULE) DeviceId(org.onosproject.net.DeviceId) ROUTING_TABLE(org.onosproject.openstacknetworking.api.Constants.ROUTING_TABLE) Dictionary(java.util.Dictionary) Tools(org.onlab.util.Tools) OpenstackNode(org.onosproject.openstacknode.api.OpenstackNode) Network(org.openstack4j.model.network.Network) ComponentContext(org.osgi.service.component.ComponentContext) KryoNamespace(org.onlab.util.KryoNamespace) RouterInterface(org.openstack4j.model.network.RouterInterface) Component(org.osgi.service.component.annotations.Component) GW_COMMON_TABLE(org.onosproject.openstacknetworking.api.Constants.GW_COMMON_TABLE) TrafficSelector(org.onosproject.net.flow.TrafficSelector) OpenstackNetworkAdminService(org.onosproject.openstacknetworking.api.OpenstackNetworkAdminService) DEFAULT_GATEWAY_MAC(org.onosproject.openstacknetworking.api.Constants.DEFAULT_GATEWAY_MAC) DefaultTrafficSelector(org.onosproject.net.flow.DefaultTrafficSelector) Port(org.openstack4j.model.network.Port) TpPort(org.onlab.packet.TpPort) ComponentConfigService(org.onosproject.cfg.ComponentConfigService) VlanId(org.onlab.packet.VlanId) MoreObjects(com.google.common.base.MoreObjects) IPv4(org.onlab.packet.IPv4) OpenstackRouterListener(org.onosproject.openstacknetworking.api.OpenstackRouterListener) ConfigProperty(org.onosproject.cfg.ConfigProperty) LeadershipService(org.onosproject.cluster.LeadershipService) DefaultOutboundPacket(org.onosproject.net.packet.DefaultOutboundPacket) OpenstackRouterService(org.onosproject.openstacknetworking.api.OpenstackRouterService) CoreService(org.onosproject.core.CoreService) Tools.groupedThreads(org.onlab.util.Tools.groupedThreads) OpenstackNetworkListener(org.onosproject.openstacknetworking.api.OpenstackNetworkListener) TCP(org.onlab.packet.TCP) ByteBuffer(java.nio.ByteBuffer) Ethernet(org.onlab.packet.Ethernet) OpenstackNodeListener(org.onosproject.openstacknode.api.OpenstackNodeListener) VLAN(org.onosproject.openstacknetworking.api.OpenstackNetwork.Type.VLAN) OpenstackNetworkEvent(org.onosproject.openstacknetworking.api.OpenstackNetworkEvent) NodeId(org.onosproject.cluster.NodeId) Serializer(org.onosproject.store.service.Serializer) ImmutableSet(com.google.common.collect.ImmutableSet) OpenstackFlowRuleService(org.onosproject.openstacknetworking.api.OpenstackFlowRuleService) PacketProcessor(org.onosproject.net.packet.PacketProcessor) Executors.newSingleThreadExecutor(java.util.concurrent.Executors.newSingleThreadExecutor) Collectors(java.util.stream.Collectors) OpenstackNetworkingUtil.getPropertyValueAsBoolean(org.onosproject.openstacknetworking.util.OpenstackNetworkingUtil.getPropertyValueAsBoolean) Sets(com.google.common.collect.Sets) Objects(java.util.Objects) List(java.util.List) InboundPacket(org.onosproject.net.packet.InboundPacket) PRIORITY_SNAT_RULE(org.onosproject.openstacknetworking.api.Constants.PRIORITY_SNAT_RULE) FLAT(org.onosproject.openstacknetworking.api.OpenstackNetwork.Type.FLAT) PacketContext(org.onosproject.net.packet.PacketContext) Optional(java.util.Optional) ClusterService(org.onosproject.cluster.ClusterService) IpPrefix(org.onlab.packet.IpPrefix) PRIORITY_STATEFUL_SNAT_RULE(org.onosproject.openstacknetworking.api.Constants.PRIORITY_STATEFUL_SNAT_RULE) GATEWAY(org.onosproject.openstacknode.api.OpenstackNode.NodeType.GATEWAY) COMPUTE(org.onosproject.openstacknode.api.OpenstackNode.NodeType.COMPUTE) RulePopulatorUtil.buildExtension(org.onosproject.openstacknetworking.util.RulePopulatorUtil.buildExtension) OpenstackRouterEvent(org.onosproject.openstacknetworking.api.OpenstackRouterEvent) OpenstackNetworkService(org.onosproject.openstacknetworking.api.OpenstackNetworkService) OpenstackNetworkingUtil.tunnelPortNumByNetType(org.onosproject.openstacknetworking.util.OpenstackNetworkingUtil.tunnelPortNumByNetType) ImmutableList(com.google.common.collect.ImmutableList) Router(org.openstack4j.model.network.Router) IP(org.openstack4j.model.network.IP) Activate(org.osgi.service.component.annotations.Activate) ExecutorService(java.util.concurrent.ExecutorService) IpAddress(org.onlab.packet.IpAddress) TrafficTreatment(org.onosproject.net.flow.TrafficTreatment) Logger(org.slf4j.Logger) ExternalGateway(org.openstack4j.model.network.ExternalGateway) ExtensionTreatment(org.onosproject.net.flow.instructions.ExtensionTreatment) Subnet(org.openstack4j.model.network.Subnet) Maps(com.google.common.collect.Maps) UDP(org.onlab.packet.UDP) ReferenceCardinality(org.osgi.service.component.annotations.ReferenceCardinality) CT_NAT_SRC_FLAG(org.onosproject.openstacknetworking.util.RulePopulatorUtil.CT_NAT_SRC_FLAG) OpenstackNodeEvent(org.onosproject.openstacknode.api.OpenstackNodeEvent) DistributedSet(org.onosproject.store.service.DistributedSet) OpenstackNetworkingUtil.getRouterFromSubnet(org.onosproject.openstacknetworking.util.OpenstackNetworkingUtil.getRouterFromSubnet) Modified(org.osgi.service.component.annotations.Modified) LoggerFactory.getLogger(org.slf4j.LoggerFactory.getLogger) OpenstackNetworkingUtil.deriveResourceName(org.onosproject.openstacknetworking.util.OpenstackNetworkingUtil.deriveResourceName) Reference(org.osgi.service.component.annotations.Reference) InstancePortService(org.onosproject.openstacknetworking.api.InstancePortService) ExternalPeerRouter(org.onosproject.openstacknetworking.api.ExternalPeerRouter) Router(org.openstack4j.model.network.Router) OpenstackNode(org.onosproject.openstacknode.api.OpenstackNode) ExternalPeerRouter(org.onosproject.openstacknetworking.api.ExternalPeerRouter) Type(org.onosproject.openstacknetworking.api.OpenstackNetwork.Type) OpenstackNetworkingUtil.tunnelPortNumByNetType(org.onosproject.openstacknetworking.util.OpenstackNetworkingUtil.tunnelPortNumByNetType) Network(org.openstack4j.model.network.Network) IpAddress(org.onlab.packet.IpAddress) OpenstackNetworkingUtil.externalPeerRouterFromSubnet(org.onosproject.openstacknetworking.util.OpenstackNetworkingUtil.externalPeerRouterFromSubnet) Subnet(org.openstack4j.model.network.Subnet) OpenstackNetworkingUtil.getRouterFromSubnet(org.onosproject.openstacknetworking.util.OpenstackNetworkingUtil.getRouterFromSubnet)

Example 65 with OpenstackNode

use of org.onosproject.openstacknode.api.OpenstackNode in project onos by opennetworkinglab.

the class OpenstackRoutingSnatHandler method setRulesToGateway.

private void setRulesToGateway(OpenstackNode osNode, String segmentId, IpPrefix srcSubnet, Type networkType, boolean install) {
    OpenstackNode sourceNatGateway = osNodeService.completeNodes(GATEWAY).stream().findFirst().orElse(null);
    if (sourceNatGateway == null) {
        return;
    }
    TrafficSelector.Builder sBuilder = DefaultTrafficSelector.builder().matchEthType(Ethernet.TYPE_IPV4).matchIPSrc(srcSubnet.getIp4Prefix()).matchEthDst(Constants.DEFAULT_GATEWAY_MAC);
    switch(networkType) {
        case VXLAN:
        case GRE:
        case GENEVE:
            sBuilder.matchTunnelId(Long.parseLong(segmentId));
            break;
        case VLAN:
            sBuilder.matchVlanId(VlanId.vlanId(segmentId));
            break;
        default:
            final String error = String.format("%s %s", ERR_UNSUPPORTED_NET_TYPE, networkType.toString());
            throw new IllegalStateException(error);
    }
    TrafficTreatment.Builder tBuilder = DefaultTrafficTreatment.builder();
    switch(networkType) {
        case VXLAN:
        case GRE:
        case GENEVE:
            PortNumber portNum = tunnelPortNumByNetType(networkType, osNode);
            tBuilder.extension(buildExtension(deviceService, osNode.intgBridge(), sourceNatGateway.dataIp().getIp4Address()), osNode.intgBridge()).setOutput(portNum);
            break;
        case VLAN:
            tBuilder.setOutput(osNode.vlanPortNum());
            break;
        default:
            break;
    }
    osFlowRuleService.setRule(appId, osNode.intgBridge(), sBuilder.build(), tBuilder.build(), PRIORITY_EXTERNAL_ROUTING_RULE, ROUTING_TABLE, install);
}
Also used : TrafficSelector(org.onosproject.net.flow.TrafficSelector) DefaultTrafficSelector(org.onosproject.net.flow.DefaultTrafficSelector) OpenstackNode(org.onosproject.openstacknode.api.OpenstackNode) DefaultTrafficTreatment(org.onosproject.net.flow.DefaultTrafficTreatment) TrafficTreatment(org.onosproject.net.flow.TrafficTreatment) PortNumber(org.onosproject.net.PortNumber)

Aggregations

OpenstackNode (org.onosproject.openstacknode.api.OpenstackNode)76 OpenstackNodeService (org.onosproject.openstacknode.api.OpenstackNodeService)22 DefaultTrafficSelector (org.onosproject.net.flow.DefaultTrafficSelector)19 DefaultTrafficTreatment (org.onosproject.net.flow.DefaultTrafficTreatment)19 TrafficSelector (org.onosproject.net.flow.TrafficSelector)19 TrafficTreatment (org.onosproject.net.flow.TrafficTreatment)19 PortNumber (org.onosproject.net.PortNumber)14 DefaultOpenstackNode (org.onosproject.openstacknode.api.DefaultOpenstackNode)14 DeviceService (org.onosproject.net.device.DeviceService)13 Set (java.util.Set)12 Test (org.junit.Test)12 IpAddress (org.onlab.packet.IpAddress)12 ObjectNode (com.fasterxml.jackson.databind.node.ObjectNode)9 Objects (java.util.Objects)9 Optional (java.util.Optional)9 ExecutorService (java.util.concurrent.ExecutorService)9 Collectors (java.util.stream.Collectors)9 ComponentConfigService (org.onosproject.cfg.ComponentConfigService)9 Produces (javax.ws.rs.Produces)8 InstancePort (org.onosproject.openstacknetworking.api.InstancePort)7