Discussion of explicit congestion notification's impact on the Internet
 help / color / mirror / Atom feed
From: Dave Taht <dave.taht@gmail.com>
To: ECN-Sane <ecn-sane@lists.bufferbloat.net>
Subject: [Ecn-sane] Fwd: Fw: [Bug 206319] New: ECN header flag processing overly restrictive in TCP
Date: Tue, 28 Jan 2020 14:55:52 -0800	[thread overview]
Message-ID: <CAA93jw4gZhASaHBkdFC7ns-+ZRs-g_DoSE1kXQ4hBdeNRjjt3Q@mail.gmail.com> (raw)
In-Reply-To: <20200127054830.53973d51@hermes.lan>

My understanding from reading rfc3168 is that the retransmit should be
unprotected and yes! sometimes force a RTO should the link be so
overburdened as to need to drop packets or back off hard. The idea
that marking retransmits with ECT(0) might save on retransmits is
irrelevant, although I wish modern tcps would somehow drop down to a
cwnd of 1 under extreme congestion.

https://reviews.freebsd.org/D23118

---------- Forwarded message ---------
From: Stephen Hemminger <stephen@networkplumber.org>
Date: Mon, Jan 27, 2020 at 5:48 AM
Subject: Fw: [Bug 206319] New: ECN header flag processing overly
restrictive in TCP
To: <netdev@vger.kernel.org>




Begin forwarded message:

Date: Mon, 27 Jan 2020 08:15:36 +0000
From: bugzilla-daemon@bugzilla.kernel.org
To: stephen@networkplumber.org
Subject: [Bug 206319] New: ECN header flag processing overly restrictive in TCP


https://bugzilla.kernel.org/show_bug.cgi?id=206319

            Bug ID: 206319
           Summary: ECN header flag processing overly restrictive in TCP
           Product: Networking
           Version: 2.5
    Kernel Version: HEAD
          Hardware: All
                OS: Linux
              Tree: Mainline
            Status: NEW
          Severity: normal
          Priority: P1
         Component: Other
          Assignee: stephen@networkplumber.org
          Reporter: rscheff@gmx.at
        Regression: No

RFC3168 states, that a CWR flag "SHOULD" be *sent* together with a new data
segment.

However, linux is processing the CWR flag as data receiver ONLY when it arrives
together with some data (but apparently does accept it on retransmissions).

This has been found to be an interoperability issue with *BSD, where the CWR is
sent as quickly as possible, including on pure ACKs (or retransmissions) so
far. That deviation from RFC3168 there is reported at
https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=243231

Nevertheless, CWR processing as receiver should be less restrictive, to meet
the sprit of Postels Law: "Be liberal in what you accept, and conservative in
what you send."


This has been demonstrated to be a dramatic performance impediment, as the data
receiver (linux) keeps the ECE latched, while *BSD interprets the additional
ECE flags as another round of congestion. To which the data sender reacts by
continous reductions of the congestion window until extremely low packet
transmission rates (1 packet per delayed ACK timeout, or even persist timeout
(5s) are hit, and kept at that level for extensive periods of time.

Discussed this issue with Neal and Yuchung already, this bug report is to track
the issue in the field (impacted environments).

--
You are receiving this mail because:
You are the assignee for the bug.


-- 
Make Music, Not War

Dave Täht
CTO, TekLibre, LLC
http://www.teklibre.com
Tel: 1-831-435-0729

           reply	other threads:[~2020-01-28 22:56 UTC|newest]

Thread overview: expand[flat|nested]  mbox.gz  Atom feed
 [parent not found: <20200127054830.53973d51@hermes.lan>]

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

  List information: https://lists.bufferbloat.net/postorius/lists/ecn-sane.lists.bufferbloat.net/

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

  git send-email \
    --in-reply-to=CAA93jw4gZhASaHBkdFC7ns-+ZRs-g_DoSE1kXQ4hBdeNRjjt3Q@mail.gmail.com \
    --to=dave.taht@gmail.com \
    --cc=ecn-sane@lists.bufferbloat.net \
    /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