On Fri, Sep 13, 2024 at 9:05 PM Cong Wang <xiyou.wangcong@xxxxxxxxx> wrote: > > On Mon, Sep 09, 2024 at 10:30:15PM -0400, Xin Long wrote: > > 4. Performance testing via iperf > > > > The performance testing was conducted using iperf [5] over a 100G > > physical NIC, evaluating various packet sizes and MTUs: > > > > - QUIC vs. kTLS: > > > > UNIT size:1024 size:4096 size:16384 size:65536 > > Gbits/sec QUIC | kTLS QUIC | kTLS QUIC | kTLS QUIC | kTLS > > ──────────────────────────────────────────────────────────────────── > > mtu:1500 1.67 | 2.16 3.04 | 5.04 3.49 | 7.84 3.83 | 7.95 > > ──────────────────────────────────────────────────────────────────── > > mtu:9000 2.17 | 2.41 5.47 | 6.19 6.45 | 8.66 7.48 | 8.90 > > > > - QUIC(disable_1rtt_encryption) vs. TCP: > > > > UNIT size:1024 size:4096 size:16384 size:65536 > > Gbits/sec QUIC | TCP QUIC | TCP QUIC | TCP QUIC | TCP > > ──────────────────────────────────────────────────────────────────── > > mtu:1500 2.17 | 2.49 3.59 | 8.36 6.09 | 15.1 6.92 | 16.2 > > ──────────────────────────────────────────────────────────────────── > > mtu:9000 2.47 | 2.54 7.66 | 7.97 14.7 | 20.3 19.1 | 31.3 > > > > > > The performance gap between QUIC and kTLS may be attributed to: > > > > - The absence of Generic Segmentation Offload (GSO) for QUIC. > > - An additional data copy on the transmission (TX) path. > > - Extra encryption required for header protection in QUIC. > > - A longer header length for the stream data in QUIC. > > > > This is not appealing. > > However, I can offer you one more possible advantage of in-kernel QUIC. > You can think about adding iouring support for QUIC socket, because that > could possibly chain the socket fastpath operations together which opens > the door for more optimization. > I haven't had the chance to try io_uring. From what I understand, it doesn’t require any changes to the protocol stack (Linux QUIC doesn’t support MSG_ZEROCOPY at this time). Thanks for offering this suggestion, it sounds worth exploring when using the QUIC socket in the future. Thanks.