Re: Payload length 0

Jana Iyengar <jri.ietf@gmail.com> Sun, 20 May 2018 17:44 UTC

Return-Path: <jri.ietf@gmail.com>
X-Original-To: quic@ietfa.amsl.com
Delivered-To: quic@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id D32F212D7F4 for <quic@ietfa.amsl.com>; Sun, 20 May 2018 10:44:36 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -2.699
X-Spam-Level:
X-Spam-Status: No, score=-2.699 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, FREEMAIL_FROM=0.001, HTML_MESSAGE=0.001, RCVD_IN_DNSWL_LOW=-0.7, SPF_PASS=-0.001] autolearn=ham autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (2048-bit key) header.d=gmail.com
Received: from mail.ietf.org ([4.31.198.44]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id DeewlCFJyzDw for <quic@ietfa.amsl.com>; Sun, 20 May 2018 10:44:34 -0700 (PDT)
Received: from mail-it0-x236.google.com (mail-it0-x236.google.com [IPv6:2607:f8b0:4001:c0b::236]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id AEE0512D7F2 for <quic@ietf.org>; Sun, 20 May 2018 10:44:34 -0700 (PDT)
Received: by mail-it0-x236.google.com with SMTP id e20-v6so18702598itc.1 for <quic@ietf.org>; Sun, 20 May 2018 10:44:34 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=mime-version:in-reply-to:references:from:date:message-id:subject:to :cc; bh=JGtU4J4+mADyNO3zYsUlDLH656WQw04hRbNLS0bAO5o=; b=RDsdraDX7vHtFsFhCxsqaq9QSfUc2N1sax7AadVPXth1If/l9E1vEWNv04tQTysAFm /74q1OBznYHY5EZ2Bvs5WdmbWdP/WIdCY1AK1mIHD+x60MtILyX3SrWh1zrZJIwRMrAu T4O9xQJ7ahPBhm0uvkQpAhNYO5OOn8c0Ru+2zdmzRGrVNu1cw4iNLmdPVv1znVLbeufV sw2d/f0DK7FF7x6NjE+dGdYB2jQfwM2Qd3UMoux15HBcpfR01iigcTrkeSP9d80e7WKy EKCylTdp+o8RC/DDR0x/hrccN4tqEmyEu0a23InnCiIijV9629Gm9tijF2wr45QLAJd8 zZPg==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:in-reply-to:references:from:date :message-id:subject:to:cc; bh=JGtU4J4+mADyNO3zYsUlDLH656WQw04hRbNLS0bAO5o=; b=akPQyMm+xYwXlwzFChND6wsf/4NpKPH6r0Zlmv5Hw3pwcSPglln8nst/CT05UOtUeU cF4PSnfMoKDVMW0cm4QodNC41j4EMrfquDc+rKlCNv0TVW70f/s7pEefzwijWNjJ4n5q 2lxUlO3RucltAUr/9KtTiVul+GutZ01L8EpfYPuRmepzkk5NSHN067EMVtoZa5WM3x5M 4dJy9DJ31Jllwz9fJt7o2XGKnmz7HrLsEDBnxOhcGAHnsHN4UkeOk5fCHzIQVHUuA/x0 qVpNnK09F39FDINL4kHdVOBRf5bZI7MBElPMXITTgaXNK3TxtstYxvMVLBbQGmkk0liX pXow==
X-Gm-Message-State: ALKqPwdF/u3UDD9KfYKNxZ7YuTrJaX52Lzfmf3BlBxYbinjz9E/kE455 zrmUnqdqnkYkCEvS+sQZmGqUEFjN8lwmv5/oZP0=
X-Google-Smtp-Source: AB8JxZpzYeGjMhufySb7owTXxPzvHnSvKYQQCYSysind+GdMI6GLCOnFMsKWpyGmBlvE1iAmD/9JX2MLWTjkBOOPnTA=
X-Received: by 2002:a24:36ca:: with SMTP id l193-v6mr14691689itl.103.1526838273974; Sun, 20 May 2018 10:44:33 -0700 (PDT)
MIME-Version: 1.0
Received: by 2002:a4f:27d4:0:0:0:0:0 with HTTP; Sun, 20 May 2018 10:44:33 -0700 (PDT)
In-Reply-To: <CABkgnnXETJUkghZu=xxLNU7pBiEWmZ5O32bxDR7f_5Fo9SoK1Q@mail.gmail.com>
References: <CAOYVs2q63DpkPZTbw9T24ZcFOxbvrWAGvOtUaHvCuSg_13pSkQ@mail.gmail.com> <CABkgnnWpgyN_OPac-uSKALEaVc8mO_LpT9gAOs-n1eKqso5QAQ@mail.gmail.com> <CAKcm_gMFumNgPq4FxwcgzgDUCvn_jUxb0qk7tAgYZ=LvKfxjfg@mail.gmail.com> <20180518134400.GA12617@ubuntu-dmitri> <1F436ED13A22A246A59CA374CBC543998B7C712F@ORSMSX111.amr.corp.intel.com> <CACpbDcdb6JK_-fmUcKMgbdm0iD2qFvQSVbM74uzo28aShb7H2w@mail.gmail.com> <6c99fb18-f511-7246-e248-466400675e62@huitema.net> <CACpbDcfjDfQP69ZvUNjcUnQBGYKJAEJuh2BMK5dQZ8eRwfzOGQ@mail.gmail.com> <90c7800b-2c91-762d-e822-883b45e2f814@huitema.net> <CABkgnnXETJUkghZu=xxLNU7pBiEWmZ5O32bxDR7f_5Fo9SoK1Q@mail.gmail.com>
From: Jana Iyengar <jri.ietf@gmail.com>
Date: Sun, 20 May 2018 10:44:33 -0700
Message-ID: <CACpbDccLRXZZc4G=Z2dk62fK5heu_MhSUX4pqtQefSQgmDPSKw@mail.gmail.com>
Subject: Re: Payload length 0
To: Martin Thomson <martin.thomson@gmail.com>
Cc: Christian Huitema <huitema@huitema.net>, "Deval, Manasi" <manasi.deval@intel.com>, Marten Seemann <martenseemann@gmail.com>, Ian Swett <ianswett@google.com>, QUIC WG <quic@ietf.org>, Dmitri Tikhonov <dtikhonov@litespeedtech.com>
Content-Type: multipart/alternative; boundary="000000000000f325ec056ca6bc26"
Archived-At: <https://mailarchive.ietf.org/arch/msg/quic/OAJz_OTABKlYupkMTYPv6OiS4yM>
X-BeenThere: quic@ietf.org
X-Mailman-Version: 2.1.22
Precedence: list
List-Id: Main mailing list of the IETF QUIC working group <quic.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/quic>, <mailto:quic-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/quic/>
List-Post: <mailto:quic@ietf.org>
List-Help: <mailto:quic-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/quic>, <mailto:quic-request@ietf.org?subject=subscribe>
X-List-Received-Date: Sun, 20 May 2018 17:44:37 -0000

Just to be clear about what I'm suggesting:

Packets that are coalesced in a UDP datagram have their length fields set
to the packet length. Packets that are not coalesced set the packet length
to zero.
A receiver that sees a non-zero packet length field in a long header checks
if this packet is coalesced. Similarly, a packet that is received with a
zero in the packet length field must be not coalesced.

I believe this protects from splitting.

CFIN+1RTT packets can also be coalesced in addition to CI+0RTT.

On Sun, May 20, 2018 at 12:14 AM, Martin Thomson <martin.thomson@gmail.com>
wrote:

> It only works to ensure that the last packet remains the last packet.  That
> doesn't seem like an actual defense against splitting.
> On Sun, May 20, 2018 at 11:37 AM Christian Huitema <huitema@huitema.net>
> wrote:
>
> > On 5/19/2018 6:16 PM, Jana Iyengar wrote:
>
> >> The only way to prevent middlebox from hacking some part of the protocol
> >> is to use encryption. Any clear text hack will only be a slight road
> >> bump for the middle-box hackers.
>
>
> > Agreed, though I'll note that authenticating may be enough in some cases,
> encrypting may not be necessary.
>
> >> For example, if we coalesce a CI and a 0-RTT packet, we could have the
> >> zero RTT encryption depend on the presence of the previous packet.
>
>
> > What I'm suggesting is that the length field, which is part of the
> authenticated header, include this signal as zero, or non-zero. I think
> this may be one interpretation of what you're saying: the header field,
> which is part of the AEAD hash, encodes the presence of another packet.
>
>
> > Yes, something like that would work. Maybe a flag in the first octet, "is
> coalesced".
>
> > Note that, in the plausible CI + 0RTT coalescing, splitting the CI won't
> work. It will be too short, and thus rejected by the server.
>
> > -- Christian Huitema
>