[tcpm] Linux doesn’t implement RFC3465

Vidhi Goel <vidhi_goel@apple.com> Tue, 05 November 2019 22:08 UTC

Return-Path: <vidhi_goel@apple.com>
X-Original-To: tcpm@ietfa.amsl.com
Delivered-To: tcpm@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1]) by ietfa.amsl.com (Postfix) with ESMTP id E30A9120C15 for <tcpm@ietfa.amsl.com>; Tue, 5 Nov 2019 14:08:14 -0800 (PST)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -2.001
X-Spam-Level:
X-Spam-Status: No, score=-2.001 tagged_above=-999 required=5 tests=[BAYES_00=-1.9, DKIMWL_WL_HIGH=-0.001, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, HTML_MESSAGE=0.001, RCVD_IN_DNSWL_NONE=-0.0001, SPF_PASS=-0.001] autolearn=ham autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (2048-bit key) header.d=apple.com
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 7sTVpJQ_vMfx for <tcpm@ietfa.amsl.com>; Tue, 5 Nov 2019 14:08:13 -0800 (PST)
Received: from nwk-aaemail-lapp02.apple.com (nwk-aaemail-lapp02.apple.com [17.151.62.67]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by ietfa.amsl.com (Postfix) with ESMTPS id 2CFD0120C00 for <tcpm@ietf.org>; Tue, 5 Nov 2019 14:08:13 -0800 (PST)
Received: from pps.filterd (nwk-aaemail-lapp02.apple.com [127.0.0.1]) by nwk-aaemail-lapp02.apple.com (8.16.0.27/8.16.0.27) with SMTP id xA5LvAv3002380 for <tcpm@ietf.org>; Tue, 5 Nov 2019 14:08:12 -0800
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=apple.com; h=sender : from : content-type : mime-version : subject : message-id : date : to; s=20180706; bh=f5B4UHMfUqCsUAQT9HeLKM40PMd5aEgdwT473RH2Ghw=; b=ZtgWv1caYsY9mVwgJIVFj/RisO83JdI49SoBPuPwtbQW2xq3UioW/hzH7+uZleYJs7IT pJJoMgd31SWNfzx37XwuG8H02rXdwx78ZZpBEuuIZV3sOjel5nGw3cokKVhKtob4pV1X onlvvW1rivowrZswdvzlthxpS7lpFPwXlsQccThkbEbdZbJcoiPVi9gJtOOTdAyBGU/m jtyO3R/ZZ2ovVUHAf+8fb2Z16gM5sASM0oFKL7vIr2ZzL+oR8765qELOkdPYePv4nAB0 duzn3ZLKUpnXudV8uTJ0yYnwn8W6i8/+LBwVFdbH0JR4vUAUeErV5+onYUbxT/2w6DzZ aQ==
Received: from ma1-mtap-s02.corp.apple.com (ma1-mtap-s02.corp.apple.com [17.40.76.6]) by nwk-aaemail-lapp02.apple.com with ESMTP id 2w16cjs2pf-3 (version=TLSv1.2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128 verify=NO) for <tcpm@ietf.org>; Tue, 05 Nov 2019 14:08:12 -0800
Received: from nwk-mmpp-sz13.apple.com (nwk-mmpp-sz13.apple.com [17.128.115.216]) by ma1-mtap-s02.corp.apple.com (Oracle Communications Messaging Server 8.0.2.4.20190507 64bit (built May 7 2019)) with ESMTPS id <0Q0I00229O5IQM90@ma1-mtap-s02.corp.apple.com> for tcpm@ietf.org; Tue, 05 Nov 2019 14:08:06 -0800 (PST)
Received: from process_milters-daemon.nwk-mmpp-sz13.apple.com by nwk-mmpp-sz13.apple.com (Oracle Communications Messaging Server 8.0.2.4.20190507 64bit (built May 7 2019)) id <0Q0I00900O2E2R00@nwk-mmpp-sz13.apple.com> for tcpm@ietf.org; Tue, 05 Nov 2019 14:08:06 -0800 (PST)
X-Va-A:
X-Va-T-CD: 0dd5298a64b1f37164349b8f2c621797
X-Va-E-CD: 0615193077f65edcecfa897cfd1330b6
X-Va-R-CD: 461a6d9210f05d550542c9a09595375c
X-Va-CD: 0
X-Va-ID: ec33c325-a65c-4fdf-8cd9-de1cf8969ed2
X-V-A:
X-V-T-CD: 0dd5298a64b1f37164349b8f2c621797
X-V-E-CD: 0615193077f65edcecfa897cfd1330b6
X-V-R-CD: 461a6d9210f05d550542c9a09595375c
X-V-CD: 0
X-V-ID: d8f36ce0-937c-40ae-bc2f-febfc1a4b571
X-Proofpoint-Virus-Version: vendor=fsecure engine=2.50.10434:,, definitions=2019-11-05_08:,, signatures=0
Received: from vimac.scv.apple.com (vimac.scv.apple.com [17.192.171.33]) by nwk-mmpp-sz13.apple.com (Oracle Communications Messaging Server 8.0.2.4.20190507 64bit (built May 7 2019)) with ESMTPSA id <0Q0I00CO4O5I1H00@nwk-mmpp-sz13.apple.com> for tcpm@ietf.org; Tue, 05 Nov 2019 14:08:06 -0800 (PST)
Sender: vidhi_goel@apple.com
From: Vidhi Goel <vidhi_goel@apple.com>
Content-type: multipart/alternative; boundary="Apple-Mail=_482B5C72-A5D5-4E31-B7CD-8D447A4F5514"
MIME-version: 1.0 (Mac OS X Mail 13.0 \(3578.1\))
Message-id: <78EF3761-7CAF-459E-A4C0-57CDEAFEA8EE@apple.com>
Date: Tue, 05 Nov 2019 14:08:06 -0800
To: tcpm@ietf.org
X-Mailer: Apple Mail (2.3578.1)
X-Proofpoint-Virus-Version: vendor=fsecure engine=2.50.10434:, , definitions=2019-11-05_08:, , signatures=0
Archived-At: <https://mailarchive.ietf.org/arch/msg/tcpm/YWVAFXaxDmlI4ZNhW3sR_2ifXHk>
Subject: [tcpm] =?utf-8?q?Linux_doesn=E2=80=99t_implement_RFC3465?=
X-BeenThere: tcpm@ietf.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: TCP Maintenance and Minor Extensions Working Group <tcpm.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/tcpm>, <mailto:tcpm-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/tcpm/>
List-Post: <mailto:tcpm@ietf.org>
List-Help: <mailto:tcpm-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/tcpm>, <mailto:tcpm-request@ietf.org?subject=subscribe>
X-List-Received-Date: Tue, 05 Nov 2019 22:08:19 -0000

Hi All,

RFC 3465 suggests to increase the congestion window by the number of previously unacknowledged bytes ACKed by each ACK limiting the increase to L (L = 2MSS or 1MSS in certain conditions). The limiting factor L helps to avoid the large bursts that could occur due to stretch ACKs, ACK loss or compressed ACKs (GRO/GSO).

But, when I looked at Linux source code, it implements one aspect of ABC (byte counting to defend from ACK attacks) but doesn’t  “cap” the increase to L. 
 https://github.com/torvalds/linux/blob/master/net/ipv4/tcp_cong.c#L385 <https://github.com/torvalds/linux/blob/master/net/ipv4/tcp_cong.c#L385>

This is a bit confusing. How should we address this discrepancy?


Thanks,
Vidhi