Skip to contentSkip to conversation

when using arp monitoring with bonding, why use broadcast arps?

DISCUSSION Chris Friesen 2 participants 2 messages Dec 4, 2007

Subsystems (2)
lore
Share & tools
lore
#0 lore raw

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

#1 lore raw

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 the
bond_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]