Re: Poor PPP performance in 2.2.x

Kris Karas (ktk@ktk.bidmc.harvard.edu)
Thu, 04 Feb 1999 16:50:04 -0500


Stephen Foskett wrote:

> There was some discussion of poor PPP performance in the 2.2.x
> I tried disabling DMA... I tried the other settings with hdparm, too,

There are *two* separate problems, and one other possibliity I'll mention,
here. One problem is interrupt latency that causes loss of serial bytes. The
IDE driver is the usual culprit for this one; but you have evidently ruled
that issue out, leaving some other piece of hardware as the likely culprit.
Perhaps an ethernet interface? Try looking at /proc/net/interrupts to see if
anything obvious appears. Any device in polled (PIO) mode is also suspect,
e.g. a printer port.

Another possibility (particularly if the pppd on the remote end is invoked
from a shell script) is that some other process is writing to the remote end's
/dev/ttySx. I was perplexed by these a few years ago until I found some
obnoxious mail notification programs were dumping output to the raw serial
line; since pppd had put an entry into utmp linking the tty to my login
account, the mail program found the line and wrote to it. But that doesn't
look as though it's your problem either.

The second problem I alluded to is a bona-fide bug in the 2.1/2.2 tcp
implementation. When the window size shrinks (as is the case when the modem
buffers lots of serial data), tcp will periodically forget to send packets. I
almost didn't believe it until I put a tcpdump on both ends of the connection
and observed the packet loss first hand. But in this scenario, there are no
errors reported by netstat/ifconfig, as the serial data itself has remained
intact. I'm still waiting to hear something from the network gurus on this
one.

Kris

-
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/