From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mail-io1-xd32.google.com (mail-io1-xd32.google.com [IPv6:2607:f8b0:4864:20::d32]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by lists.bufferbloat.net (Postfix) with ESMTPS id 339FD3B2A4 for ; Thu, 29 Aug 2019 09:51:38 -0400 (EDT) Received: by mail-io1-xd32.google.com with SMTP id j4so6954093iog.11 for ; Thu, 29 Aug 2019 06:51:38 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=mime-version:references:in-reply-to:from:date:message-id:subject:to :cc:content-transfer-encoding; bh=riu2QHRaHNlXZtqFIzf519EUyKFrlBXKieUmLYJE+Kk=; b=jKE6L7jtTgJHurFl/EWTACcJIh+ZhlilgbsEjOgpLveAX9s15Kpfi0k/BkICy+n31z OxWiJs1eQN6RsLHjpb5qRyhGJhmubczCDk2AFv9TmoD6Ana+yDd32nu1pvJ2Oyup/dz7 qK50VV0+k0jJqUSRxnzoD/HpoEwdz5+P/QVnFF7YmrEQ1M+/uf2hYd3jwV6yjDx6CZNw IqfwFx1vDyenKAh5goKOVQXrP3HVo2gbCnDC1IXH6cTdXN0VmIWtcakIZ5x7zVojHqZV TpCR0Kof/pr0JzsUT00/TRahGGGCi+Bbs5+oqbFVgiKqKyuEk676ikAM4SiqAfz/Wiv8 H1PQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:references:in-reply-to:from:date :message-id:subject:to:cc:content-transfer-encoding; bh=riu2QHRaHNlXZtqFIzf519EUyKFrlBXKieUmLYJE+Kk=; b=uOhw/nJWugqVnRXsXVtr8Hdh1sQmZa3lxG69iu6o8GKV76W6Y1zoq+BIiFgcPfFeeB lQCSQnjKsZe1Bb/4HqOlhThZzzc0m634Y2fw2aO8AWOiXr3XfHYkNjGz038fym5fT+Km 0voZ1RQoRlLlrYq3g9yPp3H37CIGFv4DjlAUQlkxmQDhLAqpkaxpJQADRSgn6326vVOJ sUz3z3+nfXGi5vF68EWWLFN4cGHin/wpr5CszbVzvQzghTL6Ms3LG5DiVRZOQzklwWKF KSaF5lWUXH7zmS/wfqlCnU19wM9U5Zk0Va2H1OIkH1OUmUuVsJxyLNLR1RqiTgteqCm2 ycQQ== X-Gm-Message-State: APjAAAXTNhR3+wOepE7dBxetJB69cXQaGLw+/j5K0OBEoxlZIRXJmlO6 z9GGKimPpqT6XSkBjHiToSpEN81SQ9DwoujAkmI= X-Google-Smtp-Source: APXvYqwu9tNE5JUD/a3w4+xBFA3coVc7eZNxOXb8JYVSZwMF0DjUgwTvHitIVY7wHZJRl1BDrnISsKvE+/lu2ip1r/8= X-Received: by 2002:a5e:9818:: with SMTP id s24mr12004659ioj.0.1567086697534; Thu, 29 Aug 2019 06:51:37 -0700 (PDT) MIME-Version: 1.0 References: In-Reply-To: From: Dave Taht Date: Thu, 29 Aug 2019 06:51:25 -0700 Message-ID: To: Jonathan Morton Cc: ECN-Sane Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable Subject: Re: [Ecn-sane] rfc3168 sec 6.1.2 X-BeenThere: ecn-sane@lists.bufferbloat.net X-Mailman-Version: 2.1.20 Precedence: list List-Id: Discussion of explicit congestion notification's impact on the Internet List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 29 Aug 2019 13:51:38 -0000 On Thu, Aug 29, 2019 at 1:02 AM Jonathan Morton wro= te: > > > On 29 Aug, 2019, at 5:08 am, Dave Taht wrote: > > > > It would explain a lot if this was not actually implemented in Linux. > > I'm afraid to look. cwnd reduction is capped to 2. 1 should put you > > in quickack mode AND to go lower seemingly it's supposed to > > then rely on the retransmit timer. > > Nowadays the same effect can be obtained from the pacing timer. Just set= the CA scale factor to 50% to get an effective minimum cwnd of 1, or lower= still if needed. But that wouldn't trigger quickacks from the other side unless it's cwnd 1? > In most of our SCE testing, we're now setting the SS scale factor to 100%= (the default is 200%, which means the cwnd is sent over half an RTT and th= e other half is idle) and the CA scale factor to 40% (default is 120%, so t= he effective minimum cwnd is actually 2.4 from a packet-pair standpoint). = See the last substantive slide in the IETF-105 SCE deck. > > - Jonathan Morton I am leveraging hazy memories of old work a years back where I pounded 50 ? 100 ? flows through a 100Mbit ethernet bottleneck, with a variety of aqm and tcp ccs. I never got around to writing it up, but what I observed was along the lines of: A) fq_codel with drop had MUCH lower RTTs - and would trigger RTOs etc - and interactive ssh sessions kept working - which made me happier than B) cake (or fq_codel with ecn) hit, I don't remember, 40ms tcp delays. > double that of drop is the stat I remember C) The workload was such that the babel protocol (1000? routes - 4 packet non-ecn'd udp bursts) would eventually fail - dramatically, by retracting the route I was on and thus acting as a circuit breaker on all traffic, so I'd lose connectivit for 16 sec - and failed much more often in the latter case D) The packet caps were capped at cwnd 2 or (4 with BBR) and I didn't know enough about that until today E) Head drop really was remarkablly better at keeping all the flows going F) Pie hit its targets as did codel with drop, but with ecn.... ugh.... And at the time of all this carnage I basically said "ecn scares me yet again", patched my babel daemons to use it, filed a bug on how we think about micro flows wrongly here: here: https://github.com/tohojo/flent/issues/148 - wrote the ecn-sane manefesto - and went off to play with my kid and boat. Anyway, 100 flows, no delays, straight ethernet, and babel with 1000+ routes is easy to setup as a std test, and I'd love it if y'all could have that in your testbed. And: cwnd 1 + pacing might help in this extreme scenarios. This last bit of how rfc3168 ecn should be better handled was not in my head, I had assumed til now that new research into subpacket windows was required. Leveraging the retransmit timer, btw, would lighten the load on the network a LOT, way back in 2001 when it was first thunk up. sally was a genius --=20 Dave T=C3=A4ht CTO, TekLibre, LLC http://www.teklibre.com Tel: 1-831-205-9740