From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mails.dpdk.org (mails.dpdk.org [217.70.189.124]) by inbox.dpdk.org (Postfix) with ESMTP id A0847A0093 for ; Thu, 17 Mar 2022 14:27:01 +0100 (CET) Received: from [217.70.189.124] (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id 1F001407FF; Thu, 17 Mar 2022 14:27:01 +0100 (CET) Received: from mail-ej1-f54.google.com (mail-ej1-f54.google.com [209.85.218.54]) by mails.dpdk.org (Postfix) with ESMTP id 314384067B for ; Thu, 17 Mar 2022 14:26:59 +0100 (CET) Received: by mail-ej1-f54.google.com with SMTP id a8so10706029ejc.8 for ; Thu, 17 Mar 2022 06:26:59 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gwu.edu; s=google1; h=mime-version:references:in-reply-to:reply-to:from:date:message-id :subject:cc; bh=FTSJpUgtUtGcUe7XiYVX66NduCKcpK3b+DvofaaAFhk=; b=fE1wpeu0k0Mk92z24rHo4He29ePptSFfbGhVZxGxFhA4UfDaQaXA/uIYIqTr9ZCLCo 6EC8a+BrU3B/bJOPi2IvPjOXuqNr1dHS3RoklUvpwUyZuNBwROjp75ZVQylN0N5RZCGc MHJwK39D1e3AXMa478icVDRBHw2A684lBrM90yH3Nb20rIriVUdRHAHoyqj3awzkA7Zt ACgRcXknEZzAQDn8QWxhkdY5XOl4HbKiF0Du/goxs2YhwY2NqXsFPCx78S1L/R954aK3 d1m52NeBFEuA8OXsxj37Q+vmN5I2W+GJK82q+ogAmxVhzTvlVG/oAraHSdb5z8lNSHxt Fusg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=x-gm-message-state:mime-version:references:in-reply-to:reply-to :from:date:message-id:subject:cc; bh=FTSJpUgtUtGcUe7XiYVX66NduCKcpK3b+DvofaaAFhk=; b=p9rSBi1kxhAFudErPnHbd+73xglCbuYf8foO1OkSU94qVOI6o5C3CbXC2tfeQTJWb1 m/uZqkpw4mjUood5Ss3Tc2/kveRMl6TqFEUAXYXzwAzyS6hijdmykF0X1UgwNUAXD1Dg Sk+eHtf9x9nI4he6x5mLrvd3EX7uMT/K7r1tl233gPf/JozkAqA+mNnVV3LSRmm+i2D0 Xhw/HUrf9sY96uNLRYNQEk3eYeirdHYsu2W/1nk4skLcNr/9h8SsoAMh5qj69jyTQ/Du /Q3YKhSYVpB6OXulTidfCnyWvPRUdCtuRV1bSCKHV9Y5e7OGZvmABO5tloySdq2mU2sd KKMg== X-Gm-Message-State: AOAM533ilmddZmKZSN2JrWvp9zFxpid9/wLqNNWqW56DqZp7/vSVhCdL AuKQiTx3g1grCk7Qm9jVV3d49ICOKp363wS1L0mdS6zurr5TRQ== X-Google-Smtp-Source: ABdhPJwumx3t5RklanDb+rKt7SxhjAlnfV1MW3w0ke0BuCHvzuoqhXKbBegfxrlGEMeNhqa8hw/A08wpdllY47UK/SU= X-Received: by 2002:a17:907:c16:b0:6da:7d72:1357 with SMTP id ga22-20020a1709070c1600b006da7d721357mr4458174ejc.251.1647523618253; Thu, 17 Mar 2022 06:26:58 -0700 (PDT) MIME-Version: 1.0 References: In-Reply-To: From: Timothy Wood Date: Thu, 17 Mar 2022 09:26:32 -0400 Message-ID: Subject: Re: Connecting two DPDK applications through fake virtual functions Cc: users@dpdk.org Content-Type: multipart/alternative; boundary="000000000000068ecb05da69fc77" X-BeenThere: users@dpdk.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: DPDK usage discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Reply-To: timwood@gwu.edu Errors-To: users-bounces@dpdk.org --000000000000068ecb05da69fc77 Content-Type: text/plain; charset="UTF-8" One option is to modify the applications to use DPDK's multi-process support: https://doc.dpdk.org/guides/prog_guide/multi_proc_support.html Essentially you would have one app read from the real port and then write data to a software queue in shared memory. Instead of having the second app read from a port it would read from the queue. If you want to build more elaborate combinations of functions, check out our OpenNetVM research project which focused on high performance NF chaining: http://sdnfv.github.io/onvm/ --- Timothy Wood, Ph. D. he/him/his Associate Professor Department of Computer Science The George Washington University http://www.seas.gwu.edu/~timwood On Thu, Mar 17, 2022 at 5:29 AM Antonio Di Bacco wrote: > I have two DPDK applications that are using virtual functions built on top > of two physical functions that correspond to the two ports of a 25 Gbps > ethernet card. The two physical ports are connected one to the other with > an optic fiber. > Now, I would like to realize the same setup but without using a physical > 25 Gbps card, I wonder if this is possible. > > --000000000000068ecb05da69fc77 Content-Type: text/html; charset="UTF-8" Content-Transfer-Encoding: quoted-printable
One option is to modify the applications to use DPDK&= #39;s multi-process support: https://doc.dpdk.org/guides/prog_guide/multi_p= roc_support.html
Essentially you would have one app read from= the real port and then write data to a software queue in shared memory. In= stead of having the second app read from a port it would read from the queu= e.

If you want to build more elaborate combination= s of functions, check out our OpenNetVM research project which focused on h= igh performance NF chaining: http:= //sdnfv.github.io/onvm/

---
Timothy Wood, Ph. D.
= he/him/his
Associate Professor
Department of Compu= ter Science
The George Washington University
http://www.seas.gwu.edu/~timwood=


On Thu, Mar 17, 2022 at 5:29 AM Ant= onio Di Bacco <a.dibacco.ks@gm= ail.com> wrote:
I have two DPDK applications that are using virtual= functions built on top of two physical functions that=C2=A0correspond to t= he two ports of a 25 Gbps ethernet card. The two physical ports are connect= ed one to the other with an optic fiber.=C2=A0 =C2=A0
Now, I would like= to realize the same setup but without using a physical 25 Gbps card, I won= der if this is possible.

--000000000000068ecb05da69fc77--