lkml.org 
[lkml]   [1999]   [Nov]   [16]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
SubjectRe: Skyhigh retransmit times. Yearold problem still in 2.3.26
On Sun, 14 Nov 1999, Steve Underwood wrote:

>> >
>> > netstat -ton
>> >
>> > tcp 0 0 127.0.0.1:1026 127.0.0.1:1027 ESTABLISHED off (0.00/0/0)
>> > tcp 0 0 204.179.131.123:1745 207.33.153.134:6667 ESTABLISHED on2 (7106.08/0/0)
>> > tcp 0 0 204.179.131.123:1023 207.33.153.134:22 ESTABLISHED on2 (6455.34/0/0)
>> >
>> > If there would at least be a command to reset those times to make the
>> > connection usable again.... This way I have to establish a new connection
>> > to the same host to do something usable.
>>
>> Once you get through again TCP will reset the timeouts itself as it
>> receives new ACKs.
>
>Whilst this is true, I think many people would describe a
>protocol that allows 2 hour retransmits as broken. Were its
>designers looking for reasonable results on links between the
>Earth and Mars?

Actually, I believe they were looking for reasonable results
with connections to Mars:

From tcp_timer.c:

tcp_retransmit_skb(sk, skb_peek(&sk->write_queue));

/* Increase the timeout each time we retransmit. Note that
* we do not increase the rtt estimate. rto is initialized
* from rtt, but increases here. Jacobson (SIGCOMM 88) suggests
* that doubling rto each time is the least we can get away with.
* In KA9Q, Karn uses this for the first few times, and then
* goes to quadratic. netBSD doubles, but only goes up to *64,
* and clamps at 1 to 64 sec afterwards. Note that 120 sec is
* defined in the protocol as the maximum possible RTT. I guess
* we'll have to use something other than TCP to talk to the
* University of Mars.
*
* PAWS allows us longer timeouts and large windows, so once
* implemented ftp to mars will work nicely. We will have to fix
* the 120 second clamps though!
*/
tp->backoff++;
tp->rto = min(tp->rto << 1, 120*HZ);
tcp_reset_xmit_timer(sk, TIME_RETRANS, tp->rto);

tcp_write_timeout(sk);



>This is quite a pain with TCP across unreliable media (e.g. the
>Internet). A broken path gets fixed after some significant
>downtime, but established connections take an age to pick up
>again. There has be a Better Way.

Hmm... Move to Mars? ;o)

--
Mike A. Harris Linux advocate
Computer Consultant GNU advocate
Capslock Consulting Open Source advocate

Join the FreeMWare project - the goal to produce a FREE program in
which you can run Windows 95/98/NT, and other operating systems.

http://www.freemware.org


-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.rutgers.edu
Please read the FAQ at http://www.tux.org/lkml/

\
 
 \ /
  Last update: 2005-03-22 13:55    [W:0.201 / U:0.044 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site