Re: [MMUSIC] Query: payload type collision with offer/answer
"Charles Eckel (eckelcu)" <eckelcu@cisco.com> Thu, 10 January 2013 23:23 UTC
Return-Path: <eckelcu@cisco.com>
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 CE7B621F86D6 for <mmusic@ietfa.amsl.com>; Thu, 10 Jan 2013 15:23:02 -0800 (PST)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -9.253
X-Spam-Level:
X-Spam-Status: No, score=-9.253 tagged_above=-999 required=5 tests=[AWL=0.746, BAYES_00=-2.599, J_CHICKENPOX_15=0.6, RCVD_IN_DNSWL_HI=-8]
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 K5ZJS-6ZYPwX for <mmusic@ietfa.amsl.com>; Thu, 10 Jan 2013 15:23:01 -0800 (PST)
Received: from rcdn-iport-1.cisco.com (rcdn-iport-1.cisco.com [173.37.86.72]) by ietfa.amsl.com (Postfix) with ESMTP id BD7F821F85FC for <mmusic@ietf.org>; Thu, 10 Jan 2013 15:23:00 -0800 (PST)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=cisco.com; i=@cisco.com; l=4716; q=dns/txt; s=iport; t=1357860180; x=1359069780; h=from:to:cc:subject:date:message-id:references: in-reply-to:content-transfer-encoding:mime-version; bh=gZ5i6JuOM+Xqbkkv75yoZ1LTz/Vm5NaXYcZkWd2Uqsw=; b=fabQPrVZ46Qj89IsGXQ578+/gn6pfwFgQz/exuZYEkWoEfExkrSKlnv+ U5OFU+iy0mg4cd6jNyiwtbP8tHk4KZyZ7f8g0naSvlzHIIx0oL3IdNCji HZKUWSREFEPBurJOiv7rqQoYAl7gplTL+uPJ7tamQ0ja6YZNI5lxJyybD Q=;
X-IronPort-Anti-Spam-Filtered: true
X-IronPort-Anti-Spam-Result: AgEFAM1M71CtJV2c/2dsb2JhbABEvXUWc4IeAQEBAwEBAQE3NAsFBwQCAQgOAwQBAQEKFAkHJwsUCQgCBAENBQiICwUBDLRcBJA+YQOmU4J1gWYHNw
X-IronPort-AV: E=Sophos;i="4.84,447,1355097600"; d="scan'208";a="160952283"
Received: from rcdn-core-5.cisco.com ([173.37.93.156]) by rcdn-iport-1.cisco.com with ESMTP; 10 Jan 2013 23:22:59 +0000
Received: from xhc-aln-x14.cisco.com (xhc-aln-x14.cisco.com [173.36.12.88]) by rcdn-core-5.cisco.com (8.14.5/8.14.5) with ESMTP id r0ANMxqW007253 (version=TLSv1/SSLv3 cipher=AES128-SHA bits=128 verify=FAIL); Thu, 10 Jan 2013 23:22:59 GMT
Received: from xmb-aln-x08.cisco.com ([169.254.3.224]) by xhc-aln-x14.cisco.com ([173.36.12.88]) with mapi id 14.02.0318.004; Thu, 10 Jan 2013 17:22:59 -0600
From: "Charles Eckel (eckelcu)" <eckelcu@cisco.com>
To: Emil Ivov <emcho@jitsi.org>, Harald Alvestrand <harald@alvestrand.no>
Thread-Topic: [MMUSIC] Query: payload type collision with offer/answer
Thread-Index: AQHN7p8Pzrd89LSrqUC7n2O8JcktGJhBmrDJgABznICAASXGUA==
Date: Thu, 10 Jan 2013 23:22:58 +0000
Message-ID: <92B7E61ADAC1BB4F941F943788C088280472896C@xmb-aln-x08.cisco.com>
References: <50EDC40F.3010501@alvestrand.no> <1.77712513fa3f074cccef@cisco.com> <50EDF490.4000101@alvestrand.no> <50EE0139.8000909@jitsi.org>
In-Reply-To: <50EE0139.8000909@jitsi.org>
Accept-Language: en-US
Content-Language: en-US
X-MS-Has-Attach:
X-MS-TNEF-Correlator:
x-originating-ip: [171.68.16.69]
Content-Type: text/plain; charset="us-ascii"
Content-Transfer-Encoding: quoted-printable
MIME-Version: 1.0
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: Thu, 10 Jan 2013 23:23:04 -0000
Please see inline. > -----Original Message----- > From: mmusic-bounces@ietf.org [mailto:mmusic-bounces@ietf.org] On > Behalf Of Emil Ivov > Sent: Wednesday, January 09, 2013 3:46 PM > To: Harald Alvestrand > Cc: mmusic@ietf.org > Subject: Re: [MMUSIC] Query: payload type collision with offer/answer > > > > On 09.01.13, 23:52, Harald Alvestrand wrote: > > On 01/09/2013 10:01 PM, Charles Eckel (eckelcu) wrote: > >> Please see inline. > >> > >>> -----Original Message----- > >>> From: mmusic-bounces@ietf.org [mailto:mmusic-bounces@ietf.org] On > >>> Behalf Of Harald Alvestrand > >>> Sent: Wednesday, January 09, 2013 11:25 AM > >>> To: mmusic@ietf.org > >>> Subject: [MMUSIC] Query: payload type collision with offer/answer > >>> > >>> Hello, > >>> I have encountered an issue, and I'm not sure it's an issue or not. SDP > >>> wisdom is sought. > >>> > >>> Suppose two entities exchange the following offer/answer: > >>> > >>> offer from X: > >>> > >>> m=video 97 > >>> a=rtpmap:97 foo > >>> > >>> answer from Y: > >>> > >>> m=video 98 > >>> a=rtpmap:98 foo > >>> > >>> It's clear from RFC 3264 that now X must send codec foo with payload > >>> type 98, and Y must send codec foo with payload type 97. That's not the > >>> question. > >>> > >>> But suppose these are the offer and answer: > >>> > >>> offer from X: > >>> > >>> m=video 97 98 > >>> a=rtpmap:97 foo > >>> a=rtpmap:98 bar > >>> > >>> answer from Y: > >>> > >>> m=video 97 98 > >>> a=rtpmap:97 bar > >>> a=rtpmap:98 foo > >>> > >>> That is, the payload types collide. > >>> > >>> It would be possible to write code so that X sends foo with 98 and bar > >>> with 97, while Y sends foo with 97 and bar with 98. But is it > >> conformant > >>> with the specs to do so? > >>> > >>> And if this has a clear answer - which paragraph of which RFC makes > >> this > >>> clear? > >>> (Yes, this discussion is triggered from a real world problem.) > >> > >> It is recommended to avoid such mismatches when possible, but doing so > >> may not always be possible. The examples you mention are conformant. > >> The following text from section 5.1 addresses this: > >> > >> For sendrecv RTP > >> streams, the payload type numbers indicate the value of the payload > >> type field the offerer expects to receive, and would prefer to send. > >> However, for sendonly and sendrecv streams, the answer might indicate > >> different payload type numbers for the same codecs, in which case, > >> the offerer MUST send with the payload type numbers from the answer. > >> > >> Different payload type numbers may be needed in each direction > >> because of interoperability concerns with H.323. > > I was reading that text, and it clearly says which ones to use if the > > payload types are different, but I don't think they clearly address the > > situation with using the same payload type for two different codecs in > > different directions. > > > > In a multicast or transport relay scenario, this would clearly be > > untenable, since third parties would not be able to send streams that > > would be interpreted correctly by the two conflicting endpoints, but in > > a two-party conversation, it's possible to make this work. > > I just don't know if it's worth the effort to make it so. > > 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. I viewed this as being a requirement for all offers or answers sent by A to B, but not necessarily the corresponding answer and offers from B to A. Otherwise, it seems to conflict with the text in section 5.1. That said, I can certainly see where someone else may interpret it differently. Cheers, Charles > Cheers, > Emil > > > -- > https://jitsi.org > _______________________________________________ > mmusic mailing list > mmusic@ietf.org > https://www.ietf.org/mailman/listinfo/mmusic
- [MMUSIC] Query: payload type collision with offer… Harald Alvestrand
- Re: [MMUSIC] Query: payload type collision with o… Charles Eckel (eckelcu)
- Re: [MMUSIC] Query: payload type collision with o… Harald Alvestrand
- Re: [MMUSIC] Query: payload type collision with o… Emil Ivov
- Re: [MMUSIC] Query: payload type collision with o… Paul Kyzivat
- Re: [MMUSIC] Query: payload type collision with o… Charles Eckel (eckelcu)
- Re: [MMUSIC] Query: payload type collision with o… Emil Ivov
- Re: [MMUSIC] Query: payload type collision with o… Charles Eckel (eckelcu)
- Re: [MMUSIC] Query: payload type collision with o… Emil Ivov
- Re: [MMUSIC] Query: payload type collision with o… DRAGE, Keith (Keith)
- Re: [MMUSIC] Query: payload type collision with o… Harald Alvestrand
- Re: [MMUSIC] Query: payload type collision with o… Christer Holmberg
- Re: [MMUSIC] Query: payload type collision with o… Emil Ivov
- Re: [MMUSIC] Query: payload type collision with o… Christer Holmberg
- Re: [MMUSIC] Query: payload type collision with o… Charles Eckel (eckelcu)