Re: [MMUSIC] SDPCapNeg-06: Transport capabilites and RTP payload types

Flemming Andreasen <fandreas@cisco.com> Mon, 23 July 2007 19:28 UTC

Return-path: <mmusic-bounces@ietf.org>
Received: from [127.0.0.1] (helo=stiedprmman1.va.neustar.com) by megatron.ietf.org with esmtp (Exim 4.43) id 1ID3aQ-000067-Um; Mon, 23 Jul 2007 15:28:54 -0400
Received: from [10.90.34.44] (helo=chiedprmail1.ietf.org) by megatron.ietf.org with esmtp (Exim 4.43) id 1ID3aP-00005z-Ff for mmusic@ietf.org; Mon, 23 Jul 2007 15:28:53 -0400
Received: from sj-iport-6.cisco.com ([171.71.176.117]) by chiedprmail1.ietf.org with esmtp (Exim 4.43) id 1ID3aO-0007uy-8j for mmusic@ietf.org; Mon, 23 Jul 2007 15:28:53 -0400
Received: from sj-dkim-3.cisco.com ([171.71.179.195]) by sj-iport-6.cisco.com with ESMTP; 23 Jul 2007 12:28:51 -0700
X-IronPort-Anti-Spam-Filtered: true
X-IronPort-Anti-Spam-Result: AusRAJaepEarR7PD/2dsb2JhbACIX5wp
X-IronPort-AV: i="4.16,572,1175497200"; d="scan'208"; a="187092737:sNHT57221694"
Received: from sj-core-2.cisco.com (sj-core-2.cisco.com [171.71.177.254]) by sj-dkim-3.cisco.com (8.12.11/8.12.11) with ESMTP id l6NJSp8o010016; Mon, 23 Jul 2007 12:28:51 -0700
Received: from xbh-sjc-211.amer.cisco.com (xbh-sjc-211.cisco.com [171.70.151.144]) by sj-core-2.cisco.com (8.12.10/8.12.6) with ESMTP id l6NJSp6C013468; Mon, 23 Jul 2007 19:28:51 GMT
Received: from xfe-sjc-212.amer.cisco.com ([171.70.151.187]) by xbh-sjc-211.amer.cisco.com with Microsoft SMTPSVC(6.0.3790.1830); Mon, 23 Jul 2007 12:28:50 -0700
Received: from [10.21.86.195] ([10.21.86.195]) by xfe-sjc-212.amer.cisco.com with Microsoft SMTPSVC(6.0.3790.1830); Mon, 23 Jul 2007 12:28:50 -0700
Message-ID: <46A50171.1030906@cisco.com>
Date: Mon, 23 Jul 2007 15:28:49 -0400
From: Flemming Andreasen <fandreas@cisco.com>
User-Agent: Thunderbird 1.5.0.12 (Windows/20070509)
MIME-Version: 1.0
To: Magnus Westerlund <magnus.westerlund@ericsson.com>
Subject: Re: [MMUSIC] SDPCapNeg-06: Transport capabilites and RTP payload types
References: <469F9B92.3060906@ericsson.com> <46A4CB73.1010701@cisco.com> <46A4F8BF.6030504@ericsson.com>
In-Reply-To: <46A4F8BF.6030504@ericsson.com>
Content-Type: text/plain; charset="UTF-8"; format="flowed"
Content-Transfer-Encoding: 7bit
X-OriginalArrivalTime: 23 Jul 2007 19:28:50.0347 (UTC) FILETIME=[B27CF7B0:01C7CD5F]
DKIM-Signature: v=0.5; a=rsa-sha256; q=dns/txt; l=9416; t=1185218931; x=1186082931; c=relaxed/simple; s=sjdkim3002; h=Content-Type:From:Subject:Content-Transfer-Encoding:MIME-Version; d=cisco.com; i=fandreas@cisco.com; z=From:=20Flemming=20Andreasen=20<fandreas@cisco.com> |Subject:=20Re=3A=20[MMUSIC]=20SDPCapNeg-06=3A=20Transport=20capabilites= 20and=20RTP=20payload=0A=20types |Sender:=20; bh=4vB/aBYNPrg5OY4RberaO2fRgON6fjmCbMA6ZZK2FPo=; b=m40qboSvekaGRsnafkHYBRYR0xckEITlLMgAeeumO10cc2pk11d4BMsxDM1DJFeIwCjGM4CX rPqC1OqniLOwDGOu+PxzavbAiN2Ooa8ddr7H1aASsgELRdPG+vYYTymJ;
Authentication-Results: sj-dkim-3; header.From=fandreas@cisco.com; dkim=pass ( sig from cisco.com/sjdkim3002 verified; );
X-Spam-Score: 0.0 (/)
X-Scan-Signature: 31b28e25e9d13a22020d8b7aedc9832c
Cc: "mmusic (E-mail)" <mmusic@ietf.org>
X-BeenThere: mmusic@ietf.org
X-Mailman-Version: 2.1.5
Precedence: list
List-Id: Multiparty Multimedia Session Control Working Group <mmusic.ietf.org>
List-Unsubscribe: <https://www1.ietf.org/mailman/listinfo/mmusic>, <mailto:mmusic-request@ietf.org?subject=unsubscribe>
List-Post: <mailto:mmusic@ietf.org>
List-Help: <mailto:mmusic-request@ietf.org?subject=help>
List-Subscribe: <https://www1.ietf.org/mailman/listinfo/mmusic>, <mailto:mmusic-request@ietf.org?subject=subscribe>
Errors-To: mmusic-bounces@ietf.org


