From: Hagen Paul Pfeifer <hagen@jauu.net>
To: Tom Herbert <therbert@google.com>
Cc: David Miller <davem@davemloft.net>,
andi@firstfloor.org, shemminger@vyatta.com,
netdev@vger.kernel.org, ycheng@google.com, lars.eggert@nokia.com
Subject: Re: [PATCH] tcp: Socket option to set congestion window
Date: Thu, 27 May 2010 21:19:44 +0200 [thread overview]
Message-ID: <20100527191944.GD2728@nuttenaction> (raw)
In-Reply-To: <AANLkTime8wfTLfdNMAx_HYr6XO0DiO12r5FVdGBjVNwT@mail.gmail.com>
* Tom Herbert | 2010-05-27 09:14:09 [-0700]:
>"When web browsers open simultaneous TCP connections to the same
>destination, they are working against TCP's congestion control
>mechanisms"
Right, the problem can applied for other protocols as well. Often p2p
protocols behave unfair. This problem is known, but there is currently no
IETF effort to address the problem. The problem is not that simple and it is
difficult to draft a universal statement.
>I have yet to find any paper on CWND that analyzed the effect of this
>phenomena on the Internet which is quite unfortunate. In our own full
>scale experiments
>(http://code.google.com/speed/articles/tcp_initcwnd_paper.pdf), we
>anlayzed the effects of using larger initial congestion windows on the
>Internet which might be the closest thing to such an analysis. I know
>in LEDBAT WG of IETF they are trying to come up with new
>recommendations for number of connections a browser can open, this is
>good but I hope it's not after the fact.
I know your paper and if I remember correctly I was a little bit sceptical
about the efforts to analyze the fairness behavior in deep. It takes one day
to validate the fairness issues: take NS3 (with NSC so you can take the Linux
network stack with your patch), setup a dumpbell topology and analyse the
behavior. I will read the paper one more time.
I had no problem with you patch if you apply this patch on top of it: ;-)
diff --git a/net/ipv4/tcp.c b/net/ipv4/tcp.c
index 0ca9832..73f9d46 100644
--- a/net/ipv4/tcp.c
+++ b/net/ipv4/tcp.c
@@ -2371,7 +2371,7 @@ static int do_tcp_setsockopt(struct sock *sk, int level,
break;
case TCP_CWND:
- if (sysctl_tcp_user_cwnd_max <= 0)
+ if (sysctl_tcp_user_cwnd_max <= 0 || !capable(CAP_NET_ADMIN))
err = -EPERM;
else if (val > 0 && sk->sk_state == TCP_ESTABLISHED &&
icsk->icsk_ca_state == TCP_CA_Open) {
HGN
next prev parent reply other threads:[~2010-05-27 19:19 UTC|newest]
Thread overview: 21+ messages / expand[flat|nested] mbox.gz Atom feed top
2010-05-26 5:01 [PATCH] tcp: Socket option to set congestion window Tom Herbert
2010-05-26 5:08 ` Stephen Hemminger
2010-05-26 5:52 ` David Miller
2010-05-26 7:06 ` Tom Herbert
2010-05-26 7:33 ` David Miller
2010-05-26 17:33 ` Andi Kleen
2010-05-26 17:41 ` Denys Fedorysychenko
2010-05-26 21:08 ` David Miller
2010-05-26 21:27 ` Andi Kleen
2010-05-26 22:10 ` David Miller
2010-05-26 22:29 ` Rick Jones
2010-05-27 7:57 ` Andi Kleen
2010-05-26 23:15 ` Hagen Paul Pfeifer
2010-05-27 3:04 ` David Miller
2010-05-27 7:08 ` Hagen Paul Pfeifer
2010-05-27 7:28 ` David Miller
2010-05-27 7:46 ` Hagen Paul Pfeifer
2010-05-27 16:14 ` Tom Herbert
2010-05-27 18:56 ` Andi Kleen
2010-05-27 19:19 ` Hagen Paul Pfeifer [this message]
2010-05-27 8:00 ` Andi Kleen
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20100527191944.GD2728@nuttenaction \
--to=hagen@jauu.net \
--cc=andi@firstfloor.org \
--cc=davem@davemloft.net \
--cc=lars.eggert@nokia.com \
--cc=netdev@vger.kernel.org \
--cc=shemminger@vyatta.com \
--cc=therbert@google.com \
--cc=ycheng@google.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox