Re: [aqm] [tsvwg] Immediate ECN: Autotuning AQM for RTT

"Fred Baker (fred)" <fred@cisco.com> Wed, 13 November 2013 20:19 UTC

Return-Path: <fred@cisco.com>
X-Original-To: aqm@ietfa.amsl.com
Delivered-To: aqm@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 712B421E8162; Wed, 13 Nov 2013 12:19:29 -0800 (PST)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -110.325
X-Spam-Level:
X-Spam-Status: No, score=-110.325 tagged_above=-999 required=5 tests=[AWL=0.047, BAYES_00=-2.599, RCVD_IN_DNSWL_HI=-8, SARE_SUB_OBFU_Q1=0.227, USER_IN_WHITELIST=-100]
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 0uE4WvdMs6b9; Wed, 13 Nov 2013 12:19:23 -0800 (PST)
Received: from rcdn-iport-3.cisco.com (rcdn-iport-3.cisco.com [173.37.86.74]) by ietfa.amsl.com (Postfix) with ESMTP id 9371911E8136; Wed, 13 Nov 2013 12:19:01 -0800 (PST)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=cisco.com; i=@cisco.com; l=2228; q=dns/txt; s=iport; t=1384373941; x=1385583541; h=from:to:cc:subject:date:message-id:references: in-reply-to:mime-version; bh=P5ckJkLXRaB9/x6j6JuIFz3h/RpyZVgt7Np9A/xoBWQ=; b=YZTFVm8DQaG812dzSwrzNM2MhPmsC9BPQHPK0A6NaQ1/QnKfQEnxv8tl KDKgL9AZBxbCUkpPziJp+zlsMINQGWPO4YN5lc4ITs1hcZDiPILtWEAlj 9aZBmjrdmxSJdmgKVr8pzPy8UYvM9tH9GND9lyMJVajrLPLi/Wk6RRy/w Y=;
X-Files: signature.asc : 195
X-IronPort-Anti-Spam-Filtered: true
X-IronPort-Anti-Spam-Result: AgIFAA3eg1KtJV2Y/2dsb2JhbABZgweBC78sgSgWdIIlAQEBAwF5BQsCAQgOODIlAgQOBQ6HbQbASo4hgT4HgyCBEQOQMIEwhjCSC4MogWlB
X-IronPort-AV: E=Sophos; i="4.93,693,1378857600"; d="asc'?scan'208"; a="284455038"
Received: from rcdn-core-1.cisco.com ([173.37.93.152]) by rcdn-iport-3.cisco.com with ESMTP; 13 Nov 2013 20:19:01 +0000
Received: from xhc-aln-x05.cisco.com (xhc-aln-x05.cisco.com [173.36.12.79]) by rcdn-core-1.cisco.com (8.14.5/8.14.5) with ESMTP id rADKJ0EN016315 (version=TLSv1/SSLv3 cipher=AES128-SHA bits=128 verify=FAIL); Wed, 13 Nov 2013 20:19:00 GMT
Received: from xmb-rcd-x09.cisco.com ([169.254.9.122]) by xhc-aln-x05.cisco.com ([173.36.12.79]) with mapi id 14.03.0123.003; Wed, 13 Nov 2013 14:19:00 -0600
From: "Fred Baker (fred)" <fred@cisco.com>
To: Richard Scheffenegger <rs@netapp.com>
Thread-Topic: [aqm] [tsvwg] Immediate ECN: Autotuning AQM for RTT
Thread-Index: AQHO4K2WdTQM8Xyau0qmjVP5kkPTjg==
Date: Wed, 13 Nov 2013 20:19:00 +0000
Message-ID: <2457257D-7DC7-4760-BAC2-EF46B8E04D45@cisco.com>
References: <201311111618.rABGILbC031136@bagheera.jungle.bt.co.uk> <CEA65B19.21ED5%g.white@cablelabs.com> <012C3117EDDB3C4781FD802A8C27DD4F25E8908F@SACEXCMBX02-PRD.hq.netapp.com> <E7D77F29-36BD-45FD-AE22-D90F2A687964@cisco.com>
In-Reply-To: <E7D77F29-36BD-45FD-AE22-D90F2A687964@cisco.com>
Accept-Language: en-US
Content-Language: en-US
X-MS-Has-Attach: yes
X-MS-TNEF-Correlator:
x-originating-ip: [10.19.64.121]
Content-Type: multipart/signed; boundary="Apple-Mail=_261738D0-DE20-459B-A0E9-2547D83D83F4"; protocol="application/pgp-signature"; micalg="pgp-sha1"
MIME-Version: 1.0
Cc: Greg White <g.white@CableLabs.com>, tsv-area IETF list <tsv-area@ietf.org>, tsvwg IETF list <tsvwg@ietf.org>, AQM IETF list <aqm@ietf.org>, Bob Briscoe <bob.briscoe@bt.com>
Subject: Re: [aqm] [tsvwg] Immediate ECN: Autotuning AQM for RTT
X-BeenThere: aqm@ietf.org
X-Mailman-Version: 2.1.12
Precedence: list
List-Id: "Discussion list for active queue management and flow isolation." <aqm.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/aqm>, <mailto:aqm-request@ietf.org?subject=unsubscribe>
List-Archive: <http://www.ietf.org/mail-archive/web/aqm>
List-Post: <mailto:aqm@ietf.org>
List-Help: <mailto:aqm-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/aqm>, <mailto:aqm-request@ietf.org?subject=subscribe>
X-List-Received-Date: Wed, 13 Nov 2013 20:19:29 -0000

On Nov 13, 2013, at 10:48 AM, Fred Baker (fred) <fred@cisco.com> wrote:

> With CoDel, the key issue is the sqrt. As the algorithm is described, it happens in the data path - upon interval expiration, a packet is dropped, and a new interval is calculated in inverse proportion to the square root of the number of drops since the dropping state was entered. I'll argue that the actual value could be calculated in the background and placed into a register to be copied to the interval register the next time a packet is actually dropped. The square root calculation itself can be pretty simple. Most chips these days have an instruction to tell you the bit number of the most significant "one" in a register, and have barrel shifters. OK, pick up the number, determine its most significant bit number, shift that right one bit (divide by two), shift the argument of the sqrt right the resulting number of bits, and then do one or two Newton-Raphston iterations. So a reasonable approximation to the sqrt can be implemented using RISC approaches.

The sort could also be implemented as a table, given some assumptions. use the number of drops since the epoch as an index and read the sqrt (or actually, the calculation that results from it). At some point, we reach the minimum interval that is acceptable - we are perhaps dropping every packet, or dropping some limit percentage. At that point, there isn't a real value in tracking the actual value, as the interval ceases decreasing.