From mboxrd@z Thu Jan 1 00:00:00 1970 From: Avi Kivity Subject: Re: Network throughput limits for local VM <-> VM communication Date: Thu, 11 Jun 2009 11:17:28 +0300 Message-ID: <4A30BD98.6040302@redhat.com> References: <0199E0D51A61344794750DC57738F58E67D2398F9E@GVW1118EXC.americas.hpqcorp.net> <200906101529.47103.arnd@arndb.de> <0199E0D51A61344794750DC57738F58E67D2399710@GVW1118EXC.americas.hpqcorp.net> <200906110949.16197.arnd@arndb.de> <0199E0D51A61344794750DC57738F58E67D23998F5@GVW1118EXC.americas.hpqcorp.net> Mime-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit Cc: Arnd Bergmann , Mark McLoughlin , "kvm@vger.kernel.org" To: "Fischer, Anna" Return-path: Received: from mx2.redhat.com ([66.187.237.31]:40529 "EHLO mx2.redhat.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1755855AbZFKIRb (ORCPT ); Thu, 11 Jun 2009 04:17:31 -0400 In-Reply-To: <0199E0D51A61344794750DC57738F58E67D23998F5@GVW1118EXC.americas.hpqcorp.net> Sender: kvm-owner@vger.kernel.org List-ID: Fischer, Anna wrote: > I am using two bridges, and yes, in theory, the router should be the only connection between the two guests. However, without VLANs, the tun interface will pass packets to all tap interfaces. It has to, as it doesn't know to which one the packet has to go to. It does not look at packets, it simply copies buffers from userspace to the tap interface in the kernel. The tap interface then eventually drops the packet, if the MAC address does not match its own. So packets will not actually go across both bridges, because the tap interface that should not receive the packet does drop it. However, it does receive the packet and processes it to some extend which causes some overhead. As I was told by someone at KVM/RedHat, this does not happen when using VLANs as then there will be a direct mappi ng between any tun<->tap device and so no packet replication across multiple tap devices. > This only happens if the receiving tap never sends out packets. If the tap interface does send out packets, the bridge will associate their MAC address with that interface, and future packets will only be forwarded there. Is this your scenario? -- error compiling committee.c: too many arguments to function