Re: [rtcweb] How to multiplex between peers
Stephan Wenger <stewe@stewe.org> Thu, 21 July 2011 07:43 UTC
Return-Path: <stewe@stewe.org>
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 E319621F8B24 for <rtcweb@ietfa.amsl.com>; Thu, 21 Jul 2011 00:43:20 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -2.25
X-Spam-Level:
X-Spam-Status: No, score=-2.25 tagged_above=-999 required=5 tests=[AWL=0.349, BAYES_00=-2.599]
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 9cTk-TwyAgpg for <rtcweb@ietfa.amsl.com>; Thu, 21 Jul 2011 00:43:19 -0700 (PDT)
Received: from stewe.org (stewe.org [85.214.122.234]) by ietfa.amsl.com (Postfix) with ESMTP id 56B0421F8B1E for <rtcweb@ietf.org>; Thu, 21 Jul 2011 00:43:19 -0700 (PDT)
Received: from [172.20.12.62] (unverified [130.192.232.10]) by stewe.org (SurgeMail 3.9e) with ESMTP id 15567-1743317 for multiple; Thu, 21 Jul 2011 09:43:18 +0200
User-Agent: Microsoft-MacOutlook/14.12.0.110505
Date: Thu, 21 Jul 2011 00:43:10 -0700
From: Stephan Wenger <stewe@stewe.org>
To: Colin Perkins <csp@csperkins.org>, Jonathan Lennox <jonathan@vidyo.com>
Message-ID: <CA4D1E42.2EB93%stewe@stewe.org>
Thread-Topic: [rtcweb] How to multiplex between peers
In-Reply-To: <CD06E3C9-8AE3-406C-BE7B-587FE331263A@csperkins.org>
Mime-version: 1.0
Content-type: text/plain; charset="US-ASCII"
Content-transfer-encoding: 7bit
X-Originating-IP: 130.192.232.10
X-Authenticated-User: stewe@stewe.org
Cc: rtcweb@ietf.org
Subject: Re: [rtcweb] How to multiplex between peers
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: Thu, 21 Jul 2011 07:43:21 -0000
Hi Colin, On 7.20.2011 23:51 , "Colin Perkins" <csp@csperkins.org> wrote: >On 21 Jul 2011, at 00:24, Jonathan Lennox wrote: >... >> I've read draft-perkins-rtcweb-rtp-usage-02, and I still don't >>understand what you're claiming SSRC-muxing would break. >> >> Running audio and video (and FEC, and RTX, and simulcast video, and >>Real-Time Text, and etc. etc.) in a single RTP session does, not, as far >>as I've been able to tell (after a lot of thought), break anything in >>RTP. >> >> To be sure, it's not backward compatible with RTP endpoints that assume >>a single source per session. It would also be hard to retrofit SDP to >>describe and negotiate it. And for some use cases it requires some >>source-level signaling, as in RFC 5576. But the RTP model, per se, is >>perfectly amenable to it, as far as I can tell. > > >Section 2.2.1 of draft-perkins-rtcweb-rtp-usage-02 lists several problems >that occur when multiplexing RTP sessions onto a single lower-level flow. > >There are clearly some limitations caused: separate endpoints, quality of >service, limitations with mixers and translators, retransmission, FEC, >sampling group membership, and so on. There is also some breakage when >several sessions are multiplexed: RTCP is problematic with several clock >rates per session, SSRC allocation is broken, and the RTCP reporting >interval and timing rules are broken. > >You may not think some of these are important. Some can be avoided by the >use of appropriate signalling. Some can be mitigated by allowing multiple >different media types in an RTP session, or by splitting the SSRC space. >I'm not arguing that there aren't ways to fix this problem, or ignore it >in some cases, but they cause various degrees of change to RTP, and need >to be carefully evaluated by AVTCORE if they're to be done. Rtcweb is working towards what I would call a "system" specification--something, the IETF (or at least RAI) is not usually involved in. Outside the IETF, it's not uncommon that "system" specifications effectively modify an underlying base specification--RTP in this case. Such modifications can as easily remove functionality deemed unnecessary as add new one. Speaking about session multiplexing as an example, I would guess that a lot of people here are implicitly arguing removal of functionality of RTP not needed for the application--namely multicast support. SSRC (re-)allocation) may be broken, but since there should not be any need for it (no multicast), who cares? RTCP reporting intervals and timing rules are broken: again, who cares if the RTP/RTCP communication relationship is either endpoint-endpoint or endpoint-MCU (and RTCP is not being forwarded to all endpoints)? RTCP-Terminating MCU and not Mixer in RFC 5117 namespace? We will not see network flooding or something with RTCP RRs in point-to-point RTP communication relationships... I have not thought about RTCP's issues with multiple clock rates, but those difficulties are probably not insurmountable, either, because, while there may be multiple clock rates, those ought to be a finite, and small, set. Now to my key point: you argue these things need to be "carefully evaluated" in AVTCORE. IMO, while it may be desirable for AVTCORE experts to chip in (as they do on this very thread already:-), it is by no means necessary. Neither formally, not practically. And certainly AVTCORE should not assume a "blocking" position. This puts IETF system level specification at a disadvantage to system level specification work elsewhere (where it happens on a daily basis, see ITU, see 3GPP), and where no one asks for AVTCORE's permission to re-use RTP data structures without re-using all of RTP. Tinkering with the multicast functionally of RTP is not new, there is a lot of implementation experience in the field, and for once we can indeed rely on "running code" answers. I advocate pragmatism. (And, heretic as I am, in the long term we should think about RTPv3, dumping multicast. Have I said this before? :-) Regards, Stephan P.s.: I haven't though much about shim layers or other techniques that multiplex RTP sessions on a single low level flow. If any of these ideas were implemented only to preserve RTP functionalities not needed for the application in question, then I would argue that being a silly idea. > > >-- >Colin Perkins >http://csperkins.org/ > > > >_______________________________________________ >rtcweb mailing list >rtcweb@ietf.org >https://www.ietf.org/mailman/listinfo/rtcweb
- [rtcweb] How to multiplex between peers Magnus Westerlund
- Re: [rtcweb] How to multiplex between peers Matthew Kaufman
- Re: [rtcweb] How to multiplex between peers Cullen Jennings
- Re: [rtcweb] How to multiplex between peers Emil Ivov
- Re: [rtcweb] How to multiplex between peers Magnus Westerlund
- Re: [rtcweb] How to multiplex between peers Cullen Jennings
- Re: [rtcweb] How to multiplex between peers Bernard Aboba
- Re: [rtcweb] How to multiplex between peers Justin Uberti
- Re: [rtcweb] How to multiplex between peers Matthew Kaufman
- Re: [rtcweb] How to multiplex between peers Justin Uberti
- Re: [rtcweb] How to multiplex between peers Bala Pitchandi
- Re: [rtcweb] How to multiplex between peers Justin Uberti
- Re: [rtcweb] How to multiplex between peers Aron Rosenberg
- Re: [rtcweb] How to multiplex between peers Colin Perkins
- Re: [rtcweb] How to multiplex between peers Colin Perkins
- Re: [rtcweb] How to multiplex between peers Matthew Kaufman
- Re: [rtcweb] How to multiplex between peers Colin Perkins
- Re: [rtcweb] How to multiplex between peers Matthew Kaufman
- Re: [rtcweb] How to multiplex between peers Matthew Kaufman
- Re: [rtcweb] How to multiplex between peers Jonathan Lennox
- Re: [rtcweb] How to multiplex between peers Henry Sinnreich
- Re: [rtcweb] How to multiplex between peers Dzonatas Sol
- Re: [rtcweb] How to multiplex between peers Igor Faynberg
- Re: [rtcweb] How to multiplex between peers Matthew Kaufman
- Re: [rtcweb] How to multiplex between peers Roni Even
- Re: [rtcweb] How to multiplex between peers Colin Perkins
- Re: [rtcweb] How to multiplex between peers Stephan Wenger
- Re: [rtcweb] How to multiplex between peers Colin Perkins
- Re: [rtcweb] How to multiplex between peers Harald Alvestrand
- Re: [rtcweb] How to multiplex between peers Stephan Wenger
- Re: [rtcweb] How to multiplex between peers DRAGE, Keith (Keith)
- Re: [rtcweb] How to multiplex between peers Harald Alvestrand
- Re: [rtcweb] How to multiplex between peers DRAGE, Keith (Keith)
- Re: [rtcweb] How to multiplex between peers Dzonatas Sol
- Re: [rtcweb] How to multiplex between peers Henry Sinnreich
- Re: [rtcweb] How to multiplex between peers Jonathan Lennox
- Re: [rtcweb] How to multiplex between peers Magnus Westerlund
- Re: [rtcweb] How to multiplex between peers Magnus Westerlund
- Re: [rtcweb] How to multiplex between peers Stephan Wenger
- Re: [rtcweb] How to multiplex between peers Magnus Westerlund
- Re: [rtcweb] How to multiplex between peers Stephan Wenger
- Re: [rtcweb] How to multiplex between peers Dzonatas Sol
- Re: [rtcweb] How to multiplex between peers Dzonatas Sol
- Re: [rtcweb] How to multiplex between peers Ted Hardie
- Re: [rtcweb] How to multiplex between peers Roman Shpount
- Re: [rtcweb] How to multiplex between peers Dzonatas Sol