Re: [Uri-review] URI scheme registration request

<David_Warden@Dell.com> Wed, 02 December 2015 01:46 UTC

Return-Path: <David_Warden@dell.com>
X-Original-To: uri-review@ietfa.amsl.com
Delivered-To: uri-review@ietfa.amsl.com
Received: from localhost (ietfa.amsl.com [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 178401B30A4 for <uri-review@ietfa.amsl.com>; Tue, 1 Dec 2015 17:46:25 -0800 (PST)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -3.911
X-Spam-Level:
X-Spam-Status: No, score=-3.911 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, GB_I_LETTER=-2, J_CHICKENPOX_22=0.6, J_CHICKENPOX_25=0.6, J_CHICKENPOX_44=0.6, J_CHICKENPOX_65=0.6, RCVD_IN_DNSWL_MED=-2.3, SPF_PASS=-0.001, T_RP_MATCHES_RCVD=-0.01] autolearn=ham
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 yzrqPTJE1aZT for <uri-review@ietfa.amsl.com>; Tue, 1 Dec 2015 17:46:23 -0800 (PST)
Received: from ausxippc110.us.dell.com (AUSXIPPC110.us.dell.com [143.166.85.200]) (using TLSv1 with cipher DHE-RSA-CAMELLIA256-SHA (256/256 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id C786C1B30A3 for <uri-review@ietf.org>; Tue, 1 Dec 2015 17:46:22 -0800 (PST)
DomainKey-Signature: s=smtpout; d=dell.com; c=nofws; q=dns; h=X-LoopCount0:X-IronPort-AV:From:To:CC:Date:Subject: Thread-Topic:Thread-Index:Message-ID:References: In-Reply-To:Accept-Language:Content-Language: X-MS-Has-Attach:X-MS-TNEF-Correlator:acceptlanguage: Content-Type:Content-Transfer-Encoding:MIME-Version; b=ABfqyp7d+4dXTkZhkK4jfj3YGY5FH9RryZu5JRAMrdUliCKN39k6PSok pkB9AEJMHo1c7ypuPBU2xAhjwb5gL8VZj81SD7HnAqFI5zoIIBtzFBfMw lxUz+VWNjPtIwNp/eDRc8UMHTZzYtvuolB7mokJfYGLmSeQtKLxnsU8es o=;
DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=dell.com; i=@dell.com; q=dns/txt; s=smtpout; t=1449020672; x=1480556672; h=from:to:cc:date:subject:message-id:references: in-reply-to:content-transfer-encoding:mime-version; bh=ayB15DfX9ukVlRcjqyiAO3V0aBsd71wu0VinT530xRg=; b=ithocgKU37iapyBzC63GCS2uTZnJ+Ut3ZxpGddcI02zAo9ftJC/hSiMG x+1u15PnEIGBds4sMnp1H/9n2HXcj2BCk0sqmMa1ApgxDO7zD2cXr4GJP fQkYacqHzpuE9db4qV7IGyj3bPGaN8ShXrlNuzzNikbDesfA/M/DI6fNX g=;
X-LoopCount0: from 10.175.216.251
X-IronPort-AV: E=Sophos;i="5.20,371,1444712400"; d="scan'208";a="250520126"
From: David_Warden@Dell.com
To: fielding@gbiv.com
Date: Tue, 01 Dec 2015 19:44:46 -0600
Thread-Topic: [Uri-review] URI scheme registration request
Thread-Index: AdEsniJNmQopltIXT2y6UOj5oTKvfgAAqWQA
Message-ID: <2D58682309E75147BB3B286C815CAC7E2ACD23E1C1@AUSX7MCPS308.AMER.DELL.COM>
References: <564531FC.7000606@wasontech.com> <2D58682309E75147BB3B286C815CAC7E2ACD0A184B@AUSX7MCPS308.AMER.DELL.COM> <5646C765.4050907@wasontech.com> <E3443077-C4D8-496E-BCD0-661F387831E3@gbiv.com> <BY2PR03MB412048F8332055735B3CFFDA3100@BY2PR03MB412.namprd03.prod.outlook.com> <5647B3D1.6000608@wasontech.com> <BY2PR03MB4126303C398BA1771C297F3A3100@BY2PR03MB412.namprd03.prod.outlook.com> <564FF0F6.8020008@wasontech.com> <71680E9C-17BF-4FA2-9C80-3DAB49ADFE99@gbiv.com> <565E1FB1.9050208@wasontech.com> <D52952EA-7CA9-4F99-8A7B-6BFED86C78E4@gbiv.com> <565E44CC.7090506@wasontech.com>
In-Reply-To: <565E44CC.7090506@wasontech.com>
Accept-Language: en-US
Content-Language: en-US
X-MS-Has-Attach:
X-MS-TNEF-Correlator:
acceptlanguage: en-US
Content-Type: text/plain; charset="us-ascii"
Content-Transfer-Encoding: quoted-printable
MIME-Version: 1.0
Archived-At: <http://mailarchive.ietf.org/arch/msg/uri-review/kNH4yAffxCQFkxYPSvoEQLxFZRY>
Cc: uri-review@ietf.org, wason@wasontech.com
Subject: Re: [Uri-review] URI scheme registration request
X-BeenThere: uri-review@ietf.org
X-Mailman-Version: 2.1.15
Precedence: list
List-Id: Proposed URI Schemes <uri-review.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/uri-review>, <mailto:uri-review-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/uri-review/>
List-Post: <mailto:uri-review@ietf.org>
List-Help: <mailto:uri-review-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/uri-review>, <mailto:uri-review-request@ietf.org?subject=subscribe>
X-List-Received-Date: Wed, 02 Dec 2015 01:46:25 -0000

While you are correct that there are a number of schemes with compound names, my sense is that if their authors came to this list for advice today they might well be advised to consolidate their scheme. A lot of what is listed is just documenting legacy practices. 

For example, rather than have a separate git+ssh scheme, git clients accept ssh URIs. If I were implementing a protocol that optionally accepted TLS, I might activate it automatically if I receive a STARTTLS command (as configured by the client or server) rather than use a separate scheme. 

That isn't to say your proposal is unreasonable, just that it might benefit from what others have learned from past schemes on how to simplify things. 

-----Original Message-----
From: Uri-review [mailto:uri-review-bounces@ietf.org] On Behalf Of John Wason
Sent: Tuesday, December 1, 2015 7:10 PM
To: Roy T. Fielding
Cc: uri-review@ietf.org
Subject: Re: [Uri-review] URI scheme registration request

How is what I am requesting any different than the RTSP protocol:

rtsp - Real Time Streaming Protocol
rtsps - Real Time Streaming Protocol over TLS rtspu - Real Time Streaming Protocol over UDP

or the various iris protocols:

iris
iris.beep
iris.lwz
iris.xpc
iris.xpcs

or the example I used earlier:

svn - subversion
svn+ssh - subversion over ssh

or xmlprc

xmlprc.beep
xmlrcp.beeps


The format I am requesting is in common use to specify the transport information. I am using "+" because the newer standard says not to use dots without a DNS registration.


On 12/1/2015 7:28 PM, Roy T. Fielding wrote:
>> On Dec 1, 2015, at 2:31 PM, John Wason <wason@wasontech.com> wrote:
>>
>> Claiming that the different scheme types are simply "proxies" is inaccurate.  The different transport types have incredibly important performance and security implications that are best transmitted as a single piece of data.  Also, a single client can connect to different services using different transport types so there isn't really a single place that the "proxy" can be specified. The chances of a user getting a two piece connection command correct vs just changing a few letters in the URI are remote. The "click to connect" type usage would not work.  Because Robot Raconteur mostly runs on LAN the DNS system is not used for many connections.  Because of this the same URI with only the scheme changed can connect to different services. This means that the "proxy" specification would point to a different resource which is also not a correct usage of the "proxy" concept.
> I meant that the software is relying on an intermediary/broker in the 
> form of your service that is being discovered via UDP (or directed to 
> via some other configuration) in the form of a two-piece connection 
> command, which your own description uses to construct a single-piece 
> URI.  I am saying you can keep them separate and avoid registering so many schemes.
>
> This does not imply all your services go through a single proxy.  It 
> just means there is an obvious two-step being performed similar to how HTTP uses proxies:
> 1) connect to some arbitrary connection-based transport service;
> 2) use raconteur on that service.
>
> How you get to that intermediary is obviously important and can be 
> specified with one URI.  Everything else in your description involves 
> queries to that intermediary after the connection has been 
> established.  That's why you can have one URI that identifies the service and another URI that is specific to Robot Raconteur.
> Your software already knows it is using RR. You don't need a separate 
> identifier scheme to tell you that the purpose of the connection is RR.
>
> NOTHING in your description indicates that these two different 
> purposes need to be combined into a single identifier field.  If we 
> are talking about an information service with hypertext-style 
> interactions using existing formats (like HTML), then we would need a 
> single identifier because we intend to include the links as resource 
> references.  If we are talking about a browser plug-in that relies on 
> the scheme name to be activated, then one of the schemes needs to be specific to RR (but it really doesn't matter which one).
>
>> "For example, the +ws(s) identifiers appear to just be an alias of ws and wss."
>>   
>> No they aren't.  The protocol needs to be specified.  It is true that rr+ws etc. are compatible with WebSockets but it is just a stream wrapper.  The rr+ws is critically important to the software library to identify how to connect to the service.
> ws is just a stream wrapper. What you do inside that wrapper is not in 
> the URI because it is intentionally non-standard and already known to 
> both client and server.
>
>>   "rr and rr+cloud are being defined as aliases = VERY BAD.  There is no reason to do that."
>>
>> Except that for users there may be cases where one is more clear than the other.
> That is not a reason to alias an entire space of identifiers.
>
> ....Roy
>


--
John Wason, Ph.D.
Wason Technology, LLC
PO Box 669
Tuxedo, NY 10987
(518) 279-6234
wason@wasontech.com

_______________________________________________
Uri-review mailing list
Uri-review@ietf.org
https://www.ietf.org/mailman/listinfo/uri-review