Re: [aqm] [tcpm] ACK Suppression

Mikael Abrahamsson <swmike@swm.pp.se> Fri, 09 October 2015 06:43 UTC

Return-Path: <swmike@swm.pp.se>
X-Original-To: aqm@ietfa.amsl.com
Delivered-To: aqm@ietfa.amsl.com
Received: from localhost (ietfa.amsl.com [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id 0EAD71B35ED; Thu, 8 Oct 2015 23:43:50 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -3.961
X-Spam-Level:
X-Spam-Status: No, score=-3.961 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, HELO_EQ_SE=0.35, RCVD_IN_DNSWL_MED=-2.3, SPF_PASS=-0.001, T_RP_MATCHES_RCVD=-0.01] 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 5w_OrAbyIkXs; Thu, 8 Oct 2015 23:43:48 -0700 (PDT)
Received: from uplift.swm.pp.se (swm.pp.se [212.247.200.143]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 87C851B35E5; Thu, 8 Oct 2015 23:43:47 -0700 (PDT)
Received: by uplift.swm.pp.se (Postfix, from userid 501) id DF227A1; Fri, 9 Oct 2015 08:43:44 +0200 (CEST)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=swm.pp.se; s=mail; t=1444373024; bh=fWNw1TX9/WKqOXCvxKZrRFHpmIithvRiM7Z+uCrRmns=; h=Date:From:To:cc:Subject:In-Reply-To:References:From; b=zPNiQ9VHdGUuE1jAYYsJhrb0ewVNGLDikxHzQBq3q0jxo4P3ujRKRsYDtpE4zFtTY fP54kjRCaRaP1E/phFWstajkUX037bwx2IFQ5nhAg4ANFGnOb8ndfhqpzVWngkaTnE TNJWhtznNwT1aa/cXFkPsdkTyQu/3NdA24V88lE8=
Received: from localhost (localhost [127.0.0.1]) by uplift.swm.pp.se (Postfix) with ESMTP id DA4A19F; Fri, 9 Oct 2015 08:43:44 +0200 (CEST)
Date: Fri, 09 Oct 2015 08:43:44 +0200
From: Mikael Abrahamsson <swmike@swm.pp.se>
To: David Lang <david@lang.hm>
In-Reply-To: <alpine.DEB.2.02.1510082121550.2943@nftneq.ynat.uz>
Message-ID: <alpine.DEB.2.02.1510090827240.8750@uplift.swm.pp.se>
References: <mailman.1487.1444233956.7953.aqm@ietf.org> <1444247538.3556484@apps.rackspace.com> <alpine.DEB.2.02.1510072200590.8750@uplift.swm.pp.se> <7A2801D5E40DD64A85E38DF22117852C8812629D@wdc1exchmbxp05.hq.corp.viasat.com> <06C46DC6-854F-4CDE-8C7B-745F3362FA9E@gmail.com> <alpine.DEB.2.02.1510071411400.29851@nftneq.ynat.uz> <E2035448-E688-4EF3-8BF7-02132D72D511@cisco.com> <fa0080678adcd392a8dfa237cbd77e49.squirrel@erg.abdn.ac.uk> <alpine.DEB.2.02.1510082121550.2943@nftneq.ynat.uz>
User-Agent: Alpine 2.02 (DEB 1266 2009-07-14)
Organization: People's Front Against WWW
MIME-Version: 1.0
Content-Type: TEXT/PLAIN; charset="US-ASCII"; format="flowed"
Archived-At: <http://mailarchive.ietf.org/arch/msg/aqm/f6pVzNOGWnEHwlyjQYnWMzypJ_w>
Cc: gorry@erg.abdn.ac.uk, "tcpm@ietf.org" <tcpm@ietf.org>, "dpreed@reed.com" <dpreed@reed.com>, "Fred Baker (fred)" <fred@cisco.com>, Jonathan Morton <chromatix99@gmail.com>, "aqm@ietf.org" <aqm@ietf.org>
Subject: Re: [aqm] [tcpm] ACK Suppression
X-BeenThere: aqm@ietf.org
X-Mailman-Version: 2.1.15
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: <https://mailarchive.ietf.org/arch/browse/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: Fri, 09 Oct 2015 06:43:50 -0000

On Thu, 8 Oct 2015, David Lang wrote:

> Ok, so it turns out that what we are talking about here is talked about 
> explicitly in section 5.2.1 of RFC3449. It warns of increased sender 
> burst sizes, but I really question if that's a valid concern in the 
> cases that we are talking about here. The choice in these cases isn't to 
> send more acks spaced out, but rather to send a lot of acks back to back 
> in one transmit slot vs one stretch ack per transmit slot.

Exactly. And in my specific case, we're talking 20kPPS of data down, and 
10kPPS of ACKs, over a medium that allows the modem to send a bunch of 
packets only once every few milliseconds.

So there are two alternatives:

You get approx 10-60 ACKs as a "train of ACKs" within 0.3 milliseconds, 
every 1-4 milliseconds.

You get 1-3 ACKs within 0.1ms, every 2-3 milliseconds. These ACKs will 
acknowledge 16-32 packets at a time.

By the nature of the beast, I'd say that this kind of medium implicitly 
will be able to handle the "bursts" we're talking about here, if you ACK 
24-48kilobyte of data per ACK (when a middle box does ACK Suppression to 
remove intermediate ACKs), it's implicit that the medium designers know 
that they can handle a wirespeed burst of data that is the result of the 
ACKing of these fairly large number of bytes.

But again, I question the wisdom in ACKing every 2 packets when the 
congestion window is in the hundreds of kilobytes and you're sending tens 
of thousands of packets per second.

I suggested in another part of the thread that perhaps the host itself 
should do ACK suppression and don't send ACKs more closely together than 
once per millisecond or 1/10th RTT, whatever is lower. Perhaps the RTT 
value needs to be even lower, 1/25 of RTT or something.

In my specific test, using once per millisecond or 1/25 of RTT would cut 
down the number of ACKs to around 2kpps instead of the 10kpps ACKs I see 
now, but it wouldn't cut it down to the around 500-1000 ACKs per second 
that the DOCSIS modem is cutting it down to...

I think that as bandwidths go up, there are changes to TCP that can be 
done to make it work better, and reducing the frequency of ACKs sent 
depending on RTT and different window sizes might be a way forward. I 
fully believe there are cases where ACKing every 2 packets is exactly the 
right way to go, but when you're sending 1 gigabit/s over 100ms RTT and 
the medium itself clumps the packets together because that's what it does, 
then these ACKs don't carry the same information anymore and some of them 
could be optimized away (preferrably by the host stack) to spare upstream 
bandwidth and transmit opportunities.

-- 
Mikael Abrahamsson    email: swmike@swm.pp.se