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 46DB0A0C49; Tue, 15 Jun 2021 11:02:25 +0200 (CEST) Received: from [217.70.189.124] (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id 317BD4067E; Tue, 15 Jun 2021 11:02:25 +0200 (CEST) Received: from mga07.intel.com (mga07.intel.com [134.134.136.100]) by mails.dpdk.org (Postfix) with ESMTP id 53A1C40140 for ; Tue, 15 Jun 2021 11:02:24 +0200 (CEST) IronPort-SDR: o3Utc1xy8L6lzVH8vCr85xnNZSkdB8nNy8pRA/eH+7RL2+18hRpUJ55MRqenrL3iq5CiB5vLWK dWj+9YxoXjgA== X-IronPort-AV: E=McAfee;i="6200,9189,10015"; a="269801208" X-IronPort-AV: E=Sophos;i="5.83,275,1616482800"; d="scan'208";a="269801208" Received: from orsmga001.jf.intel.com ([10.7.209.18]) by orsmga105.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 15 Jun 2021 02:02:23 -0700 IronPort-SDR: S3DghTjs8SpxRnD/y/1G2E3datolNurjXOJ1Bj5XPgmkJCHqZRLq9nZhXz9Kv7vStdOdcORokh tHBSR7gG3upA== X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.83,275,1616482800"; d="scan'208";a="484396238" Received: from silpixa00400629.ir.intel.com ([10.237.214.62]) by orsmga001.jf.intel.com with ESMTP; 15 Jun 2021 02:02:19 -0700 From: "Liguzinski, WojciechX" To: dev@dpdk.org, jasvinder.singh@intel.com, cristian.dumitrescu@intel.com Cc: savinay.dharmappa@intel.com, megha.ajmera@intel.com Date: Tue, 15 Jun 2021 10:01:57 +0100 Message-Id: <20210615090200.56824-1-wojciechx.liguzinski@intel.com> X-Mailer: git-send-email 2.17.1 In-Reply-To: <20210609105337.70405-1-wojciechx.liguzinski@intel.com> References: <20210609105337.70405-1-wojciechx.liguzinski@intel.com> Subject: [dpdk-dev] [RFC PATCH v2 0/3] Add PIE support for HQoS library X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: DPDK patches and discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dev-bounces@dpdk.org Sender: "dev" DPDK sched library is equipped with mechanism that secures it from the bufferbloat problem which is a situation when excess buffers in the network cause high latency and latency variation. Currently, it supports RED for active queue management (which is designed to control the queue length but it does not control latency directly and is now being obsoleted). However, more advanced queue management is required to address this problem and provide desirable quality of service to users. This solution (RFC) proposes usage of new algorithm called "PIE" (Proportional Integral controller Enhanced) that can effectively and directly control queuing latency to address the bufferbloat problem. The implementation of mentioned functionality includes modification of existing and adding a new set of data structures to the library, adding PIE related APIs. This affects structures in public API/ABI. That is why deprecation notice is going to be prepared and sent. Liguzinski, WojciechX (3): sched: add PIE based congestion management example/qos_sched: add PIE support example/ip_pipeline: add PIE support config/rte_config.h | 1 - drivers/net/softnic/rte_eth_softnic_tm.c | 6 +- examples/ip_pipeline/tmgr.c | 6 +- examples/qos_sched/app_thread.c | 1 - examples/qos_sched/cfg_file.c | 82 ++++- examples/qos_sched/init.c | 7 +- examples/qos_sched/profile.cfg | 196 ++++++++---- lib/sched/meson.build | 10 +- lib/sched/rte_pie.c | 78 +++++ lib/sched/rte_pie.h | 389 +++++++++++++++++++++++ lib/sched/rte_sched.c | 229 +++++++++---- lib/sched/rte_sched.h | 53 ++- 12 files changed, 877 insertions(+), 181 deletions(-) create mode 100644 lib/sched/rte_pie.c create mode 100644 lib/sched/rte_pie.h -- 2.17.1