Various fixes and addition to the Fabric
Changes:
- Punts ARP packets to the controller using fobj;
- Disables intercepts in HLP when SR app is activated;
Change-Id: Ife098994f6d3c79fd73847657df0c08d856e7246
diff --git a/apps/segmentrouting/src/main/java/org/onosproject/segmentrouting/SegmentRoutingManager.java b/apps/segmentrouting/src/main/java/org/onosproject/segmentrouting/SegmentRoutingManager.java
index 1a540ef..a09b0e4 100644
--- a/apps/segmentrouting/src/main/java/org/onosproject/segmentrouting/SegmentRoutingManager.java
+++ b/apps/segmentrouting/src/main/java/org/onosproject/segmentrouting/SegmentRoutingManager.java
@@ -51,7 +51,6 @@
import org.onosproject.net.device.DeviceEvent;
import org.onosproject.net.device.DeviceListener;
import org.onosproject.net.device.DeviceService;
-import org.onosproject.net.flow.DefaultTrafficSelector;
import org.onosproject.net.flow.TrafficSelector;
import org.onosproject.net.flow.TrafficTreatment;
import org.onosproject.net.flowobjective.FlowObjectiveService;
@@ -60,7 +59,6 @@
import org.onosproject.net.mcast.McastEvent;
import org.onosproject.net.mcast.McastListener;
import org.onosproject.net.mcast.MulticastRouteService;
-import org.onosproject.net.packet.PacketPriority;
import org.onosproject.net.topology.TopologyService;
import org.onosproject.segmentrouting.config.DeviceConfigNotFoundException;
import org.onosproject.segmentrouting.config.DeviceConfiguration;
@@ -97,7 +95,6 @@
import java.util.HashSet;
import java.util.List;
import java.util.Map;
-import java.util.Optional;
import java.util.Set;
import java.util.concurrent.ConcurrentHashMap;
import java.util.concurrent.ConcurrentLinkedQueue;
@@ -333,11 +330,13 @@
.build();
compCfgService.preSetProperty("org.onosproject.net.group.impl.GroupManager",
- "purgeOnDisconnection", "true");
+ "purgeOnDisconnection", "true");
compCfgService.preSetProperty("org.onosproject.net.flow.impl.FlowRuleManager",
- "purgeOnDisconnection", "true");
+ "purgeOnDisconnection", "true");
compCfgService.preSetProperty("org.onosproject.vrouter.Vrouter",
- "fibInstalledEnabled", "false");
+ "fibInstalledEnabled", "false");
+ compCfgService.preSetProperty("org.onosproject.provider.host.impl.HostLocationProvider",
+ "requestInterceptsEnabled", "false");
processor = new InternalPacketProcessor();
linkListener = new InternalLinkListener();
@@ -361,14 +360,6 @@
multicastRouteService.addListener(mcastListener);
cordConfigService.addListener(cordConfigListener);
- /* Request ARP packet-in.
- * Copy flag set to true since in cross-connect case we still want to
- * forward ARP packet to the flood group.
- */
- TrafficSelector.Builder selector = DefaultTrafficSelector.builder();
- selector.matchEthType(Ethernet.TYPE_ARP);
- packetService.requestPackets(selector.build(), PacketPriority.CONTROL, appId, true);
-
cfgListener.configureNetwork();
routeService.addListener(routeListener);
@@ -401,11 +392,6 @@
cfgService.unregisterConfigFactory(xConnectConfigFactory);
cfgService.unregisterConfigFactory(mcastConfigFactory);
- // Withdraw ARP packet-in
- TrafficSelector.Builder selector = DefaultTrafficSelector.builder();
- selector.matchEthType(Ethernet.TYPE_ARP);
- packetService.cancelPackets(selector.build(), PacketPriority.CONTROL, appId, Optional.empty());
-
packetService.removeProcessor(processor);
linkService.removeListener(linkListener);
deviceService.removeListener(deviceListener);