From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from smtp-4.sys.kth.se (smtp-4.sys.kth.se [130.237.48.193]) by dpdk.org (Postfix) with ESMTP id 195C9DE0 for ; Wed, 16 Jan 2019 09:56:00 +0100 (CET) Received: from smtp-4.sys.kth.se (localhost.localdomain [127.0.0.1]) by smtp-4.sys.kth.se (Postfix) with ESMTP id C54F32C23; Wed, 16 Jan 2019 09:55:59 +0100 (CET) X-Virus-Scanned: by amavisd-new at kth.se Received: from smtp-4.sys.kth.se ([127.0.0.1]) by smtp-4.sys.kth.se (smtp-4.sys.kth.se [127.0.0.1]) (amavisd-new, port 10024) with LMTP id Qv8Wm2IQrlmv; Wed, 16 Jan 2019 09:55:51 +0100 (CET) X-KTH-Auth: barbette [130.237.20.142] DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=kth.se; s=default; t=1547628950; bh=lg/FcJjaTPeQCls+bkaIS2QM3PyKIgwd6xhVwfjWgfU=; h=Subject:From:To:Cc:References:Date:In-Reply-To; b=CTgTYlZZ/gLgHGL2lmMNYdpy54IG2NNIYzkFajbYMb9JanzkP3avk555enQRj67Kd luc7c0dlohdbFuUpDOF7oIOFduHA0C6mNMLhRw8FaYfwzNe3/+I6mEecKda7XvUms0 3tvfyiUnrGN8lEV/un+XGCK5pUP3EDWcZSCO9r9Y= X-KTH-mail-from: barbette@kth.se Received: from [130.237.20.142] (s2587.it.kth.se [130.237.20.142]) by smtp-4.sys.kth.se (Postfix) with ESMTPSA id 241FE2EC4; Wed, 16 Jan 2019 09:55:45 +0100 (CET) From: Tom Barbette To: Georgios Katsikas , "dev@dpdk.org" Cc: "wenzhuo.lu@intel.com" , "konstantin.ananyev@intel.com" , "adrien.mazarguil@6wind.com" References: <1544538698808.34010@kth.se> Message-ID: Date: Wed, 16 Jan 2019 09:55:44 +0100 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:60.0) Gecko/20100101 Thunderbird/60.2.1 MIME-Version: 1.0 In-Reply-To: <1544538698808.34010@kth.se> Content-Type: text/plain; charset=utf-8; format=flowed Content-Language: en-US Content-Transfer-Encoding: 8bit Subject: Re: [dpdk-dev] Flow Director vs. 5-tuple filters on a 10GbE Intel 82599 ES NIC X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: DPDK patches and discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 16 Jan 2019 08:56:00 -0000 Hi Georgios, I looked at the documentation written in C... ixgbe will first parse the rule as a 5-tuple filter. If parsing works, then it will install it as a 5-tuple filter. Then it will try ethertype filters, then syn filters, and if any of those "specific" filters did not work, then it will use fdir. As far as I see, there is no way to prevent using 5-tuple/ntuple filters if the filter can match. So currently one is limited to 128 5-tuple flows, while actually 8K could be used... Maybe a flag could be added to select the underlying hardware, but given ixgbe is getting old and the lack of answer, I doubt Intel will help on this... Tom PS: If some fields are missing (eg. no dst port), then it seems the ntuple will not be used and the parsing will continue. Maybe that can be used as a trick ? But it leads to potential collisions... On 2018-12-11 15:31, Tom Barbette wrote: > ?CC-ing maintainers. > > > ________________________________ > De : Georgios Katsikas > Envoyé : mardi 4 décembre 2018 11:41 > À : dev@dpdk.org > Cc : Tom Barbette > Objet : Flow Director vs. 5-tuple filters on a 10GbE Intel 82599 ES NIC > > Dear all, > > I am performing rule installation/deletion benchmarks on a dual port 10 GbE Intel 82599 ES NIC using DPDK 18.11. > The benchmark installs increasing number of rules (5 to 8000), measures the rule installation rate and latency and then deletes the rules (measuring again the rule deletion rate/latency). > The rule sets comprise of rules with exact matches (no masks involved) as follows: > > Simple rule > flow create 0 ingress pattern eth / ipv4 dst is 129.72.224.94 / end actions queue index 0 / end > > More complicated rule > flow create 0 ingress pattern eth / ipv4 dst is 46.54.254.68 src is 49.75.141.195 proto is 17 / udp dst is 26561 src is 7242 / end actions queue index 0 / end > > No matter how simple or complicated the rules are, I am not able to install more than 128 rules on this NIC. > > Here comes my question > > According to the specification, this NIC can accommodate up to 128 5-tuple filters, which very well agrees with my observation above. > However, the same document states that this NIC can also accommodate up to 8000 Flow Director filters. > What is the practical difference between a 5-tuple and a Flow Director rule in this case? How can I exploit these 8k filters using DPDK 18.11? > > Thanks in advance, > Georgios > > >