> -----Original Message----- > From: James Carlson [mailto:carlsonj@xxxxxxxxxxxxxxx] > Sent: 12. oktober 2010 17:19 > To: Arne Lie > Cc: wharms@xxxxxx; ppp Linux > Subject: Re: Using PPPD pty option and script: controlling stdin buffer > size? > > Arne Lie wrote: > > Walter, > > > > thanks, this could be the trick yes, we will have a look at that one! > > > > /Arne > > > >> -----Original Message----- > >> From: walter harms [mailto:wharms@xxxxxx] > >> Sent: 12. oktober 2010 16:31 > >> To: Arne Lie > >> Cc: ppp Linux > >> Subject: Re: Using PPPD pty option and script: controlling stdin > buffer > >> size? > >> > >> I am not sure if i understand you correctly, > >> but can change the bufferhandling of stdio by setting the buffer > size > >> using setbuf() (man 3 setbuf) > > That only does something if you're reading through the stdio functions > (e.g., fread(3C)), and not through the recommended section low-level > read(2) function. Using stdio to read/write from the master side of a > pty pair would be ... odd. [Arne::] "Stdio" was a mistyping from my side: I meant "stdin" and using low-level read all the way. > > If you're seeing unwanted buffering here, I think you'll need to modify > either the kernel's pty subsystem or the PPP line discipline that it's > using. > > I wouldn't recommend doing this, though. Buffering is generally a good > thing. If your application doesn't do sufficient congestion control to > avoid getting unacceptably stuck behind a long queue in the middle of > the network, then I'd call that a bug in the application, rather than a > problem with the network interface. > > -- > James Carlson 42.703N 71.076W > <carlsonj@xxxxxxxxxxxxxxx> [Arne::] With all the respect, congestion control needs normally packet loss due to traffic overload to respond correctly, yes? With the large buffering of stdin this do not happen before long... We're dealing with underwater networks with severely slow links and large propagation delays. We need relative short buffers to avoid seeing too big RTTs. Default PPP interfaces are set up with txqueuelen = 3, which is fine. However, when the *effective* queue size is this plus the stdin buffering, which we do not know the size of in bytes, but is in order of minutes (!) in RTT for such slow links, then it starts to get an annoyance. ÿô.nÇ·®+%˱é¥wÿº{.nÇ·¥{±þiþ)íèjg¬±¨¶Ýjÿ¾«þG«é¸¢·¦j:+v¨wèm¶ÿþø®w¥þ࣢·hâÿÙ