Re: [rtcweb] draft-ietf-rtcweb-data-protocol - DCEP: Is the "Protocol" value case sensitive?

Christian Groves <Christian.Groves@nteczone.com> Wed, 09 March 2016 03:02 UTC

Return-Path: <Christian.Groves@nteczone.com>
X-Original-To: rtcweb@ietfa.amsl.com
Delivered-To: rtcweb@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 8B1B012DDAE for <rtcweb@ietfa.amsl.com>; Tue, 8 Mar 2016 19:02:58 -0800 (PST)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -1.79
X-Spam-Level:
X-Spam-Status: No, score=-1.79 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, T_DKIM_INVALID=0.01] autolearn=no autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=neutral reason="invalid (public key: not available)" header.d=nteczone.com
Received: from mail.ietf.org ([127.0.0.1]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id KctteUZBKdbi for <rtcweb@ietfa.amsl.com>; Tue, 8 Mar 2016 19:02:57 -0800 (PST)
Received: from msh03.myshophosting.com (msh03.myshophosting.com [101.0.109.158]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id DB68412DDAB for <rtcweb@ietf.org>; Tue, 8 Mar 2016 19:02:56 -0800 (PST)
DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=nteczone.com; s=default; h=Content-Transfer-Encoding:Content-Type: In-Reply-To:MIME-Version:Date:Message-ID:From:References:To:Subject; bh=okgWEc4XcDGER8AoPc8j2goEEzZMFr9Lx1oRWD8blWk=; b=sp6U1h/ydiu3k7YSEMB78eb1J6 3Z4/m30J1P87T4UZcyJTMMQI0+Y1knmBj88/e1Ln5XPKk4a1awJOuZCt7Xey8Y5vqGazDnA8nR7ok hhdQ0UW5xmlJOsUfERHQHMSHtyMXxstTKtqWGWyiqgaDxNRHqQxezAre5fUHBkkkblMKbK83yjwEE 1mrZ16pLC3vw4qIrdxy4r7Es8zqvWl1l+FOO8UBCI1ZpxscKfyf9J6XWU1ZabGBZRiLAWNNeBo7Hj K/4Y8oQmAuJmgW4darzrKJmPB7mRCDgqgBq6jSlZQ32UiyVmdLZd+6WlV9TDhMFqwECjRHRIEpn/J nLFB5m0A==;
Received: from ppp118-209-64-163.lns20.mel4.internode.on.net ([118.209.64.163]:54438 helo=[192.168.1.22]) by msh03.myshophosting.com with esmtpsa (TLSv1.2:ECDHE-RSA-AES128-GCM-SHA256:128) (Exim 4.86_1) (envelope-from <Christian.Groves@nteczone.com>) id 1adUOk-001nS1-Qp for rtcweb@ietf.org; Wed, 09 Mar 2016 14:02:54 +1100
To: rtcweb@ietf.org
References: <56DEC8F5.4070101@alcatel-lucent.com> <CA+9kkMDv0U46wX3k5tF-6MoxrrMbd5FdDbD3y8KH7PWoTX=GMw@mail.gmail.com> <56DF03D8.6070308@alum.mit.edu> <CA+9kkMDDSYSq5HyuN+JKfH1fqVC+OctqMBVnmjAOBqV2iajPKA@mail.gmail.com> <56DF30EF.7040404@alvestrand.no> <CA+9kkMCK=QvY7WSVxzwByuRV9jkL6vTeXBSSfv5TtwDZ11s5Ow@mail.gmail.com>
From: Christian Groves <Christian.Groves@nteczone.com>
Message-ID: <56DF925A.1050209@nteczone.com>
Date: Wed, 09 Mar 2016 14:02:50 +1100
User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64; rv:38.0) Gecko/20100101 Thunderbird/38.6.0
MIME-Version: 1.0
In-Reply-To: <CA+9kkMCK=QvY7WSVxzwByuRV9jkL6vTeXBSSfv5TtwDZ11s5Ow@mail.gmail.com>
Content-Type: text/plain; charset="windows-1252"; format="flowed"
Content-Transfer-Encoding: 7bit
X-AntiAbuse: This header was added to track abuse, please include it with any abuse report
X-AntiAbuse: Primary Hostname - msh03.myshophosting.com
X-AntiAbuse: Original Domain - ietf.org
X-AntiAbuse: Originator/Caller UID/GID - [47 12] / [47 12]
X-AntiAbuse: Sender Address Domain - nteczone.com
X-Get-Message-Sender-Via: msh03.myshophosting.com: authenticated_id: christian.groves@nteczone.com
X-Authenticated-Sender: msh03.myshophosting.com: christian.groves@nteczone.com
X-Source:
X-Source-Args:
X-Source-Dir:
Archived-At: <http://mailarchive.ietf.org/arch/msg/rtcweb/56wKtbA_kwBqLOsV7rcareEXA-w>
Subject: Re: [rtcweb] draft-ietf-rtcweb-data-protocol - DCEP: Is the "Protocol" value case sensitive?
X-BeenThere: rtcweb@ietf.org
X-Mailman-Version: 2.1.17
Precedence: list
List-Id: Real-Time Communication in WEB-browsers working group list <rtcweb.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/rtcweb>, <mailto:rtcweb-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/rtcweb/>
List-Post: <mailto:rtcweb@ietf.org>
List-Help: <mailto:rtcweb-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/rtcweb>, <mailto:rtcweb-request@ietf.org?subject=subscribe>
X-List-Received-Date: Wed, 09 Mar 2016 03:02:58 -0000

Hello,

According to draft-ietf-mmusic-rfc4566bis-16 clause 5, SDP values are 
case significant unless specified otherwise. So that would make certain 
registered tokens such as MID case sensitive.

So if we're using a case sensitive SDP field to define to indicate the 
subprotocol then I think it would follow that DCEP should maintain the 
case sensitivity.

We might have similar issue for RTP/RTCP SDES e.g. BUNDLE MID 
(draft-ietf-mmusic-sdp-bundle-negotiation-27), CLUE ID 
(draft-ietf-clue-rtp-mapping-06). I don't think there's a general rule 
about maintaining case sensitivity for these cases?

Christian


On 9/03/2016 7:57 AM, Ted Hardie wrote:
> On Tue, Mar 8, 2016 at 12:07 PM, Harald Alvestrand 
> <harald@alvestrand.no <mailto:harald@alvestrand.no>> wrote:
>
>     This is a sidetrack, but the grammar in RFC 2616:
>
>            token          = 1*<any CHAR except CTLs or separators>
>             separators     = "(" | ")" | "<" | ">" | "@"
>                            | "," | ";" | ":" | "\" | <">
>                            | "/" | "[" | "]" | "?" | "="
>                            | "{" | "}" | SP | HT
>
>
>     + the ancient # rule
>     means that "1#token" is a comma-separated list of tokens, where
>     each token is separated by LWS.
>
> So, what RFC 6455 says is:
>          The request MAY include a header field with the name
>          |Sec-WebSocket-Protocol|.  If present, this value indicates one
>          or more comma-separated subprotocol the client wishes to speak,
>          ordered by preference.  The elements that comprise this value
>          MUST be non-empty strings with characters in the range U+0021 to
>          U+007E not including separator characters as defined in
>          [RFC2616 <https://tools.ietf.org/html/rfc2616>] and MUST all be unique strings.  The ABNF for the
>          value of this header field is 1#token, where the definitions of
>          constructs and rules are as given in [RFC2616 <https://tools.ietf.org/html/rfc2616>].
> I think that text is clear enough that comma is used as a separator of 
> sub-protocols and that "seperator charactors" are generally not 
> allowed in the elements.  So, I believe that faced with 
> iam,thegreatest you would have to parse it as two tokens: "iam" and 
> "the greatest".
>
> Ted
>
>     Not only do we (or someone) have to decide whether "xmpp" matches
>     "XMPP", we also have to decide whether "iam,thegreatest" matches
>     "iam ,   thegreatest"  or even "iam,
>     thegreatest" (yes, there's a newline in there).
>
>     All tokens registered so far are single tokens. Would it be
>     possible to advise against using identifiers with comma in them?
>
>     (for the base question, since this is ASCII only, lowercase is
>     well-defined, so I have no strong objection to either choice.)
>
>
>
>     On 03/08/2016 08:22 PM, Ted Hardie wrote:
>>     On Tue, Mar 8, 2016 at 8:54 AM, Paul Kyzivat
>>     <pkyzivat@alum.mit.edu <mailto:pkyzivat@alum.mit.edu>> wrote:
>>
>>
>>                      The elements that comprise this value
>>                      MUST be non-empty strings with characters in the
>>             range U+0021 to
>>                      U+007E not including separator characters as
>>             defined in
>>                      [RFC2616 <https://tools.ietf.org/html/rfc2616>]
>>             and MUST all be unique strings.  The ABNF for the
>>                      value of this header field is 1#token, where the
>>             definitions of
>>                      constructs and rules are as given in [RFC2616
>>             <https://tools.ietf.org/html/rfc2616>].
>>
>>             The current registry is here:
>>
>>             http://www.iana.org/assignments/websocket/websocket.xhtml#subprotocol-name
>>
>>
>>         I had already investigated this. This only talks about the
>>         registry, not how values passed in the protocol are compared
>>         to registered values. Nor does it explicitly say whether
>>         "unique strings" is to be determined via case-sensitive
>>         comparison or case-insensitive comparison.
>>
>>         (Without any other information to go on I guess I would
>>         assume case-sensitive comparison.)
>>
>>     Is there any token example in RFC 2616 that is case sensitive? 
>>     As far as I can tell they are all case-insensitive, but I may
>>     have missed something.
>>
>>     The Postel principle seems to indicate that we should always use
>>     the registered form, but be willing to understand a case
>>     insensitive variant.
>>
>>         What is most *important* to me is that this be made entirely
>>         clear, that IANA have clear instructions to enforce, and that
>>         both websocket and data channel specs consistently specify
>>         what implementations must do in this regard.
>>
>>         It is less important to me *which* choice is made. My
>>         *preference* would be minimally that the registry not permit
>>         two different names that differ only by case. If that is so,
>>         then in some sense it doesn't matter how implementations of
>>         the protocols do the comparison.
>>
>>     How likely do you see this being? Anyone going to register XMPP
>>     (instead of xmpp) is going to be hurting themselves as much as
>>     users of xmpp if they actually use it.  I'm happy to clean this
>>     up at some point, but I find it hard to believe this is the
>>     biggest rock.
>>
>>     regards,
>>
>>     Ted
>>
>>           Thanks,
>>                 Paul
>>
>>             regards,
>>
>>             Ted
>>
>>                 Background is draft-ietf-mmusic-data-channel-sdpneg,
>>             where the
>>                 subprotocol identifiers are signaled as part of an
>>             SDP attribute and
>>                 where it is not yet clarified if these identifiers
>>             are assumed to be
>>                 case sensitive or case insensitive.
>>
>>                 Thanks,
>>                 Juergen
>>
>>             _______________________________________________
>>                 rtcweb mailing list
>>             rtcweb@ietf.org <mailto:rtcweb@ietf.org>
>>             <mailto:rtcweb@ietf.org <mailto:rtcweb@ietf.org>>
>>             https://www.ietf.org/mailman/listinfo/rtcweb
>>
>>
>>
>>
>>             _______________________________________________
>>             rtcweb mailing list
>>             rtcweb@ietf.org <mailto:rtcweb@ietf.org>
>>             https://www.ietf.org/mailman/listinfo/rtcweb
>>
>>
>>         _______________________________________________
>>         rtcweb mailing list
>>         rtcweb@ietf.org <mailto:rtcweb@ietf.org>
>>         https://www.ietf.org/mailman/listinfo/rtcweb
>>
>>
>>
>>
>>     _______________________________________________
>>     rtcweb mailing list
>>     rtcweb@ietf.org <mailto:rtcweb@ietf.org>
>>     https://www.ietf.org/mailman/listinfo/rtcweb
>
>
>     -- 
>     Surveillance is pervasive. Go Dark.
>
>
>     _______________________________________________
>     rtcweb mailing list
>     rtcweb@ietf.org <mailto:rtcweb@ietf.org>
>     https://www.ietf.org/mailman/listinfo/rtcweb
>
>
>
>
> _______________________________________________
> rtcweb mailing list
> rtcweb@ietf.org
> https://www.ietf.org/mailman/listinfo/rtcweb