netdev.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: WeipingPan <panweiping3@gmail.com>
To: Jiri Bohac <jbohac@suse.cz>
Cc: Jay Vosburgh <fubar@us.ibm.com>,
	Andy Gospodarek <andy@greyhouse.net>,
	netdev@vger.kernel.org
Subject: Re: [PATCH][RFC] bonding: delete migrated IP addresses from the rlb hash table
Date: Wed, 29 Feb 2012 21:58:53 +0800	[thread overview]
Message-ID: <4F4E2F1D.2080302@gmail.com> (raw)
In-Reply-To: <20120227173400.GB816@midget.suse.cz>

On 02/28/2012 01:34 AM, Jiri Bohac wrote:
> Bonding in balance-alb mode records information from ARP packets
> passing through the bond in a hash table (rx_hashtbl).
>
> At certain situations (e.g. link change of a slave),
> rlb_update_rx_clients() will send out ARP packets to update ARP
> caches of other hosts on the network to achieve RX load balancing.
>
> The problem is that once an IP address is recorded in the hash
> table, it stays there indefinitely [1]. If this IP address is
> migrated to a different host in the network, bonding still sends
> out ARP packets that poison other systems' ARP caches with
> invalid information.
I met this problem, too.

> This patch solves this by looking at all incoming ARP packets,
> and checking if the source IP address is one of the source
> addresses stored in the rx_hashtbl. If it is, the corresponding
> hash table entries are removed. Thus, when an IP address is
> migrated, the first ARP broadcast by its new owner will purge the
> offending entries of rx_hashtbl.
>
>    (a simpler approach, where bonding would monitor IP address
>     changes on the local system does not work for setups like:
>     HostA --- NetworkA --- eth0-bond0-br0 --- NetworkB --- hostB
>     and an IP address migrating from HostB to HostA)
Could you explain in detail or step by step how to reproduce your problem ?
I made a patch but I do not know whether it can fix your problem.

thanks
Weiping Pan

  parent reply	other threads:[~2012-02-29 13:54 UTC|newest]

Thread overview: 17+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2012-02-27 17:34 [PATCH][RFC] bonding: delete migrated IP addresses from the rlb hash table Jiri Bohac
2012-02-27 17:46 ` bonding: should rlb rx_hashtbl be reimplemented? Jiri Bohac
2012-02-29 13:55 ` [PATCH net] bonding:update rlb entry for arp request Weiping Pan
2012-02-29 18:26   ` Jiri Bohac
2012-02-29 13:58 ` WeipingPan [this message]
2012-02-29 18:49   ` [PATCH][RFC] bonding: delete migrated IP addresses from the rlb hash table Jiri Bohac
2012-02-29 18:59 ` Jay Vosburgh
2012-03-01  2:12 ` Jay Vosburgh
2012-03-01  3:58   ` WeipingPan
2012-03-01  4:01     ` [PATCH net] delete rlb entry if ip of bonding is deleted Weiping Pan
2012-03-01  4:19       ` Jay Vosburgh
2012-03-07 16:02   ` [PATCH][RFC] bonding: delete migrated IP addresses from the rlb hash table Jiri Bohac
2012-04-20 18:56     ` Jiri Bohac
2012-04-26 20:18       ` Jay Vosburgh
2012-04-27 21:03         ` Jiri Bohac
2012-03-23  7:10 ` WeipingPan
2012-03-23 10:33   ` Jiri Bohac

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=4F4E2F1D.2080302@gmail.com \
    --to=panweiping3@gmail.com \
    --cc=andy@greyhouse.net \
    --cc=fubar@us.ibm.com \
    --cc=jbohac@suse.cz \
    --cc=netdev@vger.kernel.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).