when using arp monitoring with bonding, why use broadcast arps?
Subsystems (2)
We have a network with a number of nodes using bonding with arp monitoring. The arp interval is set to 100ms.
Unfortunately, the bonding code sends the arp packets to the hardware broadcast address, which means that the number of these arp packets seen by each node goes up with the number of nodes on the network.
One of the nodes has a fairly low-powered cpu and handles most things in microengine code, but arp packets get handled in software. All these broadcast arps slow this node down noticeably.
Is there any particular reason why the bonding code couldn't use unicast arp packets if the "arp_ip_target" has a valid entry in the sender's arp table?
Thanks,
Chris
Chris Friesen <[email protected]> wrote:
[...]
Quoted 3 lines
Is there any particular reason why the bonding code couldn't use unicast arp packets if the "
arp_ip_target" has a valid entry in the sender's arp table?
It ought to be a pretty straightforward change to have thebond_arp_send() function perform a neigh_lookup() prior to calling arp_create(), and use the result of the lookup (if any) in the arp_create() call.
So, no, with the caveat that I haven't tried it, I don't see a
reason that bonding couldn't do what you're looking for.
-J
---
-Jay Vosburgh, IBM Linux Technology Center, [email protected]