[TLS] Re: Bytes server -> client

Luke Valenta <lvalenta@cloudflare.com> Fri, 08 November 2024 14:09 UTC

Return-Path: <lvalenta@cloudflare.com>
X-Original-To: tls@ietfa.amsl.com
Delivered-To: tls@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id BD959C1DC80A for <tls@ietfa.amsl.com>; Fri, 8 Nov 2024 06:09:34 -0800 (PST)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -2.104
X-Spam-Level:
X-Spam-Status: No, score=-2.104 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIMWL_WL_MED=-0.001, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, HTML_MESSAGE=0.001, RCVD_IN_DNSWL_BLOCKED=0.001, RCVD_IN_ZEN_BLOCKED_OPENDNS=0.001, SPF_HELO_NONE=0.001, SPF_NONE=0.001, T_SCC_BODY_TEXT_LINE=-0.01, URIBL_DBL_BLOCKED_OPENDNS=0.001, URIBL_ZEN_BLOCKED_OPENDNS=0.001] autolearn=unavailable autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (2048-bit key) header.d=cloudflare.com
Received: from mail.ietf.org ([50.223.129.194]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id 3WPQrYMXY09i for <tls@ietfa.amsl.com>; Fri, 8 Nov 2024 06:09:30 -0800 (PST)
Received: from mail-pj1-x1029.google.com (mail-pj1-x1029.google.com [IPv6:2607:f8b0:4864:20::1029]) (using TLSv1.3 with cipher TLS_AES_128_GCM_SHA256 (128/128 bits) key-exchange X25519 server-signature ECDSA (P-256) server-digest SHA256) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id AD907C169409 for <tls@ietf.org>; Fri, 8 Nov 2024 06:09:30 -0800 (PST)
Received: by mail-pj1-x1029.google.com with SMTP id 98e67ed59e1d1-2e59746062fso1764518a91.2 for <tls@ietf.org>; Fri, 08 Nov 2024 06:09:30 -0800 (PST)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=cloudflare.com; s=google09082023; t=1731074970; x=1731679770; darn=ietf.org; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:from:to:cc:subject:date:message-id:reply-to; bh=IJShoD9undN2ragfEzMM9aVNOjLEHGoX81UrGb1fneY=; b=QWgpsSpVsSWnrEXUvC+IE+mRXcla5T2tSNhET4eDno+R2hhmOML+B7H+bD5Q/ftJkq NPLQP8ROQKc9P789jJa+shSmrMNiFFMfyB95gDTbsrCXQ+PhDKlHhxA7X79pu2mswUl1 NrcsguuIeKvX04XdqwJkJ8qoqAwnDGL46z2e6M7R1OlrAjdNTCatPmFnxTvJJyi0DmsP AL9z+hTRE+2HQ0Wf4icjRL2/QnzytextqTN3MGHHn3i/RHXRgCyeuQCZnB3OpT/xvaN0 grvy80cHsEmCIzOInlUvQ5UuS4BOKqutEA2DolQDNE5W3PaZT1Rych0GXzKiXt5+CFAl cc3A==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1731074970; x=1731679770; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:x-gm-message-state:from:to:cc:subject:date:message-id :reply-to; bh=IJShoD9undN2ragfEzMM9aVNOjLEHGoX81UrGb1fneY=; b=s2jajaJTfWQDjljefTlHIY5D/ETXzoCB8tcjzhf9JOdS2QtrlXTkqgLgB7OhFnXtxF 3mAzUxk4+PfXe9dSzkXfDPNS0JOGcYX3HJG5BATxFNxBZprQhioolfYjOU/0zMTlRQ4U fly2vQ6lhx1mgXNW9tcIHO1NapqLjq/6p83yy6122o/rmJSgSfRXeAZGtych4Kh5TQgb /xosLHKvtbPgk425lccHfcEOwkNaoZtbGOwZ3WBQY86b0dNg6RqGFW8juGtvgbTMAnbk urFik0M3U1boIghUuoYF60GyDmmw3+zso8I000+1FDEz4U6dzm/rcUtiWyY5WHPXb5hE PCZA==
X-Forwarded-Encrypted: i=1; AJvYcCXWhnyK996US6aASnNgVUe0J3SnxQBRt3GYivpAG//taW3s1/dg/PVS9tJ225UXWGywPEQ=@ietf.org
X-Gm-Message-State: AOJu0Ywkk7qs1ia+x2ypUN01/voPPqGoTZDl+hdOrlBWve3qkp+xRCW9 53L6guxHBICJHQKcpLpFyE7PlyszSJ6mCPpEPr1zgZCogqJ745v7pgr7+nYhooAYrUL+hZziLIi UgR4JQ1uvFZbEVlQooGiifR8Q61lysSbz9lY5bg==
X-Google-Smtp-Source: AGHT+IHSYIsQm30lgxijDqQg35+2x1ux0Zi0RvMPEJdc3bzfFWuE025TxUsWs22PORbmyfZ5G6Xya3x9/vUBxU5d9RA=
X-Received: by 2002:a17:90b:1a90:b0:2d3:c638:ec67 with SMTP id 98e67ed59e1d1-2e9b147d4fcmr3993141a91.0.1731074969931; Fri, 08 Nov 2024 06:09:29 -0800 (PST)
MIME-Version: 1.0
References: <CAMjbhoUdt53ypQMFgNDh6YM9kDpP8pEB7Ost1nBPFF=kwi-gsA@mail.gmail.com> <db4beff565254f25a643b5fada343afd@amazon.com>
In-Reply-To: <db4beff565254f25a643b5fada343afd@amazon.com>
From: Luke Valenta <lvalenta@cloudflare.com>
Date: Fri, 08 Nov 2024 09:09:14 -0500
Message-ID: <CAAUDTJhFPjZ96un2z5otqPX2wN0m+PafPFXJV-SXJHs+8KuMig@mail.gmail.com>
To: "Kampanakis, Panos" <kpanos=40amazon.com@dmarc.ietf.org>
Content-Type: multipart/alternative; boundary="000000000000a9b76d0626674c62"
Message-ID-Hash: 3GKES5Y2TDCJ5RF3DY7FFOKQXJ5ODZA4
X-Message-ID-Hash: 3GKES5Y2TDCJ5RF3DY7FFOKQXJ5ODZA4
X-MailFrom: lvalenta@cloudflare.com
X-Mailman-Rule-Misses: dmarc-mitigation; no-senders; approved; emergency; loop; banned-address; member-moderation; header-match-tls.ietf.org-0; nonmember-moderation; administrivia; implicit-dest; max-recipients; max-size; news-moderation; no-subject; digests; suspicious-header
CC: Bas Westerbaan <bas=40cloudflare.com@dmarc.ietf.org>, "<tls@ietf.org>" <tls@ietf.org>, "pqc@ietf.org" <pqc@ietf.org>
X-Mailman-Version: 3.3.9rc6
Precedence: list
Subject: [TLS] Re: Bytes server -> client
List-Id: "This is the mailing list for the Transport Layer Security working group of the IETF." <tls.ietf.org>
Archived-At: <https://mailarchive.ietf.org/arch/msg/tls/V1hNVjFR7-buyjjFYPyQHPkgY6k>
List-Archive: <https://mailarchive.ietf.org/arch/browse/tls>
List-Help: <mailto:tls-request@ietf.org?subject=help>
List-Owner: <mailto:tls-owner@ietf.org>
List-Post: <mailto:tls@ietf.org>
List-Subscribe: <mailto:tls-join@ietf.org>
List-Unsubscribe: <mailto:tls-leave@ietf.org>

Hi Panos,

Great questions—we’ll aim to share some numbers next week.

Regarding the Chrome 10% budget, that’s taken from here (linked from the
Cloudflare blog post, but the link didn’t survive the copy/paste to this
list):
https://dadrian.io/blog/posts/pqc-signatures-2024/
<https://dadrian.io/blog/posts/pqc-signatures-2024/#fnref:3>

Best,
Luke

Luke Valenta
Systems Engineer - Research


On Thu, Nov 7, 2024 at 10:54 AM Kampanakis, Panos <kpanos=
40amazon.com@dmarc.ietf.org> wrote:

> Hi Bas,
>
>
>
> That is interesting and surprising, thank you.
>
>
>
> I am mostly interested in the ~63% of non-resumed sessions that would be
> affected by 10-15KB of auth data. It looks like your data showed that each
> QUIC conn transfers about 4.7KB which is very surprising to me. It seems
> very low.
>
>
>
> In experiments I am getting here for top web servers, I see lots of conns
> which transfer hundreds of KB even over QUIC in cached browsers sessions.
> This aligns with the average KB from your blog is 551*0.6=~330KB, but not
> the median 4.7. Hundreds of KB also aligns with the p50 per page / conns
> per page in
> https://httparchive.org/reports/page-weight?lens=top1k&start=2024_05_01&end=latest&view=list
> . Of course browsers cache a lot of things like javascript, images etc, so
> they don’t transfer all resources which could explain the median. But
> still, based on anecdotal experience looking at top visited servers, I am
> noticing many small transfers and just a few that transfer larger HTML, css
> etc on every page even in cached browser sessions..
>
>
>
> I am curious about the 4.7KB and the 15.8% of conns transferring <100KB in
> your blog. Like you say in your blog, if the 95th percentile includes
> very large transfers that would skew the diff between the median and the
> average. But I am wondering if there is another explanation. In my
> experiments I see a lot of 302 and 301 redirects which transfer minimal
> data. Some pages have a lot of those. If you have many of them, then your
> median will get skewed as it fills up with very small data transfers that
> basically don’t do anything. In essence, we could have 10 pages which
> transfer 100KB each for one of their resources and have another 9 that are
> HTTP Redirects or transfer 0.1KB. That would make us think that 90% of the
> 10 pages will be blazing fast, but the 100KB resource in each page will
> take a good amount of time in a slow network.
>
>
>
> To validate this theory, what would your data show if you queried for the
> % of conns that transfer <.5 or <1KB? If that is a lot, then there are many
> small conns that skew the median downwards. Or what if you run the query to
> exclude the very heavy conns and the very light (HTTP 301, 302 etc)? For
> example if you ran a report on the conns transferring 1KB<data<80th
> percentile KB, what would be the median for that? That would tell us if the
> too small and two big conns skew the median.
>
>
>
> Btw, I am curious also about
>
> > Chrome is more cautious and set 10% as their target for maximum TLS
> handshake time regression.
>
> Is this public somewhere? There is no immediate link between TLS handshake
> and any of the Core Web Vitals Metrics or the CruX metrics other than the
> TTFB. Even for the TTFB, 10% in the handshake does not mean 10% TTFB; the
> TTFB is affected much less. I am wondering if we should start expecting the
> TLS handshake to slowly become a tracked web performance metric.
>
>
>
>
>
> *From:* Bas Westerbaan <bas=40cloudflare.com@dmarc.ietf.org>
> *Sent:* Thursday, November 7, 2024 9:07 AM
> *To:* <tls@ietf.org> <tls@ietf.org>; pqc@ietf.org
> *Subject:* [EXTERNAL] [TLS] Bytes server -> client
>
>
>
> *CAUTION*: This email originated from outside of the organization. Do not
> click links or open attachments unless you can confirm the sender and know
> the content is safe.
>
>
>
> Hi all,
>
>
>
> Just wanted to highlight a blog post we just published.
> https://blog.cloudflare.com/another-look-at-pq-signatures/  At the end we
> share some statistics that may be of interest:
>
>
>
> On average, around 15 million TLS connections are established with
> Cloudflare per second. Upgrading each to ML-DSA, would take 1.8Tbps, which
> is 0.6% of our current total network capacity. No problem so far. The
> question is how these extra bytes affect performance.
> Back in 2021, we ran a large-scale experiment to measure the impact of big
> post-quantum certificate chains on connections to Cloudflare’s network over
> the open Internet. There were two important results. First, we saw a steep
> increase in the rate of client and middlebox failures when we added more
> than 10kB to existing certificate chains. Secondly, when adding less than
> 9kB, the slowdown in TLS handshake time would be approximately 15%. We felt
> the latter is workable, but far from ideal: such a slowdown is noticeable
> and people might hold off deploying post-quantum certificates before it’s
> too late.
>
>
>
> Chrome is more cautious and set 10% as their target for maximum TLS
> handshake time regression. They report that deploying post-quantum key
> agreement has already incurred a 4% slowdown in TLS handshake time, for the
> extra 1.1kB from server-to-client and 1.2kB from client-to-server. That
> slowdown is proportionally larger than the 15% we found for 9kB, but that
> could be explained by slower upload speeds than download speeds.
>
>
> There has been pushback against the focus on TLS handshake times. One
> argument is that session resumption alleviates the need for sending the
> certificates again. A second argument is that the data required to visit a
> typical website dwarfs the additional bytes for post-quantum certificates.
> One example is this 2024 publication, where Amazon researchers have
> simulated the impact of large post-quantum certificates on data-heavy TLS
> connections. They argue that typical connections transfer multiple requests
> and hundreds of kilobytes, and for those the TLS handshake slowdown
> disappears in the margin.
>
>
>
> Are session resumption and hundreds of kilobytes over a connection typical
> though? We’d like to share what we see. We focus on QUIC connections, which
> are likely initiated by browsers or browser-like clients. Of all QUIC
> connections with Cloudflare that carry at least one HTTP request, 37% are
> resumptions, meaning that key material from a previous TLS connection is
> reused, avoiding the need to transmit certificates. The median number of
> bytes transferred from server-to-client over a resumed QUIC connection is
> 4.4kB, while the average is 395kB. For non-resumptions the median is 7.8kB
> and average is 551kB. This vast difference between median and average
> indicates that a small fraction of data-heavy connections skew the average.
> In fact, only 15.8% of all QUIC connections transfer more than 100kB.
>
>
> The median certificate chain today (with compression) is 3.2kB. That means
> that almost 40% of all data transferred from server to client on more than
> half of the non-resumed QUIC connections are just for the certificates, and
> this only gets worse with post-quantum algorithms. For the majority of QUIC
> connections, using ML-DSA as a drop-in replacement for classical signatures
> would more than double the number of transmitted bytes over the lifetime of
> the connection.
>
>
>
> It sounds quite bad if the vast majority of data transferred for a typical
> connection is just for the post-quantum certificates. It’s still only a
> proxy for what is actually important: the effect on metrics relevant to the
> end-user, such as the browsing experience (e.g. largest contentful paint)
> and the amount of data those certificates take from a user’s monthly data
> cap. We will continue to investigate and get a better understanding of the
> impact.
>
>
>
> Best,
>
>
>
>  Bas
> _______________________________________________
> TLS mailing list -- tls@ietf.org
> To unsubscribe send an email to tls-leave@ietf.org
>