Hello Antonio,
thanks for the patchset! I've tested it again in my kvm setup, it worked very well.
There are some issues remaining, I'll comment the individual patches for this. About the general stuff:
* maybe we should rename arp.{c|h} to dat.{c|h} to avoid confusion with other code in the linux kernel? * please do a checkpatch.pl --strict check on the patches, there were some warnings about too long lines and bad spaces
Cheers, Simon
On Sun, Oct 30, 2011 at 09:55:56AM +0100, Antonio Quartulli wrote:
Hello people, as most of you may already know, last summer I've been working on the B.A.T.M.A.N.-Adv GSoC project named "DAT: Distributed ARP Table". For who wants to get deeper into the details of the project there are two links:
- The GSoC proposal [1]
- The DAT wikipage on open-mesh.org [2], with status and ideas description
Just to recap: DAT is a distributes hash table meant to store ARP entries for fast lookup. In a normal scenario, whenever a node wants to communicate with another one, it first needs to issue a broadcast ARP request in order to retrieve its PHY/MAC address. In a sparse network a broadcast message could be lost several times before reaching the real destination so creating high latencies. With DAT, every ARP entries (a pair [IP addr, MAC addr]) is stored on a "computed" set of nodes, therefore in case of ARP request theses nodes can directly be contacted (in unicast) and the needed information can be quickly fetched.
Cheers, Antonio
[1] http://www.google-melange.com/gsoc/project/google/gsoc2011/ordex/4001 [2] http://www.open-mesh.org/wiki/batman-adv/DAT