From patchwork Thu May 28 13:02:37 2020 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Florian Westphal X-Patchwork-Id: 1299789 Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@bilbo.ozlabs.org Authentication-Results: ozlabs.org; spf=none (no SPF record) smtp.mailfrom=lists.01.org (client-ip=2001:19d0:306:5::1; helo=ml01.01.org; envelope-from=mptcp-bounces@lists.01.org; receiver=) Authentication-Results: ozlabs.org; dmarc=none (p=none dis=none) header.from=strlen.de Received: from ml01.01.org (ml01.01.org [IPv6:2001:19d0:306:5::1]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (No client certificate requested) by ozlabs.org (Postfix) with ESMTPS id 49Xnty0ZXtz9sSF for ; Thu, 28 May 2020 23:03:20 +1000 (AEST) Received: from ml01.vlan13.01.org (localhost [IPv6:::1]) by ml01.01.org (Postfix) with ESMTP id 9266B122C8663; Thu, 28 May 2020 05:58:59 -0700 (PDT) Received-SPF: Pass (mailfrom) identity=mailfrom; client-ip=2a0a:51c0:0:12e:520::1; helo=chamillionaire.breakpoint.cc; envelope-from=fw@breakpoint.cc; receiver= Received: from Chamillionaire.breakpoint.cc (Chamillionaire.breakpoint.cc [IPv6:2a0a:51c0:0:12e:520::1]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)) (No client certificate requested) by ml01.01.org (Postfix) with ESMTPS id 6993E122C85FF for ; Thu, 28 May 2020 05:58:56 -0700 (PDT) Received: from fw by Chamillionaire.breakpoint.cc with local (Exim 4.92) (envelope-from ) id 1jeIBk-0008QX-1f; Thu, 28 May 2020 15:03:12 +0200 From: Florian Westphal To: Date: Thu, 28 May 2020 15:02:37 +0200 Message-Id: <20200528130239.16498-1-fw@strlen.de> X-Mailer: git-send-email 2.26.2 MIME-Version: 1.0 Message-ID-Hash: HNCXBUD6TALWA66IBX4RRMEAUPNA6BZM X-Message-ID-Hash: HNCXBUD6TALWA66IBX4RRMEAUPNA6BZM X-MailFrom: fw@breakpoint.cc X-Mailman-Rule-Misses: dmarc-mitigation; no-senders; approved; emergency; loop; banned-address; member-moderation; nonmember-moderation; administrivia; implicit-dest; max-recipients; max-size; news-moderation; no-subject; suspicious-header X-Mailman-Version: 3.1.1 Precedence: list Subject: [MPTCP] [PATCH mptcp-next 0/2] mptcp: add receive buffer auto-tuning List-Id: Discussions regarding MPTCP upstreaming Archived-At: List-Archive: List-Help: List-Post: List-Subscribe: List-Unsubscribe: This patch adds rx buffer auto-tuning. In oder to better test this, the first patch extends the test script so it can be run multiple times with identical file size. Furthermore, the new '-t' switch allows to always to tcp fallback and even tcp <-> tcp tests. The expectation here is that there is little to no difference in transfer time between mptcp <-> mptcp and tcp-only transfers. Without the second patch, there is significant difference when delay is used due to the missing rx autotuning. The new mptcp tune function is very similar to the tcp one, except that it uses the highest rtt of any subflow. Its also needed to adjust the subflow rcvbuf: if that is not done, there are backlog drops at the subflow level (default rx buffer on my vm is only 128kb, which doesn't provide enough 'cushion' until work queue can drain the ssk queue).