Symmetric host probing

In addition, do not probe for host that is no longer in the host store.

Change-Id: I8a750239b9dbd8a913cd8b12debe318ed396fca9
diff --git a/app/src/main/java/org/onosproject/segmentrouting/SegmentRoutingManager.java b/app/src/main/java/org/onosproject/segmentrouting/SegmentRoutingManager.java
index a41c58d..3c37d80 100644
--- a/app/src/main/java/org/onosproject/segmentrouting/SegmentRoutingManager.java
+++ b/app/src/main/java/org/onosproject/segmentrouting/SegmentRoutingManager.java
@@ -239,6 +239,10 @@
             label = "Enable active probing to discover dual-homed hosts.")
     boolean activeProbing = true;
 
+    @Property(name = "symmetricProbing", boolValue = false,
+            label = "Enable only send probe on the same port number of the pair device")
+    boolean symmetricProbing = false;
+
     @Property(name = "singleHomedDown", boolValue = false,
             label = "Enable administratively taking down single-homed hosts "
                     + "when all uplinks are gone")
@@ -616,6 +620,13 @@
             log.info("{} active probing", activeProbing ? "Enabling" : "Disabling");
         }
 
+        String strSymmetricProving = Tools.get(properties, "symmetricProbing");
+        boolean expectSymmetricProbing = Boolean.parseBoolean(strSymmetricProving);
+        if (expectSymmetricProbing != symmetricProbing) {
+            symmetricProbing = expectSymmetricProbing;
+            log.info("{} symmetric probing", symmetricProbing ? "Enabling" : "Disabling");
+        }
+
         String strSingleHomedDown = Tools.get(properties, "singleHomedDown");
         boolean expectSingleHomedDown = Boolean.parseBoolean(strSingleHomedDown);
         if (expectSingleHomedDown != singleHomedDown) {