From: Stephen Hemminger <shemminger@osdl.org>
To: Matthias Urlichs <smurf@smurf.noris.de>
Cc: Herbert Xu <herbert@gondor.apana.org.au>, netdev@vger.kernel.org
Subject: Re: TCP send/ack lockstep problem
Date: Fri, 01 Sep 2006 23:15:25 -0700 [thread overview]
Message-ID: <44F9217D.8030305@osdl.org> (raw)
In-Reply-To: <20060902055317.GA5567@kiste.smurf.noris.de>
Matthias Urlichs wrote:
> Hi,
>
> Herbert Xu:
>
>> Matthias Urlichs <matthias@urlichs.de> wrote:
>>
>>> Any ideas? Is the sending program doing something stupid? If so, what?
>>>
>> Probably. Since you're on the sender's side (192.109.x.x I presume) why
>> don't you do a strace on the sending process and tell us?
>>
>>
> The stuff I see in there doesn't look stupid to me.
>
> accept(...) = 216
> setsockopt(216, SOL_IP, IP_TOS, [8], 4) = 0
> setsockopt(216, SOL_TCP, TCP_NODELAY, [1], 4) = 0
> setsockopt(216, SOL_SOCKET, SO_KEEPALIVE, [1], 4) = 0
> followed by a bunch of "interactive" read() and write() calls, and then
> a rather long sequence of 16384-byte writes (all of which end up being
> partial because the send buffer size is 12k).
>
> so if one of these is the cause for the observed lockstep behavior when
> the send buffer is *full*, I'd consider that to be a bug.
>
> Interestingly, the *sender* advertizes window that's (a bit more than) one MTU:
>
> 07:47:03.204939 IP (tos 0x38, ttl 64, id 41217, offset 0, flags [DF], proto: TCP (6), length: 1468) 192.109.102.42.3306 > 62.193.238.120.53138: . 167089:168505 (1416) ack 0 win 1424 <nop,nop,timestamp 218027038 834794727>
>
> but that's the other direction -- is something in the kernel confused about
> which window variable to use ??
>
>
You could try turning off window scaling:
sysctl -w net.ipv4.tcp_window_scaling=0
If that fixes it, you have a corrupting middlebox in the path or bad
implementation on the other end.
Also try turning off tcp_abc (on the sender).
sysctl -w net.ipv4.tcp_abc=0
--
VGER BF report: H 0.050318
prev parent reply other threads:[~2006-09-02 6:15 UTC|newest]
Thread overview: 6+ messages / expand[flat|nested] mbox.gz Atom feed top
2006-09-01 21:48 TCP send/ack lockstep problem Matthias Urlichs
2006-09-02 2:46 ` Herbert Xu
2006-09-02 5:53 ` Matthias Urlichs
2006-09-02 6:14 ` Herbert Xu
2006-09-02 10:26 ` netdev-owner
2006-09-02 6:15 ` Stephen Hemminger [this message]
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=44F9217D.8030305@osdl.org \
--to=shemminger@osdl.org \
--cc=herbert@gondor.apana.org.au \
--cc=netdev@vger.kernel.org \
--cc=smurf@smurf.noris.de \
/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;
as well as URLs for NNTP newsgroup(s).