[quicwg/base-drafts] d9389f: Ignore upload files

Martin Thomson <martin.thomson@gmail.com> Tue, 17 October 2017 05:06 UTC

Return-Path: <bounce+565321.40f-quic-issues=ietf.org@github.com>
X-Original-To: quic-issues@ietfa.amsl.com
Delivered-To: quic-issues@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 2EC3A13243A for <quic-issues@ietfa.amsl.com>; Mon, 16 Oct 2017 22:06:06 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -0.799
X-Spam-Level:
X-Spam-Status: No, score=-0.799 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_ADSP_CUSTOM_MED=0.001, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, FREEMAIL_FORGED_FROMDOMAIN=0.199, FREEMAIL_FROM=0.001, HEADER_FROM_DIFFERENT_DOMAINS=0.001, NML_ADSP_CUSTOM_MED=0.9, RCVD_IN_DNSWL_NONE=-0.0001, SPF_PASS=-0.001] autolearn=no autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (1024-bit key) header.d=github.com; domainkeys=pass (1024-bit key) header.sender=martin.thomson=gmail.com@github.com header.d=github.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 Y0r-N6c_7gb3 for <quic-issues@ietfa.amsl.com>; Mon, 16 Oct 2017 22:06:04 -0700 (PDT)
Received: from m69-170.mailgun.net (m69-170.mailgun.net [166.78.69.170]) (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 C65A21320CF for <quic-issues@ietf.org>; Mon, 16 Oct 2017 22:06:04 -0700 (PDT)
DKIM-Signature: a=rsa-sha256; v=1; c=relaxed/relaxed; d=github.com; q=dns/txt; s=mailo; t=1508216764; h=Content-Transfer-Encoding: Content-Type: Mime-Version: Subject: Message-ID: To: Reply-To: From: Date: Sender; bh=/WrGk3eNW6qmB8ZVba0kuQj4L9HTbaXUPJiN6iBvdRc=; b=rHYLUYpkc0h8WFjSwvFxLja9Nv5A+SETjv4NwZeozNHj8XUCK1/0p546OZYgAKY/5XSX/Iez 5EY3KwsNBPVoovtJKZ4SlDzxXH017OXrOw4tVS2qMYrGnFHdodtvS/mRJWHXomJnwYbva6qs TlQVC4lWlm0L8ZNA9fxIaqbC4AY=
DomainKey-Signature: a=rsa-sha1; c=nofws; d=github.com; s=mailo; q=dns; h=Sender: Date: From: Reply-To: To: Message-ID: Subject: Mime-Version: Content-Type: Content-Transfer-Encoding; b=n4JaW+id41bmfR86gzVL2yn7+IS3FG5DV/841l/w3w6gUd5A0Z8LS/a7D3LAnOUEqhlvT/ 9EP+DoCCgvMbjAlh2yOmYe1O7pauQEbj1N/BLH6WG3f0W5eUZqG+/PS/LvN36khPVkA5pOlt jHniloaY4wB9ikjLhvY57FcdN6TYk=
Sender: martin.thomson=gmail.com@github.com
X-Mailgun-Sending-Ip: 166.78.69.170
X-Mailgun-Sid: WyJhNzYyYiIsICJxdWljLWlzc3Vlc0BpZXRmLm9yZyIsICI0MGYiXQ==
Received: from github.com (Unknown [192.30.252.42]) by mxa.mailgun.org with ESMTP id 59e58fbb.7fbe801491e0-smtp-out-n02; Tue, 17 Oct 2017 05:06:03 -0000 (UTC)
Date: Mon, 16 Oct 2017 22:06:03 -0700
From: Martin Thomson <martin.thomson@gmail.com>
Reply-To: Martin Thomson <martin.thomson@gmail.com>
To: quic-issues@ietf.org
Message-ID: <59e58fbbc8ac8_22393f864f62bc30759aa@hookshot-fe1-cp1-prd.iad.github.net.mail>
Subject: [quicwg/base-drafts] d9389f: Ignore upload files
Mime-Version: 1.0
Content-Type: multipart/mixed; boundary="--==_mimepart_59e58fbbc82d3_22393f864f62bc3075883"; charset="UTF-8"
Content-Transfer-Encoding: 7bit
Archived-At: <https://mailarchive.ietf.org/arch/msg/quic-issues/cDQykJYMu9K1sDEMLEakf1Fn7aE>
X-BeenThere: quic-issues@ietf.org
X-Mailman-Version: 2.1.22
Precedence: list
List-Id: Notification list for GitHub issues related to the QUIC WG <quic-issues.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/quic-issues>, <mailto:quic-issues-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/quic-issues/>
List-Post: <mailto:quic-issues@ietf.org>
List-Help: <mailto:quic-issues-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/quic-issues>, <mailto:quic-issues-request@ietf.org?subject=subscribe>
X-List-Received-Date: Tue, 17 Oct 2017 05:06:06 -0000

  Branch: refs/heads/proof-of-receipt
  Home:   https://github.com/quicwg/base-drafts
  Commit: d9389f05d48bebc8caf9fc0d6dafc7e8b62a1d21
      https://github.com/quicwg/base-drafts/commit/d9389f05d48bebc8caf9fc0d6dafc7e8b62a1d21
  Author: Martin Thomson <martin.thomson@gmail.com>
  Date:   2017-10-17 (Tue, 17 Oct 2017)

  Changed paths:
    M .gitignore

  Log Message:
  -----------
  Ignore upload files


  Commit: ded8d4fab722c5909c97aa58e618e8da7f2d189c
      https://github.com/quicwg/base-drafts/commit/ded8d4fab722c5909c97aa58e618e8da7f2d189c
  Author: Martin Thomson <martin.thomson@gmail.com>
  Date:   2017-10-17 (Tue, 17 Oct 2017)

  Changed paths:
    M draft-ietf-quic-transport.md

  Log Message:
  -----------
  Address validation for connection migration

This has been much-discussed, and it's a relatively isolated change, so I did it.

This modifies PING to have an optional payload and adds a PONG frame to echo
the PING.  An empty PING generates an ACK; a PING with a payload demands a
PONG.

Generating an unguessable PING is the basis of mid-connection address
validation.  If the PING is sent on the new path, and the PONG comes back, then
the remote address is probably OK to use.

I've taken the discussion in the issue into consideration here.  There's a lot
of potential nuance to capture in terms of how an endpoint might reduce and
restore send rates, but I've done what I can to thread the gap between allowing
unbounded sending along new and untested paths and allowing connections to get
back to doing business.

It's annoying that this makes PING and PONG so disparate.  I think that we have
a re-ordering of frames in our near future to correct minor infidelities like
this.  I didn't want to do that here and pollute this PR though.

Closes #161.


  Commit: a0480aae3f12a5d584c932321a1201e6c13a5759
      https://github.com/quicwg/base-drafts/commit/a0480aae3f12a5d584c932321a1201e6c13a5759
  Author: Martin Thomson <martin.thomson@gmail.com>
  Date:   2017-10-17 (Tue, 17 Oct 2017)

  Changed paths:
    M draft-ietf-quic-transport.md

  Log Message:
  -----------
  Avoid attack on address validation during connection migration

The attack here is that an attacker might duplicate a legitimate packet and
send that packet from an invalid address such that it arrives before the real
copy.  That causes the recipient to think that there was a connection
migration.  They will attempt to validate that address and this will fail.  The
connection is then closed.

The fix is to cause a migration back to the original, legitimate address.  For
this to work, you need two things:

1. when a migration happens, abandon any validation on the old address on the
   expectation that it will fail

2. when a migration happens, make sure that you try to trigger packets from the
   old address first

For the second point, I decided to mandate address validation, rather than an
ordinary PING.  The reason being that you have to retransmit the packet on that
path and I doubt that implementations will want to have two sets of special
machinery for transmiting - and retransmitting - frames on a specific path.
Maybe this is too much of a constraint on implementations, so I'd like to hear
from people about whether they would prefer a more generic requirement (send
any packet that demands acknowledgment would work, it doesn't even have to be
the same packet every time, though the usual situation will be that the packet
will be lost, so you probably don't want to send anything important).


  Commit: 854377925432d10f42ec617e6d24ec0122cfbf5f
      https://github.com/quicwg/base-drafts/commit/854377925432d10f42ec617e6d24ec0122cfbf5f
  Author: Martin Thomson <martin.thomson@gmail.com>
  Date:   2017-10-17 (Tue, 17 Oct 2017)

  Changed paths:
    M draft-ietf-quic-transport.md

  Log Message:
  -----------
  More review comments


  Commit: 67849052344984d1e1bddf990717a48357b890be
      https://github.com/quicwg/base-drafts/commit/67849052344984d1e1bddf990717a48357b890be
  Author: Martin Thomson <martin.thomson@gmail.com>
  Date:   2017-10-17 (Tue, 17 Oct 2017)

  Changed paths:
    M draft-ietf-quic-transport.md

  Log Message:
  -----------
  Require new PING on loss


  Commit: a724bdb991bea5b4470cba4077e7f338e25baf3a
      https://github.com/quicwg/base-drafts/commit/a724bdb991bea5b4470cba4077e7f338e25baf3a
  Author: Martin Thomson <martin.thomson@gmail.com>
  Date:   2017-10-17 (Tue, 17 Oct 2017)

  Changed paths:
    M draft-ietf-quic-transport.md

  Log Message:
  -----------
  Data field, not payload


  Commit: ca3f375a8bfceacac59ee75da527cf1941c8c7f0
      https://github.com/quicwg/base-drafts/commit/ca3f375a8bfceacac59ee75da527cf1941c8c7f0
  Author: Martin Thomson <martin.thomson@gmail.com>
  Date:   2017-10-17 (Tue, 17 Oct 2017)

  Changed paths:
    M draft-ietf-quic-transport.md

  Log Message:
  -----------
  Remove MUST


Compare: https://github.com/quicwg/base-drafts/compare/9d00167b6ec1...ca3f375a8bfc