Re: [MMUSIC] WGLC for draft-ietf-mmusic-data-channel-sdpneg

Christian Groves <Christian.Groves@nteczone.com> Thu, 25 February 2016 00:24 UTC

Return-Path: <Christian.Groves@nteczone.com>
X-Original-To: mmusic@ietfa.amsl.com
Delivered-To: mmusic@ietfa.amsl.com
Received: from localhost (ietfa.amsl.com [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 882A11A87EA for <mmusic@ietfa.amsl.com>; Wed, 24 Feb 2016 16:24:43 -0800 (PST)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: 0.61
X-Spam-Level:
X-Spam-Status: No, score=0.61 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, J_CHICKENPOX_111=0.6, J_CHICKENPOX_12=0.6, J_CHICKENPOX_15=0.6, J_CHICKENPOX_17=0.6, T_DKIM_INVALID=0.01] autolearn=no
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 g_59LvexzmIf for <mmusic@ietfa.amsl.com>; Wed, 24 Feb 2016 16:24:40 -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 8E4131A8961 for <mmusic@ietf.org>; Wed, 24 Feb 2016 16:24:40 -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=irxfQVTSY3r+CrtTjv523Y3Z8l22Yr5tjVvB6U0/9XI=; b=Vn18P+JITtlZkmLMQV8mvW5tM1 P6w5eiXrnDqTVIPvGdo+FdYkyCTyRPQvlZkb96yqdwofTaxN39CPX3e7gNUDi4Rct//HMXCg4z6SZ gyvkkxEDEvDnbeQL95K+mR0bVZ0yd3nbk7ccnO1LA/e5i+pMyoWSODM2DVx/gqnC2C7ohxPjSIqN1 mE4SuEUr0gX7hSZqkal0+ZuEtvve4Y3seXG2w1exju36cc3geXdJlowRXroeLJDWr6oIPyggqIPGG pbGIlN0WBSyRKJsiTOiBogluM3pv27nXk/dkeeRG7jd7VrvcP8ps9tqHZ6/4kh/zM/ho8/tfhA+A2 GtThTJ1g==;
Received: from ppp118-209-85-108.lns20.mel4.internode.on.net ([118.209.85.108]:50690 helo=[192.168.1.22]) by msh03.myshophosting.com with esmtpsa (TLSv1.2:ECDHE-RSA-AES128-GCM-SHA256:128) (Exim 4.86) (envelope-from <Christian.Groves@nteczone.com>) id 1aYjjR-001nSZ-W5 for mmusic@ietf.org; Thu, 25 Feb 2016 11:24:38 +1100
To: mmusic@ietf.org
References: <BBE9739C2C302046BD34B42713A1E2A22E88D533@ESESSMB105.ericsson.se> <56684C13.9030106@alum.mit.edu> <5668F9C1.4040606@nteczone.com> <566903E3.8020108@alum.mit.edu> <566A16D2.1070108@nteczone.com> <949EF20990823C4C85C18D59AA11AD8BADE22AB4@FR712WXCHMBA11.zeu.alcatel-lucent.com> <566AEB05.3040501@alum.mit.edu> <56AACC37.8090900@cisco.com> <56AB8596.9090304@alum.mit.edu> <56B12F48.409@cisco.com> <56B25159.70002@alum.mit.edu> <56B28240.7080206@cisco.com> <56B2DA8D.2000909@alum.mit.edu> <56B41A47.10901@nteczone.com> <56B63EF8.8080100@alum.mit.edu> <56B8BDA4.7060305@cisco.com> <56B8CBB5.7070507@alum.mit.edu> <56BCF47E.2000603@cisco.com> <56BDB7BC.1060104@alcatel-lucent.com> <56BE0F51.7050700@alum.mit.edu> <56C05B90.5070107@alcatel-lucent.com> <56C1F810.4060309@alum.mit.edu> <56C31DC5.80105@alcatel-lucent.com> <56C471D1.8010701@alcatel-lucent.com> <56C745EB.6060605@alum.mit.edu> <56CC5EC6.2030402@alcatel-lucent.com> <56CCCE6F.9040106@alum.mit.edu>
From: Christian Groves <Christian.Groves@nteczone.com>
Message-ID: <56CE49C1.2020605@nteczone.com>
Date: Thu, 25 Feb 2016 11:24:33 +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: <56CCCE6F.9040106@alum.mit.edu>
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/mmusic/wwy-xxoItEFOABKtPF4RzSceJCk>
Subject: Re: [MMUSIC] WGLC for draft-ietf-mmusic-data-channel-sdpneg
X-BeenThere: mmusic@ietf.org
X-Mailman-Version: 2.1.15
Precedence: list
List-Id: Multiparty Multimedia Session Control Working Group <mmusic.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/mmusic>, <mailto:mmusic-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/mmusic/>
List-Post: <mailto:mmusic@ietf.org>
List-Help: <mailto:mmusic-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/mmusic>, <mailto:mmusic-request@ietf.org?subject=subscribe>
X-List-Received-Date: Thu, 25 Feb 2016 00:24:43 -0000

Hello Juergen and Paul,

Please see at end.

Regards, Christian

On 24/02/2016 8:26 AM, Paul Kyzivat wrote:
> ..snip..
>>
>> On 19.02.2016 17:42, EXT Paul Kyzivat wrote:
>>> On 2/17/16 8:12 AM, Juergen Stoetzer-Bradler wrote:
>>>> Hi Paul, Christian, Flemming, Bo,
>>>>
>>>> Have just submitted version 08 of 
>>>> draft-ietf-mmusic-data-channel-sdpneg.
>>>> The changes compared to version 07 are essentially as follows.
>>>>
>>>> *   Two new paragraphs in section 5.1.2.1 (dcsa Attribute) 
>>>> regarding the
>>>> relationship of subprotocols and their attributes.
>>>> *   Two new SDP offer/answer considerations in section 5.2.5 (Various
>>>> SDP Offer/Answer Scenarios and Considerations)  regarding unknown
>>>> subprotocol attributes or known subprotocol attributes, whose data
>>>> channel transport specific semantic is not known.
>>>> *   A new paragraph in section 8.1 (IANA Considerations / Subprotocol
>>>> Identifiers) related to cases, where a subprotocol is defined for data
>>>> channel and Websocket transport.
>>>>
>>>> These changes should address the points discussed in this email 
>>>> thread.
>>>
>>> This is an improvement. But I think things could still be made clearer.
>>>
>>> Consider the following addition to 5.1.2.1:
>>>
>>>    It is assumed that in general the usages of subprotocol related 
>>> media
>>>    level attributes are independent from the subprotocol's transport
>>>    protocol.  Such transport protocol independent subprotocol related
>>>    attributes are used in the same way as defined in the original
>>>    subprotocol specification, also if the subprotocol is transported
>>>    over a data channel and if the attribute is correspondingly embedded
>>>    in a "a=dcsa" attribute.
>>>
>>>    There may be cases, where the usage of a subprotocol related media
>>>    level attribute depends on the subprotocol's transport protocol.  In
>>>    such cases the subprotocol related usage of the attribute is 
>>> expected
>>>    to be described for the data channel transport.  A data channel
>>>    specific usage of a subprotocol attribute is expected to be 
>>> specified
>>>    in the same document, which registers the subprotocol's identifier
>>>    for data channel usage as described in Section 8.1.
>>>
>>> This text makes sense when there is a clear distinction between
>>> subprotocol and protocol. Unfortunately, the way SDP has evolved there
>>> is no such clear distinction in many cases, such as RTP over UDP or
>>> TCP, etc. Those are combined into a single protocol value. While that
>>> can usually be parsed apart at slashes, there isn't good terminology
>>> for it.
>>>
>>> My point is that when I read the above, I don't know how it applies
>>> to, say, RTP attributes. Or does it only apply for attributes that are
>>> clearly defined for a *sub*protocol?
>>>
>>> I think this is primarily that we lack well defined vocabulary for all
>>> of this. But I think it would be too much to expect this draft to
>>> *solve* the vocabulary problem. In lieu of doing so, maybe it would be
>>> sufficient to give some concrete examples, even if they have to be
>>> hypothetical ones.
>>
>> [Juergen] Agree that it would be helpful to have more precise
>> definitions of the differences of the terms protocol and subprotocol,
>> especially when those terms are used outside the scope of data channels
>> (or Websockets). When only focusing on data channels the notion of a
>> "subprotocol" seems to be clearer - at least
>> draft-ietf-rtcweb-data-protocol explicitly refers to the "WebSocket
>> Subprotocol Name Registry" when specifying DCEP's "Protocol" parameter.
>> (But draft-ietf-rtcweb-data-channel does not define what a data
>> channel's "subprotocol" is.) So far the sdpneg draft relatively
>> informally starts using the term "subprotocol" in the introduction and
>> there refers to Websocket "subprotocols". Perhaps we should add the term
>> "subprotocol" to the list of used terminology in section 3.
>>
>> The sdpneg document, together with the data channel subprotocol specific
>> document (which defines the value of the a=dcmap attribute's
>> "subprotocol" parameter), should certainly give clear guidance on how to
>> interpret SDP offers or answers like e.g.:
>>
>>       m=application 10001 UDP/DTLS/SCTP webrtc-datachannel
>>       c=IN IP4 10.10.10.1
>>       a=max-message-size:100000
>>       a=sctp-port:5000
>>       ...
>>       a=dcmap:0 subprotocol="MSRP"
>>       a=dcsa:0 accept-types:message/cpim text/plain
>>       a=dcsa:0 framerate:...
>>       a=dcsa:0 lang:...
>>
>> An implementation receiving such an offer would need to decide what to
>> do with the dcsa embedded framerate and lang attributes. Or, someone
>> implementing MSRP over data channel based services may need to decide
>> whether or not to use these attributes, and if yes, how.
>> (I am using these two attributes just as hypothetical examples - don't
>> want to suggest that those may indeed be used for MSRP over data channel
>> transport).
>>
>> The msrp-usage-data-channel document doesn't mention these two
>> attributes. When looking at the IANA SDP attribute registry tables, I
>> would find both attributes specified in RFC 4566. There, "framerate" is
>> explicitly said to be defined only "for video media". Just to be sure I
>> could additionally have a look at the MSRP specifying documents, RFC
>> 4975 and RFC 4976, but there would not find any text at all related to
>> "framerate". So this case seems pretty clear and I would therefore
>> conclude that the "framerate" attribute should not be used for MSRP, and
>> that a receiver of such an offer or answer should ignore it.
>>
>> When looking at the definition of the "lang" attribute in RFC 4566 I
>> would not see any explicit hint of what protocols this attribute might
>> be used with, especially if "lang" could be used when negotiating an
>> MSRP session. When then looking at RFC 4975 I would indeed find "lang" -
>> but not as SDP attribute, rather as XML tag parameter within an example
>> MSRP message payload. Thus, the case of the "lang" attribute might not
>> be as unambiguous as the one with the "framerate" attribute, but here
>> too I think the typical choice would be to ignore that attribute when
>> receiving such an offer or answer.
>> It seems to me that the two new "ignore" rules in section 5.2.5 of
>> sdpneg-08 may also be applied in these cases.
>>
>> Admittedly, these examples may seem a bit far-fetched, but would those
>> go into the direction you had in mind?
>
> Yes. Note that using examples is just me grasping at straws, since a 
> real solution looks like to big a problem for this draft to tackle by 
> itself. I am entirely open to other ideas for how to deal with this.
[CNG] I don't see what the example buys? I don't see that the behaviour 
is any different between using additional attributes in the datachannel 
vs. the non data channel case. E.g. for

     c=IN IP4 10.10.10.1
     m=message 7394 TCP/MSRP *
     a=accept-types:message/cpim text/plain text/html
     a=lang:....
     a=framerate:...
The ignore behaviour would be the same.
In the above example the attributes are scoped by the m= line. In the 
data channel case the attributes are scoped by the relevant a=dcmap: line.

Regards, Christian

>
>     Thanks,
>     Paul
>
> _______________________________________________
> mmusic mailing list
> mmusic@ietf.org
> https://www.ietf.org/mailman/listinfo/mmusic
>