Re: Did arp daemon project ceased or has kernel now have a large arp cache?

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Lucas Brasilino wrote:

Kernel 2.4.27... planning upgrade to 2.6

I need to run an arp daemon since I'm getting
"Neighbour table overflow".
To get rid of this message, I've modified gc
behaviour by increasing minimun, soft maximum and hard
maximum (gc_tresh1, gc_tresh2 and gc_tresh3) to
10240, 20480 and 40960 respectively which I think
it not appropriate.
The CONFIG_ARPD kernel's option has this warning:

" This code is experimental and also obsolete. If you want to use it,
you need to find a version of the daemon arpd on the net somewhere.... "

Googling around I've found something about arpx project from Dana
Lacoste but his (or her :) ) project page is off-line and unreacheble.

The "obsolete" status means arp daemon kernel's support will be dropped ? Does the kernel now support large cache (quite more than only 256 entries) ? Is there another arp daemon instead of Dana's one?

thanks in advance

You don't need CONFIG_ARPD anymore really, becuase you can make the kernels arp table a surrogate of a userspace arp daemon via netlink sockets. Its sort of a multi-level cache setup, in which the kernels arp table is an L1 cache and the userspace daemon is the L2 cache. Via the NETLINK_ROUTE protocol you can snoop all the neighbour table updates that go on in the kernel and place that information in a userspace cache of whatever size you like. Then you can configure the kernel to ask your application (again via the NETLINK_ROUTE protocol) to provide it with those cached addresses before it goes to solicit them from the network again. This configuration is done using the /proc/sys/net/ipv4/neigh/<ifname|default|all>/app_solict sysctl. It defines the number of times the kernel will send a NETLINK_GETNEIGH request to any listening processes on the system before sending out an ARP request on the appropriate network interface(s).

Of course, all of this is predicated on having the daemon in user space to do this. I'm not aware of any daemon that is implemented to use this interface thats freely available. It shouldn't be too hard to write however, if you interested in taking up the project.

HTH
Neil

--
/***************************************************
 *Neil Horman
 *Software Engineer
 *Red Hat, Inc.
 *nhorman@xxxxxxxxxx
 *gpg keyid: 1024D / 0x92A74FA1
 *http://pgp.mit.edu
 ***************************************************/
-
: send the line "unsubscribe linux-net" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html

[Index of Archives]     [Netdev]     [Ethernet Bridging]     [Linux 802.1Q VLAN]     [Linux Wireless]     [Kernel Newbies]     [Security]     [Linux for Hams]     [Netfilter]     [Git]     [Bugtraq]     [Yosemite News and Information]     [MIPS Linux]     [ARM Linux]     [Linux RAID]     [Linux PCI]     [Linux Admin]     [Samba]

  Powered by Linux