Re: [rmcat] Review of Congestion Control Requirements For RMCAT - draft-ietf-rmcat-cc-requirements-00
Dave Taht <dave.taht@gmail.com> Thu, 21 November 2013 22:49 UTC
Return-Path: <dave.taht@gmail.com>
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 153BB1AE3CD for <rmcat@ietfa.amsl.com>; Thu, 21 Nov 2013 14:49:34 -0800 (PST)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -1.999
X-Spam-Level:
X-Spam-Status: No, score=-1.999 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, FREEMAIL_FROM=0.001, HTML_MESSAGE=0.001, SPF_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 rJsCmmUwnZNo for <rmcat@ietfa.amsl.com>; Thu, 21 Nov 2013 14:49:29 -0800 (PST)
Received: from mail-wg0-x22a.google.com (mail-wg0-x22a.google.com [IPv6:2a00:1450:400c:c00::22a]) by ietfa.amsl.com (Postfix) with ESMTP id 784EE1AE3C4 for <rmcat@ietf.org>; Thu, 21 Nov 2013 14:49:29 -0800 (PST)
Received: by mail-wg0-f42.google.com with SMTP id k14so682225wgh.1 for <rmcat@ietf.org>; Thu, 21 Nov 2013 14:49:22 -0800 (PST)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=mime-version:in-reply-to:references:date:message-id:subject:from:to :cc:content-type; bh=33itvoxzjorg84cfuVy7G/6Xxq/2QHlU7MqK65wSZEg=; b=NPnQL4RmPVhBYMoIs9d5xmDKlRce/PMt89IPbKKQo4vra/I3NuJ6OwrvTrAfZA4sUm b8vdY+exHslI8XEvdtzakIkvCkh8+3p6IE+huno/t3BDAe6Yq1yDykMBbywS0HuPQmJ5 BdgTD86PVuaN6zn4/dhwzI4iq8Wok2lSB6kza3m+wtYo06P4ldPuNDZcchJvsznXiWW9 iHlwB5R/2DEVmeI5L915NFwYm7sMtvpa9dk+XLOM5HdK0ydDrHolr6xRJQoqhsbxHiQk +VzY4x8OzCT6cXKDPZTXhmsMTM+WjFhjYr1mLNJCBNG+rC4eDXDjwGRjH3LjiEG2I3X+ +UFA==
MIME-Version: 1.0
X-Received: by 10.180.74.52 with SMTP id q20mr32534254wiv.60.1385074162218; Thu, 21 Nov 2013 14:49:22 -0800 (PST)
Received: by 10.217.51.5 with HTTP; Thu, 21 Nov 2013 14:49:22 -0800 (PST)
In-Reply-To: <52868F5C.2030706@jesup.org>
References: <AE7F97DB5FEE054088D82E836BD15BE92014261D@xmb-aln-x05.cisco.com> <52868F5C.2030706@jesup.org>
Date: Thu, 21 Nov 2013 14:49:22 -0800
Message-ID: <CAA93jw6cidDM=kMF91DEMO-6h=-f686kvZN=6mdJzGWqWtQbAA@mail.gmail.com>
From: Dave Taht <dave.taht@gmail.com>
To: Randell Jesup <randell-ietf@jesup.org>
Content-Type: multipart/alternative; boundary="f46d043890796d3d6004ebb7b51d"
Cc: "rmcat@ietf.org" <rmcat@ietf.org>
Subject: Re: [rmcat] Review of Congestion Control Requirements For RMCAT - draft-ietf-rmcat-cc-requirements-00
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: Thu, 21 Nov 2013 22:49:34 -0000
I could have sworn I'd commented on this already, but don't see it On Nov 15, 2013 1:17 PM, "Randell Jesup" <randell-ietf@jesup.org> wrote: > On 11/12/2013 11:27 AM, Bill Ver Steeg (versteb) wrote: > >> Randell- >> >> As I promised in Vancouver, here are my note on draft-ietf-rmcat-cc- >> requirements-00 >> >> In summary, this is quite a nice start. It is a difficult document to >> write, as it is intentionally quite broad. On the whole, I like it. >> > > That's a great start for a review! ;-) Thanks! Now on to the meat... > > The main concern is my item #1 >> >> 1- In the abstract, do we want to mention that the RMCAT CC algorithm >> needs to be robust in the presence of a wide range of cross traffic? If >> not, we certainly need to state it strongly in the introduction and the >> requirements. Perhaps a paragraph similar to >> "While the requirements for RMCAT differ from the requirements for the >> other flow types, these other flow types will be present in the network. >> The RMCAT congestion control algorithm must work properly when these other >> flow types are present as cross traffic on the network." should be in >> either the abstract or in the introduction. I would also like to see a >> statement that the RMCAT CC algorithm should drive scavenger flows (like >> LEDBAT) to nearly 0, taking that BW for the RMCAT/TCP/"normal" flows. These >> points are referenced in item #11, but it is a rather thin section late in >> the document. IMHO, this should be one of the primary points of the >> requirements document. >> > > Certainly upping the emphasis on robustness in the face of a variety of > cross traffic is good - though it's not something that we can guarantee is > achievable (just as we can't guarantee success in competing with greedy TCP > flows). > > As for driving LEDBAT to 0.... I'm afraid that might be desirable, but > unachievable. We may well find that LEDBAT will put a floor on how low we > can drive delay, driven by the delay constant hard-coded into LEDBAT > implementations (100ms(!) in the spec, 25ms in Apple's kernel > implementation used for things like Apple's TimeMachine(?) auto-backup > stuff. I'm not sure what BitTorrent is using, but I suspect it's 100ms. > It is impossible to drive ledbat to 0. 100ms is torrent, yes. Yet, It is highly desirable to get queuing latency below 100ms, and 5ms is achievable with modern AQM/packet scheduling technology, which turn all delay based TCPs into loss based ones again. I can't remember if I already posted this (forgive me if I have) but http://perso.telecom-paristech.fr/~drossi/paper/rossi13tma-b.pdf and the followup modelling it, which I have not thoroughly digested yet: http://arxiv.org/pdf/1303.6817.pdf > > There are some minor issues, which I discuss below. >> >> 2- Requirements section, bullet 1 - Do we need to elaborate the other >> cases in which the algorithm needs to adjust the BW? We state (in 1a) that >> topology changes need to be handled. Do we need to state <1b - Changes in >> cross traffic > and <1c - changes in offered load from the application >> sending data over RMCAT> >> > > I'll check the text; I don't have it in front of me at the moment > > 3- Requirements section, bullet 2a - If we are enumerating types of >> traffic that we need to be concerned with, I would more concerned with MPEG >> DASH style Adaptive BitRate video than generic web browsing. Web browsing >> is bursty, but at least it is well-bounded in time. ABR flows are bursty, >> cyclical, and persistent. I would either remove the reference to web >> browsing or change it to include other bursty flow types (I note that OTT >> ABR traffic is now more than 50% of the peak load on many networks). >> > > Good point, though MPEG DASH is not the dominant transfer protocol for > such data (or not yet). The major players are implementing DASH in JS > (i.e. under provider/application control), so that adds another wrinkle in > verifying this - but the idea that we have to coexist with such traffic is > important, and HTTP streaming and DASH and proprietary protocols from > Apple/MS/etc do pose real problems - HTTP streaming for example may look > like a very hungry realtime protocol, or it may look like a periodic > maximum-transfer TCP flow (Gettys showed a NetFlix BW vs Time graph that > showed a ~10 second square-wave of bandwidth use, for example). > It is my hope netflix has changed their setup by now. There was some awesome followup work after the "confused, timid and unstable" paper: http://www.stanford.edu/~huangty/imc012-huang.pdf here: http://reproducingnetworkresearch.wordpress.com/2013/03/13/cs244-13-rising-from-the-depths-observing-and-implementing-improvements-in-online-video-bitrate-selection/ So I think that data on netflix's behavior needs to be revisited. (I have retired that slide) http://www.ietf.org/mail-archive/web/aqm/current/msg00195.html > > 4- Requirements section 3 - do we need to mention that there is a >> temporal component to information sharing across streams. In other words, >> we may consider a previous 5-tuples experience as a baseline to seed a CC >> algorithm, particularly if it is the exact same source addr/dest addr/dest >> port/protocol? This is hinted in item #12 in the document, but the guidance >> is quite thin in that section. Temporal hinting is particularly valuable if >> the old session data was from 1 second ago. It is less true if it was 1 day >> ago, but may still have some value as an initial seed for the CC algorithm. >> 3b is also a bit awkward, as multiple "flows" on a given 5-tuple >> introduces some difficult SSRC concepts that are currently being discussed >> in the AVT group. We either need to define "flow" or describe the concept >> in broader terms. I am reluctant to open that can of worms in this >> document, but if we are not clear it will be the source of endless >> debate/confusion. I hate glossaries in the front of RFCs, but we may have >> to do that. >> >> 5- In section 4, I do not see any details on how ECN, delay and loss >> indicate congestion. Even though we all understand that this is a complex >> relationship and will be difficult to characterize in a requirements >> document, I think that a few paragraphs of detail are in order. This level >> of detail would be important to a less experienced reader. This is my major >> concern with the draft, and I could write a paragraph or two to include >> this discussion (if there agreement that this should be discussed in this >> draft) >> > > Let me take a try at it. Understandability also can help avoid confusion > among experts and implementations. > I'm all ears. We stumbled on defining this too, in the aqm wg. > > >> 6- Is 5a a requirement, or are we starting to discuss the solution space >> here? I suspect that we will end up mandating AVFP, but we may be getting >> ahead of ourselves here. Perhaps we should soften this to a suggestion to >> examine RFC4585 rather than a MUST use statement. >> > > Hmmm. Let me think. I think we'd said that these algorithms *if* they > use RTCP would need AVPF in order to respond within orders of magnitude of > the RTT. But there are other ways to provide the feedback needed than > RTCP. But that isn't to say that a new profile (AVPG ;-) ) couldn't also > meet the needs here. > > 7- If we are elaborating AQM schemes, we should include PIE (I know, a >> shameless plug for the one I am working on - but I think it is a valid >> comment nonetheless). And to be rigorous, RED, CoDel and PIE are buffer >> management algorithms that operate on a given queue. One can also apply >> multiple queues (FQ being one variant of multiple queues) to the problem as >> well. To be more clear, we should mention queuing algorithms like RED, >> CoDel and PIE and then mention that each of these algorithms can be >> optionally mapped to multiple queues. If this is going to cause a debate >> of some sort, we could also just reference the broad class of AQMs and the >> broad class of queue allocation schemes without elaborating the specific >> algorithms. >> > > The specific were more to indicate which ones we thought were most > important to work/test with, so perhaps we should go to a more generic > statement and move mentions of specifics to Varun's document. > > 8- I am reluctant to bring this into the conversation........ Once we >> mention multiple queues, we may want to mention that the multiple queues >> may represent different QOS buckets, and the activity in one queue may >> impact the drain rate of lower priority queues, whereas the activity of a >> lower priority queue will have a (very?) small impact on the drain rate of >> a higher queue. I am reluctant to start this train of thought in this >> document, so perhaps we do not mention multiple queues of multiple >> priorities. If we are to mention different priority flows, perhaps we use >> DSCP markings or VLAN tagging examples - but once again this quickly goes >> down a very deep rat hole. We may just want to state that there are often >> multiple priorities of flows, using the traditional SP voice, SP video, >> general purpose data, and scavenger class as examples......... I am torn on >> this one, and could be convinced to not include this in the document. >> > > Fundamentally, we have 4 classes of packets we want to get across the > network in webrtc (which also came up in the W3 TPAC WebRTC discussions > this week with regard to DSCP markings/etc): Faster-than-audio (typically > low bandwidth and/or intermittent), audio, video, and best-effort (maybe > split up into interactive use, and bulk-transfer). Outside of webrtc we > would also have scavenger (below immediate bulk-transfer). Typical > browsing traffic/etc would fall into the same general classes as best > effort and bulk-transfer. Note that "audio" and "video" don't mean they > have to be exclusively packets of that type, just that they they would have > network priorities of that type. > > Interestingly (or problematically), splitting the congestion regimes by > DSCP markings really needs to be done unless you know (or strongly believe) > they're being ignored at the bottleneck (note: not necessarily ignored > everywhere). But splitting the congestion controllers has the side effect > (if they are in one queue at the bottleneck) of reducing the feedback (per > controller) and slowing the ability to notice changes in the bottleneck > (and to respond). > > Bill VerStee >> > > Thanks again for a thoughtful review! > > -- > Randell Jesup > randell-ietf@jesup.org > > >
- [rmcat] Review of Congestion Control Requirements… Bill Ver Steeg (versteb)
- Re: [rmcat] Review of Congestion Control Requirem… Mirja Kuehlewind
- Re: [rmcat] Review of Congestion Control Requirem… Randell Jesup
- Re: [rmcat] Review of Congestion Control Requirem… Dave Taht
- [rmcat] MW's review of draft-ietf-rmcat-cc-requir… Michael Welzl
- Re: [rmcat] MW's review of draft-ietf-rmcat-cc-re… Zaheduzzaman Sarker
- Re: [rmcat] MW's review of draft-ietf-rmcat-cc-re… Michael Welzl
- Re: [rmcat] MW's review of draft-ietf-rmcat-cc-re… Zaheduzzaman Sarker
- Re: [rmcat] MW's review of draft-ietf-rmcat-cc-re… Michael Welzl
- Re: [rmcat] MW's review of draft-ietf-rmcat-cc-re… Randell Jesup
- Re: [rmcat] MW's review of draft-ietf-rmcat-cc-re… Randell Jesup