Discussion of explicit congestion notification's impact on the Internet
 help / color / mirror / Atom feed
From: Dave Taht <dave.taht@gmail.com>
To: Neal Cardwell <ncardwell@google.com>
Cc: ECN-Sane <ecn-sane@lists.bufferbloat.net>,
	 BBR Development <bbr-dev@googlegroups.com>,
	flent-users <flent-users@flent.org>
Subject: Re: [Ecn-sane] [bbr-dev] duplicating the BBRv2 tests at iccrg in flent?
Date: Sat, 6 Apr 2019 13:49:43 +0200	[thread overview]
Message-ID: <CAA93jw4P30tJKR_O=qP52aJjjvePFatYcKDDnnQ44WUZAHph1w@mail.gmail.com> (raw)
In-Reply-To: <CADVnQy=DfST=dHFkZg9EeQRL0OH9HOqgRfJ0uWgUu4fBLD9tSA@mail.gmail.com>

> With fq_codel and the same ECN marking threshold (fq_codel ce_threshold 242us), we see slightly smoother fairness properties (not surprising) but with slightly higher latency.
>
> The basic summary:
>
> retransmits: 0
> flow throughput: [46.77 .. 51.48]
> RTT samples at various percentiles:
>   %   | RTT (ms)
> ------+---------
>    0    1.009
>   50    1.334
>   60    1.416
>   70    1.493
>   80    1.569
>   90    1.655
>   95    1.725
>   99    1.902
>   99.9  2.328
>  100    6.414

I am still trying to decode the output of this tool. Perhaps you can
check my math?

At 0, I figure this is the bare minimum RTT latency measurement from
the first flow started, basically a syn/syn ack pair, yielding 9us, of
which gives a tiny baseline to/from the wire delay, the overhead of a
tcp connection getting going, and the routing overheads (if you are
using a route table?) of (last I looked) ~25ns per virtual hop (so *8)
for ipv4 and something much larger if you are using ipv6. This is
using ipv4?

A perfect level of interleave of 20 flows, 2 large packets each, would
yield a RTT measurement of around 532 extra us, but you are only
seeing that at the 80th percentile...

100: The almost-worst case basic scenario is that 20 flows of 64k
GRO/GSO bytes each are served in order. That's 13us * 42 * 20 =
10.920ms. It's potentially worse than that due to the laws of
probability one flow could get scheduled more than once.

1) What is the qdisc on the server and client side? sch_fq? pfifo_fast?

2) What happens when you run the same test with gso/gro disabled?

  parent reply	other threads:[~2019-04-06 11:49 UTC|newest]

Thread overview: 14+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2019-04-05  7:42 [Ecn-sane] " Dave Taht
2019-04-05 15:10 ` [Ecn-sane] [bbr-dev] " Neal Cardwell
2019-04-05 15:51   ` Dave Taht
2019-04-05 16:58     ` Neal Cardwell
2019-04-05 16:20   ` Jonathan Morton
2019-04-06 11:56     ` Neal Cardwell
2019-04-06 14:37       ` [Ecn-sane] [Flent-users] " Sebastian Moeller
2019-04-09  1:33         ` Neal Cardwell
2019-04-09  2:09           ` Jonathan Morton
2019-04-09  6:30           ` Sebastian Moeller
2019-04-09 14:33             ` Neal Cardwell
2019-04-09 17:20               ` Sebastian Moeller
2019-04-06 11:49   ` Dave Taht [this message]
2019-04-06 12:31     ` [Ecn-sane] " Neal Cardwell

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='CAA93jw4P30tJKR_O=qP52aJjjvePFatYcKDDnnQ44WUZAHph1w@mail.gmail.com' \
    --to=dave.taht@gmail.com \
    --cc=bbr-dev@googlegroups.com \
    --cc=ecn-sane@lists.bufferbloat.net \
    --cc=flent-users@flent.org \
    --cc=ncardwell@google.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