[HECnet] DECnet for Linux

Johnny Billquist bqt at softjar.se
Thu Feb 8 14:24:32 PST 2018


Hi.

On 2018-02-08 19:07, Erik Olofsen wrote:
> To come back to the connection to MIM described below, it seems
> to be related to an unnecessary congestion issue.
> 
> When connecting to a node, a configuration message contains
> the remote buffer size. MIM/RSX returns 2086.

Oh, we're talking about file transfers.

> Accordingly, dnprogs' libdap/connection.cc:set_socket_buffer_size
> sets
> 
>    setsockopt(sockfd, SOL_SOCKET, SO_RCVBUF, &blocksize, sizeof(blocksize))
> 
> and likewise for SO_SNDBUF, as per protocol. But this triggers "on/off"
> flow control in the kernel module; the overhead to have a packet in the
> decnet socket buffers is such that the above blocksize is too small,
> even when it is doubled by default by the kernel - especially with
> the low value of 2086. Increasing it with (in exchange_config())
> 
>    set_blocksize(min(MAX_READ_SIZE, cm->get_bufsize()<<1));
> 
>    (or perhaps just set_blocksize(MAX_READ_SIZE); ?)
> 
> helps a lot. Note that the kernel module and VMS announce "no flow control"
> (apart from "on/off"), and RSX uses "Session Control Message" flow control,
> which the kernel module implements for outbound data, so having
> the buffers perhaps too large may not be too problematic.
> 
> PS: For creating a decnet.conf the 'dncopynodes' utility may be used.

I can't see how it could ever be problematic to use different buffers on 
the Linux end compared to the remote node. I'm even maybe a bit 
surprised that Linux tries to set it's buffers based on what RSX use.
RSX uses buffer sizes that makes sense for RSX, given the constraints of 
the OS and hardware.

   Johnny

> 
> 
> On Wed, Jan 03, 2018 at 04:02:19PM +0100, Erik Olofsen wrote:
>> On a virtual machine with lubuntu 12.04, kernel 3.2.0, I have
>> DECnet for Linux V.2.5.68s working, with dnprogs version 2.65.
>> It is node RULLFL.
>>
>> The daemons and utilities use decnet.conf with node information,
>> so something useful would be to create it from mim::nodenames.dat.
>>
>> On a VAX, TYPEing it works well, but on the Linux machine, dntype
>> hangs after giving parts of the file; dndir mim:: works well.
>>
>> Does anyone have dntype mim::nodenames.dat working properly (with
>> perhaps different versions of the above)?
>>
>> Thanks!
>>

-- 
Johnny Billquist                  || "I'm on a bus
                                   ||  on a psychedelic trip
email: bqt at softjar.se             ||  Reading murder books
pdp is alive!                     ||  tryin' to stay hip" - B. Idol


More information about the Hecnet-list mailing list