Re: [rtcweb] RTP Usage: Is RTP Retransmission REQUIRED or RECOMMENDED
Randell Jesup <randell-ietf@jesup.org> Mon, 02 July 2012 21:52 UTC
Return-Path: <randell-ietf@jesup.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 F0BD221F84C4 for <rtcweb@ietfa.amsl.com>; Mon, 2 Jul 2012 14:52:15 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -1.963
X-Spam-Level:
X-Spam-Status: No, score=-1.963 tagged_above=-999 required=5 tests=[AWL=0.636, BAYES_00=-2.599]
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 rLL+pH7ykDdh for <rtcweb@ietfa.amsl.com>; Mon, 2 Jul 2012 14:52:11 -0700 (PDT)
Received: from r2-chicago.webserversystems.com (r2-chicago.webserversystems.com [173.236.101.58]) by ietfa.amsl.com (Postfix) with ESMTP id 1775E21F84C2 for <rtcweb@ietf.org>; Mon, 2 Jul 2012 14:52:10 -0700 (PDT)
Received: from pool-108-16-41-249.phlapa.fios.verizon.net ([108.16.41.249] helo=[192.168.1.12]) by r2-chicago.webserversystems.com with esmtpsa (TLSv1:AES256-SHA:256) (Exim 4.69) (envelope-from <randell-ietf@jesup.org>) id 1SloXX-0000SF-D3 for rtcweb@ietf.org; Mon, 02 Jul 2012 16:52:15 -0500
Message-ID: <4FF217DD.1060607@jesup.org>
Date: Mon, 02 Jul 2012 17:51:25 -0400
From: Randell Jesup <randell-ietf@jesup.org>
User-Agent: Mozilla/5.0 (Windows NT 5.1; rv:13.0) Gecko/20120614 Thunderbird/13.0.1
MIME-Version: 1.0
To: rtcweb@ietf.org
References: <4FEAB80A.7040207@ericsson.com> <4E5389B4-F54C-4060-952E-8319A801FDC3@iii.ca> <4FED4E81.7000607@ericsson.com> <B7F8286E-BDB0-4033-991C-A54A0A1227EB@iii.ca> <A8D45DD6-4E82-413F-8978-C6A80B2806DA@edvina.net> <CAOJ7v-1SwvqDrzOGGSwFjkmnqPmF8PVvbOoGrtbtx6qk2T_R-w@mail.gmail.com>
In-Reply-To: <CAOJ7v-1SwvqDrzOGGSwFjkmnqPmF8PVvbOoGrtbtx6qk2T_R-w@mail.gmail.com>
Content-Type: text/plain; charset="ISO-8859-1"; format="flowed"
Content-Transfer-Encoding: 7bit
X-AntiAbuse: This header was added to track abuse, please include it with any abuse report
X-AntiAbuse: Primary Hostname - r2-chicago.webserversystems.com
X-AntiAbuse: Original Domain - ietf.org
X-AntiAbuse: Originator/Caller UID/GID - [47 12] / [47 12]
X-AntiAbuse: Sender Address Domain - jesup.org
X-Source:
X-Source-Args:
X-Source-Dir:
Subject: Re: [rtcweb] RTP Usage: Is RTP Retransmission REQUIRED or RECOMMENDED
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: Mon, 02 Jul 2012 21:52:17 -0000
On 7/2/2012 4:18 PM, Justin Uberti wrote: > As has been pointed out in this thread before, this discussion is not > about mandating the USE of retransmission in realtime scenarios. It is > simply trying to decide whether retransmission should be required to be > present in the 'toolbox' of tools that WebRTC apps can expect to use, > primarily where the app developer and runtime developer are separate > (e.g. in a browser). Do you expect to expose this choice to the application? (and all the data needed to make the choice...) Or have it be automatic? > Several people have pointed out scenarios and applications where > retransmission (of video, not audio) works very well. Our experience > matches this too. Typically we can locate a media gateway very close to > all participants, meaning that a lost packet between GW and user can be > detected and retransmitted fast enough to not be noticeable by the user. > These applications, if they do not have access to retransmission, will > be forced to use cruder methods of error recovery that are more > noticeable to users, among other unpleasant effects. Ok. This says that it's preferable to implement it, and if you have one of the situations that works well, use it. This sounds like a SHOULD to me, since other implementations (say an audio-only WebRTC<->PSTN gateway) may have little or no use for retransmission, or might reject it always. > Given that the implementation cost of retransmission is fairly > negligible (basically, a packet cache plus support for parsing NACK > messages), and that is really the only reason NOT to support this > functionality in the toolbox, I have a hard time understanding why we > would not want to make this a MUST implement for WebRTC. > > Again, this is about making _support_ for retransmission a requirement, > not _use_. If you don't mandate use, what does mandating "support" buy you? An implementation (see above about PSTN gateways) might always decline to use retransmission, so what does MUST (REQUIRE) buy you? I say SHOULD (RECOMMEND), with a statement that it's strongly recommended it be supported if video is supported, especially for non-single-purpose devices (i.e. browsers). In either case, you need to think about who decides to use re-xmit or not, what influences that, and if the app has visibility into this. Someone could as an rtx-time=0 to the SDP. Or not include one, but never actually retransmit a packet regardless of NACKs - it could just repair via IDR (or other means). So here's a real problem related to retransmission: since the request is not specific and negotiated (it's normally a generic NACK), the receiver who sent the NACK has no idea if it will get a retransmission, an IDR (or IDR slice), another form of repair (pframe/slice against known-decoded frame - rpsi/etc), or nothing at all (NACK lost). So, it doesn't know if it should freeze the video or play with errors. It has to decide if it *thinks* the sender will use retransmission, or if it doesn't, does the receiver want to freeze video until an IDR or other repair is done, which might be a while. We also need to think about when a receiver should use SLI or RPSI. PLI can also be used and should be if the other options don't negotiate (so it's important to offer it). Certainly it's more work to keep track of the contents of each packet (slices, etc), especially in things like H.264 NALU aggregation packets, than it is to just respond to an SLI. That said, my previous systems just used NACK and let the sender decide the correct repair, but I wasn't leveraging slices and wasn't using retransmission, so there was only minor complexity (looking at possible reference frames). -- Randell Jesup randell-ietf@jesup.org
- [rtcweb] RTP Usage: Is RTP Retransmission REQUIRE… Magnus Westerlund
- Re: [rtcweb] RTP Usage: Is RTP Retransmission REQ… Fabio Pietrosanti (naif)
- Re: [rtcweb] RTP Usage: Is RTP Retransmission REQ… Bernard Aboba
- Re: [rtcweb] RTP Usage: Is RTP Retransmission REQ… Cameron Byrne
- Re: [rtcweb] RTP Usage: Is RTP Retransmission REQ… Colin Perkins
- Re: [rtcweb] RTP Usage: Is RTP Retransmission REQ… Fabio Pietrosanti (naif)
- Re: [rtcweb] RTP Usage: Is RTP Retransmission REQ… Roy, Radhika R CIV (US)
- Re: [rtcweb] RTP Usage: Is RTP Retransmission REQ… Fabio Pietrosanti (naif)
- Re: [rtcweb] RTP Usage: Is RTP Retransmission REQ… Roy, Radhika R CIV (US)
- Re: [rtcweb] RTP Usage: Is RTP Retransmission REQ… Colin Perkins
- Re: [rtcweb] RTP Usage: Is RTP Retransmission REQ… Cameron Byrne
- Re: [rtcweb] RTP Usage: Is RTP Retransmission REQ… Colin Perkins
- Re: [rtcweb] RTP Usage: Is RTP Retransmission REQ… Fabio Pietrosanti (naif)
- Re: [rtcweb] RTP Usage: Is RTP Retransmission REQ… Cameron Byrne
- Re: [rtcweb] RTP Usage: Is RTP Retransmission REQ… Fabio Pietrosanti (naif)
- Re: [rtcweb] RTP Usage: Is RTP Retransmission REQ… Roni Even
- Re: [rtcweb] RTP Usage: Is RTP Retransmission REQ… Magnus Westerlund
- Re: [rtcweb] RTP Usage: Is RTP Retransmission REQ… Michael Welzl
- Re: [rtcweb] RTP Usage: Is RTP Retransmission REQ… Roy, Radhika R CIV (US)
- Re: [rtcweb] RTP Usage: Is RTP Retransmission REQ… Roy, Radhika R CIV (US)
- Re: [rtcweb] RTP Usage: Is RTP Retransmission REQ… Magnus Westerlund
- Re: [rtcweb] RTP Usage: Is RTP Retransmission REQ… Roni Even
- Re: [rtcweb] RTP Usage: Is RTP Retransmission REQ… Roni Even
- Re: [rtcweb] RTP Usage: Is RTP Retransmission REQ… Roy, Radhika R CIV (US)
- Re: [rtcweb] RTP Usage: Is RTP Retransmission REQ… Cameron Byrne
- Re: [rtcweb] RTP Usage: Is RTP Retransmission REQ… Roy, Radhika R CIV (US)
- Re: [rtcweb] RTP Usage: Is RTP Retransmission REQ… Magnus Westerlund
- Re: [rtcweb] RTP Usage: Is RTP Retransmission REQ… Cullen Jennings
- Re: [rtcweb] RTP Usage: Is RTP Retransmission REQ… Roni Even
- Re: [rtcweb] RTP Usage: Is RTP Retransmission REQ… Roni Even
- Re: [rtcweb] RTP Usage: Is RTP Retransmission REQ… Magnus Westerlund
- Re: [rtcweb] RTP Usage: Is RTP Retransmission REQ… Magnus Westerlund
- Re: [rtcweb] RTP Usage: Is RTP Retransmission REQ… Magnus Westerlund
- Re: [rtcweb] RTP Usage: Is RTP Retransmission REQ… Stefan Holmer
- Re: [rtcweb] RTP Usage: Is RTP Retransmission REQ… John Leslie
- Re: [rtcweb] RTP Usage: Is RTP Retransmission REQ… Cullen Jennings
- Re: [rtcweb] RTP Usage: Is RTP Retransmission REQ… Colin Perkins
- Re: [rtcweb] RTP Usage: Is RTP Retransmission REQ… Cullen Jennings
- Re: [rtcweb] RTP Usage: Is RTP Retransmission REQ… Roy, Radhika R CIV (US)
- Re: [rtcweb] RTP Usage: Is RTP Retransmission REQ… Randell Jesup
- Re: [rtcweb] RTP Usage: Is RTP Retransmission REQ… Randell Jesup
- Re: [rtcweb] RTP Usage: Is RTP Retransmission REQ… Stefan Holmer
- Re: [rtcweb] RTP Usage: Is RTP Retransmission REQ… Roni Even
- Re: [rtcweb] RTP Usage: Is RTP Retransmission REQ… Roni Even
- Re: [rtcweb] RTP Usage: Is RTP Retransmission REQ… Randell Jesup
- Re: [rtcweb] RTP Usage: Is RTP Retransmission REQ… Stefan Holmer
- Re: [rtcweb] RTP Usage: Is RTP Retransmission REQ… Olle E. Johansson
- Re: [rtcweb] RTP Usage: Is RTP Retransmission REQ… Justin Uberti
- Re: [rtcweb] RTP Usage: Is RTP Retransmission REQ… Randell Jesup
- Re: [rtcweb] RTP Usage: Is RTP Retransmission REQ… Olle E. Johansson
- Re: [rtcweb] RTP Usage: Is RTP Retransmission REQ… Stefan Hakansson LK
- Re: [rtcweb] RTP Usage: Is RTP Retransmission REQ… Roman Shpount
- Re: [rtcweb] RTP Usage: Is RTP Retransmission REQ… Olle E. Johansson
- Re: [rtcweb] RTP Usage: Is RTP Retransmission REQ… Roman Shpount
- [rtcweb] 答复: RTP Usage: Is RTP Retransmission REQ… Lishitao
- Re: [rtcweb] RTP Usage: Is RTP Retransmission REQ… Randell Jesup
- Re: [rtcweb] RTP Usage: Is RTP Retransmission REQ… Martin Thomson
- Re: [rtcweb] RTP Usage: Is RTP Retransmission REQ… Olle E. Johansson
- Re: [rtcweb] RTP Usage: Is RTP Retransmission REQ… Martin Thomson
- Re: [rtcweb] RTP Usage: Is RTP Retransmission REQ… Stefan Hakansson LK
- [rtcweb] LTE using AM_RLC or UM_RLC mode for UDP? Harald Alvestrand
- Re: [rtcweb] LTE using AM_RLC or UM_RLC mode for … Göran Eriksson AP
- Re: [rtcweb] LTE using AM_RLC or UM_RLC mode for … Cameron Byrne