Re: [clue] CLUE Data Channel: SDP Offer/Answer Proceudres

Christian Groves <Christian.Groves@nteczone.com> Mon, 17 February 2014 01:35 UTC

Return-Path: <Christian.Groves@nteczone.com>
X-Original-To: clue@ietfa.amsl.com
Delivered-To: clue@ietfa.amsl.com
Received: from localhost (ietfa.amsl.com [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 147CD1A0294 for <clue@ietfa.amsl.com>; Sun, 16 Feb 2014 17:35:48 -0800 (PST)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -0.7
X-Spam-Level:
X-Spam-Status: No, score=-0.7 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, J_CHICKENPOX_111=0.6, J_CHICKENPOX_44=0.6] 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 z4b5lENvV0kr for <clue@ietfa.amsl.com>; Sun, 16 Feb 2014 17:35:45 -0800 (PST)
Received: from cserver5.myshophosting.com (cserver5.myshophosting.com [175.107.161.1]) by ietfa.amsl.com (Postfix) with ESMTP id EDA161A02C3 for <clue@ietf.org>; Sun, 16 Feb 2014 17:35:44 -0800 (PST)
Received: from ppp118-209-188-133.lns20.mel6.internode.on.net ([118.209.188.133]:53008 helo=[127.0.0.1]) by cserver5.myshophosting.com with esmtpsa (TLSv1:DHE-RSA-AES128-SHA:128) (Exim 4.82) (envelope-from <Christian.Groves@nteczone.com>) id 1WFD4z-0003ct-Uy; Mon, 17 Feb 2014 12:33:06 +1100
Message-ID: <53016764.9050201@nteczone.com>
Date: Mon, 17 Feb 2014 12:35:32 +1100
From: Christian Groves <Christian.Groves@nteczone.com>
User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64; rv:24.0) Gecko/20100101 Thunderbird/24.3.0
MIME-Version: 1.0
To: Christer Holmberg <christer.holmberg@ericsson.com>, "clue@ietf.org" <clue@ietf.org>
References: <7594FB04B1934943A5C02806D1A2204B1D18D51B@ESESSMB209.ericsson.se>, <53014B44.60600@nteczone.com> <2sen2h648ta6sevyeyw1y44k.1392596179208@email.android.com>, <53015E29.2000102@nteczone.com> <vd5x2knhr4rleweleq05w8po.1392599487052@email.android.com>
In-Reply-To: <vd5x2knhr4rleweleq05w8po.1392599487052@email.android.com>
Content-Type: text/plain; charset="ISO-8859-1"; 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 - cserver5.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: cserver5.myshophosting.com: authenticated_id: christian.groves@nteczone.com
X-Source:
X-Source-Args:
X-Source-Dir:
Archived-At: http://mailarchive.ietf.org/arch/msg/clue/__d95CoBHy5smmt7A5u6GqPcOHs
Subject: Re: [clue] CLUE Data Channel: SDP Offer/Answer Proceudres
X-BeenThere: clue@ietf.org
X-Mailman-Version: 2.1.15
Precedence: list
List-Id: CLUE - ControLling mUltiple streams for TElepresence <clue.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/clue>, <mailto:clue-request@ietf.org?subject=unsubscribe>
List-Archive: <http://www.ietf.org/mail-archive/web/clue/>
List-Post: <mailto:clue@ietf.org>
List-Help: <mailto:clue-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/clue>, <mailto:clue-request@ietf.org?subject=subscribe>
X-List-Received-Date: Mon, 17 Feb 2014 01:35:48 -0000

Hello Christer,

Please see below.

Regards, Christian

On 17/02/2014 12:11 PM, Christer Holmberg wrote:
> Hi,
>
> If the offerer offers a data channel, AND also some way indicates support of CLUE, we can always specify that the offerer MUST be able to use the data channel for CLUE. The WebRTC data channel protocol can then be used to open the channel for CLUE.
[CNG] I agree.

I'm still uncomfortable with the way these drafts are layered. The SCTP 
draft allows the specification of "app"s that relate to the SCTP 
association as a means of negotiating what goes in the SCTP association. 
One of those "app"s may be the webrtc data channel. It has its own means 
of negotiating of what is in the SCTP association (i.e. Richard's 
draft). Both these methods are basically just indicating what will be in 
the SCTP streams. Rather than have two methods for negotiating what is 
in the SCTP association it almost seems better to have one method for 
negotiation of what apps there are and then to tag whether or not the 
webrtc data channel will be used to open it.

