Re: [rtcweb] Why requiring pre-announcement of SSRCs is a problem for conferencing ( Was: New Version Notification for draft-uberti-rtcweb-plan-00.txt )

Justin Uberti <juberti@google.com> Wed, 15 May 2013 05:53 UTC

Return-Path: <juberti@google.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 5E09C21F8E4C for <rtcweb@ietfa.amsl.com>; Tue, 14 May 2013 22:53:51 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -100.561
X-Spam-Level:
X-Spam-Status: No, score=-100.561 tagged_above=-999 required=5 tests=[AWL=-0.250, BAYES_00=-2.599, FM_FORGED_GMAIL=0.622, HTML_MESSAGE=0.001, NO_RELAYS=-0.001, SARE_FWDLOOK=1.666, USER_IN_WHITELIST=-100]
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 XM0zV9oUAOqV for <rtcweb@ietfa.amsl.com>; Tue, 14 May 2013 22:53:50 -0700 (PDT)
Received: from mail-ie0-x236.google.com (mail-ie0-x236.google.com [IPv6:2607:f8b0:4001:c03::236]) by ietfa.amsl.com (Postfix) with ESMTP id 61AD921F8A7B for <rtcweb@ietf.org>; Tue, 14 May 2013 22:53:50 -0700 (PDT)
Received: by mail-ie0-f182.google.com with SMTP id a14so2854704iee.41 for <rtcweb@ietf.org>; Tue, 14 May 2013 22:53:49 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20120113; h=x-received:mime-version:in-reply-to:references:from:date:message-id :subject:to:cc:content-type; bh=tF91nc5+znDz7Nxre2/mJcEta22jcXKRuhmSbqKXPws=; b=JUMDF4T5HvAWkCRTgFdNcKm06OrHCd5ToGEv6miDXYHoNc59fDDUy5STrzJc9QDQtm lVOmn5Zxd/xu2Oa2ELx9pF+v+uepbb/++sRNTuZPOb2PpJ7QkeWqALi/4/FRa90rdgcw nKCaiFkQKEsOQ6sBCLtfMcK8QugsibhclV6yie05p9lbF35j/KFTdoHwVwmGpji60IOk umQ4uzv7gc6EPyaZL9zQ25+xkgI4O/a0jv7BQnzZj5/PYwi8HbL6j+/cJLuSkFvBjYC5 JLy5PP9c5TBJLglroUymVRzI681ra0bv4trC9Oft2Xb6mnROT1QZnys1C3Pojote8Dgu 3n6A==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20120113; h=x-received:mime-version:in-reply-to:references:from:date:message-id :subject:to:cc:content-type:x-gm-message-state; bh=tF91nc5+znDz7Nxre2/mJcEta22jcXKRuhmSbqKXPws=; b=Vh2PiglXFlxDUM9yelPM5Dx7PG8fJHkd11sYm6uCYlO2Sw0SiVrJ+xq5YszyVjMwnU Y7RMvMguAJX+tarzd5HdRBZ2p2iJijYcrV+9CcsB+Dd4G97osai4NZN9yKE5NAHElPzD dhwTflizRqMffhGQku2bCQ4erSdQheLHoRlXdg93fTN1rXEmL0nW8Ru27JGghlPpPOaD QrwQa5TsRzBqEHUGHQtPzQLXtT3Eilb5fO+BEtDDOQcoSyXkUQGjWQxqClk/QX8G5DBZ UktAcbQpnlUh1IhWuOGcOc6ArgNglI+Sh5VqBi3v5oqSkqhDeNrUZrPPM5Ym19cTP0iF kRXQ==
X-Received: by 10.43.63.140 with SMTP id xe12mr7033223icb.52.1368597229766; Tue, 14 May 2013 22:53:49 -0700 (PDT)
MIME-Version: 1.0
Received: by 10.231.153.69 with HTTP; Tue, 14 May 2013 22:53:29 -0700 (PDT)
In-Reply-To: <5192947F.90206@jitsi.org>
References: <20130503054601.4639.64651.idtracker@ietfa.amsl.com> <CALe60zAi_Lx3QFCbBQ5aPNkgorJAff0E79jkpbQX1Qt3wf2bzg@mail.gmail.com> <CAOJ7v-1Wk6u7XiYrNVmoqr5Jisu2WRvZpte7hQTOiP8YHUc6hg@mail.gmail.com> <008701ce4b21$a0997aa0$e1cc6fe0$@gmail.com> <BLU169-W108D56DF61B85814543873C93BA0@phx.gbl> <518AAAF2.5000207@alum.mit.edu> <CA+9kkMBw4+kXAv6qLCcmGLwMxAqR6P-Tk8dm-ardv_jihHx0Hw@mail.gmail.com> <9E563BDA-C336-4FB8-B11A-A2DC40C672C1@iii.ca> <CA+9kkMC-NnF+VugBOZNhY4-Cz1tqJA44WSF9dg45g4GCWxkh-g@mail.gmail.com> <518D6C76.5060606@alum.mit.edu> <CAHBDyN6xYor-XWnLEkufoQPYrDc+KurrM0m3HBTqLXqNkPtDkQ@mail.gmail.com> <BLU169-W82D3FCC3246D6D878FA44E93A00@phx.gbl> <5191F948.3040402@ericsson.com> <51920280.3080308@jitsi.org> <519223A0.1040908@ericsson.com> <5192947F.90206@jitsi.org>
From: Justin Uberti <juberti@google.com>
Date: Tue, 14 May 2013 22:53:29 -0700
Message-ID: <CAOJ7v-0+m+gFqahAJ-eL8T=hirq9Hz8hHuoJB1fjpGG5Cu+9zw@mail.gmail.com>
To: Emil Ivov <emcho@jitsi.org>
Content-Type: multipart/alternative; boundary="bcaec51b1e3bb89f3004dcbb5f11"
X-Gm-Message-State: ALoCoQkMVMeAqGi4TWm/+jvfGg2aBoyPk04ImTgHtRz/Z4FaWFtQ9ZUqnK7J8JIgFttIxF20ofEpYOuOmLYGKumB6T04ORnymrJzcEsQ9dAMk00jfdu9IEeWL3oGccfsttw+X01mKEzteCAAGX/MGq/tFJK6gbm30UxrE9xhncN+qqijF9Xlt6s8JM5Q/KRx9rPsGswGFIUe
Cc: "rtcweb@ietf.org" <rtcweb@ietf.org>
Subject: Re: [rtcweb] Why requiring pre-announcement of SSRCs is a problem for conferencing ( Was: New Version Notification for draft-uberti-rtcweb-plan-00.txt )
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: Wed, 15 May 2013 05:53:51 -0000

