From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from COL004-OMC2S2.hotmail.com (col004-omc2s2.hotmail.com [65.55.34.76]) by dpdk.org (Postfix) with ESMTP id EDA72B0A9 for ; Wed, 18 Jun 2014 12:17:56 +0200 (CEST) Received: from COL402-EAS314 ([65.55.34.71]) by COL004-OMC2S2.hotmail.com with Microsoft SMTPSVC(7.5.7601.22712); Wed, 18 Jun 2014 03:18:12 -0700 X-TMN: [lU3H5ZlrD55IOdcm5JYvs4k1+5iY+T8j] X-Originating-Email: [jinronggong@hotmail.com] Message-ID: From: GongJinrong To: "'Hiroshi Shimamoto'" , "'John Joyce \(joycej\)'" , References: <7E47E681F1539348840E7A8F1E8AA02E214A68E5@xmb-aln-x09.cisco.com> <7F861DC0615E0C47A872E6F3C5FCDDBD0111A162@BPXM14GP.gisp.nec.co.jp> In-Reply-To: <7F861DC0615E0C47A872E6F3C5FCDDBD0111A162@BPXM14GP.gisp.nec.co.jp> Date: Wed, 18 Jun 2014 18:18:12 +0800 MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit X-Mailer: Microsoft Outlook 15.0 Thread-Index: AQABAgMEramXHRtRM5iQJWZkIyn4KQDW85znnwz+7BA= Content-Language: zh-cn X-OriginalArrivalTime: 18 Jun 2014 10:18:12.0863 (UTC) FILETIME=[9C6A78F0:01CF8ADE] Subject: Re: [dpdk-dev] Testing memnic for VM to VM transfer X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: patches and discussions about DPDK List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 18 Jun 2014 10:17:57 -0000 Hi, Hiroshi I just start to learn DPDK and memnic, in memnic guide, you said "On host, the shared memory must be initialized by an application using memnic", I am not so clear that how to initialize the share memory in host, do you means use posix API or DPDK API to create the share memory?(it seems memnic guest side use rte_mbuf to transfer data), do you have any sample code to demo how to use memnic in host? -----Original Message----- From: dev [mailto:dev-bounces@dpdk.org] On Behalf Of Hiroshi Shimamoto Sent: Wednesday, June 18, 2014 12:02 PM To: John Joyce (joycej); dev@dpdk.org Subject: Re: [dpdk-dev] Testing memnic for VM to VM transfer Hi, > Subject: [dpdk-dev] Testing memnic for VM to VM transfer > > Hi everyone: > We are interested in testing the performance of the memnic driver posted at http://dpdk.org/browse/memnic/refs/. > We want to compare its performance compared to other techniques to > transfer packets between the guest and the kernel, predominately for VM to VM transfers. > > We have downloaded the memnic components and have got it running in a guest VM. > > The question we hope this group might be able to help with is what > would be the best way to processes the packets in the kernel to get a VM to VM transfer. I think there is no kernel code work with MEMNIC. The recommend switching software on the host is Intel DPDK vSwitch hosted on 01.org and github. https://github.com/01org/dpdk-ovs/tree/development Intel DPDK vSwitch runs on userspace not kernel. I introduced this mechanism to DPDK vSwitch and the guest drivers are maintained in dpdk.org. thanks, Hiroshi > > A couple options might be possible > > > 1. Common shared buffer between two VMs. With some utility/code to switch TX & RX rings between the two VMs. > > VM1 application --- memnic --- common shared memory buffer on the > host --- memnic --- VM2 application > > 2. Special purpose Kernel switching module > > VM1 application --- memnic --- shared memory VM1 --- Kernel > switching module --- shared memory VM2 --- memnic --- > VM2 application > > 3. Existing Kernel switching module > > VM1 application --- memnic --- shared memory VM1 --- existing > Kernel switching module (e.g. OVS/linux Bridge/VETh pair) > --- shared memory VM2 --- memnic --- VM2 application > > Can anyone recommend which approach might be best or easiest? We would like to avoid writing much (or any) kernel code > so if there are already any open source code or test utilities that > provide one of these options or would be a good starting point to start from, a pointer would be much appreciated. > > Thanks in advance > > > John Joyce