e.g.

m=application 54111 SCTP/DTLS 54111
a=sctpmap:54111 stream=2;label="CLUE 1"; subprotocol="CLUE"; max_retr=3; webrtc-datachannel-tag
a=webrtc-datachannel:max-message-size=100000 streams=1
  
webrtc-datachannel-tag would take whether an "app" uses the webrtc data channel open protocol.
a=webrtc-datachannel attribute would give the attributes of the protocol.





>
> But, never the less, it would probably be good to have an example showing how things would look like using Richard's draft, until we've decided whether we are going to use it or not. I'll add that.
>
> Regards,
>
> Christer
>
> Sent from my Sony Ericsson Xperia arc S
>
> Christian Groves <Christian.Groves@nteczone.com> wrote:
>
>
> Hello Christer,
>
> I think that for the signaling we must specify a way of negotiating at
> the SDP level whether CLUE is supported. I agree there's lots of ways it
> could be done but we need to indicate which one/s CLUE should use.
>
> So for the SDP O/A procedures and example I think you have to assume the
> use of draft-ejzak-mmusic-data-channel-sdpneg otherwise you can't say
> its a CLUE data channel according to the SDP given. You're just opening
> a generic channel, which may or may not be clue. Particularly in the
> Answerer's case, it doesn't know that the Offer is going to use the
> channel for CLUE.
>
> However:
> m=application 54111 SCTP/DTLS 54111
> a=sctpmap:54111 webrtc-datachannel max-message-size=100000 streams=1
> a=dcmap:54111 stream=2;label="CLUE 1"; subprotocol="CLUE"; max_retr=3
>
> would unambiguously define it as a CLUE data channel.
>
> Regards, Christian
>
> On 17/02/2014 11:16 AM, Christer Holmberg wrote:
>> Hi Christian,
>>
>> If you want to negotiate usage of CLUE (or, any other specific usage of a webrtc-datachannel) in SDP, one option is to use Richard's draft. The usage of that draft is listed as an open issue in the CLUE data channel draft.
>>
>> SIP also provides other mechanisms, e.g. media feature tags, for indicating support of features.
>>
>> Regards,
>>
>> Christer
>>
>> Sent from my Sony Ericsson Xperia arc S
>>
>> Christian Groves <Christian.Groves@nteczone.com> wrote:
>>
>>
>> Hello Christer,
>>
>> With the use of webrtc-datachannel how do I negotiate via SDP whether I
>> want to use clue or not?
>>
>> A SCTP association (and thus webrtc-datachannel) for example could be
>> used for BFCP,CLUE and T.38. It seems wasteful to establish the SCTP
>> association to figure out that the endpoints support webrtc-datachannel
>> put don't support the application that you want.
>>
>> In the example in section 4.6 there's no way of distinguishing that
>> description for CLUE vs BFCP vs anything else. Its not a CLUE data
>> channel is a generic data channel.
>>
>> Regards, Christian
>>
>> On 16/02/2014 1:03 AM, Christer Holmberg wrote:
>>> Hi,
>>>
>>> The draft submission deadline has passed, but I still wrote some more text, shown below, for the SDP Offer/Answer Procedures section.
>>>
>>> Regards,
>>>
>>> Christer
>>>
>>> PS. Note that I will be on vacation next week, so I will once again do my best trying to stay away from e-mails :)
>>>
>>> -----------------------
>>>
>>> 4.  SDP Offer/Answer Procedures
>>>
>>> 4.1.  General
>>>
>>>       This section describes how the SDP media description ("m=") line for
>>>       a CLUE data channel is created, and how it is used in SDP offers and
>>>       answers.
>>>
>>>       NOTE: The proceudres associated with "m=" lines for other media types
>>>       (e.g. audio and video) used in a CLUE session are outside the scope
>>>       of this document.
>>>
>>>       OPEN ISSUE #3: It is FFS whether the SDP-based WebRTC Data Channel
>>>       Negotiation mechanism [I-D.ejzak-dispatch-webrtc-data-channel-sdpneg]
>>>       will be used with the CLUE data channel.
>>>
>>>       NOTE: If [I-D.ejzak-dispatch-webrtc-data-channel-sdpneg] will be used
>>>       with the CLUE data channel, a new associated 'sub-protocol' value
>>>       needs to be registered with IANA.
>>>
>>> 4.2.  SDP Media Description Fields
>>>
>>>       The field values of the "m=" line for the CLUE data channel are set
>>>       as following:
>>>
>>>       +----------------+----------------+------------------------+----------------+
>>>       |     media      |      port         |      proto               |      fmt         |
>>>       +----------------+----------------+------------------------+----------------+
>>>       | "applicationS |   DTLS port   | "UDP/TLS/UDPTL" |   SCTP port   |
>>>       |                    |     value       |                             |     value       |
>>>       +----------------+----------------+------------------------+---------------+
>>>
>>>                         Table 1: SDP "proto" field values
>>>
>>> 4.3.  SDP sctpmap Attribute
>>>
>>>       The field values of the SDP sctpmap attribute associated with the
>>>       CLUE data channel "m=" are set as following:
>>>
>>>       +---------------------+---------------------------+-----------------------+---------+
>>>       | sctpmap-number |         app                  | max-message-size | stream |
>>>       +---------------------+---------------------------+-----------------------+---------+
>>>       |  fmt value of       | "webrtc-datachannel" |  Implemenation     |  "1"     |
>>>       | the "m=" line      |                                |     specific             |           |
>>>       +---------------------+---------------------------+-----------------------+---------+
>>>
>>>                         Table 2: SDP "proto" field values
>>>
>>> 4.4.  SDP Offerer Procedures
>>>
>>>       The procedures for the offerer follow the normal proceures defined in
>>>       [ref-to-3264].
>>>
>>>       When the offerer creates an offer, which contains an "m=" line for a
>>>       CLUE data channel, it assigns the field values to the "m=" line
>>>       according to the procedures in Section 4.2.  In addition, the offerer
>>>       MUST insert an SDP sctpmap attribute associated with the "m=" line.
>>>
>>>       In an offer, the offerer MUST NOT insert more than one "m=" line for
>>>       a CLUE data channel.
>>>
>>>       NOTE: CLUE does not support the usage of multiple CLUE data channels.
>>>
>>>       The offerer MUST NOT insert more than one SDP sctpmap attributes in
>>>       an "m=" line for a CLUE data channel.
>>>
>>>       If an offerer, in a subsequent offer, wants to disable the CLUE data
>>>       channel, it assigns a zero port value to the "m=" line associated
>>>       with the CLUE data channel.  The answerer MUST NOT insert an SDP
>>>       sctpmap attribute associated with the "m=" line.
>>>
>>> 4.5.  SDP Answerer Procedures
>>>
>>>       The procedures for the answerer follow the normal proceures defined
>>>       in [ref-to-3264].
>>>
>>>       If the answerer receives an offer, which contains an "m=" line for a
>>>       CLUE data channel, and the answerer accepts the "m=" line, it creates
>>>       and inserts an "m=" line in the associated answer.  The answerer
>>>       assigns the field values to the "m=" line according to the procedures
>>>       in Section 4.2.
>>>
>>>       If, in the offer, a zero port value has been assigned to the "m="
>>>       line for the CLUE channel, or it the answerer does not accept the
>>>       "m=" line, but accepts other "m=" lines in the offer (i.e. the
>>>       answerer will not reject the whole offer), it still inserts an "m="
>>>       line for a CLUE data channel in the associated answer.  The answerer
>>>       then assigns a zero port value to the "m=" line.  The answerer MUST
>>>       NOT insert an SDP sctpmap attribute associated with the "m=" line.
>>>
>>> 4.6.  Example
>>>
>>>            m=application 54111 SCTP/DTLS 54111
>>>            a=sctpmap:54111 webrtc-datachannel max-message-size=100000 streams=1
>>>
>>>              Figure 1: SDP Media Description for a CLUE data channel
>>>
>>> _______________________________________________
>>> clue mailing list
>>> clue@ietf.org
>>> https://www.ietf.org/mailman/listinfo/clue
>>>
>> _______________________________________________
>> clue mailing list
>> clue@ietf.org
>> https://www.ietf.org/mailman/listinfo/clue
>>
>