Subject: Re: [PATCHv2 0/2] vhost: a kernel-level virtio server

From: Gregory Haskins <[email-masked]>
Date: Wed, 12 Aug 2009 12:13:43 -0400

Michael S. Tsirkin wrote:
> On Wed, Aug 12, 2009 at 09:51:45AM -0400, Gregory Haskins wrote:
>> Arnd Bergmann wrote:
>>> On Wednesday 12 August 2009, Michael S. Tsirkin wrote:
>>>>> If I understand it correctly, you can at least connect a veth pair
>>>>> to a bridge, right? Something like
>>>>>
>>>>>            veth0 - veth1 - vhost - guest 1 
>>>>> eth0 - br0-|
>>>>>            veth2 - veth3 - vhost - guest 2
>>>>>            
>>>> Heh, you don't need a bridge in this picture:
>>>>
>>>> guest 1 - vhost - veth0 - veth1 - vhost guest 2
>>> Sure, but the setup I described is the one that I would expect
>>> to see in practice because it gives you external connectivity.
>>>
>>> Measuring two guests communicating over a veth pair is
>>> interesting for finding the bottlenecks, but of little
>>> practical relevance.
>>>
>>> 	Arnd <><
>> Yeah, this would be the config I would be interested in.
> 
> Hmm, this wouldn't be the config to use for the benchmark though: there
> are just too many variables.  If you want both guest to guest and guest
> to host, create 2 nics in the guest.
> 
> Here's one way to do this:
> 
> 	-net nic,model=virtio,vlan=0 -net user,vlan=0
> 	-net nic,vlan=1,model=virtio,vhost=veth0
> 	-redir tcp:8022::22
> 
> 	-net nic,model=virtio,vlan=0 -net user,vlan=0
> 	 -net nic,vlan=1,model=virtio,vhost=veth1
> 	-redir tcp:8023::22
> 
> In guests, for simplicity, configure eth1 and eth0
> to use separate subnets.

I can try to do a few variations, but what I am interested is in
performance in a real-world L2 configuration.  This would generally mean
 all hosts (virtual or physical) in the same L2 domain.

If I get a chance, though, I will try to also wire them up in isolation
as another data point.

Regards,
-Greg