Magnus Westerlund wrote:
> Hi,
>
> See comments inline.
>
> Flemming Andreasen skrev:
>>
>>
>> Magnus Westerlund wrote:
>>> Hi,
>>>
>>> I have finally read the SDP capapbility draft in sufficient detail 
>>> to think I understand it mostly. There is likely some details that I 
>>> have gotten wrong. But I have found some issues that I need to raise 
>>> for discussion. I will split this into separate emails for each topic.
>> Thanks for taking the time to read the document Magnus - responses 
>> below.
>>>
>>> I think the handling of the transport capabilites have to little 
>>> functionality. There is need for specifying which RTP payload types 
>>> that apply to which transport capabilities. I will list some usages 
>>> of this that doesn't seem to work correctly without it or bloody 
>>> ugly hacks.
>>>
>>> 1. Usage of RTP retransmission (RFC 4588) using payload type 
>>> multiplexing. 
>> I assume you mean when using session-multiplexing as opposed to
>> SSRC-multiplexing and hence the issue here is one of requiring
>> syncrhonized O/A operation over multiple streams.
>
> Yes. Sorry for mixing up the language.
>
>>> In this case the RTP retransmission payload only can be used in 
>>> cases when the session uses a profile that has AVPF functionality. 
>>> If one offers both AVP and AVPF with CAPNEG then one gets at least 
>>> one additional RTP payload type for the AVPF cases.
>> Can RFC 4588 only be used under AVPF profiles  ?
>
> Well, you can use the payload format in AVP but then you lack the NACK 
> format to request any retransmissions with.
>
>  Regardless, I
>> understand your point, that there are cases where you would like to have
>> this syncrhonized O/A operation. As mentioned above, SSRC-multiplexing
>> works, and if you can do RFC 4588 today, then presumably you have
>> implemented some logic on top of the "pure" O/A procedures to ensure
>> that you do not accept the redundant stream without the primary stream
>> being accepted itself. Also, since there is SSRC and payload type
>> synchronization between the two streams, there is clearly more going on
>> here than pure per-media stream only O/A procedures. Based on that, I'm
>> not sure we in practice get into any new scenarios here; you already
>> have logic in place to accept only potential configuration SDPs that
>> adhere to the principles effectively required by RFC 4588.
>
> However, that uses grouping of media lines. An without a reasonable 
> support of grouping of media lines for potential configuration that 
> will not work. Thus, as I see it this is a problem.
Actually, I believe this particular scenario is supported as well as 
with RFC 4588 itself. You can define a session level "a=group:FID" 
attribute capability which is only used by the potential configuration 
for the AVPF transport protocol. The per-media stream "mid" attributes 
can always be added to the actual configuration.


