public inbox for linux-kernel@vger.kernel.org
 help / color / mirror / Atom feed
From: Jamie Lokier <lk@tantalophile.demon.co.uk>
To: Andi Kleen <ak@muc.de>
Cc: "David S . Miller" <davem@redhat.com>,
	Alexey Kuznetsov <kuznet@ms2.inr.ac.ru>,
	linux-kernel@vger.kernel.org
Subject: Re: Excessive TCP retransmits over lossless, high latency link
Date: Sat, 1 Sep 2001 19:22:42 +0100	[thread overview]
Message-ID: <20010901192242.A2714@thefinal.cern.ch> (raw)
In-Reply-To: <20010901181729.A2204@thefinal.cern.ch> <20010901194141.44617@colin.muc.de>
In-Reply-To: <20010901194141.44617@colin.muc.de>; from ak@muc.de on Sat, Sep 01, 2001 at 07:41:41PM +0200

Andi Kleen wrote:
> On Sat, Sep 01, 2001 at 07:17:29PM +0200, Jamie Lokier wrote:
> > The appended "tcpdump -i ppp0 -n" trace shows an excessive number of
> > retransmits from the remote POP server.  The retransmits are triggered
> > by excessive duplicate ACKs from the local client.  By excessive, I mean
> > lots of retransmits of the same data.
> 
> The duplicate ACKs should not cause any retransmits (unless the sender
> is badly broken), because they contain a high enough ACK number.

We are receiving frames with sequence number <= the ACK we're sending.

When the remote end receives those ACKs, it is seeing a series of
duplicate ACKs for data it sent about 5 frames ago.  So of course it
retransmits the data starting from 5 frames ago.  As it receives a whole
series of the same duplicate ACK, it retransmits from the same place
each time.

I don't see what is broken about the remote end in this case.

> The problem is really that a TCP sender cannot recover from a too short RTT 
> estimate; if the RTT is longer and it doesn't get any acks it'll assume 
> packet loss and never has a chance to find out about the longer RTT, because
> that only works with new ACKs. 
> 
> The standard initial RTT is 3 seconds; but your RTT is 5.2s. 

Actually, 5.2s is the most common packet interarrival time.  The RTT is
more like 23s!

> What you can do is to change the initial RTT on the sender side. On Linux
> it can be done with the "irtt" option of route or the equivalent one of
> iproute2. Most other OS have a similar way to configure the IRTT. 

Unfortunately I cannot change the IRTT on my ISP's mail server, or for
that matter on anyone's web server.

Are you saying that the IRTT must be larger than the actual RTT, and the
estimates can only go down?  I thought IRTT was a rough guess and it
was expected to go either up or down.

-- Jamie

  parent reply	other threads:[~2001-09-01 18:28 UTC|newest]

Thread overview: 15+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2001-09-01 17:17 Excessive TCP retransmits over lossless, high latency link Jamie Lokier
2001-09-01 17:41 ` Andi Kleen
2001-09-01 18:12   ` kuznet
2001-09-01 18:22   ` Jamie Lokier [this message]
2001-09-01 19:07     ` Neil Spring
2001-09-01 18:08 ` kuznet
2001-09-01 18:55   ` Jamie Lokier
2001-09-01 19:20     ` kuznet
2001-09-01 20:02       ` Jamie Lokier
2001-09-01 20:39         ` Lukas Beeler
2001-09-03 17:14         ` kuznet
2001-09-03 17:57           ` Jamie Lokier
2001-09-03 18:07             ` kuznet
2001-09-01 19:59 ` Alan Cox
     [not found] <20010901195532.B2714@thefinal.cern.ch.suse.lists.linux.kernel>
     [not found] ` <200109011920.XAA20031@ms2.inr.ac.ru.suse.lists.linux.kernel>
     [not found]   ` <20010901210212.A3361@thefinal.cern.ch.suse.lists.linux.kernel>
     [not found]     ` <20010901223918.A4053@mail.projectdream.org.suse.lists.linux.kernel>
2001-09-01 21:45       ` 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=20010901192242.A2714@thefinal.cern.ch \
    --to=lk@tantalophile.demon.co.uk \
    --cc=ak@muc.de \
    --cc=davem@redhat.com \
    --cc=kuznet@ms2.inr.ac.ru \
    --cc=linux-kernel@vger.kernel.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