Significant milestone on HAProxy's H3/QUIC

Willy Tarreau <> Thu, 23 September 2021 15:30 UTC

Return-Path: <>
Received: from localhost (localhost []) by (Postfix) with ESMTP id 7B1F43A0E47 for <>; Thu, 23 Sep 2021 08:30:30 -0700 (PDT)
X-Virus-Scanned: amavisd-new at
X-Spam-Flag: NO
X-Spam-Score: -1.901
X-Spam-Status: No, score=-1.901 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, SPF_PASS=-0.001] autolearn=ham autolearn_force=no
Received: from ([]) by localhost ( []) (amavisd-new, port 10024) with ESMTP id CHSL5IZzOwaE for <>; Thu, 23 Sep 2021 08:30:28 -0700 (PDT)
Received: from ( []) by (Postfix) with ESMTP id C25B03A0E45 for <>; Thu, 23 Sep 2021 08:30:26 -0700 (PDT)
Received: (from willy@localhost) by pcw.home.local (8.15.2/8.15.2/Submit) id 18NFUMRL020795; Thu, 23 Sep 2021 17:30:22 +0200
Date: Thu, 23 Sep 2021 17:30:22 +0200
From: Willy Tarreau <>
To: HTTP Working Group <>, IETF QUIC WG <>
Subject: Significant milestone on HAProxy's H3/QUIC
Message-ID: <>
MIME-Version: 1.0
Content-Type: text/plain; charset="us-ascii"
Content-Disposition: inline
User-Agent: Mutt/1.10.1 (2018-07-13)
Archived-At: <>
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: Main mailing list of the IETF QUIC working group <>
List-Unsubscribe: <>, <>
List-Archive: <>
List-Post: <>
List-Help: <>
List-Subscribe: <>, <>
X-List-Received-Date: Thu, 23 Sep 2021 15:30:31 -0000

Hi all,

I'm really glad to say that my coworkers Fred and Amaury are seeing
their long tireless work on H3+QUIC start to pay off. Today I was
pleased to see an H3 request from curl pass through HAProxy, being
forwarded to Apache in H2, and the H2 response being routed and
translated back to H3 so that curl could print it.

They would have preferred that I remain discrete about it given the
extremely fragile state of the current code, but I'm really glad as
the project's maintainer and I'm also glad from an interoperability
perspective, because the more implementations we see, the faster we'll
spot and fix bugs, so I was not going to keep that for me :-)

Of course our implementation still has many limitations and bugs, but I
know by experience that once requests and responses start to flow back
and forth, the development tremendously speeds up. I clearly don't
expect anything great for the 2.5 release due in 1.5 month but if it can
at least help us progress faster and help others test their code against
yet another server implementation, that will be great already (for now
the client code is disabled, there's enough work to do with the server
one :-)).

I've posted a screenshot of curl's and haproxy's debug outputs
side-by-side here for those interested:

Obviously there's still a long way to go before it can be considered
production ready, but we're seeing some faint light at the end of this
long tunnel, it's pleasant :-)