[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID:
<PAXPR07MB798400D4AC41A3347A52283EA33DA@PAXPR07MB7984.eurprd07.prod.outlook.com>
Date: Fri, 22 Aug 2025 10:08:31 +0000
From: "Chia-Yu Chang (Nokia)" <chia-yu.chang@...ia-bell-labs.com>
To: Eric Dumazet <edumazet@...gle.com>
CC: "pabeni@...hat.com" <pabeni@...hat.com>, "linux-doc@...r.kernel.org"
<linux-doc@...r.kernel.org>, "corbet@....net" <corbet@....net>,
"horms@...nel.org" <horms@...nel.org>, "dsahern@...nel.org"
<dsahern@...nel.org>, "kuniyu@...zon.com" <kuniyu@...zon.com>,
"bpf@...r.kernel.org" <bpf@...r.kernel.org>, "netdev@...r.kernel.org"
<netdev@...r.kernel.org>, "dave.taht@...il.com" <dave.taht@...il.com>,
"jhs@...atatu.com" <jhs@...atatu.com>, "kuba@...nel.org" <kuba@...nel.org>,
"stephen@...workplumber.org" <stephen@...workplumber.org>,
"xiyou.wangcong@...il.com" <xiyou.wangcong@...il.com>, "jiri@...nulli.us"
<jiri@...nulli.us>, "davem@...emloft.net" <davem@...emloft.net>,
"andrew+netdev@...n.ch" <andrew+netdev@...n.ch>, "donald.hunter@...il.com"
<donald.hunter@...il.com>, "ast@...erby.net" <ast@...erby.net>,
"liuhangbin@...il.com" <liuhangbin@...il.com>, "shuah@...nel.org"
<shuah@...nel.org>, "linux-kselftest@...r.kernel.org"
<linux-kselftest@...r.kernel.org>, "ij@...nel.org" <ij@...nel.org>,
"ncardwell@...gle.com" <ncardwell@...gle.com>, "Koen De Schepper (Nokia)"
<koen.de_schepper@...ia-bell-labs.com>, "g.white@...lelabs.com"
<g.white@...lelabs.com>, "ingemar.s.johansson@...csson.com"
<ingemar.s.johansson@...csson.com>, "mirja.kuehlewind@...csson.com"
<mirja.kuehlewind@...csson.com>, "cheshire@...le.com" <cheshire@...le.com>,
"rs.ietf@....at" <rs.ietf@....at>, "Jason_Livingood@...cast.com"
<Jason_Livingood@...cast.com>, "vidhi_goel@...le.com" <vidhi_goel@...le.com>
Subject: RE: [PATCH v15 net-next 14/14] tcp: accecn: try to fit AccECN option
with SACK
> -----Original Message-----
> From: Eric Dumazet <edumazet@...gle.com>
> Sent: Thursday, August 21, 2025 3:04 PM
> To: Chia-Yu Chang (Nokia) <chia-yu.chang@...ia-bell-labs.com>
> Cc: pabeni@...hat.com; linux-doc@...r.kernel.org; corbet@....net; horms@...nel.org; dsahern@...nel.org; kuniyu@...zon.com; bpf@...r.kernel.org; netdev@...r.kernel.org; dave.taht@...il.com; jhs@...atatu.com; kuba@...nel.org; stephen@...workplumber.org; xiyou.wangcong@...il.com; jiri@...nulli.us; davem@...emloft.net; andrew+netdev@...n.ch; donald.hunter@...il.com; ast@...erby.net; liuhangbin@...il.com; shuah@...nel.org; linux-kselftest@...r.kernel.org; ij@...nel.org; ncardwell@...gle.com; Koen De Schepper (Nokia) <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
> Subject: Re: [PATCH v15 net-next 14/14] tcp: accecn: try to fit AccECN option with SACK
>
>
> CAUTION: This is an external email. Please be very careful when clicking links or opening attachments. See the URL nok.it/ext for additional information.
>
>
>
> On Fri, Aug 15, 2025 at 1:40 AM <chia-yu.chang@...ia-bell-labs.com> wrote:
> >
> > From: Chia-Yu Chang <chia-yu.chang@...ia-bell-labs.com>
> >
> > As SACK blocks tend to eat all option space when there are many holes,
> > it is useful to compromise on sending many SACK blocks in every ACK
> > and attempt to fit the AccECN option there by reducing the number of
> > SACK blocks. However, it will never go below two SACK blocks because
> > of the AccECN option.
> >
> > As the AccECN option is often not put to every ACK, the space hijack
> > is usually only temporary. Depending on the reuqired AccECN fields
> > (can be either 3, 2, 1, or 0, cf. Table 5 in AccECN spec) and the NOPs
> > used for alignment of other TCP options, up to two SACK blocks will be
> > reduced. Please find below tables for more details:
> >
> > +====================+=========================================+
> > | Number of | Required | Remaining | Number of | Final |
> > | SACK | AccECN | option | reduced | number of |
> > | blocks | fields | spaces | SACK blocks | SACK blocks |
> > +===========+==========+===========+=============+=============+
> > | x (<=2) | 0 to 3 | any | 0 | x |
> > +-----------+----------+-----------+-------------+-------------+
> > | 3 | 0 | any | 0 | 3 |
> > | 3 | 1 | <4 | 1 | 2 |
> > | 3 | 1 | >=4 | 0 | 3 |
> > | 3 | 2 | <8 | 1 | 2 |
> > | 3 | 2 | >=8 | 0 | 3 |
> > | 3 | 3 | <12 | 1 | 2 |
> > | 3 | 3 | >=12 | 0 | 3 |
> > +-----------+----------+-----------+-------------+-------------+
> > | y (>=4) | 0 | any | 0 | y |
> > | y (>=4) | 1 | <4 | 1 | y-1 |
> > | y (>=4) | 1 | >=4 | 0 | y |
> > | y (>=4) | 2 | <8 | 1 | y-1 |
> > | y (>=4) | 2 | >=8 | 0 | y |
> > | y (>=4) | 3 | <4 | 2 | y-2 |
> > | y (>=4) | 3 | <12 | 1 | y-1 |
> > | y (>=4) | 3 | >=12 | 0 | y |
> > +===========+==========+===========+=============+=============+
> >
>
> It is unclear if this chart takes into account the TCP TS option ?
>
> Can you clarify this point ?
Hi Eric,
Above table does NOT take that into account, and tcp_options_fit_accecn() is done at the end when building the TCP option.
While the TS option is added before this function is called, so the impact is that "remaining option spaces" of the above table will be reduced due to TS option.
Do you think anything shall be added in that table?
Chia-Yu
Powered by blists - more mailing lists