Re: [Technical Errata Reported] RFC6874 (3632)

Michael Sweet <msweet@apple.com> Thu, 23 May 2013 15:01 UTC

Return-Path: <msweet@apple.com>
X-Original-To: ipv6@ietfa.amsl.com
Delivered-To: ipv6@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 0431A21F9740 for <ipv6@ietfa.amsl.com>; Thu, 23 May 2013 08:01:20 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -107.398
X-Spam-Level:
X-Spam-Status: No, score=-107.398 tagged_above=-999 required=5 tests=[AWL=2.286, BAYES_00=-2.599, J_CHICKENPOX_35=0.6, RCVD_IN_DNSWL_HI=-8, SARE_MILLIONSOF=0.315, USER_IN_WHITELIST=-100]
Received: from mail.ietf.org ([12.22.58.30]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id tqumgEYGP30k for <ipv6@ietfa.amsl.com>; Thu, 23 May 2013 08:01:14 -0700 (PDT)
Received: from mail-out.apple.com (mail-out.apple.com [17.151.62.51]) by ietfa.amsl.com (Postfix) with ESMTP id DDB1E21F92F0 for <ipv6@ietf.org>; Thu, 23 May 2013 08:01:13 -0700 (PDT)
MIME-version: 1.0
Content-transfer-encoding: 7bit
Content-type: text/plain; CHARSET="US-ASCII"
Received: from relay5.apple.com ([17.128.113.88]) by mail-out.apple.com (Oracle Communications Messaging Server 7u4-23.01 (7.0.4.23.0) 64bit (built Aug 10 2011)) with ESMTP id <0MN90097IB1DZLR1@mail-out.apple.com> for ipv6@ietf.org; Thu, 23 May 2013 08:01:02 -0700 (PDT)
X-AuditID: 11807158-b7f486d0000079b6-32-519e2f2c10bc
Received: from [17.153.20.228] (Unknown_Domain [17.153.20.228]) (using TLS with cipher AES128-SHA (128/128 bits)) (Client did not present a certificate) by relay5.apple.com (Apple SCV relay) with SMTP id 49.00.31158.D2F2E915; Thu, 23 May 2013 08:01:02 -0700 (PDT)
Subject: Re: [Technical Errata Reported] RFC6874 (3632)
From: Michael Sweet <msweet@apple.com>
In-reply-to: <519E2B96.40106@innovationslab.net>
Date: Thu, 23 May 2013 11:01:00 -0400
Message-id: <5ECCB504-DF76-46BA-8482-7671E3E357C3@apple.com>
References: <20130523144235.CC2C972F63F@rfc-editor.org> <519E2B96.40106@innovationslab.net>
To: Brian Haberman <brian@innovationslab.net>
X-Mailer: Apple Mail (2.1503)
X-Brightmail-Tracker: H4sIAAAAAAAAA+NgFrrNLMWRmVeSWpSXmKPExsUiOFPkia6e/rxAg/szxC22vt/HZtF2cR+T xcyef4wWx+7UWLw8+57J4si3WIvJbSvYLJr2f2Wz2Nod68DpsfXkDzaPg8c+MnrsnHWX3WPJ kp9MHjOPf2HxeH1gPqtHQ9sx1gD2KC6blNSczLLUIn27BK6ML9s2shTsNKq43LmBqYFxkkYX IyeHhICJxIn5m5khbDGJC/fWs3UxcnEICfQySbxpewmWEBYwl1ixbwUTiM0roCdx7dtXdhCb WUBHYufWO2wgNpuAmsTvSX2sIDangIHEjv39QL0cHCwCqhJfZ5uCzGQWOMAocXrrbGaIXm2J ZQtfg9XwCthIbJiRChIWEoiWeP3sEdgYEQFdicaOFSwQt8lKvH7+hmUCI/8sJFfMQnLFLCRT FzAyr2IUKErNSaw01UssKMhJ1UvOz93ECAryhsKIHYz/l1kdYhTgYFTi4Z2hMy9QiDWxrLgy 9xCjBAezkgivtTJQiDclsbIqtSg/vqg0J7X4EKM0B4uSOO+vubMChQTSE0tSs1NTC1KLYLJM HJxSDYwPeC23XtsV8uO5wqTgt6HWp3+fuh3LwKF0+3jQ60IbhYL1XUZ16Z++n2bTO6XpeWdq IMPRBvN/a64fO8YspCkTej3CNN8lplD+TeUV2YO/Jvf+uW5fbK0tq90slNu8sSraKCRV+UVA Tt2DrRX/w91vfS4JzwmUyDbepHumpnPjSdENJx783qvEUpyRaKjFXFScCAClaCGsbgIAAA==
X-Mailman-Approved-At: Thu, 23 May 2013 22:17:12 -0700
Cc: ipv6@ietf.org, bob.hinden@gmail.com, ted.lemon@nominum.com, RFC Errata System <rfc-editor@rfc-editor.org>
X-BeenThere: ipv6@ietf.org
X-Mailman-Version: 2.1.12
Precedence: list
List-Id: "IPv6 Maintenance Working Group \(6man\)" <ipv6.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/ipv6>, <mailto:ipv6-request@ietf.org?subject=unsubscribe>
List-Archive: <http://www.ietf.org/mail-archive/web/ipv6>
List-Post: <mailto:ipv6@ietf.org>
List-Help: <mailto:ipv6-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/ipv6>, <mailto:ipv6-request@ietf.org?subject=subscribe>
X-List-Received-Date: Thu, 23 May 2013 15:01:20 -0000

Brian,

I've seen plenty of "pending" (not approved, not rejected) errata for other RFCs for stuff like this.  Posting to the ipv6 mailing list is useful for people involved in RFC development but is completely opaque to ordinary implementers of RFCs (which I have to deal with on a daily basis...)


On 2013-05-23, at 10:45 AM, Brian Haberman <brian@innovationslab.net> wrote:

> Michael,
>     Let me repeat myself... This is not how the errata report system is to be used.  It is *not* a notification system for future proposals.  That type of notification can be accomplished by posting to the appropriate IETF mailing list (ipv6@ietf.org in this case).
> 
> Regards,
> Brian
> 
> On 5/23/13 10:42 AM, RFC Errata System wrote:
>> The following errata report has been submitted for RFC6874,
>> "Representing IPv6 Zone Identifiers in Address Literals and Uniform Resource Identifiers".
>> 
>> --------------------------------------
>> You may review the report below and at:
>> http://www.rfc-editor.org/errata_search.php?rfc=6874&eid=3632
>> 
>> --------------------------------------
>> Type: Technical
>> Reported by: Michael Sweet <msweet@apple.com>
>> 
>> Section: 3
>> 
>> Original Text
>> -------------
>>   Such bare "%" signs are for user interface convenience, and need to
>>   be turned into properly encoded characters (where "%25" encodes "%")
>>   before the URI is used in any protocol or HTML document.  However,
>>   URIs including a ZoneID have no meaning outside the originating node.
>>   It would therefore be highly desirable for a browser to remove the
>>   ZoneID from a URI before including that URI in an HTTP request.
>> 
>> 
>> Corrected Text
>> --------------
>>   Such bare "%" signs are for user interface convenience, and need to
>>   be turned into properly encoded characters (where "%25" encodes "%")
>>   before the URI is used in any protocol or HTML document.  HTTP Clients
>>   MUST include a ZoneID in any URIs provided in an HTTP request since
>>   HTTP Servers will need it when generating URIs, otherwise the IPv6
>>   address will not be usable by the Client.
>> 
>> 
>> Notes
>> -----
>> NOTE: PLEASE DO NOT REJECT THIS ERRATA BEFORE FURTHER REVIEW. I WILL BE SUBMITTING A NEW DRAFT PROPOSING THESE CHANGES; THIS ERRATA CAN SERVE AS PUBLIC NOTICE OF POTENTIAL CHANGES TO THE RFC.
>> 
>> The client uses the zoneid to choose a network interface to route packets to that link local address. If the server returns a uri in its response that uses the same link local address but without the client's zoneid, then the client will be unable to use said uri because it won't know which interface to use. Yes the server doesn't care about the zoneid but the client depends on it (for link local anyways).
>> 
>> The client can supply the zoneid in the Host header. For example, the following illustrates a typical IPP request using the previously recommended IPvFuture format (which CUPS implements and uses):
>> 
>>    POST /ipp/print HTTP/1.1
>>    Host: [v1.fe80::1234+en0]:631
>>    Content-Type: application/ipp
>>    Transfer-Coding: chunked
>> 
>>    ... IPP request ...
>> 
>> The printer then validates the Host header and responds with URIs containing the same Host value in any reported IPv6 link-local URIs.
>> 
>> The key issue is one of context - the client *may* be able to query the interface used for a particular socket connection but it probably can't (easily) cache and map this information in the URIs that are embedded in the content returned by the printer, particularly when the client may have to process said content from a variety of sources - IPP is also supported over a USB transport, HTML can be read from disk, etc.  Clients are usually unable to connect to a given IPv6 link local address without the zoneid information to tell them which network interface to use.  And typically the only reason clients use an IPv6 link local address is because it was handed to them by a discovery protocol like WS-Discovery...
>> 
>> Requiring the client to rewrite all URIs is a tremendous burden and is error-prone.  Requiring the server to use the Host header is cheap in comparison.  Having the server validate and use the Host value also helps interoperability since existing clients may not support the new IPv6addrz format - for example, CUPS doesn't support it since it validates URIs and Host values using the ABNF in RFC 3986/STD 66.
>> 
>> The Host header mechanism has been standard practice outside the IETF for several years now. It is part of IPP Everywhere (Printer Working Group), Wi-Fi Direct Print Services (Wi-Fi Alliance), IPP USB (USB Implementers Forum), and AirPrint (Apple).  It solves the problem of client-side routing of IPv6 link local addresses that are used in URIs embedded in content returned by printers and other embedded devices.
>> 
>> Hundreds of millions of printers, computers, and mobile devices have been certified and shipped with IPv6 link local support using the IPvFuture format over the last 8 years. The new format is incompatible with parsers that use the ABNF in STD 66 (aka RFC 3986) and prevents the use of the Host header in HTTP requests to provide a backwards-compatible IPv6 implementation.
>> 
>> Instructions:
>> -------------
>> This errata is currently posted as "Reported". If necessary, please
>> use "Reply All" to discuss whether it should be verified or
>> rejected. When a decision is reached, the verifying party (IESG)
>> can log in to change the status and edit the report, if necessary.
>> 
>> --------------------------------------
>> RFC6874 (draft-ietf-6man-uri-zoneid-06)
>> --------------------------------------
>> Title               : Representing IPv6 Zone Identifiers in Address Literals and Uniform Resource Identifiers
>> Publication Date    : February 2013
>> Author(s)           : B. Carpenter, S. Cheshire, R. Hinden
>> Category            : PROPOSED STANDARD
>> Source              : IPv6 Maintenance
>> Area                : Internet
>> Stream              : IETF
>> Verifying Party     : IESG
>> 
> 

_________________________________________________________
Michael Sweet, Senior Printing System Engineer, PWG Chair