On Tue, May 14, 2013 at 12:46 PM, Emil Ivov <emcho@jitsi.org> wrote:

> Hey Stefan,
>
> On 14.05.13, 14:44, Stefan Håkansson LK wrote:
> >>> SSRCs - this would be SDP
> >>
> >> Again, including SSRCs in SDP O/A is tricky in conferencing scenarios.
> >
> > Here seems to be something that I have missed. That there are existing
> > implementations that do not signal SSRC is fine, and in most cases there
> > would be only one audio and one video SSRC used anyway. And rtcweb (and
> > Clue?) should be able to interoperate (but perhaps your web app need to
> > be designed in a specific way).
> >
> > But if we design something forward looking, that can handle many
> > streams, that can handle layered codecs and FEC data, signaling SSRCs
> > seems like a must to me.
> >
> > But I have missed that this is problematic in conferencing scenarios,
> > could you tell me why (and I probably should know :) )?
>
> The issue that I am referring to (I describe this in an earlier mail to
> Harald here http://goo.gl/M8NbQ ) is that of a conference based on an
> RTP translator. It's basically what we do in Jitsi Videobridge.
>
> Let's say that I am a WebRTC app that can act as a conference focus and
> that has access to an RTP translator somewhere. I'd like to organise a
> conference with 10 people (you and I among them).
>
> I ask the RTP translator to allocate 10 ports for me and then I start
> calling participants.
>
> You are the first one that I am going to join into this new call.
>
> At this point, the only SSRC(s) that I could possibly give you are those
> that I am going to use. I won't be able to tell you anything for the
> eight other participants. For all I know, some or all of these
> participants could turn out to be RTP translators themselves and there
> could be a number of SSRCs behind each of them too.
>
> The very logical and easy thing that your webapp could do here is not to
> care and simply render each and every SSRC that you get. Most apps are
> going to be perfectly happy with that.
>
> If, on the other hand you needed me to re-offer you every time a new
> participant joins in order to work properly, then things would easily
> get quite messy even if everyone is using WebRTC.
>
> Then, note that some of the participants can be simple SIP endpoints
> (that's why we bothered with SDP in the first place right?) so the only
> way I can get their SSRCs is with some extra signalling between me and
> the RTP translator. This is not a problem per se, but it can only happen
> after the SIP participants have joined the call and started streaming
> data, that has reached the translator. And even then they will have no
> MSIDs.
>
> All in all, we would be enforcing some very laborious signalling when
> it is absolutely unnecessary.
>
>
How do you plan to demultiplex the media sources without knowing whose SSRC
belongs to whom? Consider especially the case of repair flows, for which
one must know which primary flow the repair flow corresponds with.

Given the complexities here, I don't think it's entirely fair to call the
signaling "absolutely unnecessary".