All of lore.kernel.org
 help / color / mirror / Atom feed
From: Jason Wang <jasowang@redhat.com>
To: Anthony Liguori <anthony@codemonkey.ws>
Cc: aliguori@us.ibm.com, stefanha@linux.vnet.ibm.com,
	quintela@redhat.com, rusty@rustcorp.com.au,
	qemu-devel@nongnu.org, mst@redhat.com, pbonzini@redhat.com
Subject: Re: [Qemu-devel] [V5 PATCH 0/4] Send gratuitous packets by guest
Date: Tue, 27 Mar 2012 11:40:55 +0800	[thread overview]
Message-ID: <4F7136C7.7020608@redhat.com> (raw)
In-Reply-To: <4F70E947.3090104@codemonkey.ws>

On 03/27/2012 06:10 AM, Anthony Liguori wrote:
> On 03/16/2012 03:54 AM, Jason Wang wrote:
>> This an update of series that let guest and qemu to be co-operated to
>> send gratuitous packets when needed such as after migration, loadvm
>> and continuing.
>>
>> As it's hard for qemu to track the network configuration in guest such
>> as bondings, vlans or ipv6. So current gratuitous may not work under
>> those situations.
>
> Can you be more specific about the failure scenarios?

The failure can happen when:

- Guest does not use primary mac address. Current qemu only send rarp 
packets for primary mac address. This looks could be solved by iterating 
nic with mac address table, but their size are limited and guest could 
use all-uni/promisc mode to use more mac addresses. So it's almost 
impossible to track all addresses in qemu side.

- Guest have some network configuration such as 802.1Q vlan, in this 
case, we need to send tagged gratuitous packet which qemu can't handle.

The point is qemu does not know the network configuration in guest or 
how mac addresses are used, so it's better for us to let guest choose 
the correct way to do this if they can. If guest could not do the 
announcement, the rarp packets would be sent as in the past.
>
> Does this mean that migration cannot work today with guests using 
> ipv6?  I don't think just pushing this to the guest is an acceptable 
> solution in the short term.
>

I haven't check, but w/o this patch a ipv4 rarp would be sent even guest 
are using ipv6; w/ this patch, a ipv6 neighbor advertisement would be 
sent by guest which looks pretty reasonable.

Did you see any drawbacks of this method? Xen and hyper-v also let guest 
to send gratuitous packet for their para-virtualized network card.
> Are there scenarios we cannot handle no matter what in the host?  Does 
> this mean that for emulated drivers, we're completely out of luck?
>

A possible improvement but not a final solution is to send garp for all 
address in the mac table I think.
> Regards,
>
> Anthony Liguori

  reply	other threads:[~2012-03-27  3:41 UTC|newest]

Thread overview: 14+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2012-03-16  8:54 [Qemu-devel] [V5 PATCH 0/4] Send gratuitous packets by guest Jason Wang
2012-03-16  8:54 ` [Qemu-devel] [V5 PATCH 1/4] net: announce self after vm start Jason Wang
2012-03-16  9:43   ` Paolo Bonzini
2012-03-16 10:13     ` Jason Wang
2012-03-16 10:45       ` Paolo Bonzini
2012-03-16 15:23         ` Jason Wang
2012-03-16 16:31           ` Paolo Bonzini
2012-03-19  3:12             ` Jason Wang
2012-03-16  8:55 ` [Qemu-devel] [V5 PATCH 2/4] net: model specific announcing support Jason Wang
2012-03-16  8:55 ` [Qemu-devel] [V5 PATCH 3/4] virtio-net: notify guest to annouce itself Jason Wang
2012-03-16  8:55 ` [Qemu-devel] [V5 PATCH 4/4] virtio-net: compat guest announce support Jason Wang
2012-03-26 22:10 ` [Qemu-devel] [V5 PATCH 0/4] Send gratuitous packets by guest Anthony Liguori
2012-03-27  3:40   ` Jason Wang [this message]
2012-03-27  6:27   ` Michael S. Tsirkin

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=4F7136C7.7020608@redhat.com \
    --to=jasowang@redhat.com \
    --cc=aliguori@us.ibm.com \
    --cc=anthony@codemonkey.ws \
    --cc=mst@redhat.com \
    --cc=pbonzini@redhat.com \
    --cc=qemu-devel@nongnu.org \
    --cc=quintela@redhat.com \
    --cc=rusty@rustcorp.com.au \
    --cc=stefanha@linux.vnet.ibm.com \
    /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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.