Thread (36 messages) 36 messages, 6 authors, 2011-12-15

Re: [net-next RFC PATCH 5/5] virtio-net: flow director support

From: Jason Wang <jasowang@redhat.com>
Date: 2011-12-07 12:10:47
Also in: kvm, virtualization

On 12/07/2011 05:08 PM, Stefan Hajnoczi wrote:
[...]
quoted
quoted
 Consider the complexity of the host nic each with their own steering
 features,  this series make the first step with minimal effort to try to let
 guest driver and host tap/macvtap co-operate like what physical nic does.
 There may be other method, but performance numbers is also needed to give
 the answer.
I agree that performance results for this need to be shown.

My original point is really that it's not a good idea to take
individual steps without a good big picture because this will change
the virtio-net device specification.  If this turns out to be a dead
end then hosts will need to continue to support the interface forever
(legacy guests could still try to use it).  So please first explain
what the full stack picture is going to look like and how you think it
will lead to better performance.  You don't need to have all the code
or evidence, but just enough explanation so we see where this is all
going.
I think I mention too little in the cover message.

There's no much changes with Krishna's series except the method that 
choosing a rx virtqueue. Since original series use different hash 
methods in host (rxhash) and guest (txhash), a different virtqueue were 
chose for a flow which could lead packets of a flow to be handled by 
different vhost thread and vcpu. This may damage the performance.

This series tries to let one vhost thread to process the packets of a 
flow and also let the packets to be sent directly to a vcpu local to the 
thread process the data. This is done by letting guest tell the desired 
queue form which it want to receive the pakcet of a dedicated flow.

So passing the hash from host to guest is needed to get the same hash in 
the two sides. Then a guest programmable hash to queue table were 
introduced and guest co-operate with the host through accelerate RFS in 
guest.
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help