Re: [MMUSIC] Query: payload type collision with offer/answer

Emil Ivov <emcho@jitsi.org> Fri, 11 January 2013 13:50 UTC

Return-Path: <emil@sip-communicator.org>
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 98EB221F890D for <mmusic@ietfa.amsl.com>; Fri, 11 Jan 2013 05:50:42 -0800 (PST)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -3.599
X-Spam-Level:
X-Spam-Status: No, score=-3.599 tagged_above=-999 required=5 tests=[BAYES_00=-2.599, RCVD_IN_DNSWL_LOW=-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 b8jlubqtWhrb for <mmusic@ietfa.amsl.com>; Fri, 11 Jan 2013 05:50:41 -0800 (PST)
Received: from mail-we0-f170.google.com (mail-we0-f170.google.com [74.125.82.170]) by ietfa.amsl.com (Postfix) with ESMTP id 1121B21F87E3 for <mmusic@ietf.org>; Fri, 11 Jan 2013 05:50:40 -0800 (PST)
Received: by mail-we0-f170.google.com with SMTP id r1so892763wey.1 for <mmusic@ietf.org>; Fri, 11 Jan 2013 05:50:39 -0800 (PST)
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20120113; h=x-received:message-id:date:from:organization:user-agent :mime-version:to:cc:subject:references:in-reply-to:content-type :content-transfer-encoding:x-gm-message-state; bh=kybkuywNrgq+ZBFntvK/iJSUeJZ5heD9/zYmuBCDyeU=; b=L6qPkHtQwrZGIs58CNfbUgOgcf2vPy5ZpIK3J99Exz42NWFG372kwMCivrhHlR9eT7 5SHbgRPapcSWxMWd2SEkoiAbiIWfBzUvqf2GfkF9OYXM42jgU1NUxPIn4WiZasTqiGO8 5GRbcvMCxElzjgjf2NmnxDCFb5nYbSUZzZ8uOXe8lxrdGwpgn5u/XPLViKPwppw9e2Y4 w601QZ1eC+QSElWvKpqRL9NHeRZukGK1P4G/xDiHQXBuoavy2jY45ub/ac1QvDb76Eqc lR6T5y/m9V/YtMGR5U0HFAt2kll3xEFxvFYLGoxhcdi8x/Uy3s3BdtksuIphKFT1208L dSRg==
X-Received: by 10.180.73.80 with SMTP id j16mr15479571wiv.5.1357912239528; Fri, 11 Jan 2013 05:50:39 -0800 (PST)
Received: from camionet.local ([2a01:e35:2e2c:f600:257f:94b:1bb:6163]) by mx.google.com with ESMTPS id df2sm12955076wib.0.2013.01.11.05.50.37 (version=TLSv1 cipher=ECDHE-RSA-RC4-SHA bits=128/128); Fri, 11 Jan 2013 05:50:38 -0800 (PST)
Message-ID: <50F018AB.8090305@jitsi.org>
Date: Fri, 11 Jan 2013 14:50:35 +0100
From: Emil Ivov <emcho@jitsi.org>
Organization: Jitsi
User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.8; rv:16.0) Gecko/20121026 Thunderbird/16.0.2
MIME-Version: 1.0
To: Christer Holmberg <christer.holmberg@ericsson.com>
References: <50EDC40F.3010501@alvestrand.no> <1.77712513fa3f074cccef@cisco.com> <50EDF490.4000101@alvestrand.no> <50EE0139.8000909@jitsi.org> <50EF0D77.9040000@alum.mit.edu> <50F009CE.9060903@alvestrand.no> <7594FB04B1934943A5C02806D1A2204B09BCBD@ESESSMB209.ericsson.se>
In-Reply-To: <7594FB04B1934943A5C02806D1A2204B09BCBD@ESESSMB209.ericsson.se>
Content-Type: text/plain; charset="ISO-8859-1"
Content-Transfer-Encoding: 7bit
X-Gm-Message-State: ALoCoQmcR79ItRSDFLWgQRfHHo/F7Gv8wSeA16erm+63UGc9Inyx0a9NgJEKxyAbMta8vdKW5ufM
Cc: "mmusic@ietf.org" <mmusic@ietf.org>
Subject: Re: [MMUSIC] Query: payload type collision with offer/answer
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: Fri, 11 Jan 2013 13:50:43 -0000

On 11.01.13, 14:01, Christer Holmberg wrote:
> Hi,
> 
> My understanding of the section 8.3.2 is that the mapping must not change PER DIRECTION, and the text "in any offers or answers" refers to a particular participant.

