> I don't see what is broken about the remote end in this case.
The remote end is probably not broken, at least in this
case. This looks like an artifact of a disgustingly
large queue, and a very slow link. When the time to
transmit tiny packets in the initial handshake is much
smaller than the time to transmit a full size frame,
retransmission timers can get confused. A complete trace
would settle this.
I strongly recommend setting the mtu of your ppp0 interface
down to 576 (or smaller) to reduce the time it takes to
transfer a full size frame, decrease the likelihood that
frames suffer corruption, and allow acknowledgements more
often than every 5 seconds. This is a setting in your ppp
configuration, don't do this using ifconfig.
Don't take my word for it, see RFC1144, section 5.2: a
good MTU is chosen so that a full size frame is transferred
in 200ms.
RFC1144, written by Van Jacobson:
To illustrate, note that for a 9600 bps line with
header compression there is essentially no benefit
in increasing the MTU beyond 200 bytes: If the MTU is
increased to 576, the average delay increases by 188%
while throughput only improves by 3% (from 96 to 99%).
Besides, if you do what you propose (not ack old data with the
next byte expected) you risk stalling the connection entirely.
-neil
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
This archive was generated by hypermail 2b29 : Fri Sep 07 2001 - 21:00:12 EST