>>
>> Taking a step back, the question however is whether this type of
>> functionality should be in scope of the core capabilities negotiation
>> document or not. We only have "per media stream" requirements in the
>> requirements document
>> (draft-ietf-mmusic-sdp-capability-negotiation-reqts-01.txt).
>> Furthermore, the "media format negotiation" requirement (REQ-10) as well
>> as the inter-media stream requirements are (REQ-150 and REQ-160) are all
>> listed as enchancements, and hence would be covered by an extension
>> rather than the core. This (fairly reduced) scope was the result of a
>> lot of discusions and consideration to people that are primarily
>> interested in addressing the pure transport protocol problem and hence
>> did not want an overly complicated solution.  I think your comment here
>> is that you disagree with these requirements, but I think it's a little
>> late for that and also does not align with the general consensus so far.
>>
>
>
> I can understand that you don't want to change the requirements and I 
> accept that. However, as I see it you are ready to restrict 
> applications to use functionalities that actually the reason for 
> deploying the transport negotiation capability. To me it seems that 
> you are arguing that the only valid transport negotiation usage that 
> needs to work is SRTP.
I'm not. What I am saying however is that there has been significant 
pushback on complicating the core and including functionality that is 
not needed for the SRTP crowd. At the same time, it is also agreed that 
we want a general and extensible solution that can be used to address 
other capability negotiation problems (like the ones you bring up). It's 
not an easy balancing act...
> I don't think it is reasonable to disregard solutions that uses AVPF 
> from using this mechanism to determine if one can or cannot use for 
> example retransmission.
Per the above, I think that scenario actually works without any 
extensions. Are there other specific scenarios you are concerned about 
in the core (e.g. it would be helpful if you can identify scenarios that 
absolutely MUST be supported by the core) ?

>>> 2. Usage of paylaod types that only make sense over particular 
>>> transport. For example if one requires RTP/AVP/TCP for a particular 
>>> paylaod type to be usable due to reliability requirements.
>>>
>>> As I see it this can be only solved by what I consider a hack. Which 
>>> is to overdefine a number of payload types that one doesn't intended 
>>> to use to provide sufficient number for other potential 
>>> configurations. And I think you need to define them, because leaving 
>>> them undefined would to me be against current SDP rules.
>>>
>>> I think this is a hack for several reasons.
>>>
>>> A. It doesn't clearly define which payload types that are intended 
>>> to be used in a specific transport.
>
>
>> That's not an issue with the capability negotiation framework. The
>> potential configuration, which references capabilities by use of their
>> capability numbers would be used for this.
>
> I think you are missunderstanding my point, or I am completely 
> missunderstanding you. My point is that you have different payload 
> types for different potential configuration using different transport 
> alternatives. For clarity it should be explicit which transport 
> alterantives uses which payload type numbers. Instead of forcing one 
> to declare a number of payload types that aren't intended to be used, 
> but still negotiated.
We agree (I think) that a payload type mapping neither is nor should be 
a capability. Support for a particular media format with a specific set 
of parameters however is. Mapping such media formats and their 
associated parameters to a particular payload type is something that 
falls under the realm of a configuration (IMO). Where we differ is on 
whether those features need to provided by the core document or if they 
can be provided by an extension. So far, the consensus has been to 
provide them as extensions (but again, under the assumption that 
extensions that fit within the framework actually can be defined).

>
>>>
>>> B. It forces one to overwrite the RTP payload types, always. Despite 
>>> the issues with media delivery prior to receiving answer or having 
>>> performed the second round of offer/answer
>> Right. I agree that in order to properly address this, you need an
>> extension.
>>>
>>> C. It prevents this mechanism to in the future be upgraded in a 
>>> reasonable way with media cability negotiation. See separate email 
>>> for discussion.
>
>> I'll have a look - I currently don't see the issue.
>
> The issue I see is that any extension would have to replace the 
> transport alternatives with a totally new mechanism. Thus making the 
> upgrade path very hard as you need to do a required supported 
> mechanism, rather than a optional one for media capability negotiation.
We are back to discussing scope of the core document and I'm not sure 
how to address that except to note what consensus has been so far and 
we'll probably need additional input on this.

>>> I would recommend that one seriously consider using explicit 
>>> declaration of the payload type used for each transport in the tcap 
>>> attribute.
>>>
>> Your comment could be addressed in many different ways, however we
>> should probably agree on whether we want to address it in the core
>> document first, before getting into the actual solution.
>>
>
>
> Agreed, lets discuss the general issues. To me it is a choice between 
> doing work and complicate the solution, or cripple the functionality.
I don't think we are crippling functionality, but there is clearly 
additional work needed to address some of your requirements.

-- Flemming

>
> Cheers
>
> Magnus Westerlund
>
> IETF Transport Area Director & TSVWG Chair
> ----------------------------------------------------------------------
> Multimedia Technologies, Ericsson Research EAB/TVM/M
> ----------------------------------------------------------------------
> Ericsson AB                | Phone +46 8 4048287
> Torshamsgatan 23           | Fax   +46 8 7575550
> S-164 80 Stockholm, Sweden | mailto: magnus.westerlund@ericsson.com
> ----------------------------------------------------------------------
>

_______________________________________________
mmusic mailing list
mmusic@ietf.org
https://www1.ietf.org/mailman/listinfo/mmusic