I wasn't around then so it could very well be that this was the
intention. Currently however there's nothing in the text that directly
supports this and it could be argued that it actually says the exact
opposite thing. Or in other words: the payload type number cannot be
remapped in "any offers and answers for that media stream in that session".

If we want it to meant just "A's offers and answers" then it should be
updated to say that.

Emil


> Regards,
> 
> Christer
> 
> 
> -----Original Message-----
> From: mmusic-bounces@ietf.org [mailto:mmusic-bounces@ietf.org] On Behalf Of Harald Alvestrand
> Sent: 11. tammikuuta 2013 14:47
> To: mmusic@ietf.org
> Subject: Re: [MMUSIC] Query: payload type collision with offer/answer
> 
> On 01/10/2013 07:50 PM, Paul Kyzivat wrote:
>>
>>> Well there's also section 8.3.2 in 3264. The section is about 
>>> updating offers but it seems like the text explicitly prohibits 
>>> remapping payload types in any scenarios:
>>>
>>>     However, in the
>>>     case of RTP, the mapping from a particular dynamic payload type
>>>     number to a particular codec within that media stream MUST NOT 
>>> change
>>>     for the duration of a session.  For example, if A generates an offer
>>>     with G.711 assigned to dynamic payload type number 46, payload type
>>>     number 46 MUST refer to G.711 from that point forward in any offers
>>>     or answers for that media stream within the session. However, it is
>>>     acceptable for multiple payload type numbers to be mapped to the 
>>> same
>>>     codec, so that an updated offer could also use payload type 
>>> number 72
>>>     for G.711.
>>
>> The language above is underspecified.
>>
>> It is my impression that the intent of this language was to ensure 
>> there is no ambiguity in the meaning of a payload type. Since the 
>> exchange of the SDP is not synchronized with the flow of RTP, if you 
>> were to send a new SDP that changed the mapping for a payload type, 
>> then the result would be almost certainly to interpret some media 
>> packets according to the wrong mapping.
>>
>> But this argument is only about packets flowing in one direction. It 
>> isn't a valid argument for requiring the payload types to be 
>> consistent in the two directions. And its not clear to me that it even 
>> intended that this language apply to both directions. It could be 
>> clarified as follows:
>>
>>                               ...  For example, if A generates an offer
>>    with G.711 assigned to dynamic payload type number 46, payload type
>>    number 46 MUST refer to G.711 from that point forward in any offers
>>    or answers ***by A*** for that media stream within the session.  ...
>>
>> Interpreting it to apply to both directions brings it in conflict with 
>> the language elsewhere that permits it to be different in the two 
>> directions.
> More than one number for one codec is explicitly permitted.
> More than one codec for one number in a single direction is clearly impossible.
> More than one codec for one number in a single RTP session..... that's the question.
> 
> If one were to go with textual analysis, this would hinge on the meaning of "for that media stream" - which again hinges on whether a media stream is unidirectional or bidirectional.
> 
> RFC 3264's definition:
> 
>        Media Stream: From RTSP [8], a media stream is a single media
>           instance, e.g., an audio stream or a video stream as well as a
>           single whiteboard or shared application group.  In SDP, a media
>           stream is described by an "m=" line and its associated
>           attributes.
> 
> which points back to RFC 2326:
> 
>     (Media) stream:
>            A single media instance, e.g., an audio stream or a video
>            stream as well as a single whiteboard or shared application
>            group. When using RTP, a stream consists of all RTP and RTCP
>            packets created by a source within an RTP session. This is
>            equivalent to the definition of a DSM-CC stream([5]).
> 
> So if we believe these definitions, there's no prohibition on reusing the payload type.
> Definitely nice to clarify in a 3264bis.
> 
>>
>> The use of different mappings in each direction has been discussed 
>> over the years, though I couldn't point you to where. IIRC one of the 
>> reasons had to do with gatewaying to other protocols. But I can't 
>> offer any details.
>>
>> Bottom line: IMO, in the weird case Harald described X ought to follow 
>> Postel's Law and accept the answer from Y. But for the same reason I 
>> would strongly discourage implementations from acting as Y did.
>>
> Seems like a conclusion.
> 
> _______________________________________________
> mmusic mailing list
> mmusic@ietf.org
> https://www.ietf.org/mailman/listinfo/mmusic
> _______________________________________________
> mmusic mailing list
> mmusic@ietf.org
> https://www.ietf.org/mailman/listinfo/mmusic
> 

-- 
https://jitsi.org