Re: [MMUSIC] draft-ietf-mmusic-sctp-sdp: a concern from CLUE

Paul Kyzivat <pkyzivat@alum.mit.edu> Thu, 11 October 2012 16:58 UTC

Return-Path: <pkyzivat@alum.mit.edu>
X-Original-To: mmusic@ietfa.amsl.com
Delivered-To: mmusic@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 48F1021F85C2 for <mmusic@ietfa.amsl.com>; Thu, 11 Oct 2012 09:58:18 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: 0.22
X-Spam-Level:
X-Spam-Status: No, score=0.22 tagged_above=-999 required=5 tests=[AWL=-0.543, BAYES_00=-2.599, FH_RELAY_NODNS=1.451, HELO_MISMATCH_NET=0.611, J_CHICKENPOX_111=0.6, J_CHICKENPOX_12=0.6, RDNS_NONE=0.1]
Received: from mail.ietf.org ([64.170.98.30]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id 9Eh4Q1TYxYJ5 for <mmusic@ietfa.amsl.com>; Thu, 11 Oct 2012 09:58:17 -0700 (PDT)
Received: from qmta14.westchester.pa.mail.comcast.net (qmta14.westchester.pa.mail.comcast.net [IPv6:2001:558:fe14:44:76:96:59:212]) by ietfa.amsl.com (Postfix) with ESMTP id 866AF21F84A6 for <mmusic@ietf.org>; Thu, 11 Oct 2012 09:58:17 -0700 (PDT)
Received: from omta10.westchester.pa.mail.comcast.net ([76.96.62.28]) by qmta14.westchester.pa.mail.comcast.net with comcast id 9sqp1k0070cZkys5EsyMjP; Thu, 11 Oct 2012 16:58:21 +0000
Received: from Paul-Kyzivats-MacBook-Pro.local ([50.138.229.164]) by omta10.westchester.pa.mail.comcast.net with comcast id 9stF1k0043ZTu2S3WstF1D; Thu, 11 Oct 2012 16:53:15 +0000
Message-ID: <5076F97C.80203@alum.mit.edu>
Date: Thu, 11 Oct 2012 12:53:16 -0400
From: Paul Kyzivat <pkyzivat@alum.mit.edu>
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.7; rv:15.0) Gecko/20120907 Thunderbird/15.0.1
MIME-Version: 1.0
To: mmusic@ietf.org
References: <50728B01.5060405@ericsson.com> <5075E4CE.7000108@alum.mit.edu> <5076E98B.7030009@ericsson.com>
In-Reply-To: <5076E98B.7030009@ericsson.com>
Content-Type: text/plain; charset="ISO-8859-1"; format="flowed"
Content-Transfer-Encoding: 7bit
Subject: Re: [MMUSIC] draft-ietf-mmusic-sctp-sdp: a concern from CLUE
X-BeenThere: mmusic@ietf.org
X-Mailman-Version: 2.1.12
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: <http://www.ietf.org/mail-archive/web/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, 11 Oct 2012 16:58:18 -0000

On 10/11/12 11:45 AM, Salvatore Loreto wrote:
> On 10/11/12 12:12 AM, Paul Kyzivat wrote:
>> In the clue wg we have need for a data channel for some application
>> level signaling.
> what is a data channel for CLUE wg.
> As I said in the other thread in
> http://tools.ietf.org/html/draft-jesup-rtcweb-data-protocol-03
> we have the following definitions:
>
> 3.  Terminology
>
>     This document uses the following terms:
>     Association:  An SCTP association.
>     Stream:  A unidirectional stream of an SCTP association.  It is
>        uniquely identified by a stream identifier.
>     Channel:  A bidirectional channel consisting of two SCTP streams.

Sorry - I didn't pay enough attention when I re-reviewed the draft and 
forgot the terminology.

Yes, we need a single bidirectional channel for the clue signaling.

There may be reasons to use other channels for separate but related 
purposes. For instance, we are likely to want to use bfcp with clue. If 
there were an SCTP mapping for bfcp then there would be an opportunity 
to use a single SCTP connection with one channel for clue-specific 
signaling and another channel for bfcp. While AFAIK there is currently 
no work to define bfcp over SCTP it would be nice if such a combined use 
could be supported.

>>   While not yet settled, we have a strong interest in
>> using the same SCTP over DTLS mechanism that RTCWEB is using. We have a
>> couple of reasons for that:
>> - it meets our needs for a reliable channel
>> - rtcweb is doing the work of defining a mechanism that will
>>     work through NATs, etc.
> great!
>> - we want to make it possible to implement clue in a webrtc client.
>>     But we don't want to require that clue be implemented over webrtc!
>
> this is reasonable
>>
>> As far as we can see now, clue will only need a single channel.
> then you can do something like
>
> m=application 60878 SCTP/DTLS
> c=IN IP4 79.97.215.79
> a=fmtp:datachannel streams=1
>
> i.e. you are negotiating to establish an SCTP association with only one
> single stream in each direction,
> and use it to establish a datachanel

AFAICT the above doesn't specify what streamids are to be used. As long 
as the number of streams is just 1 this question is moot since the only 
valid value is 0. But in a more general case it is not.

Is the intent that the definition of datachannel means that the streamid 
in each direction is always the same? Or can arbitrary streamids be 
paired into a channel?

>> An webrtc implementation of clue will need to use the webrtc APIs to
>> request a channel for clue use. But a native sip implementation of clue
>> won't have the webrtc APIs. In sip the natural way to assign something
>> like this would be via SDP.
>>
>> The bottom line for me is that there should be a mechanism via SDP to
>> negotiate some SCTP channels for particular uses. If webrtc also wants
>> to support dynamic assignment of channels, then the SDP mechanism could
>> be used to negotiate a channel over which a dynamic assignment protocol
>> can be run.
>
> then perhaps what you need is a way to declare (in a label attribute?) what
> you want to run within a specific channel
> perhaps something like that
>
> a=datachannel:0 stream=0;label=CLUE

> i.e. the only datachannel that you have negotiated use the stream 0 and then
> the "label" attribute tell you what you are going to run on top of it.

Something like that. We would need to work out how the protocol and 
intended use for each channel is signaled. This is very similar to the 
issues now being confronted about signaling information about individual 
RTP streams within a single RTP session.

>> I realize this is a bit messy. I don't know whether it is better
>> discussed in MMUSIC or RTCWEB.
>
> lets discuss in MMUSIC, as all the SPD expert are here!

OK.

	Thanks,
	Paul