Netdev List
 help / color / mirror / Atom feed
From: Jakub Kicinski <kuba@kernel.org>
To: chia-yu.chang@nokia-bell-labs.com
Cc: netdev@vger.kernel.org, ij@kernel.org, ncardwell@google.com,
	koen.de_schepper@nokia-bell-labs.com, g.white@CableLabs.com,
	ingemar.s.johansson@ericsson.com, mirja.kuehlewind@ericsson.com,
	cheshire@apple.com, rs.ietf@gmx.at, Jason_Livingood@comcast.com,
	vidhi_goel@apple.com
Subject: Re: [PATCH net-next 22/44] tcp: accecn: AccECN option
Date: Tue, 15 Oct 2024 18:32:21 -0700	[thread overview]
Message-ID: <20241015183216.6e0be5f2@kicinski-fedora-PC1C0HJN> (raw)
In-Reply-To: <20241015102940.26157-23-chia-yu.chang@nokia-bell-labs.com>

On Tue, 15 Oct 2024 12:29:18 +0200 chia-yu.chang@nokia-bell-labs.com
wrote:
> From: Ilpo Järvinen <ij@kernel.org>
> 
> The Accurate ECN allows echoing back the sum of bytes for
> each IP ECN field value in the received packets using
> AccECN option. This change implements AccECN option tx & rx
> side processing without option send control related features
> that are added by a later change.
> 
> Based on specification:
>   https://tools.ietf.org/id/draft-ietf-tcpm-accurate-ecn-28.txt
> (Some features of the spec will be added in the later changes
> rather than in this one).
> 
> A full-length AccECN option is always attempted but if it does
> not fit, the minimum length is selected based on the counters
> that have changed since the last update. The AccECN option
> (with 24-bit fields) often ends in odd sizes so the option
> write code tries to take advantage of some nop used to pad
> the other TCP options.
> 
> The delivered_ecn_bytes pairs with received_ecn_bytes similar
> to how delivered_ce pairs with received_ce. In contrast to
> ACE field, however, the option is not always available to update
> delivered_ecn_bytes. For ACK w/o AccECN option, the delivered
> bytes calculated based on the cumulative ACK+SACK information
> are assigned to one of the counters using an estimation
> heuristic to select the most likely ECN byte counter. Any
> estimation error is corrected when the next AccECN option
> arrives. It may occur that the heuristic gets too confused
> when there are enough different byte counter deltas between
> ACKs with the AccECN option in which case the heuristic just
> gives up on updating the counters for a while.

net/ipv4/tcp_output.c:922:5: warning: symbol 'synack_ecn_bytes' was not declared. Should it be static?

  reply	other threads:[~2024-10-16  1:32 UTC|newest]

