From mboxrd@z Thu Jan 1 00:00:00 1970 From: "Wiles, Keith" Subject: Network Stack discussion notes from 2015 DPDK Userspace Date: Fri, 9 Oct 2015 23:19:06 +0000 Message-ID: Mime-Version: 1.0 Content-Type: text/plain; charset="Windows-1252" Content-Transfer-Encoding: quoted-printable To: "dev@dpdk.org" Return-path: Received: from mga01.intel.com (mga01.intel.com [192.55.52.88]) by dpdk.org (Postfix) with ESMTP id 922B45961 for ; Sat, 10 Oct 2015 01:19:08 +0200 (CEST) Content-Language: en-US Content-ID: <8C01690BECFF464FAEB69C2374DDE1BC@intel.com> List-Id: patches and discussions about DPDK List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dev-bounces@dpdk.org Sender: "dev" Here are some notes from the DPDK Network Stack discussion, I can remember = please help me fill in anything I missed. Items I remember we talked about: * The only reason for a DPDK TCP/IP stack is for performance and possib= ly lower latency * Meaning the developer is willing to re-write or write his applicat= ion to get the best performance. * A TCP/IPv4/v6 stack is the minimum stack we need to support applicati= ons linked with DPDK. * SCTP is also another protocol that maybe required * TCP is the primary protocol, usage model for most use cases * Stack must be able to terminate TCP traffic to an application link= ed to DPDK * For DPDK the customer is looking for fast applications and is willing= to write the application just for DPDK network stack * Converting an existing application could be done, but the design = is for performance and may require a lot of changes to an application * Using an application API that is not Socket is fine for high perfo= rmance and maybe the only way we get best performance. * Need to supply a Socket layer interface as a option if customer is= willing to take a performance hit instead of rewriting the application * Native application acceleration is desired, but not required when usi= ng DPDK network stack * We have two projects related to network stack in DPDK * The first one is porting some TCP/IP stack to DPDK plus it needs t= o give a reasonable performance increase over native Linux applications * The stack code needs to be BSD/MIT like licensed (Open Sourced) * The stack should be up to date with the latest RFCs or at least= close * A stack could be written for DPDK (not using a existing code ba= se) and its environment for best performance * Need to be able to configure the DPDK stack(s) from the Linux c= ommand line tools if possible * Need a DPDK specific application layer API for application to i= nterface with the network stack * Could have a socket layer API on top of the specific API for ap= plications needing to use sockets (not expected to be the best performance) * The second item is figuring out a new IPC for East/West traffic wi= thin the same system. * The design needs to improve performance between applications an= d be transparent to the application when the remote end is not on the same = system. * The new IPC path should be agnostic to local or remote end poin= ts * Needs to be very fast compared to current Linux IPC designs. (W= ill OVS work here?) Did I miss any details or comments, please reply and help me correct the co= mment or understanding. Thanks for everyone attending and packing into a small space. =97 Regards, ++Keith Wiles Intel Corporation