[openib-general] Unicast ARP
Ido Bukspan
ido at mellanox.co.il
Mon Nov 29 09:10:45 PST 2004
In gen2 we have a problem if the destination path (e.g. LID)
changes. Typically the kernel issues periodically unicast ARP packets to
addresses which are in the ARP cache to ensure that the neighbors are up and
that the ARP cache is up to date. In gen2, unicast ARPs arrive to the ipoib
driver (hard_xmit) with no address handle assigned. Now, SA query is
initiated by the ipoib driver, then ARP is sent to this address, and when
ARP response arrives back, ARP cache is not updated with the new path. In
other words, ARP cache believes that the relevant entry is up to date and
doesn't notice the path change.
I think that we should hold a link list which contains the current
address handles with the corresponding GID. When a unicast ARP is sent
(hard_xmit), instead of going to the SA, look up the right GID in our list,
then send a unicast ARP with this address handle. If path has changed, then
the ARP reply won't arrive and it will cause the ARP cache to be refreshed.
This solution also reduces the burden on the SA.
What do you think ?
-Ido
Ido Bukspan
Mellanox Technologies Ltd.
Phone : (972)-3-6259500 ,Ext 518.
Fax : (972)-3-5614943
mailto:ido at mellanox.co.il
http://www.mellanox.com
No play No game
More information about the general
mailing list