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 B8B17A0C4E; Tue, 19 Oct 2021 10:19:07 +0200 (CEST) Received: from [217.70.189.124] (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id A33EA40E2D; Tue, 19 Oct 2021 10:19:07 +0200 (CEST) Received: from mga06.intel.com (mga06.intel.com [134.134.136.31]) by mails.dpdk.org (Postfix) with ESMTP id 518DA40E2D for ; Tue, 19 Oct 2021 10:19:06 +0200 (CEST) X-IronPort-AV: E=McAfee;i="6200,9189,10141"; a="289303980" X-IronPort-AV: E=Sophos;i="5.85,383,1624345200"; d="scan'208";a="289303980" Received: from orsmga007.jf.intel.com ([10.7.209.58]) by orsmga104.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 19 Oct 2021 01:19:05 -0700 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.85,383,1624345200"; d="scan'208";a="483130320" Received: from silpixa00400629.ir.intel.com ([10.237.213.30]) by orsmga007.jf.intel.com with ESMTP; 19 Oct 2021 01:19:04 -0700 From: "Liguzinski, WojciechX" To: dev@dpdk.org, jasvinder.singh@intel.com, cristian.dumitrescu@intel.com Cc: megha.ajmera@intel.com Date: Tue, 19 Oct 2021 08:18:57 +0000 Message-Id: <20211019081902.3514841-1-wojciechx.liguzinski@intel.com> X-Mailer: git-send-email 2.25.1 In-Reply-To: <20211015081620.2873739-1-wojciechx.liguzinski@intel.com> References: <20211015081620.2873739-1-wojciechx.liguzinski@intel.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Subject: [dpdk-dev] [PATCH v15 0/5] 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. 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 (5): sched: add PIE based congestion management example/qos_sched: add PIE support example/ip_pipeline: add PIE support doc/guides/prog_guide: added PIE app/test: add tests for PIE app/test/meson.build | 4 + app/test/test_pie.c | 1065 ++++++++++++++++++ config/rte_config.h | 1 - doc/guides/prog_guide/glossary.rst | 3 + doc/guides/prog_guide/qos_framework.rst | 60 +- doc/guides/prog_guide/traffic_management.rst | 13 +- drivers/net/softnic/rte_eth_softnic_tm.c | 6 +- examples/ip_pipeline/tmgr.c | 142 +-- examples/qos_sched/app_thread.c | 1 - examples/qos_sched/cfg_file.c | 127 ++- examples/qos_sched/cfg_file.h | 5 + examples/qos_sched/init.c | 27 +- examples/qos_sched/main.h | 3 + examples/qos_sched/profile.cfg | 196 ++-- lib/sched/meson.build | 10 +- lib/sched/rte_pie.c | 86 ++ lib/sched/rte_pie.h | 398 +++++++ lib/sched/rte_sched.c | 241 ++-- lib/sched/rte_sched.h | 63 +- lib/sched/version.map | 4 + 20 files changed, 2171 insertions(+), 284 deletions(-) create mode 100644 app/test/test_pie.c create mode 100644 lib/sched/rte_pie.c create mode 100644 lib/sched/rte_pie.h -- 2.25.1