Re: [MMUSIC] RFC 5576 is da answah

Jonathan Lennox <jonathan@vidyo.com> Wed, 21 November 2012 16:50 UTC

Return-Path: <jonathan@vidyo.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 A379E21F86A2 for <mmusic@ietfa.amsl.com>; Wed, 21 Nov 2012 08:50:20 -0800 (PST)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -2.299
X-Spam-Level:
X-Spam-Status: No, score=-2.299 tagged_above=-999 required=5 tests=[AWL=-0.300, BAYES_00=-2.599, HTML_MESSAGE=0.001, J_CHICKENPOX_14=0.6]
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 evhzomkE-lTj for <mmusic@ietfa.amsl.com>; Wed, 21 Nov 2012 08:50:19 -0800 (PST)
Received: from mxout.myoutlookonline.com (mxout.myoutlookonline.com [64.95.72.241]) by ietfa.amsl.com (Postfix) with ESMTP id 643B921F844E for <mmusic@ietf.org>; Wed, 21 Nov 2012 08:50:19 -0800 (PST)
Received: from mxout.myoutlookonline.com (localhost [127.0.0.1]) by mxout.myoutlookonline.com (Postfix) with ESMTP id B83A37E1D4E; Wed, 21 Nov 2012 11:25:02 -0500 (EST)
X-Virus-Scanned: by SpamTitan at mail.lan
Received: from HUB013.mail.lan (unknown [10.110.2.1]) by mxout.myoutlookonline.com (Postfix) with ESMTP id B57FB7E1D42; Wed, 21 Nov 2012 11:25:00 -0500 (EST)
Received: from BE235.mail.lan ([10.110.32.235]) by HUB013.mail.lan ([10.110.17.13]) with mapi; Wed, 21 Nov 2012 11:50:03 -0500
From: Jonathan Lennox <jonathan@vidyo.com>
To: Bernard Aboba <bernard_aboba@hotmail.com>
Date: Wed, 21 Nov 2012 11:50:15 -0500
Thread-Topic: [MMUSIC] RFC 5576 is da answah
Thread-Index: Ac3ICEfROKZlWYIvSjmK89CBGjjGyQ==
Message-ID: <265A48F7-9330-4415-9BF9-CAA29FE12BAE@vidyo.com>
References: <BLU002-W21780C8EDF047E1811F270D93540@phx.gbl>
In-Reply-To: <BLU002-W21780C8EDF047E1811F270D93540@phx.gbl>
Accept-Language: en-US
Content-Language: en-US
X-MS-Has-Attach:
X-MS-TNEF-Correlator:
acceptlanguage: en-US
Content-Type: multipart/alternative; boundary="_000_265A48F7933044159BF9CAA29FE12BAEvidyocom_"
MIME-Version: 1.0
Cc: "mmusic@ietf.org" <mmusic@ietf.org>, "christer.holmberg@ericsson.com" <christer.holmberg@ericsson.com>
Subject: Re: [MMUSIC] RFC 5576 is da answah
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: Wed, 21 Nov 2012 16:50:20 -0000

On Nov 20, 2012, at 7:50 PM, Bernard Aboba wrote:

[BA] In the WebRTC context, IMHO there are a lot of unanswered questions in RFC 5576.

Hi, Bernard --

Yes, RFC 5576 wasn't a complete solution for interactive scenarios; it left some pieces open that needed additional standardization work.  Essentially, 5576 the declarative part, but not the negotiation part.

I followed it up with draft-lennox-mmusic-sdp-source-selection (still alive, though quiescent) and draft-lennox-mmusic-sdp-max-sources (expired, but more or less the same thing as draft-westerlund-mmusic-max-ssrc) which I think should cover all the issues you raise.

At the time (the IETF Stockholm meeting in 2009) these drafts didn't get much interest, because the benefits of source multiplexing weren't commonly understood yet.  I'm glad that's now changed.


>From Section 5:

   Endpoints MUST NOT assume that only the sources mentioned in SDP will
   be present in an RTP session; additional sources, with previously
   unmentioned SSRC IDs, can be added at any time, and endpoints MUST be
   prepared to receive packets from these sources.  (How endpoints
   handle such packets is not specified here; they SHOULD be handled in
   the same manner as packets from additional sources would be handled
   had the endpoint not received any a=ssrc: attributes at all.)

[BA] While the advice above seems generally sensible, the meaning of "prepared to receive" isn't very clear.  Implementations may differ in how they respond if they don't receive any a=ssrc attributes.   For example, an implementation might only be able to deal with a single undeclared source or perhaps not at all.  So being "prepared to receive" isn't enough to be able to deal with an RTP translator, for example.

Yes, you'd need a way to explain what you're prepared to receive; max-ssrc could handle this.

Generally, if you're speaking to a legacy SIP endpoint, the only safe thing to assume in the absence of ssrc or max-ssrc attributes is one source per session; but since this actively contradicts the RTP spec, that couldn't exactly be made normative.


>From Section 8:

   When used with the SDP Offer/Answer Model [RFC3264], SDP source-
   specific attributes describe only the sources that each party is
   willing to send (whether it is sending RTP data or RTCP report
   blocks).  No mechanism is provided by which an answer can accept or
   reject individual sources within a media stream; if the set of
   sources in a media stream is unacceptable, the answerer's only option
   is to reject the media stream or the entire multimedia session.

[BA] The advice above appears to only apply to an answerer that supports RFC 5576.  If it doesn't support RFC 5576, then it will presumably ignore the a=ssrc lines, but may not reject the media stream (by setting the port to zero) or the entire session.   In this case, it may not be clear to the Offerer whether in fact it can send all the declared ssrc's or not.  Contrast this with the CLUE approach in which receiver gets to indicate what media captures it would like to receive.

The reason this is phrased as "no mechanism is provided" was to leave open the possibility of defining such a mechanism in the future, not to preclude the possibility of there ever being such a mechanism.  My source-selection draft would be one such mechanism; CLUE would be another.


>From Section 9:

   Source descriptions are specified in this document such that RTP
   endpoints that are compliant with the RTP specification [RFC3550]
   will be able to decode the media streams they describe whether or not
   they support explicit source descriptions.  However, some deployed
   RTP implementations may not actually support multiple media sources
   in a media stream.  Media senders MAY wish to restrict themselves to
   a single source at a time unless they have some means of concluding
   that the receivers of the media stream support source multiplexing.

[BA]  The obvious way for an answerer to indicate support for RFC 5576 would be to include a=ssrc lines in the answer.   If the Answer doesn't include a=ssrc lines, should the Offerer conclude that only one source can be sent?   The above paragraph indicates this is optional.

It's perfectly reasonable to support receiving multiple sources, but not have any sources you're interested in sending at the moment.  This problem is what max-ssrc is for.

--
Jonathan Lennox
jonathan@vidyo.com<mailto:jonathan@vidyo.com>