DPDK patches and discussions
 help / color / mirror / Atom feed
* [dpdk-dev] [RFC] combining dpdk with ovs via vhost_net
@ 2015-08-20  7:49 Zhuangyanying
  2015-08-20  8:36 ` Xie, Huawei
  0 siblings, 1 reply; 2+ messages in thread
From: Zhuangyanying @ 2015-08-20  7:49 UTC (permalink / raw)
  To: dev; +Cc: gaoxiaoqiu, Zhangbo (Oscar), Zhbzg, Guohongzhen, Zhoujingbin

Hi all:
   AFAIK, nowadays there's only one solution to apply DPDK into Docker Containers, which is Passing-Through physical NIC to applications.
   I'm now working on another solution, considering combining DPDK and OVS via vhost-net, I name it "vhost_net pmd driver".
   The detailed solution is as follows:
   1 Similar to the process of qemu<->vhost_net, we use a serial of ioctl commands to make virtqueue visible to both vhost_net and vhost_net pmd driver.
   2 In kvm guests, the tx/rx queue is consisted of GPA addresses, and the vhost_net will transform it into HVA addresses, then the tap device could copy datagram afterwards. However,  GPA addresses are not necessary for containers to fulfill the tx/rx queue. Thus, we fake it to fulfill the HVA addresses into the tx/rx queues, and pass the (HVA, HVA) map table to vhost_net by VHOST_SET_MEM_TABLE ioctl during initialization. Thus *the vhost_net codes could keep untouched*.
   3 the packet-transceiver-process is totally the same to virtio pmd driver.

   The demo has been worked out already. In the demo, the dpdk could directly access vhost_net to realize L2 forward.
     clients  |                      host                   |    contrainer
      ping    |                                             |
vm0   ----- > |ixgbe:enp131s0f0 <-> ovs:br0  <-> vhost:tap0 |<-> vhost-net pmd
              |                                             |         |
              |                                             |      testpmd
              |                                             |         |
vm1  <------  |ixgbe:enp131s0f1 <-> ovs:br1  <-> vhost:tap1 |<-> vhost-net pmd
              |                                             |

     I don't know wheter this solution is acceptable here. Any blueprints for combining container with dpdk? any suggestions or advices? Thanks in advance.


---
Ann

^ permalink raw reply	[flat|nested] 2+ messages in thread

end of thread, other threads:[~2015-08-20  8:37 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2015-08-20  7:49 [dpdk-dev] [RFC] combining dpdk with ovs via vhost_net Zhuangyanying
2015-08-20  8:36 ` Xie, Huawei

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).