lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-Id: <20250222100725.27838-1-chia-yu.chang@nokia-bell-labs.com>
Date: Sat, 22 Feb 2025 11:07:24 +0100
From: chia-yu.chang@...ia-bell-labs.com
To: netdev@...r.kernel.org, dave.taht@...il.com, pabeni@...hat.com,
        jhs@...atatu.com, kuba@...nel.org, stephen@...workplumber.org,
        xiyou.wangcong@...il.com, jiri@...nulli.us, davem@...emloft.net,
        edumazet@...gle.com, horms@...nel.org, andrew+netdev@...n.ch,
        ij@...nel.org, ncardwell@...gle.com,
        koen.de_schepper@...ia-bell-labs.com, g.white@...lelabs.com,
        ingemar.s.johansson@...csson.com, mirja.kuehlewind@...csson.com,
        cheshire@...le.com, rs.ietf@....at, Jason_Livingood@...cast.com,
        vidhi_goel@...le.com
Cc: Chia-Yu Chang <chia-yu.chang@...ia-bell-labs.com>
Subject: [PATCH v5 net-next 0/1] DUALPI2 patch

From: Chia-Yu Chang <chia-yu.chang@...ia-bell-labs.com>

Hello,

  Please find DUALPI2 patch v5.
  In addition to the changes, a comparison was done between MQ + DUALPI2, MQ + FQ_PIE, 
  MQ + FQ_CODEL as suggested by Dave, you can find them below.

Unshaped 1gigE with 4 download streams test:
 - Summary of tcp_4down run 'MQ + FQ_CODEL':
                           avg       median       # data pts
    Ping (ms) ICMP :       1.19     1.34 ms          349
    TCP download avg :   235.42      N/A Mbits/s     349
    TCP download sum :   941.68      N/A Mbits/s     349
    TCP download::1  :   235.19   235.39 Mbits/s     349
    TCP download::2  :   235.03   235.35 Mbits/s     349
    TCP download::3  :   236.89   235.44 Mbits/s     349
    TCP download::4  :   234.57   235.19 Mbits/s     349

 - Summary of tcp_4down run 'MQ + FQ_PIE'
                           avg       median        # data pts
    Ping (ms) ICMP :       1.21     1.37 ms          350
    TCP download avg :   235.42      N/A Mbits/s     350
    TCP download sum :   941.61     N/A Mbits/s      350
    TCP download::1  :   232.54  233.13 Mbits/s      350
    TCP download::2  :   232.52  232.80 Mbits/s      350
    TCP download::3  :   233.14  233.78 Mbits/s      350
    TCP download::4  :   243.41  241.48 Mbits/s      350

 - Summary of tcp_4down run 'MQ + DUALPI2'
                           avg       median        # data pts
    Ping (ms) ICMP :       1.19     1.34 ms          349
    TCP download avg :   235.42      N/A Mbits/s     349
    TCP download sum :   941.68      N/A Mbits/s     349
    TCP download::1  :   235.19   235.39 Mbits/s     349
    TCP download::2  :   235.03   235.35 Mbits/s     349
    TCP download::3  :   236.89   235.44 Mbits/s     349
    TCP download::4  :   234.57   235.19 Mbits/s     349


Unshaped 1gigE with 128 download streams test:
 - Summary of tcp_128down run 'MQ + FQ_CODEL':
                           avg       median       # data pts
    Ping (ms) ICMP   :     1.88     1.86 ms          350
    TCP download avg :     7.39      N/A Mbits/s     350
    TCP download sum :   946.47      N/A Mbits/s     350

 - Summary of tcp_128down run 'MQ + FQ_PIE':
                           avg       median       # data pts
    Ping (ms) ICMP   :     1.88     1.86 ms          350
    TCP download avg :     7.39      N/A Mbits/s     350
    TCP download sum :   946.47      N/A Mbits/s     350

 - Summary of tcp_128down run 'MQ + DUALPI2':
                           avg       median       # data pts
    Ping (ms) ICMP   :     1.88     1.86 ms          350
    TCP download avg :     7.39      N/A Mbits/s     350
    TCP download sum :   946.47      N/A Mbits/s     350


Unshaped 10gigE with 4 download streams test:
 - Summary of tcp_4down run 'MQ + FQ_CODEL':
                           avg       median       # data pts
    Ping (ms) ICMP :       0.22     0.23 ms          350
    TCP download avg :  2354.08      N/A Mbits/s     350
    TCP download sum :  9416.31      N/A Mbits/s     350
    TCP download::1  :  2353.65  2352.81 Mbits/s     350
    TCP download::2  :  2354.54  2354.21 Mbits/s     350
    TCP download::3  :  2353.56  2353.78 Mbits/s     350
    TCP download::4  :  2354.56  2354.45 Mbits/s     350

