From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-10.6 required=3.0 tests=DKIMWL_WL_MED,DKIM_SIGNED, DKIM_VALID,DKIM_VALID_AU,HEADER_FROM_DIFFERENT_DOMAINS,MAILING_LIST_MULTI, SPF_PASS,USER_AGENT_GIT,USER_IN_DEF_DKIM_WL autolearn=ham autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id 364D4C282C0 for ; Fri, 25 Jan 2019 18:53:37 +0000 (UTC) Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by mail.kernel.org (Postfix) with ESMTP id F3EC5217D4 for ; Fri, 25 Jan 2019 18:53:36 +0000 (UTC) Authentication-Results: mail.kernel.org; dkim=pass (2048-bit key) header.d=google.com header.i=@google.com header.b="A/3ar0eS" Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1726284AbfAYSxf (ORCPT ); Fri, 25 Jan 2019 13:53:35 -0500 Received: from mail-pf1-f170.google.com ([209.85.210.170]:45952 "EHLO mail-pf1-f170.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1725778AbfAYSxf (ORCPT ); Fri, 25 Jan 2019 13:53:35 -0500 Received: by mail-pf1-f170.google.com with SMTP id g62so5129471pfd.12 for ; Fri, 25 Jan 2019 10:53:35 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20161025; h=from:to:cc:subject:date:message-id:mime-version :content-transfer-encoding; bh=1FfluFPFpJ2s+t07ClQ5Q3xyEVlZuxY49CLfsMa4j6I=; b=A/3ar0eSAUH/wr3aAiGj+92sHTQ1uBWpqj0tN0Eibi0PSIONyr2DPkE1p0nhe5uG8y 1eKCPXbJ/N+xtMCNEi4yqmzmO9CO1xp7VARtPw0IJRu4lX6ZBVzo422ROQgiyfSqyXPf auHP5kx+G9GxRc3rXi7DzTOPfGFYmKF/OLC0k85zltF9WDFjSglqo0744lweg5qBSd8j a33vs4oqOpxm+fQoDO8IE+8YwrzBGcXIMFNW+FjRj55YUqs5CMdpwGEyN2tKwspBLEYn UM75BsHtMNO+FoU8QjguBzUHsdiSE+OcyPdTP9njeaM79jdkkubNQ/1GAQ8NJUwbFNdS GYig== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id:mime-version :content-transfer-encoding; bh=1FfluFPFpJ2s+t07ClQ5Q3xyEVlZuxY49CLfsMa4j6I=; b=Nu9sa002Z9TNSxd/Adof2JziWgJ/o92qhbVQKck3vCFvoDV77n04n0Mf0UQoUvQXEb QhT0WjvJnNlaF6l2w97J2vWP2jhQmgLUblKRv2bwu5sKPkT6elKC5Nfdt8AjhVwi7F9N Hx6hBFdI0p+bS1QKPU6e1eBlIxZrI2m2FLAmRnsJuxsVrk05++Z4JOtSrTu3Klk+LfGG aoLbiDgu0FrbyRx2CtICIh0OOxl5IxUWJzlbNCtEXpCvSYMR2RnbKn2o12xBmQYYg+2n doY2/NqcTvqUfWxT3M0Q9yauHkBbpkroAn1cGEGdYnq842RQNoWCDD/pHjSDtwXTYYee JLzQ== X-Gm-Message-State: AJcUukfYT4D2bBS7MzfpDtpOEySGvDec0c3lO529502KBO94gqFXRtbj 2RKhxTnNV7m49gnS9ALBCgwOwA== X-Google-Smtp-Source: ALg8bN4cWjunQ/eBFzlHqeXQYy+XU3IM8h1VzyrkTkU7DCe71/UU1aPSxh+SMN5gxnZntXaCwqLSfQ== X-Received: by 2002:a63:cf48:: with SMTP id b8mr11177463pgj.17.1548442414194; Fri, 25 Jan 2019 10:53:34 -0800 (PST) Received: from localhost ([2620:15c:2c4:201:9310:64cb:677b:dcba]) by smtp.gmail.com with ESMTPSA id w128sm33130658pfw.79.2019.01.25.10.53.33 (version=TLS1_2 cipher=ECDHE-RSA-CHACHA20-POLY1305 bits=256/256); Fri, 25 Jan 2019 10:53:33 -0800 (PST) From: Wei Wang To: David Miller , netdev@vger.kernel.org Cc: Yuchung Cheng , Neal Cardwell , Eric Dumazet , Wei Wang Subject: [PATCH net-next 0/2] tcp: change pingpong to 3 in delayed ack logic Date: Fri, 25 Jan 2019 10:53:18 -0800 Message-Id: <20190125185320.164580-1-weiwan@google.com> X-Mailer: git-send-email 2.20.1.495.gaa96b0ce6b-goog MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Sender: netdev-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: netdev@vger.kernel.org TCP receiver today tries not to delay the ACKs to speed up the initial slow start (a.k.a QUICK ACK mechanism). However the previous design does not work well with modern TCP applications that starts with an application-level handshake. For example, a HTTPs server often receives the SSL hello and responds right away which triggers the TCP stack to stop the quick ack and start delaying the ACKs based only one instance of ping-pong. This patchset changes the threshold from 1 to 3 ping-pong transactions, so that we only start to delay the acks after the receiver responds data quickly three times. Wei Wang (2): tcp: Refactor pingpong code tcp: change pingpong threshold to 3 include/net/inet_connection_sock.h | 25 +++++++++++++++++++++++++ net/dccp/input.c | 2 +- net/dccp/timer.c | 4 ++-- net/ipv4/tcp.c | 10 +++++----- net/ipv4/tcp_input.c | 8 ++++---- net/ipv4/tcp_ipv4.c | 2 +- net/ipv4/tcp_output.c | 17 ++++++++++------- net/ipv4/tcp_timer.c | 4 ++-- net/ipv6/tcp_ipv6.c | 2 +- 9 files changed, 51 insertions(+), 23 deletions(-) -- 2.20.1.321.g9e740568ce-goog