Re: [rmcat] delay recovery phase

Randell Jesup <randell-ietf@jesup.org> Mon, 03 November 2014 17:58 UTC

Return-Path: <randell-ietf@jesup.org>
X-Original-To: rmcat@ietfa.amsl.com
Delivered-To: rmcat@ietfa.amsl.com
Received: from localhost (ietfa.amsl.com [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id D43121A6F57 for <rmcat@ietfa.amsl.com>; Mon, 3 Nov 2014 09:58:08 -0800 (PST)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -1.901
X-Spam-Level:
X-Spam-Status: No, score=-1.901 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_PASS=-0.001] autolearn=ham
Received: from mail.ietf.org ([4.31.198.44]) by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id 3zrch4UvvPb3 for <rmcat@ietfa.amsl.com>; Mon, 3 Nov 2014 09:58:07 -0800 (PST)
Received: from relay.mailchannels.net (nov-007-i510.relay.mailchannels.net [46.232.183.64]) by ietfa.amsl.com (Postfix) with ESMTP id 4A4E21A6F59 for <rmcat@ietf.org>; Mon, 3 Nov 2014 09:58:04 -0800 (PST)
X-Sender-Id: wwwh|x-authuser|randell@jesup.org
Received: from r2-chicago.webserversystems.com (ip-10-236-1-24.us-west-2.compute.internal [10.236.1.24]) by relay.mailchannels.net (Postfix) with ESMTPA id A0570100356 for <rmcat@ietf.org>; Mon, 3 Nov 2014 17:57:57 +0000 (UTC)
X-Sender-Id: wwwh|x-authuser|randell@jesup.org
Received: from r2-chicago.webserversystems.com (r2-chicago.webserversystems.com [10.252.6.112]) (using TLSv1 with cipher DHE-RSA-AES256-SHA) by 0.0.0.0:2500 (trex/5.3.2); Mon, 03 Nov 2014 17:57:58 GMT
X-MC-Relay: Neutral
X-MailChannels-SenderId: wwwh|x-authuser|randell@jesup.org
X-MailChannels-Auth-Id: wwwh
X-MC-Loop-Signature: 1415037477940:3563699012
X-MC-Ingress-Time: 1415037477940
Received: from pool-71-175-4-200.phlapa.fios.verizon.net ([71.175.4.200]:55517 helo=[192.168.1.12]) by r2-chicago.webserversystems.com with esmtpsa (TLSv1:DHE-RSA-AES128-SHA:128) (Exim 4.82) (envelope-from <randell-ietf@jesup.org>) id 1XlLt6-0002e2-IT for rmcat@ietf.org; Mon, 03 Nov 2014 11:57:56 -0600
Message-ID: <5457C215.5010302@jesup.org>
Date: Mon, 03 Nov 2014 12:57:41 -0500
From: Randell Jesup <randell-ietf@jesup.org>
User-Agent: Mozilla/5.0 (Windows NT 6.3; WOW64; rv:24.0) Gecko/20100101 Thunderbird/24.6.0
MIME-Version: 1.0
To: rmcat@ietf.org
References: <479bbc3c4afe41cc8c8226c71a96de2c@NASANEXM01E.na.qualcomm.com> <54552241.2080400@jesup.org> <CAEdus3+XMFPZH7kyUscg5xQJoWE8ywcDFVaPzyemT474mXGYMQ@mail.gmail.com>
In-Reply-To: <CAEdus3+XMFPZH7kyUscg5xQJoWE8ywcDFVaPzyemT474mXGYMQ@mail.gmail.com>
Content-Type: text/plain; charset="UTF-8"; format="flowed"
Content-Transfer-Encoding: 7bit
X-AuthUser: randell@jesup.org
Archived-At: http://mailarchive.ietf.org/arch/msg/rmcat/f3Zdqw2CpLht3-TydD5kasTj03c
Subject: Re: [rmcat] delay recovery phase
X-BeenThere: rmcat@ietf.org
X-Mailman-Version: 2.1.15
Precedence: list
List-Id: "RTP Media Congestion Avoidance Techniques \(RMCAT\) Working Group discussion list." <rmcat.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/rmcat>, <mailto:rmcat-request@ietf.org?subject=unsubscribe>
List-Archive: <http://www.ietf.org/mail-archive/web/rmcat/>
List-Post: <mailto:rmcat@ietf.org>
List-Help: <mailto:rmcat-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/rmcat>, <mailto:rmcat-request@ietf.org?subject=subscribe>
X-List-Received-Date: Mon, 03 Nov 2014 17:58:09 -0000

On 11/3/2014 5:04 AM, Stefan Holmer wrote:
> Sounds interesting.
>
> In 
> https://tools.ietf.org/html/draft-alvestrand-rmcat-congestion-02#page-10 
> we go into a HOLD state where the sender should keep its bitrate 
> constant while waiting for buffers to drain. We don't try to estimate 
> the time needed to drain the buffers, but instead look at the delay 
> change estimate m(i); if it's less than zero buffers are likely draining.

Right.  My point was that for large fast changes in available bandwidth 
(due to either link changes as we're talking about here, new 
non-adaptive VoIP flows, or brand-new hungry TCP flows (which due to RTT 
or the other limitations elsewhere don't eat the entire connection), 
it's good to estimate how far behind you've fallen while waiting to 
respond.  The other solution is purposely always overreact downwards 
(though this requires having an idea how much over we may be, which 
Google's algorithm doesn't use, but can be estimated by the slope of the 
delay increase and then confirmed by the slope of the delay decrease 
after lowering send bandwidth).

And per my previous comments, judicious frame drops at the sender can 
drain a queue very fast, though that has to be balanced against 
maintaining framerate for quality.  That's partially out-of-scope for 
RMCAT, but not entirely if it can feed the source not only an "available 
bandwidth" value, but also an "estimated overhang" value (delay in time 
and bits).    The control output of RMCAT to the source does *not* have 
to be a single integer.  Some sources (audio) may not be able to make 
(much) use of it.  Others might - video by dropping frames, audio by 
using comfort noise, both by changing/dropping FEC temporarily, etc.


-- 
Randell Jesup -- rjesup a t mozilla d o t com