Thread overview: 56+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2024-10-15 10:28 [PATCH net-next 00/44] DualPI2, Accurate ECN, TCP Prague patch series chia-yu.chang
2024-10-15 10:28 ` [PATCH net-next 01/44] sched: Add dualpi2 qdisc chia-yu.chang
2024-10-15 15:30   ` Jamal Hadi Salim
2024-10-15 15:40     ` Jakub Kicinski
2024-10-15 10:28 ` [PATCH net-next 02/44] tcp: reorganize tcp_in_ack_event() and tcp_count_delivered() chia-yu.chang
2024-10-15 10:28 ` [PATCH net-next 03/44] tcp: create FLAG_TS_PROGRESS chia-yu.chang
2024-10-15 10:29 ` [PATCH net-next 04/44] tcp: use BIT() macro in include/net/tcp.h chia-yu.chang
2024-10-15 10:29 ` [PATCH net-next 05/44] tcp: extend TCP flags to allow AE bit/ACE field chia-yu.chang
2024-10-15 10:29 ` [PATCH net-next 06/44] tcp: reorganize SYN ECN code chia-yu.chang
2024-10-15 10:29 ` [PATCH net-next 07/44] tcp: rework {__,}tcp_ecn_check_ce() -> tcp_data_ecn_check() chia-yu.chang
2024-10-15 10:29 ` [PATCH net-next 08/44] tcp: helpers for ECN mode handling chia-yu.chang
2024-10-15 10:29 ` [PATCH net-next 09/44] gso: AccECN support chia-yu.chang
2024-10-16  1:31   ` Jakub Kicinski
2024-10-15 10:29 ` [PATCH net-next 10/44] gro: prevent ACE field corruption & better AccECN handling chia-yu.chang
2024-10-15 10:29 ` [PATCH net-next 11/44] tcp: AccECN support to tcp_add_backlog chia-yu.chang
2024-10-15 10:29 ` [PATCH net-next 12/44] tcp: allow ECN bits in TOS/traffic class chia-yu.chang
2024-10-15 10:29 ` [PATCH net-next 13/44] tcp: Pass flags to __tcp_send_ack chia-yu.chang
2024-10-15 10:29 ` [PATCH net-next 14/44] tcp: fast path functions later chia-yu.chang
2024-10-15 10:29 ` [PATCH net-next 15/44] tcp: AccECN core chia-yu.chang
2024-10-15 10:29 ` [PATCH net-next 16/44] net: sysctl: introduce sysctl SYSCTL_FIVE chia-yu.chang
2024-10-15 10:29 ` [PATCH net-next 17/44] tcp: accecn: AccECN negotiation chia-yu.chang
2024-10-15 19:49   ` Ilpo Järvinen
2024-10-15 20:25     ` Chia-Yu Chang (Nokia)
2024-10-15 20:31       ` Ilpo Järvinen
2024-10-15 10:29 ` [PATCH net-next 18/44] tcp: accecn: add AccECN rx byte counters chia-yu.chang
2024-10-15 10:29 ` [PATCH net-next 19/44] tcp: allow embedding leftover into option padding chia-yu.chang
2024-10-15 10:29 ` [PATCH net-next 20/44] tcp: accecn: AccECN needs to know delivered bytes chia-yu.chang
2024-10-15 10:29 ` [PATCH net-next 21/44] tcp: sack option handling improvements chia-yu.chang
2024-10-15 10:29 ` [PATCH net-next 22/44] tcp: accecn: AccECN option chia-yu.chang
2024-10-16  1:32   ` Jakub Kicinski [this message]
2024-10-15 10:29 ` [PATCH net-next 23/44] tcp: accecn: AccECN option send control chia-yu.chang
2024-10-15 10:29 ` [PATCH net-next 24/44] tcp: accecn: AccECN option failure handling chia-yu.chang
2024-10-15 10:29 ` [PATCH net-next 25/44] tcp: accecn: AccECN option ceb/cep heuristic chia-yu.chang
2024-10-15 10:29 ` [PATCH net-next 26/44] tcp: accecn: AccECN ACE field multi-wrap heuristic chia-yu.chang
2024-10-15 10:29 ` [PATCH net-next 27/44] tcp: accecn: try to fit AccECN option with SACK chia-yu.chang
2024-10-15 10:29 ` [PATCH net-next 28/44] tcp: try to avoid safer when ACKs are thinned chia-yu.chang
2024-10-15 10:29 ` [PATCH net-next 29/44] gro: flushing when CWR is set negatively affects AccECN chia-yu.chang
2024-10-15 10:29 ` [PATCH net-next 30/44] tcp: accecn: Add ece_delta to rate_sample chia-yu.chang
2024-10-15 10:29 ` [PATCH net-next 31/44] tcp: L4S ECT(1) identifier for CC modules chia-yu.chang
2024-10-15 10:29 ` [PATCH net-next 32/44] tcp: disable RFC3168 fallback " chia-yu.chang
2024-10-15 10:29 ` [PATCH net-next 33/44] tcp: accecn: handle unexpected AccECN negotiation feedback chia-yu.chang
2024-10-15 10:29 ` [PATCH net-next 34/44] tcp: accecn: retransmit downgraded SYN in AccECN negotiation chia-yu.chang
2024-10-15 10:29 ` [PATCH net-next 35/44] tcp: move increment of num_retrans chia-yu.chang
2024-10-15 10:29 ` [PATCH net-next 36/44] tcp: accecn: retransmit SYN/ACK without AccECN option or non-AccECN SYN/ACK chia-yu.chang
2024-10-15 10:29 ` [PATCH net-next 37/44] tcp: accecn: unset ECT if receive or send ACE=0 in AccECN negotiaion chia-yu.chang
2024-10-15 10:29 ` [PATCH net-next 38/44] tcp: accecn: fallback outgoing half link to non-AccECN chia-yu.chang
2024-10-15 10:29 ` [PATCH net-next 39/44] tcp: accecn: verify ACE counter in 1st ACK after AccECN negotiation chia-yu.chang
2024-10-15 10:29 ` [PATCH net-next 40/44] tcp: accecn: stop sending AccECN option when loss ACK with AccECN option chia-yu.chang
2024-10-15 10:29 ` [PATCH net-next 41/44] Documentation: networking: Update ECN related sysctls chia-yu.chang
2024-10-15 10:29 ` [PATCH net-next 42/44] tcp: Add tso_segs() CC callback for TCP Prague chia-yu.chang
2024-10-15 10:29 ` [PATCH net-next 43/44] tcp: Add mss_cache_set_by_ca for CC algorithm to set MSS chia-yu.chang
2024-10-15 10:29 ` [PATCH net-next 44/44] tcp: Add the TCP Prague congestion control module chia-yu.chang
2024-10-15 10:51 ` [PATCH net-next 00/44] DualPI2, Accurate ECN, TCP Prague patch series Paolo Abeni
2024-10-15 15:14   ` Koen De Schepper (Nokia)
2024-10-15 17:52     ` Eric Dumazet
2024-10-15 19:30       ` Chia-Yu Chang (Nokia)

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20241015183216.6e0be5f2@kicinski-fedora-PC1C0HJN \
    --to=kuba@kernel.org \
    --cc=Jason_Livingood@comcast.com \
    --cc=cheshire@apple.com \
    --cc=chia-yu.chang@nokia-bell-labs.com \
    --cc=g.white@CableLabs.com \
    --cc=ij@kernel.org \
    --cc=ingemar.s.johansson@ericsson.com \
    --cc=koen.de_schepper@nokia-bell-labs.com \
    --cc=mirja.kuehlewind@ericsson.com \
    --cc=ncardwell@google.com \
    --cc=netdev@vger.kernel.org \
    --cc=rs.ietf@gmx.at \
    --cc=vidhi_goel@apple.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox