Message ID | 1335689867-8017-1-git-send-email-ordex@autistici.org |
---|---|
State | Not Applicable, archived |
Headers | show |
From: Antonio Quartulli <ordex@autistici.org> Date: Sun, 29 Apr 2012 10:57:38 +0200 > In case of an ARP message going in or out the soft_iface, it is intercepted and > a special action is performed. In particular the DHT helper functions previously > implemented are used to store all the ARP entries belonging to the network in > order to provide a fast and unicast lookup instead of the classic broadcast > flooding mechanism. > Each node stores the entries it is responsible for (following the DHT rules) in > its soft_iface ARP table. This makes it possible to reuse the kernel data > structures and functions for ARP management. > > Signed-off-by: Antonio Quartulli <ordex@autistici.org> Sorry, I'm not letting subsystems outside of net/ipv4/arp.c and related code make changes to the ARP table. I plan to make major surgery to the way neighbour table entries are handled and therefore the less people who get their grubby paws directly in there, the better. Find a way to propagate the ARP packet into the properl ARP receive path to cause the state update to occur, I'm not letting you trigger it by hand in the batman-adv code. Sorry.
On Mon, Apr 30, 2012 at 01:05:55 -0400, David Miller wrote: > From: Antonio Quartulli <ordex@autistici.org> > Date: Sun, 29 Apr 2012 10:57:38 +0200 > > > In case of an ARP message going in or out the soft_iface, it is intercepted and > > a special action is performed. In particular the DHT helper functions previously > > implemented are used to store all the ARP entries belonging to the network in > > order to provide a fast and unicast lookup instead of the classic broadcast > > flooding mechanism. > > Each node stores the entries it is responsible for (following the DHT rules) in > > its soft_iface ARP table. This makes it possible to reuse the kernel data > > structures and functions for ARP management. > > > > Signed-off-by: Antonio Quartulli <ordex@autistici.org> > > Sorry, I'm not letting subsystems outside of net/ipv4/arp.c and related > code make changes to the ARP table. > > I plan to make major surgery to the way neighbour table entries are > handled and therefore the less people who get their grubby paws > directly in there, the better. > > Find a way to propagate the ARP packet into the properl ARP receive > path to cause the state update to occur, I'm not letting you trigger > it by hand in the batman-adv code. > > Sorry. Hello David, I perfectly understand. We did it that way because we thought that we could use the exported API. At this point, in my honest opinion, it is better to postpone this new feature for a later pull request. However this patch also contains a procedure which queries the neigh table in order to understand whether a given host is known or not. Would it be possible to do that in another way (Without manually touching the table)? Instead, in the next patch (patch 06/15) batman-adv manually increase the neigh timeouts. Do you think we should avoid doing that as well? If we are allowed to do that, how can we perform the same operation in a cleaner way? Last question: why can't other modules use exported functions? Are you going to change them as well? Thank you very much,
From: Antonio Quartulli <ordex@autistici.org> Date: Tue, 1 May 2012 00:22:30 +0200 > However this patch also contains a procedure which queries the neigh table in > order to understand whether a given host is known or not. > Would it be possible to do that in another way (Without manually touching the > table)? > > Instead, in the next patch (patch 06/15) batman-adv manually increase the neigh > timeouts. Do you think we should avoid doing that as well? If we are allowed to > do that, how can we perform the same operation in a cleaner way? > > Last question: why can't other modules use exported functions? Are you going to > change them as well? I really don't have time to discuss your neigh issues right now as I'm busy speaking at conferences and dealing with the backlog of other patches. You'll need to find someone else to discuss it with you, sorry.
David, On Tuesday, May 01, 2012 08:59:04 David Miller wrote: > From: Antonio Quartulli <ordex@autistici.org> > Date: Tue, 1 May 2012 00:22:30 +0200 > > > However this patch also contains a procedure which queries the neigh > > table in order to understand whether a given host is known or not. > > Would it be possible to do that in another way (Without manually touching > > the table)? > > > > Instead, in the next patch (patch 06/15) batman-adv manually increase the > > neigh timeouts. Do you think we should avoid doing that as well? If we > > are allowed to do that, how can we perform the same operation in a > > cleaner way? > > > > Last question: why can't other modules use exported functions? Are you > > going to change them as well? > > I really don't have time to discuss your neigh issues right now as I'm > busy speaking at conferences and dealing with the backlog of other > patches. > > You'll need to find someone else to discuss it with you, sorry. I hope now is a good moment to bring the questions back onto the table. We still are not sure how to proceed because we have no clear picture of what is going to come and how the exported functions are supposed to be used. David, if you don't have the time to discuss the ARP handling with us could you name someone who knows your plans and the code equally well ? So far, nobody has stepped up. Thanks, Marek