Re: [QUIC] [Spud] Last Call: <draft-ietf-tsvwg-rfc5405bis-13.txt> (UDP Usage Guidelines) to Best Current Practice

Jim Roskind <JimRoskind@gmail.com> Mon, 06 June 2016 05:18 UTC

Return-Path: <jim.roskind@gmail.com>
X-Original-To: ietf@ietfa.amsl.com
Delivered-To: ietf@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id E273312D1D2; Sun, 5 Jun 2016 22:18:21 -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 aGD7uAuWsAlo; Sun, 5 Jun 2016 22:18:19 -0700 (PDT)
Received: from mail-qk0-x241.google.com (mail-qk0-x241.google.com [IPv6:2607:f8b0:400d:c09::241]) (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 109AD12D0BD; Sun, 5 Jun 2016 22:18:19 -0700 (PDT)
Received: by mail-qk0-x241.google.com with SMTP id i187so6596029qkd.1; Sun, 05 Jun 2016 22:18:19 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=mime-version:sender:in-reply-to:references:from:date:message-id :subject:to:cc; bh=E9HUlQcDLaTPNu8n7gqY4Ei8O/K2BMxLCMiJSMC4HGg=; b=V8em/3XD5KukG1RhnW+prCbL4ht7tPb7w/oALvCBhl1WFBTluGY5WV++kC10dAHx+r oqYNt8MbalRqNOXlEHQHbBKTwYoJvdVBht+yZpgSI/Cd+wxgbSNjUFna4KQu4LWW0SXq q6WOPyJO+q/ZODJKLu4k9imJ5hWMwR9hYLqsmzR453lHDvgEYg6/EqyfeJobnGoqBbib UOQOVtrsTsN+UqrX4SojcNjP/Fn5z8VnKff1LJ4y9038ZPOkhts5Ne3nc7qM+HENSkFw Udv8d+q0Y1EylNHRJznLYCKi7ArkHikE6h4W4jQtWgxQR56XIHwgt/xDOBz+2b3yiJJv V8fg==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20130820; h=x-gm-message-state:mime-version:sender:in-reply-to:references:from :date:message-id:subject:to:cc; bh=E9HUlQcDLaTPNu8n7gqY4Ei8O/K2BMxLCMiJSMC4HGg=; b=AGt6LBUf+1UZzXqyB4dWhWtXBwsMPCkmlxzOrPHfUtiESrlhv8Gx5Ytcm/Kr/d4zsk k4CvkoezubejIyxLx1ASSfyYuB25Y11mR8VGOBDgeOX+akK2K5Y9M9Svx5LaBEtG+0jm yavcYNkemMezOwohoKN8M5AgfT56jeQTXuw+9V7ZEchP4Tjt8sHWniWoiplzN0+FnAiD KsAYbq50LPA5nJe60gcYTKMZHLsCsYNumQOqugMvKtZj7wertX+wQAK8l+zLrQqJrvFg thuK/qtU2Rn89AirMiBY/FFsxmhZRb86yki6hVpL9gjiytX9VfXpvyswj9FszDGNUi0L qjwg==
X-Gm-Message-State: ALyK8tIgxKWFckrXWmIt3diJ9p9//Jwyw5SQuKUUP+G8GaMiavRRlxYP6i5TK6RY/pVUqumvSKZIk5WEQ/P7JA==
X-Received: by 10.55.170.75 with SMTP id t72mr14461835qke.100.1465190298163; Sun, 05 Jun 2016 22:18:18 -0700 (PDT)
MIME-Version: 1.0
Sender: jim.roskind@gmail.com
Received: by 10.237.33.186 with HTTP; Sun, 5 Jun 2016 22:18:17 -0700 (PDT)
In-Reply-To: <CALx6S34abJNgPM6w-U9=AwNs-wu9LeoE9uezni-c7scbxEHtdA@mail.gmail.com>
References: <20160518001706.24865.86238.idtracker@ietfa.amsl.com> <035AC810-E5E4-45E2-A4F8-05C9F31A7F3D@trammell.ch> <CALx6S34abJNgPM6w-U9=AwNs-wu9LeoE9uezni-c7scbxEHtdA@mail.gmail.com>
From: Jim Roskind <JimRoskind@gmail.com>
Date: Sun, 5 Jun 2016 22:18:17 -0700
X-Google-Sender-Auth: 5lF5b1hzSIq4fWy-bWzA7Kde6fs
Message-ID: <CAGHOz8sS9xA4a0i=OqQ60Ff8LojfBu2uyCNn4=_Zs1LkwYjjOw@mail.gmail.com>
Subject: Re: [QUIC] [Spud] Last Call: <draft-ietf-tsvwg-rfc5405bis-13.txt> (UDP Usage Guidelines) to Best Current Practice
To: Tom Herbert <tom@herbertland.com>
Content-Type: multipart/alternative; boundary=001a114d8a20402fb30534953324
Archived-At: <https://mailarchive.ietf.org/arch/msg/ietf/r3utlmCjaBsSm7eR5tpAJbDn1mE>
Cc: tsvwg WG <tsvwg@ietf.org>, draft-ietf-tsvwg-rfc5405bis@ietf.org, tsvwg-chairs@ietf.org, spud <spud@ietf.org>, quic@ietf.org, ietf@ietf.org
X-BeenThere: ietf@ietf.org
X-Mailman-Version: 2.1.17
Precedence: list
List-Id: IETF-Discussion <ietf.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/ietf>, <mailto:ietf-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/ietf/>
List-Post: <mailto:ietf@ietf.org>
List-Help: <mailto:ietf-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/ietf>, <mailto:ietf-request@ietf.org?subject=subscribe>
X-List-Received-Date: Mon, 06 Jun 2016 05:18:22 -0000

On Sat, Jun 4, 2016 at 5:25 PM, Tom Herbert <tom@herbertland.com> wrote:

> On Thu, Jun 2, 2016 at 3:11 AM, Brian Trammell <ietf@trammell.ch> wrote:
> > Greetings, all,
> >
> > Apologies for the late last call comment; I have only one, relatively
> minor. I hope it's still useful.
> >
> > I understand that Section 3 was written to encourage application
> developers not to roll their own transports ("trust us when we say this is
> hard, this document is a list of reasons why") but as written it would seem
> to discourage transport innovation atop UDP (e.g. QUIC, the RTCWEB data
> channel, anything-over-PLUS), which I very much hope was not the intent.
> The problematic recommendation is in the second paragraph:
> >
> >    These mechanisms are difficult to implement correctly.  For most
> >    applications, the use of one of the existing IETF transport protocols
> >    is the simplest method of acquiring the required mechanisms.  Doing
> >    so also avoids issues that protocols using a new IP protocol number
> >    face when being deployed over the Internet, where middleboxes that
> >    only support TCP and UDP are not rare.  Consequently, the RECOMMENDED
> >    alternative to the UDP usage described in the remainder of this
> >    section is the use of an IETF transport protocol such as TCP
> >    [RFC0793], Stream Control Transmission Protocol (SCTP) [RFC4960], and
> >    SCTP Partial Reliability Extension (SCTP-PR) [RFC3758], or Datagram
> >    Congestion Control Protocol (DCCP) [RFC4340] with its different
> >    congestion control types [RFC4341][RFC4342][RFC5622].
> >
> > First, this paragraph ignores potential deployment issues with any of
> these other than TCP, which risks seeming out of touch, but this is a minor
> point and probably not worth a late edit. Second, I'm concerned this
> recommendation could be taken as broader than intended, against the
> definition of any new transport protocol encapsulated within UDP that
> performs substantially the same function as the listed protocols.
> >
> I would agree, this paragraph also seems a little self
> contradictory.There is an acknowledgment that "middleboxes that only
> support TCP and UDP are not rare", but then the next sentence
> recommends the use of several other protocols besides UDP and TCP. If
> I put these two together, the only congested controlled protocol that
> is recommended and expected to work on the Internet is TCP.
>

+1   TCP (implemented in kernel space) can't possibly evolve congestion
avoidance as fast as the Internet has changed, or will change (example:
good handling of middle boxes that use "policers" rather than some flavor
of buffer-size based packet-drop).
The rationale for using UDP for QUIC was indeed that a new IP number would
never make it through the Internet (other protocol deployment attempts have
commonly verified this).  It turns out that even UDP is partially blocked
(as recently as 2011) by paths to 5-7% of all chrome clients, which lead to
the "automated fallback" elements of QUIC,

Hopefully the benefits that QUIC is bringing to the Internet will not be
outlawed (precluded by such commentary).

Jim


>
> Tom
>
> > I think this can be made clearer by simply adding to the list of
> examples:
> >
> > NEW:
> >
> >    These mechanisms are difficult to implement correctly.  For most
> >    applications, the use of one of the existing IETF transport protocols
> >    is the simplest method of acquiring the required mechanisms.  Doing
> >    so also avoids issues that protocols using a new IP protocol number
> >    face when being deployed over the Internet, where middleboxes that
> >    only support TCP and UDP are not rare.  Consequently, the RECOMMENDED
> >    alternative to the UDP usage described in the remainder of this
> >    section is the use of an IETF transport protocol such as TCP
> >    [RFC0793], Stream Control Transmission Protocol (SCTP) [RFC4960], and
> >    SCTP Partial Reliability Extension (SCTP-PR) [RFC3758], or Datagram
> >    Congestion Control Protocol (DCCP) [RFC4340] with its different
> >    congestion control types [RFC4341][RFC4342][RFC5622], or transport
> >    protocols specified by the IETF in the future.
> >
> > and removing the examples from the summary in section 7:
> >
> > OLD:
> >
> >    | SHOULD use a full-featured transport (TCP, SCTP, DCCP)  |         |
> >
> > NEW:
> >
> >    | SHOULD use a full-featured transport                    |         |
> >
> > Thanks, cheers,
> >
> > Brian
> >
> >
> >> On 18 May 2016, at 02:17, The IESG <iesg-secretary@ietf.org> wrote:
> >>
> >>
> >> The IESG has received a request from the Transport Area Working Group WG
> >> (tsvwg) to consider the following document:
> >> - 'UDP Usage Guidelines'
> >>  <draft-ietf-tsvwg-rfc5405bis-13.txt> as Best Current Practice
> >>
> >> The IESG plans to make a decision in the next few weeks, and solicits
> >> final comments on this action. Please send substantive comments to the
> >> ietf@ietf.org mailing lists by 2016-05-31. Exceptionally, comments may
> be
> >> sent to iesg@ietf.org instead. In either case, please retain the
> >> beginning of the Subject line to allow automated sorting.
> >>
> >> Abstract
> >>
> >>
> >>   The User Datagram Protocol (UDP) provides a minimal message-passing
> >>   transport that has no inherent congestion control mechanisms.  This
> >>   document provides guidelines on the use of UDP for the designers of
> >>   applications, tunnels and other protocols that use UDP.  Congestion
> >>   control guidelines are a primary focus, but the document also
> >>   provides guidance on other topics, including message sizes,
> >>   reliability, checksums, middlebox traversal, the use of ECN, DSCPs,
> >>   and ports.
> >>
> >>   Because congestion control is critical to the stable operation of the
> >>   Internet, applications and other protocols that choose to use UDP as
> >>   an Internet transport must employ mechanisms to prevent congestion
> >>   collapse and to establish some degree of fairness with concurrent
> >>   traffic.  They may also need to implement additional mechanisms,
> >>   depending on how they use UDP.
> >>
> >>   Some guidance is also applicable to the design of other protocols
> >>   (e.g., protocols layered directly on IP or via IP-based tunnels),
> >>   especially when these protocols do not themselves provide congestion
> >>   control.
> >>
> >>   This document obsoletes RFC5405 and adds guidelines for multicast UDP
> >>   usage.
> >>
> >>
> >>
> >>
> >> The file can be obtained via
> >> https://datatracker.ietf.org/doc/draft-ietf-tsvwg-rfc5405bis/
> >>
> >> IESG discussion can be tracked via
> >> https://datatracker.ietf.org/doc/draft-ietf-tsvwg-rfc5405bis/ballot/
> >>
> >>
> >> No IPR declarations have been submitted directly on this I-D.
> >>
> >>
> >
> >
> > _______________________________________________
> > Spud mailing list
> > Spud@ietf.org
> > https://www.ietf.org/mailman/listinfo/spud
> >
>
> _______________________________________________
> QUIC mailing list
> QUIC@ietf.org
> https://www.ietf.org/mailman/listinfo/quic
>