Re: [rmcat] Review of rmcat-cc-codec-interactions
"Mo Zanaty (mzanaty)" <mzanaty@cisco.com> Wed, 24 February 2016 22:52 UTC
Return-Path: <mzanaty@cisco.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 B54891A1B03 for <rmcat@ietfa.amsl.com>; Wed, 24 Feb 2016 14:52:48 -0800 (PST)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -14.206
X-Spam-Level:
X-Spam-Status: No, score=-14.206 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, HTML_MESSAGE=0.001, MIME_8BIT_HEADER=0.3, RCVD_IN_DNSWL_HI=-5, RP_MATCHES_RCVD=-0.006, SPF_PASS=-0.001, USER_IN_DEF_DKIM_WL=-7.5] 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 yxOP8H9ME-uf for <rmcat@ietfa.amsl.com>; Wed, 24 Feb 2016 14:52:42 -0800 (PST)
Received: from rcdn-iport-6.cisco.com (rcdn-iport-6.cisco.com [173.37.86.77]) (using TLSv1.2 with cipher DHE-RSA-SEED-SHA (128/128 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 75AF11A1AC6 for <rmcat@ietf.org>; Wed, 24 Feb 2016 14:52:42 -0800 (PST)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=cisco.com; i=@cisco.com; l=19323; q=dns/txt; s=iport; t=1456354362; x=1457563962; h=from:to:subject:date:message-id:references:in-reply-to: mime-version; bh=hj2xyRCMSgbKkdMBzNXU6fGdcHG++cLAP4gFQPlZwMs=; b=jTtmsvxbo5X/kHNnp2A0sKLb6fKB0yZW/66eMSrOgv0iwIcpxeAKQ/WM 0ecJ9RqRuOgto16SkBNfn6GlIqtbChzAhHl84OLe5vSGamxsVTCHidHaF vK3W3v0sCBFujPwCzGlRUvT1XjkgaqcSYze8kRAIfLmSEirCV1U9evqJf M=;
X-IronPort-Anti-Spam-Filtered: true
X-IronPort-Anti-Spam-Result: A0AQAgDTM85W/5FdJa1egm5MUm0GumgBDYFmI4VrAoE+OBQBAQEBAQEBZCeEQgEBBIEJAgEIPwcyFBECBAESiB8OvXcBAQEBAQEBAwEBAQEBAQEVBIYShDqED1OEDQWNYoURhBQBhVeCboUZjnSOSAEeAQFCgX6BZmoBhiU9fQEBAQ
X-IronPort-AV: E=Sophos; i="5.22,495,1449532800"; d="scan'208,217"; a="76514635"
Received: from rcdn-core-9.cisco.com ([173.37.93.145]) by rcdn-iport-6.cisco.com with ESMTP/TLS/DHE-RSA-AES256-GCM-SHA384; 24 Feb 2016 22:52:41 +0000
Received: from XCH-RCD-018.cisco.com (xch-rcd-018.cisco.com [173.37.102.28]) by rcdn-core-9.cisco.com (8.14.5/8.14.5) with ESMTP id u1OMqeO0028890 (version=TLSv1/SSLv3 cipher=AES256-SHA bits=256 verify=FAIL); Wed, 24 Feb 2016 22:52:40 GMT
Received: from xch-aln-005.cisco.com (173.36.7.15) by XCH-RCD-018.cisco.com (173.37.102.28) with Microsoft SMTP Server (TLS) id 15.0.1104.5; Wed, 24 Feb 2016 16:52:39 -0600
Received: from xch-aln-005.cisco.com ([173.36.7.15]) by XCH-ALN-005.cisco.com ([173.36.7.15]) with mapi id 15.00.1104.009; Wed, 24 Feb 2016 16:52:39 -0600
From: "Mo Zanaty (mzanaty)" <mzanaty@cisco.com>
To: Mirja Kühlewind <mirja.kuehlewind@tik.ee.ethz.ch>, "Michael Ramalho (mramalho)" <mramalho@cisco.com>, "rmcat WG (rmcat@ietf.org)" <rmcat@ietf.org>
Thread-Topic: [rmcat] Review of rmcat-cc-codec-interactions
Thread-Index: AQHRb1YQg5ItDOIHuEW1CiCQOpj5pA==
Date: Wed, 24 Feb 2016 22:52:39 +0000
Message-ID: <D2F3370B.5A554%mzanaty@cisco.com>
References: <cbfb25002da84c24b5eb70b298731926@XCH-ALN-017.cisco.com> <56CD9488.8020705@tik.ee.ethz.ch>
In-Reply-To: <56CD9488.8020705@tik.ee.ethz.ch>
Accept-Language: en-US
Content-Language: en-US
X-MS-Has-Attach:
X-MS-TNEF-Correlator:
user-agent: Microsoft-MacOutlook/14.6.1.160122
x-ms-exchange-messagesentrepresentingtype: 1
x-ms-exchange-transport-fromentityheader: Hosted
x-originating-ip: [10.82.245.175]
Content-Type: multipart/alternative; boundary="_000_D2F3370B5A554mzanatyciscocom_"
MIME-Version: 1.0
Archived-At: <http://mailarchive.ietf.org/arch/msg/rmcat/b_KG1p61jlGmLhH12QBdS8ulofY>
Subject: Re: [rmcat] Review of rmcat-cc-codec-interactions
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: <https://mailarchive.ietf.org/arch/browse/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: Wed, 24 Feb 2016 22:52:48 -0000
Hi Mirja, Startup "Ramp" refers to rate (or window) increase over time at startup, not just the initial rate/window. The old app-interaction draft described this in section 5 (Interfaces and Interactions), but we were asked to remove this in the new cc-codec-interactions draft. Should we add this back? https://tools.ietf.org/html/draft-ietf-rmcat-app-interaction-01#section-5 o Startup Ramp (CC-Codec): Initial rate (or number of packets in window-based CC proposals) and strategy for increasing the rate (or window) during media startup, similar to TCP intial congestion window and slow start. See Section 5.4.3 for details. While an initial window may be sufficient for TCP apps, it can be insufficient for codecs at startup. A codec can make many different (more intelligent) decisions at startup depending on the target ramp, versus usually making very poor decisions if only an initial rate is given. If the only cc-codec interaction at startup is an initial rate, then Allowed Rate can already capture that interaction without anything special needed for startup. However, startup is indeed special because the initial rate is very transient and rapid increase is expected. Codecs can make better decisions if they are aware of the CC startup dynamics. For example, if the codec is only told 300 kbps, it may adapt to a very low resolution like CIF with poor quantization in order to maintain a stable, moderate frame rate at 300 kbps. If instead it is told 300 kbps ramping up geometrically to 2.5 Mbps in 0.5 seconds, it may target HD 1080p with better quantization and pace the initial frame over a longer time until the startup rate stabilizes before attempting full frame rate. Cheers, Mo On 2/24/16, 6:31 AM, Mirja Kühlewind <mirja.kuehlewind@tik.ee.ethz.ch<mailto:mirja.kuehlewind@tik.ee.ethz.ch>> wrote: Hi Mo, hi Michael, two comments as individual: Reading this text part now, I don't think we need to negotiate the startup ramp. Actually I'm not even sure what the term 'ramp' is supposed to mean here. I believe we need is to indicate the maximum initial sending rate from the cc to the codec. If the codec then delivers data with a lower rate that should not be a problem for the cc. And the initial (max) sending can solely be chosen by the cc, as it might either use a default value or some cached info from previous transmission to the same receiver (over the same access network). Further, I agree that it is good to add one sentence that this rate has to be chosen carefully (and a different value than a conservative default can only be used if further information about or from the network is available). But I don't really understand what exactly you want say with the two sentences that you have added below...? Mirja On 16.02.2016 22:59, Michael Ramalho (mramalho) wrote: All, I have reviewed draft-zanaty-rmcat-cc-codec-interactions. My only comments concern Section 5.2.2 (Startup Ramp). In what follows I have added two sentences and modified a sentence in this section. ****EXISTING TEXT**** 5.2.2. Startup Ramp Startup Ramp (from Codec to CC, and from CC to Codec): Startup is an important moment in a conversation. Rapid rate adaptation during startup is therefore important. The codec should minimize its startup media rate as much as possible without adversely impacting the user experience, and support a strategy for rapid rate ramp. The CC should allow the highest startup media rate as possible without adversely impacting network conditions, and also support rapid rate ramp until stabilizing on the available bandwidth. Startup can be viewed as a negotiation between the codec and the CC. The codec requests a startup rate and ramp, and the CC responds with the allowable parameters which may be lower/slower. The RMCAT requirements also include the possibility of bandwidth history to further accelerate or even eliminate startup ramp time. While this is highly desirable from an application viewpoint, it may be less acceptable to network operators, since it is in essence a gamble on current congestion state matching historical state, with the potential for significant congestion contribution if the gamble was wrong. Note that startup can often commence before user interaction or conversation to reduce the chance of clipped media. ****EXISTING TEXT**** ****PROPOSED TEXT**** 5.2.2. Startup Ramp Startup Ramp (from Codec to CC, and from CC to Codec): Startup is an important moment in a conversation. Rapid rate adaptation during startup is therefore important. The codec should minimize its startup media rate as much as possible without adversely impacting the user experience, and support a strategy for rapid rate ramp. The CC should allow the highest startup media rate as possible without adversely impacting network conditions, and also support rapid rate ramp until stabilizing on the available bandwidth. Startup can be viewed as a negotiation between the codec and the CC. The specification of the ramp may take a number of forms depending on the interface to the codec; for example, a percentage bit rate increase per RTT (or other time interval), or an increased transmit window (in number of packets and/or octets allowed outstanding) are all potential forms. The codec requests a startup rate and ramp, and the CC responds with the allowable parameters which may be lower/slower. The RMCAT requirements also include the possibility of bandwidth history to further accelerate or even eliminate startup ramp time. While this acceleration or elimination in ramp time is beneficial to the session user experience when bandwidth is sufficient, it can be detrimental if significant congestion results (the user experience of this session and all other sessions traversing the point of congestion may unnecessarily degrade). Therefore, it is recommended that use of potentially stale congestion state for acceleration or elimination in ramp up be limited to topologies or deployments believed to have sufficient bandwidth margin or those in which the potential transient congestion risk is acceptable. Note that startup can often commence before user interaction or conversation to reduce the chance of clipped media. ****PROPOSED TEXT**** The modification deletes the reference to "network operators", as I think the point may be made that many network administrators (be they service providers or other "network operators") or network designers/sizers would also have the same concern. I have reviewed this change with the present authors and they generally approve of it. Other edits are welcome. Regards, Michael A. Ramalho, Ph.D.
- [rmcat] Review of rmcat-cc-codec-interactions Michael Ramalho (mramalho)
- Re: [rmcat] Review of rmcat-cc-codec-interactions Mirja Kühlewind
- Re: [rmcat] Review of rmcat-cc-codec-interactions Mo Zanaty (mzanaty)
- Re: [rmcat] Review of rmcat-cc-codec-interactions Mirja Kühlewind