Received: by 2002:a25:8b91:0:0:0:0:0 with SMTP id j17csp1138416ybl; Thu, 12 Dec 2019 10:12:09 -0800 (PST) X-Google-Smtp-Source: APXvYqyYBOtkvzBy5vzRqYZVQqJmw5eX8Sg2KMxs/fHeTPhERe4vJeD6SgnFZ7iacQYmu9Oq3aMA X-Received: by 2002:a9d:ea6:: with SMTP id 35mr9301383otj.106.1576174329850; Thu, 12 Dec 2019 10:12:09 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1576174329; cv=none; d=google.com; s=arc-20160816; b=OqIqapXGLQpDtmym979TKT+3uAj1q9PUSWgGD5JCJ3YeUzEo54PVlvnLJzGHmIO5RE +WMsYNUrp3157iyHoHjk9kwSMvIKheLz8DHy8gh4VWX0ZCDQBfsL9cL9HYTLVp1/4rxJ 9UW4E4E32bqQ2cL+DOcMeIUojThwnJaYXUVibW1kXpJTSzuDpgGVptsg2F2fQo02+lni LOhC1gA5vYmyhZTVT0xBRUSGgkjbYBxG6/j3hkCZafUIoCEGhxKyTJhbTE/S7LEbqDh8 z/K2zy0dlYX2qbqGZB68qfBUhGZyWkqL4rNNjNg8oGs+kIPyMIdxjFbNwFAUkh+AzIJA JeGg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:content-transfer-encoding :content-language:in-reply-to:mime-version:user-agent:date :message-id:from:references:cc:to:subject:dkim-signature; bh=W4DxNw187O1EAJo02gwzf5htqxUEbPUyJC/3DQD2iQY=; b=q19dNQK5/9feMLZv1KrHuVF93+wVpC0vUioGtvDwq0t5zxi5HtC7oA8jrA3OLx0FN/ lLXwzGcwIhADBH3qTFcBAykLKTN9KEyA9/QN2AudR9d9916gpFM7jbYjbZcp13yY0XTz x7Icobsx7emstcDELcY9BUvqDf2SWTSVqvo1QGD0Cn3YGL1nw4I4NkDS7t5yaPYrPfak goy27lX1EUb3Uz2RAc/+y9Nz9WMaNpJgDGFuljRWSxP5Rh3qVI7xX0jlh4tbJP32kJQa vJP4lv/3Q+qNkc3ItYpthFwGwLZTYIPngFnXJr0ZHRsKx3Y2WcgFFOzNxoTRZL4/aQYK u6Tg== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@gmail.com header.s=20161025 header.b=pCaXtp0D; spf=pass (google.com: best guess record for domain of linux-wireless-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-wireless-owner@vger.kernel.org; dmarc=pass (p=NONE sp=QUARANTINE dis=NONE) header.from=gmail.com Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id 73si3580739otj.82.2019.12.12.10.11.58; Thu, 12 Dec 2019 10:12:09 -0800 (PST) Received-SPF: pass (google.com: best guess record for domain of linux-wireless-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) client-ip=209.132.180.67; Authentication-Results: mx.google.com; dkim=pass header.i=@gmail.com header.s=20161025 header.b=pCaXtp0D; spf=pass (google.com: best guess record for domain of linux-wireless-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-wireless-owner@vger.kernel.org; dmarc=pass (p=NONE sp=QUARANTINE dis=NONE) header.from=gmail.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1730293AbfLLSLS (ORCPT + 99 others); Thu, 12 Dec 2019 13:11:18 -0500 Received: from mail-pj1-f67.google.com ([209.85.216.67]:42295 "EHLO mail-pj1-f67.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1730080AbfLLSLS (ORCPT ); Thu, 12 Dec 2019 13:11:18 -0500 Received: by mail-pj1-f67.google.com with SMTP id o11so1351368pjp.9; Thu, 12 Dec 2019 10:11:17 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=subject:to:cc:references:from:message-id:date:user-agent :mime-version:in-reply-to:content-language:content-transfer-encoding; bh=W4DxNw187O1EAJo02gwzf5htqxUEbPUyJC/3DQD2iQY=; b=pCaXtp0DTq76T/ezGaA/mlo4xCd/tGp/Q7Ks3010zuHtPe/tcPi/6tZ3z2iFj/AMuZ m9E3Sez3iGFF+Sdtrla4sAaplJpE1FS+PKs/Gq1eMCNhwXb4ImfSvcFOs1HtjIW57seq 9LbnbtLrnUfot2+6GidLstNzIrx94oqMS38zIQp3fZLfsYQjvB4SJfOIn9V29qfFJgx6 BWDl4iNvypPv+sTbMvgvYUlfaWVRjAvrb7rM4OFC8IMvIgqkJL8XBC4A0uzDHsNKxq3o b23zqRB2/tbIA7FR3ShTOV6jWmOo+xeAZX/o17snlphnYYr4xfXhDYHF5ifU7RlebCXk SO5Q== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:subject:to:cc:references:from:message-id:date :user-agent:mime-version:in-reply-to:content-language :content-transfer-encoding; bh=W4DxNw187O1EAJo02gwzf5htqxUEbPUyJC/3DQD2iQY=; b=Uqty9gTtAGlQKmluY5T2UfgBy1ie/HBx+cMMph+Eg6fc7jmO3liwOVzjVlgkwppF2P aZtTnXvm2SVUeDUkuFSeB5sbtplJsPcN9dD9R2hMeTUxOKZt7wJvXYmg63RJeo7RmCwH wOzdOJesfGDm2rb/gK5Tc5wm8GlLQr2wiMEBgehfy/gpYRruBfHrK/wCowHr1h3yLg96 u+oJU09+cei5Ys346ROFect3OleTE/8I5fGl5mKiLsFi82vKn3CdaWNxz64EXkqidPa9 DyuPQuyUxlc4m5WMe5uTYMSgkOHiOXNVmSZmcDCjOIPnx+a2rDjm2KL+8XhSZjs5GA7m t/vQ== X-Gm-Message-State: APjAAAXLxvYsFZsEGyPnshUYnVLub/CoBBpGNYek96jNuWR6SvyIaRte YxoS+2GEKj9Q8IoEr9Y1jjX9SBYY X-Received: by 2002:a17:90a:3aaf:: with SMTP id b44mr11667502pjc.9.1576174277202; Thu, 12 Dec 2019 10:11:17 -0800 (PST) Received: from ?IPv6:2620:15c:2c1:200:55c7:81e6:c7d8:94b? ([2620:15c:2c1:200:55c7:81e6:c7d8:94b]) by smtp.gmail.com with ESMTPSA id g26sm7427542pfo.128.2019.12.12.10.11.15 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Thu, 12 Dec 2019 10:11:16 -0800 (PST) Subject: Re: debugging TCP stalls on high-speed wifi To: Johannes Berg , Neal Cardwell Cc: Eric Dumazet , =?UTF-8?Q?Toke_H=c3=b8iland-J=c3=b8rgensen?= , linux-wireless@vger.kernel.org, Netdev References: <14cedbb9300f887fecc399ebcdb70c153955f876.camel@sipsolutions.net> From: Eric Dumazet Message-ID: <99748db5-7898-534b-d407-ed819f07f939@gmail.com> Date: Thu, 12 Dec 2019 10:11:14 -0800 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:68.0) Gecko/20100101 Thunderbird/68.2.2 MIME-Version: 1.0 In-Reply-To: Content-Type: text/plain; charset=utf-8 Content-Language: en-US Content-Transfer-Encoding: 7bit Sender: linux-wireless-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-wireless@vger.kernel.org On 12/12/19 7:47 AM, Johannes Berg wrote: > Hi Neal, > > On Thu, 2019-12-12 at 10:11 -0500, Neal Cardwell wrote: >> On Thu, Dec 12, 2019 at 9:50 AM Johannes Berg wrote: >>> If you have any thoughts on this, I'd appreciate it. >> >> Thanks for the detailed report! > > Well, it wasn't. For example, I neglected to mention that I have to > actually use at least 2 TCP streams (but have tried up to 20) in order > to not run into the gbit link limit on the AP :-) > >> I was curious: >> >> o What's the sender's qdisc configuration? > > There's none, mac80211 bypasses qdiscs in favour of its internal TXQs > with FQ/codel. > >> o Would you be able to log periodic dumps (e.g. every 50ms or 100ms) >> of the test connection using a recent "ss" binary and "ss -tinm", to >> hopefully get a sense of buffer parameters, and whether the flow in >> these cases is being cwnd-limited, pacing-limited, >> send-buffer-limited, or receive-window-limited? > > Sure, though I'm not sure my ss is recent enough for what you had in > mind - if not I'll have to rebuild it (it was iproute2-ss190708). > > https://p.sipsolutions.net/3e515625bf13fa69.txt > > Note there are 4 connections (iperf is being used) but two are control > and two are data. Easy to see the difference really :-) > >> o Would you be able to share a headers-only tcpdump pcap trace? > > I'm not sure how to do headers-only, but I guess -s100 will work. > > https://johannes.sipsolutions.net/files/he-tcp.pcap.xz > Lack of GRO on receiver is probably what is killing performance, both for receiver (generating gazillions of acks) and sender (to process all these acks) I had a plan about enabling compressing ACK as I did for SACK in commit https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=5d9f4262b7ea41ca9981cc790e37cca6e37c789e But I have not done it yet. It is a pity because this would tremendously help wifi I am sure.