Re: [MMUSIC] updating draft-ietf-mmusic-sctp-sdp

Paul Kyzivat <pkyzivat@alum.mit.edu> Thu, 11 October 2012 16:04 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 6CD7421F8510 for <mmusic@ietfa.amsl.com>; Thu, 11 Oct 2012 09:04:54 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -0.379
X-Spam-Level:
X-Spam-Status: No, score=-0.379 tagged_above=-999 required=5 tests=[AWL=0.058, BAYES_00=-2.599, FH_RELAY_NODNS=1.451, HELO_MISMATCH_NET=0.611, 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 rAZUWfculZDE for <mmusic@ietfa.amsl.com>; Thu, 11 Oct 2012 09:04:53 -0700 (PDT)
Received: from qmta03.westchester.pa.mail.comcast.net (qmta03.westchester.pa.mail.comcast.net [IPv6:2001:558:fe14:43:76:96:62:32]) by ietfa.amsl.com (Postfix) with ESMTP id 72E3121F8508 for <mmusic@ietf.org>; Thu, 11 Oct 2012 09:04:53 -0700 (PDT)
Received: from omta08.westchester.pa.mail.comcast.net ([76.96.62.12]) by qmta03.westchester.pa.mail.comcast.net with comcast id 9mGn1k0030Fqzac53s4xtS; Thu, 11 Oct 2012 16:04:57 +0000
Received: from Paul-Kyzivats-MacBook-Pro.local ([50.138.229.164]) by omta08.westchester.pa.mail.comcast.net with comcast id 9rzi1k0133ZTu2S3Urzjhn; Thu, 11 Oct 2012 15:59:43 +0000
Message-ID: <5076ECF7.2090500@alum.mit.edu>
Date: Thu, 11 Oct 2012 11:59:51 -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> <5075DDF8.5070200@alum.mit.edu> <5076E59E.3020501@ericsson.com>
In-Reply-To: <5076E59E.3020501@ericsson.com>
Content-Type: text/plain; charset="ISO-8859-1"; format="flowed"
Content-Transfer-Encoding: 7bit
Subject: Re: [MMUSIC] updating draft-ietf-mmusic-sctp-sdp
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:04:54 -0000

On 10/11/12 11:28 AM, Salvatore Loreto wrote:
> On 10/10/12 11:43 PM, Paul Kyzivat wrote:
>> Salvatore,
>>
>> Comment/question inline
>>
>> On 10/8/12 4:12 AM, Salvatore Loreto wrote:
>>> Hi there,
>>>
>>> there has been a quite large discussion within the rtcweb mailing list and
>>> especially the w3c webrtc mailing list.
>>>
>>> Some of the points discussed are specific of how to negotiate the
>>> 'datachannel' protocol over SDP,
>>> and I lean on putting those in a separate draft and not in this one.
>>>
>>> However there are things that are general enough to is worth to insert
>>> in this draft
>>> as they can be used in other protocols that eventually will be specified
>>> in the future
>>> running on top of SCTP, or STCP over DTLS.
>>>
>>>    'streams' is some of those attributes,
>>>    so I am proposing to insert in the new version of the draft the
>>> following text
>>>
>>>    xxx.  Streams Attribute
>>>
>>>      The 'streams' attribute indicates time the number of streams to be supported by the association.
>>>      If this attribute is not present, the implementation should provide a default, with a suggested value
>>>      of 16.
>>>
>>>
>>>            streams-attr           =  "a=streams:" streamsnumbers
>>>            streamsnumbers         =1*DIGIT
>>>
>>>
>>> As I said, all the other attributes that has been discussed are tied to
>>> the 'datachannel'  protocol identifier ( to be registered?),
>>> which is describing the format of the media... so they should go in a
>>> different draft.
>> I'm confused by the above. The m-line syntax is:
>>
>>       m=<media> <port> <proto> <fmt> ...
>>
>> and this draft is defining SCTP, SCTP/DTLS and DTLS/SCTP values for
>> <proto>. Are you suggesting that "datachannel" be defined (in a
>> different draft) as an alternative to *these* values? I would think it
>> would make more sense to define "datachannel" as a <fmt> value.
> no, I also think that "datachannel" has to be defined as a <fmt> value.
> sorry not to have been enough clear about that.

OK. Glad to have that cleared up.

>> That brings up another issue:
>>
>> According to 4566, the values of the <fmt> field are protocol specific.
>> That means that *this* draft needs to specify how <fmt> values are to be
>> understood for sctp. That is actually a problem, one might want
>> different fmt semantics for each channel.
>
> as always you are right, RFC4566 states
>
>      For media using other transport protocols, the <fmt> field is
>        protocol specific.  Rules for interpretation of the <fmt> sub-
>        field MUST be defined when registering new protocols (seeSection  <http://tools.ietf.org/html/rfc4566#section-8.2.2>
>        8.2.2  <http://tools.ietf.org/html/rfc4566#section-8.2.2>).
>
> so we can define simply the data-channel <fmt> field as a
>
>      "A bidirectional channel consisting of two SCTP streams."

I'm not going to let you get by simply hand waving. :-)

You are proposing to define this syntax with only a single valid value 
for <fmt> and no mechanism for extending it???

For RTP the <fmt> values are payload type numbers, and there is a rich 
syntax for mapping them to codecs, etc. So this covers many kinds of 
content.

For UDP the <fmt> values are MIME subtypes, which when combined with the 
<media> field give a complete MIME type that defines the packet format 
for UDP packets. The MIME registration procedures provide the way to 
define new wire formats.

I would expect that the definition for SCTP would provide a similarly 
open ended mechanism, that can support various uses of SCTP. Surely 
there will be more uses of SCTP media than just RTCWEB.

Also, SCTP by its nature provides multiple unidirectional channels in 
both directions. The description you give above suggests that you are 
describing the intended RTCWEB usage, where two SCTP channels, one in 
each direction, are semantically bound. And RTCWEB intends to support 
multiple such pairs. The description above says nothing about this. At a 
minimum there should be a reference from the particular <fmt> value to a 
specification of the semantics corresponding to that value.

It occurs to me that the nature of SCTP with multiple channels lends 
itself to a <fmt> syntax similar to that used for RTP, with "channel 
numbers" being used in a way analogous to payload type numbers with RTP. 
Then there could be a-lines binding particular channel numbers to 
properties of that channel, such as the packet format, etc.

	Thanks,
	Paul