From: Rick Jones <rick.jones2@hp.com>
To: Hubert Tonneau <hubert.tonneau@fullpliant.org>
Cc: "David S. Miller" <davem@davemloft.net>,
shemminger@osdl.org, romieu@fr.zoreil.com, kuznet@ms2.inr.ac.ru,
netdev@oss.sgi.com
Subject: Re: 2.6.10 TCP troubles -- suggested patch
Date: Fri, 11 Feb 2005 14:54:27 -0800 [thread overview]
Message-ID: <420D37A3.6020209@hp.com> (raw)
In-Reply-To: <0525M9211@server5.heliogroup.fr>
Hubert Tonneau wrote:
> Sorry, it still does not work, unless I made a mistake:
> Linux 2.6.9 takes 15 seconds to copy 105 MB to Mac OSX
> Linux 2.6.10 with the TCP patch below still takes 325 seconds to do the same.
>
> You can pick the new tcpdump report, created through:
> tcpdump -i eth1 ip host 10.107.96.230 -w /tmp/dump-2.6.10-tcp2
> at http://fullpliant.org/pliant/browse/file/archive/dump-2.6.10-tcp2.gz
>
> Here is the connection summary:
>
> Dell PowerEdge 2600 (dual Xeon with hyper threading) running libsmbclient
> on Linux 2.6.x, IP for eth1 (Intel pro 1000) is 10.107.96.7 (full
> duplex, flow control is enabled)
> |
> |
> gigabit switch
> |
> |
> 100 Mbps switch
> |
> |
> Mac running Samba server on OSX,
> IP is 10.107.96.230
"Cooking" the trace with tcpdump -ttt to give the relative timestamdps makes
things look like Mac OSX has an ACK avoidance heuristic in it? I figured there
was one in their OX <= 9 stack that came from a third-party, wasn't sure if they
put that into their OSX stack - IIRC that one is not from the third-party.
FWIW, there are two or three other stacks that have ACK avoidance heuristics as
well, it isn't an OSX only thing.
000780 10.107.96.230.139 > 10.107.96.7.32801: P 753:822(69) ack 1556 win 65535
<nop,nop,timestamp 1709240657 534173> NBT Packet (DF)
000579 10.107.96.7.32801 > 10.107.96.230.139: . 1556:3004(1448) ack 822 win 1460
<nop,nop,timestamp 534175 1709240657> NBT Packet (DF)
000027 10.107.96.7.32801 > 10.107.96.230.139: . 3004:4452(1448) ack 822 win 1460
<nop,nop,timestamp 534175 1709240657> NBT Packet (DF)
000005 10.107.96.7.32801 > 10.107.96.230.139: . 4452:5900(1448) ack 822 win 1460
<nop,nop,timestamp 534175 1709240657> NBT Packet (DF)
074685 10.107.96.230.139 > 10.107.96.7.32801: . ack 5900 win 62268
<nop,nop,timestamp 1709240657 534175> (DF)
delack above
000012 10.107.96.7.32801 > 10.107.96.230.139: . 5900:7348(1448) ack 822 win 1460
<nop,nop,timestamp 534249 1709240657> NBT Packet (DF)
000003 10.107.96.7.32801 > 10.107.96.230.139: . 7348:8796(1448) ack 822 win 1460
<nop,nop,timestamp 534249 1709240657> NBT Packet (DF)
000002 10.107.96.7.32801 > 10.107.96.230.139: . 8796:10244(1448) ack 822 win
1460 <nop,nop,timestamp 534249 1709240657> NBT Packet (DF)
000002 10.107.96.7.32801 > 10.107.96.230.139: . 10244:11692(1448) ack 822 win
1460 <nop,nop,timestamp 534249 1709240657> NBT Packet (DF)
200024 10.107.96.230.139 > 10.107.96.7.32801: . ack 11692 win 56476
<nop,nop,timestamp 1709240658 534249> (DF)
and again above.
000010 10.107.96.7.32801 > 10.107.96.230.139: . 11692:13140(1448) ack 822 win
1460 <nop,nop,timestamp 534449 1709240658> NBT Packet (DF)
000004 10.107.96.7.32801 > 10.107.96.230.139: . 13140:14588(1448) ack 822 win
1460 <nop,nop,timestamp 534449 1709240658> NBT Packet (DF)
000002 10.107.96.7.32801 > 10.107.96.230.139: P 14588:16036(1448) ack 822 win
1460 <nop,nop,timestamp 534449 1709240658> NBT Packet (DF)
000022 10.107.96.7.32801 > 10.107.96.230.139: . 16036:17484(1448) ack 822 win
1460 <nop,nop,timestamp 534449 1709240658> NBT Packet (DF)
000004 10.107.96.7.32801 > 10.107.96.230.139: P 17484:18192(708) ack 822 win
1460 <nop,nop,timestamp 534449 1709240658> NBT Packet (DF)
000994 10.107.96.230.139 > 10.107.96.7.32801: . ack 18192 win 65535
<nop,nop,timestamp 1709240658 534449> (DF)
0
And then other cases where the ACK seems to take a rather long time to arrive,
seems to correlate a bit with slowly increasing numbers of segments before the
ACK is sent, and something along the lines of a 200 millisecond delayed ACK timer.
In some cases at least if the sender does not completely fill cwnd the ACKs will
be delayed. And IIRC under 2.6.10 with TSO enabled, the sender does not always
fill cwnd.
hth,
rick jones
next prev parent reply other threads:[~2005-02-11 22:54 UTC|newest]
Thread overview: 40+ messages / expand[flat|nested] mbox.gz Atom feed top
2005-02-11 21:55 2.6.10 TCP troubles -- suggested patch Hubert Tonneau
2005-02-11 22:54 ` Rick Jones [this message]
2005-02-11 23:09 ` Nivedita Singhvi
2005-02-11 23:40 ` Rick Jones
2005-02-12 1:08 ` David S. Miller
2005-02-12 1:09 ` David S. Miller
2005-02-12 14:31 ` Alexey Kuznetsov
2005-02-12 19:28 ` David S. Miller
2005-02-12 19:44 ` Leonid Grossman
2005-02-12 19:52 ` Alexey Kuznetsov
2005-02-15 23:25 ` David S. Miller
2005-02-12 20:19 ` rick jones
2005-02-12 20:28 ` David S. Miller
2005-02-12 20:56 ` Alexey Kuznetsov
2005-02-12 21:27 ` Nivedita Singhvi
2005-02-12 21:43 ` rick jones
2005-02-12 22:00 ` Alexey Kuznetsov
2005-02-13 1:29 ` rick jones
2005-02-11 23:04 ` Stephen Hemminger
2005-02-12 1:07 ` David S. Miller
2005-02-12 12:11 ` Andi Kleen
2005-02-12 19:23 ` David S. Miller
2005-02-12 21:30 ` Andi Kleen
2005-02-12 14:16 ` Alexey Kuznetsov
2005-02-12 19:41 ` David S. Miller
2005-02-12 20:03 ` Alexey Kuznetsov
2005-02-15 23:26 ` David S. Miller
2005-02-15 23:42 ` Rick Jones
2005-02-15 23:23 ` David S. Miller
2005-02-16 9:13 ` Alexey Kuznetsov
2005-02-16 17:50 ` David S. Miller
-- strict thread matches above, loose matches on Subject: below --
2005-02-20 23:06 Hubert Tonneau
2005-02-16 20:00 Hubert Tonneau
2005-02-13 10:52 Hubert Tonneau
2005-02-14 14:12 ` Alexey Kuznetsov
2005-02-10 21:53 Hubert Tonneau
2005-02-10 22:36 ` Rick Jones
2005-02-11 1:16 ` David S. Miller
[not found] <050QTJA12@server5.heliogroup.fr>
2005-02-09 18:59 ` Stephen Hemminger
2005-02-09 20:25 ` David S. Miller
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=420D37A3.6020209@hp.com \
--to=rick.jones2@hp.com \
--cc=davem@davemloft.net \
--cc=hubert.tonneau@fullpliant.org \
--cc=kuznet@ms2.inr.ac.ru \
--cc=netdev@oss.sgi.com \
--cc=romieu@fr.zoreil.com \
--cc=shemminger@osdl.org \
/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).