initial impl of proxy arp
Change-Id: I131667e8051e88c27f5fa020b580be57fee358ea
diff --git a/core/api/src/main/java/org/onlab/onos/net/proxyarp/ProxyArpService.java b/core/api/src/main/java/org/onlab/onos/net/proxyarp/ProxyArpService.java
new file mode 100644
index 0000000..e6fe43b
--- /dev/null
+++ b/core/api/src/main/java/org/onlab/onos/net/proxyarp/ProxyArpService.java
@@ -0,0 +1,29 @@
+package org.onlab.onos.net.proxyarp;
+
+import org.onlab.packet.Ethernet;
+import org.onlab.packet.IpPrefix;
+
+/**
+ * Service for processing arp requests on behalf of applications.
+ */
+public interface ProxyArpService {
+
+ /**
+ * Returns whether this particular ip address is known to the system.
+ *
+ * @param addr
+ * a ip address
+ * @return true if know, false otherwise
+ */
+ boolean known(IpPrefix addr);
+
+ /**
+ * Sends a reply for a given request. If the host is not known then the arp
+ * will be flooded at all edge ports.
+ *
+ * @param request
+ * an arp request
+ */
+ void reply(Ethernet request);
+
+}