Re: [rtcweb] Plan A, respun

Kevin Dempsey <kevindempsey70@gmail.com> Fri, 17 May 2013 10:55 UTC

Return-Path: <kevindempsey70@gmail.com>
X-Original-To: rtcweb@ietfa.amsl.com
Delivered-To: rtcweb@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id AB3BB21F930C for <rtcweb@ietfa.amsl.com>; Fri, 17 May 2013 03:55:26 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -2.599
X-Spam-Level:
X-Spam-Status: No, score=-2.599 tagged_above=-999 required=5 tests=[BAYES_00=-2.599, HTML_MESSAGE=0.001, NO_RELAYS=-0.001]
Received: from mail.ietf.org ([12.22.58.30]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id KhR6ZXrotT05 for <rtcweb@ietfa.amsl.com>; Fri, 17 May 2013 03:55:25 -0700 (PDT)
Received: from mail-la0-x22a.google.com (mail-la0-x22a.google.com [IPv6:2a00:1450:4010:c03::22a]) by ietfa.amsl.com (Postfix) with ESMTP id 0EC5D21F8756 for <rtcweb@ietf.org>; Fri, 17 May 2013 03:55:24 -0700 (PDT)
Received: by mail-la0-f42.google.com with SMTP id fg20so1846384lab.1 for <rtcweb@ietf.org>; Fri, 17 May 2013 03:55:23 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=mime-version:x-received:in-reply-to:references:date:message-id :subject:from:to:cc:content-type; bh=Rdkzg43IOI8Dn8amCL+e6fIatXYHSXwmvfO4o8fFBrc=; b=1CB0D1+GfZ/OD/DGLNIFovE4iqIWVKdSD87DMDfcUgU/12nMicAMrgXxvxR6St3FhE PoXI5bGuzaQJ6xRkSu0nLwi0zpB2NlLq8Yr603Ue++rnL6cYYhRuqR4W2Le3OwNPGmvp zIdCqngB/+kUsHfIQF4TXDlbRFidOjFo+cD0BRmVC/L+dupKftmnL5p4qfStuWNBxuD5 QUSVRAQixO29HpYv6kaWqtq5nTcs25cq3Pq4BForx1R+ow71WJeo1Eg/xHw/41a5v7s1 GYppuDXqJJ3CIgl+td4JswMpg7WQOSVi/jCDTCfiPpmdUFY9WJDBUaNRsnrwsFR2zjwo vojg==
MIME-Version: 1.0
X-Received: by 10.112.235.104 with SMTP id ul8mr1148226lbc.5.1368788123585; Fri, 17 May 2013 03:55:23 -0700 (PDT)
Received: by 10.114.0.139 with HTTP; Fri, 17 May 2013 03:55:23 -0700 (PDT)
In-Reply-To: <5195CEDF.9040109@alvestrand.no>
References: <51894846.3090102@nostrum.com> <518A304A.1030609@alvestrand.no> <518F6338.8070903@jitsi.org> <518F83E5.4060209@alvestrand.no> <519519DB.6050702@nostrum.com> <519524EA.3000509@alvestrand.no> <51952860.5030906@nostrum.com> <5195304B.10706@alvestrand.no> <CABcZeBO+miF-euyyKFDrpMUdnV-Ej2QaZgKmiMc2Yp08QUyz7A@mail.gmail.com> <5195CEDF.9040109@alvestrand.no>
Date: Fri, 17 May 2013 11:55:23 +0100
Message-ID: <CAMvTgcckqUb5O_fPnfXOGeGQEcBkBjiR_T56_9FecY-8ESGrBg@mail.gmail.com>
From: Kevin Dempsey <kevindempsey70@gmail.com>
To: Harald Alvestrand <harald@alvestrand.no>
Content-Type: multipart/alternative; boundary="001a11c3c96ee1103204dce7d114"
X-Mailman-Approved-At: Fri, 17 May 2013 04:22:52 -0700
Cc: rtcweb@ietf.org
Subject: Re: [rtcweb] Plan A, respun
X-BeenThere: rtcweb@ietf.org
X-Mailman-Version: 2.1.12
Precedence: list
List-Id: Real-Time Communication in WEB-browsers working group list <rtcweb.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/rtcweb>, <mailto:rtcweb-request@ietf.org?subject=unsubscribe>
List-Archive: <http://www.ietf.org/mail-archive/web/rtcweb>
List-Post: <mailto:rtcweb@ietf.org>
List-Help: <mailto:rtcweb-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/rtcweb>, <mailto:rtcweb-request@ietf.org?subject=subscribe>
X-List-Received-Date: Fri, 17 May 2013 10:55:26 -0000

I think part of the problem is that the receiver doesn't know which media
flow a given SSRC belongs to until it is told about it by the sender. The
PT, on the other hand, is chosen by the receiver and so if that is unique
across all media flows it could be used to determine which media flow a
packet belongs to.

As others have said, signalling SSRCs is problematic as sometimes the SSRCs
are not known or can change. It also may cause clipping in cases where
media can arrive before the answer.

If RTP packets included an identifier chosen by the receiver (e.g. in a RTP
extension header) then we would not need to rely on SSRC signalling.


On 17 May 2013 07:31, Harald Alvestrand <harald@alvestrand.no> wrote:

>  On 05/17/2013 01:28 AM, Eric Rescorla wrote:
>
>
>
> On Thu, May 16, 2013 at 12:15 PM, Harald Alvestrand <harald@alvestrand.no>wrote:
>>
>>   If the true limit at which one has to change allocation strategy were
>>>> to become 96, not 32, it actually strengthens my "falling off a cliff"
>>>> argument
>>>>
>>>
>>> And, to be clear, it's not a cliff. For any given session (without
>>> a=ssrc:), you have to allocate ceiling(streams/96) ports. It's not like you
>>> go from using one port to using 97 ports when you add the 97th stream. You
>>> go from one port to two, which will handle 192 streams.
>>>
>>
>>  Going from one port to two ports is a cliff.
>> We may have differing opinions on how tall it is.
>
>
>  Harald,
>
>  I am not following how this is a discriminating factor between Plan A and
> Plan B.
>
>  In both Plan A and Plan B, any media stream which is intended to be
> independently processable by a legacy endpoint must appear on its
> own m-line. That means it must also have its own independent ports,
> even if you are hoping to eventually be able to mux it via BUNDLE.
>
>
> I agree with this characterization - the two proposals have the same
> number of ports in the initial offer.
>
> I quibble about the characterization "any media stream which is intended
> to be
> independently processable by a legacy endpoint must appear on its
> own m-line." As Bernard has said, the field of deployed applications is
> diverse enough to make this question confusing - both "independently
> processable" and "legacy endpoint" may need further qualification in order
> to make that statement unequivocally true.
>
>
>
>  In both Plan A and Plan B, it is possible to indicate additional media
> streams that are not processable by a legacy endpoint but that
> will be processable by a new endpoint:
>
>  - In Plan A, this is done by marking them bundle-only
> - In Plan B, this is done by having them be additional SSRCs on one
>   of the extant m-lines.
>
>
>
>  Regardless of Plan A versus Plan B, bundle contemplates having
> multiple media flows on the same media 5-tuple. Thus, it must
> be possible to demux the flows somehow. As I read Plan A,
> it proposes using both PT and SSRC to demux whereas plan B
> only wants to use SSRC? So, the implication is that a Plan A
> endpoint must:
>
>  1. Demux on both PT and SSRC (this is trivial, I think you will agree)
>
>
> The demuxing is trivial. In fact, I don't think it's even necessary to
> describe it as "demux on PT"; you can't allow SSRC collision between two
> tracks with different PT anyway.
>
>
>  2. When acting as offerer, either always offer SSRC or conditionally
> offer SSRC when the # of PTs is excessive.
>
>  I don't understand why you think that plan A means more ports than
> plan B. Presumably we can simply specify that bundle requires
> SSRC muxing, in which case plan A and plan B behave identically.
>
>  What am I missing?
>
>
> This particular issue is about what happens when you run out of payload
> types to multiplex on.
>
> In Plan A as I currently understand Adam, any application that needs less
> than 96 M-lines (Adam's number) can use a single port, and use the payload
> type to indicate the M-line.
>
> If there are 97 M-lines, if I've understood Adam correctly, one could use
> two ports and two bundles, with some subset of the M-lines being allocated
> to one bundle and another subset of the M-lines allocated to the other
> bundle.
>
> In Plan B, there is no difference in the mechanism used to multiplex 96
> SSRCs from the mechanism used to multiplex 97 SSRCs, and it does not matter
> for the multiplexing how many M-lines they are distributed over.
>
>
>
> _______________________________________________
> rtcweb mailing list
> rtcweb@ietf.org
> https://www.ietf.org/mailman/listinfo/rtcweb
>
>