- Summary of tcp_4down run 'MQ + FQ_PIE':
                           avg       median      # data pts
    Ping (ms) ICMP :       0.20     0.19 ms          350
    TCP download avg :  2354.76      N/A Mbits/s     350
    TCP download sum :  9419.04      N/A Mbits/s     350
    TCP download::1  :  2354.77  2353.89 Mbits/s     350
    TCP download::2  :  2353.41  2354.29 Mbits/s     350
    TCP download::3  :  2356.18  2354.19 Mbits/s     350
    TCP download::4  :  2354.68  2353.15 Mbits/s     350

 - Summary of tcp_4down run 'MQ + DUALPI2':
                           avg       median      # data pts
    Ping (ms) ICMP :       0.24     0.24 ms          350
    TCP download avg :  2354.11      N/A Mbits/s     350
    TCP download sum :  9416.43      N/A Mbits/s     350
    TCP download::1  :  2354.75  2353.93 Mbits/s     350
    TCP download::2  :  2353.15  2353.75 Mbits/s     350
    TCP download::3  :  2353.49  2353.72 Mbits/s     350
    TCP download::4  :  2355.04  2353.73 Mbits/s     350


Unshaped 10gigE with 128 download streams test:
 - Summary of tcp_128down run 'MQ + FQ_CODEL':
                           avg       median       # data pts
    Ping (ms) ICMP   :     7.57     8.69 ms          350
    TCP download avg :    73.97      N/A Mbits/s     350
    TCP download sum :  9467.82      N/A Mbits/s     350

 - Summary of tcp_128down run 'MQ + FQ_PIE':
                           avg       median       # data pts
    Ping (ms) ICMP   :     7.82     8.91 ms          350
    TCP download avg :    73.97      N/A Mbits/s     350
    TCP download sum :  9468.42      N/A Mbits/s     350

 - Summary of tcp_128down run 'MQ + DUALPI2': 
                           avg       median       # data pts
    Ping (ms) ICMP   :     6.87     7.93 ms          350
    TCP download avg :    73.95      N/A Mbits/s     350
    TCP download sum :  9465.87      N/A Mbits/s     350

 From the results shown above, we see small differences between combinations.

v5
- Update commit message to include results of no_split_gso and split_gso (Dave Taht <dave.taht@...il.com> and Paolo Abeni <pabeni@...hat.com>)
- Add memlimit in dualpi2 attribute, and add memory_used, max_memory_used, memory_limit in dualpi2 stats (Dave Taht <dave.taht@...il.com>)
- Update note in sch_dualpi2.c related to BBRv3 status (Dave Taht <dave.taht@...il.com>)
- Update license identifier (Dave Taht <dave.taht@...il.com>)
- Add selftest in tools/testing/selftests/tc-testing (Cong Wang <xiyou.wangcong@...il.com>)
- Use netlink policies for parameter checks (Jamal Hadi Salim <jhs@...atatu.com>)
- Modify texts & fix typos in Documentation/netlink/specs/tc.yaml (Dave Taht <dave.taht@...il.com>)
- Add dscsriptions of packet counter statistics and reset function of sch_dualpi2.c
- Fix step_thresh in packets
- Update code comments in sch_dualpi2.c

v4
- Update statement in Kconfig for DualPI2 (Stephen Hemminger <stephen@...workplumber.org>)
- Put a blank line after #define in sch_dualpi2.c (Stephen Hemminger <stephen@...workplumber.org>)
- Fix line length warning

v3
- Fix compilaiton error
- Update Documentation/netlink/specs/tc.yaml (Jakub Kicinski <kuba@...nel.org>)

v2
- Add Documentation/netlink/specs/tc.yaml (Jakub Kicinski <kuba@...nel.org>)
- Use dualpi2 instead of skb prefix (Jamal Hadi Salim <jhs@...atatu.com>)
- Replace nla_parse_nested_deprecated with nla_parse_nested (Jamal Hadi Salim <jhs@...atatu.com>)
- Fix line length warning

For more details of DualPI2, plesae refer IETF RFC9332
(https://datatracker.ietf.org/doc/html/rfc9332).
--
Chia-Yu

Koen De Schepper (1):
  sched: Add dualpi2 qdisc

 Documentation/netlink/specs/tc.yaml           |  140 +++
 include/linux/netdevice.h                     |    1 +
 include/uapi/linux/pkt_sched.h                |   38 +
 net/sched/Kconfig                             |   12 +
 net/sched/Makefile                            |    1 +
 net/sched/sch_dualpi2.c                       | 1081 +++++++++++++++++
 tools/testing/selftests/tc-testing/config     |    1 +
 .../tc-testing/tc-tests/qdiscs/dualpi2.json   |  149 +++
 8 files changed, 1423 insertions(+)
 create mode 100644 net/sched/sch_dualpi2.c
 create mode 100644 tools/testing/selftests/tc-testing/tc-tests/qdiscs/dualpi2.json

-- 
2.34.1


Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