From mboxrd@z Thu Jan 1 00:00:00 1970 From: Daniel Borkmann Subject: Re: [bpf-next V2 PATCH 0/2] Implement sample code for XDP cpumap IP-pair load-balancing Date: Fri, 10 Aug 2018 16:10:20 +0200 Message-ID: <5a8f5032-f5fb-aa6d-9366-d2c85a761310@iogearbox.net> References: <153390254528.10825.9125109091513926669.stgit@firesoul> Mime-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 7bit Cc: victor@inliniac.net, eric@regit.org, Daniel Borkmann , Alexei Starovoitov , jhsiao@redhat.com To: Jesper Dangaard Brouer , netdev@vger.kernel.org Return-path: Received: from www62.your-server.de ([213.133.104.62]:38371 "EHLO www62.your-server.de" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1727630AbeHJQk1 (ORCPT ); Fri, 10 Aug 2018 12:40:27 -0400 In-Reply-To: <153390254528.10825.9125109091513926669.stgit@firesoul> Content-Language: en-US Sender: netdev-owner@vger.kernel.org List-ID: On 08/10/2018 02:02 PM, Jesper Dangaard Brouer wrote: > Background: cpumap moves the SKB allocation out of the driver code, > and instead allocate it on the remote CPU, and invokes the regular > kernel network stack with the newly allocated SKB. > > The idea behind the XDP CPU redirect feature, is to use XDP as a > load-balancer step in-front of regular kernel network stack. But the > current sample code does not provide a good example of this. Part of > the reason is that, I have implemented this as part of Suricata XDP > load-balancer. > > Given this is the most frequent feature request I get. This patchset > implement the same XDP load-balancing as Suricata does, which is a > symmetric hash based on the IP-pairs + L4-protocol. > > The expected setup for the use-case is to reduce the number of NIC RX > queues via ethtool (as XDP can handle more per core), and via > smp_affinity assign these RX queues to a set of CPUs, which will be > handling RX packets. The CPUs that runs the regular network stack is > supplied to the sample xdp_redirect_cpu tool by specifying > the --cpu option multiple times on the cmdline. > > I do note that cpumap SKB creation is not feature complete yet, and > more work is coming. E.g. given GRO is not implemented yet, do expect > TCP workloads to be slower. My measurements do indicate UDP workloads > are faster. Applied to bpf-next, thanks Jesper!