Hi all,

      I am running my VM using vhost-user NIC with OVS-DPDK.  The steps of my 
question is shown as follows:
     1) In the VM, I add one route entry manually on the vNIC eth0 using "route 
add default gw 192.168.1.2". 
     2) If openvswitch service was restarted, or the process ovs-vswitchd was 
aborted, the new process may be started successfully after long seconds such as 
40s for the initialization of DPDK huge page memory.
     3) And Qemu's vhost-user closed the connection and reconnected 
successfully after 40s.  
     4) Here VM's vNIC will receive link down and up events, the interval 
between the two events is about 40s.
     5) Then I found that route entry disappeared unexpectedly. This will cause 
some network traffic problems.

     I have an idea about this problem. We can add a parameter " 
link_down_delay" for all virtio devices that use vhost-user socket such as 
virtio-net and virtio-blk. 

    If vhost-user socket get a connection closed event when the backend process 
was aborted or restarted, we don't notify VM virtio-net device link down right 
now.
   When the vhost-user backend recover this socket's connections before the 
time of "link_down_delay" ms passed, we need not do that link down notification 
to VM.
   Or else, if that's timeout, VM can be notified the link down event as before.

    Is there any other opinions about this solution?  Or some better ideas? 
Thanks.

B.R.

Jerry




Reply via email to