Announcing TCP/IP for RSX-11M-PLUS

Johnny Billquist bqt at
Wed Aug 26 08:44:45 CDT 2015

Close to two months since my last official release, so I figure it's 
time I do another one.

So - there is a new release of BQTCP/IP. I strongly encourage anyone who 
uses this software to upgrade.

A short list of changed:
. TCP have been rewritten to not use any system pool at all.
   Even the small amount previously used added up when a lot of
   traffic was going on.
   At the same time, IPPOOL usage for connections have also decreased,
   as memory is only allocated when needed for transmissions. This
   also lead to the ability to have larger transmit buffers.
. A new HELP file have been included for some help in general.
   If installed, you can see information through HELP/IP
. FTP rate calculation was slightly wrong. Fixed now.
. Various included tasks have now been built without the need for
   language specific resident libraries so that they can be used
   on any system.
. TCP could disconnect sessions erroneously under some circumstances.
. Telnet daemon can give more comprehensive welcome messages now.
. WWW server CGI scripts could cause the web connection to close
   even though the script was not finished. Fixed.
. The SPOOF detection/prevention now will not block the DNS server.
. Improved response times for TCP connection establishment.
. If a daemon created a task, and the task never picked up the
   connection that came in, the socket was left in a broken state.

As usual, the distribution is available from:

The documentation is also available through ftp on Madame, or also at

Right now, I don't know what the next project will be. Some testing and 
improvements. But I probably need to take a step back and look at the 
bigger picture. Do anyone have any special wishes (and don't say SSH or 
IPv6 :-) ).

Oh, and as a icing on the cake, (or 
telnet:// will lead you to a real, physical 
PDP-11/70 running this software. Magica have been on the internet in the 
past, but she has been down for quite some time. But I'm happy to 
announce that the machine is starting to live again.


On 2015-06-30 13:46, Johnny Billquist wrote:
> I'm happy to announce a new release of TCP/IP for RSX-11M-PLUS.
> Since I'm broadening the scope of the announcement slightly, a more
> complete list of features is included, and not just what changed since
> last. For anyone who is currently running TCP/IP for RSX, I strongly
> encourage you to update to this latest version. Several improvements
> have gone in in the last couple of weeks. Most important change is that
> there now is telnet support, both client and server side.
> The TCP/IP for RSX that I've written is sometimes referred to as
> BQTCP/IP, just to make clear that it is a different product than Process
> Software's TCPWARE, or JSA's TCP/IP.
> BQTCP/IP is a rather feature rich TCP/IP implementation, which also
> comes with libraries for various high level languages. The API is not
> compatible, even at the source level, with Unix, but on the other hand,
> if people write some code, they will see that it is a very easy API to
> work with. The reasons for the incompatibilities are several, including
> both resource concerns and differences between how RSX works and Unix
> like operating systems.
> BQTCP/IP has tried to comply with all relevant RFCs, but I'm sure there
> are corners where it does not do things right. It also does not demand
> much resources. It do require RSX-11M-PLUS with split I/D space, and it
> has only been tested properly on RSX-11M-PLUS V4.6. It should work on
> any version 4 release of RSX-11M-PLUS, but there might be a couple of
> tweaks or fixes needed.
> BQTCP/IP is distributed in binary form, so very little compilation is
> required to get it up and running. However, pretty much all utilities do
> come with sources. The actual TCP/IP stack sources are not included. I
> do not have a good setup for distributing them in a sane way, and it has
> had a low priority on my list of things to do. But I do not mind
> distributing the sources as a general principle.
> All that said, BQTCP/IP current supports the following protocols:
> o Ethernet and loopback interfaces.
> o ARP. BQTCP/IP can use Ethernet in co-existance with DECnet, or
>    standalone using the provided Unibus ethernet device driver.
> o IP. The largest IP packets supported are approximately
>    8KB.
> o ICMP.
> o UDP. The largest UDP packets supported are approximately
>    8KB.
> o TCP. The window is approximately 8KB in size, and TCP do
>    manage out of order packets in an efficient way.
> BQTCP/IP supports the following applications:
> o DHCP. DHCP can be used to configure interface addresses, network
>    masks, default gateways, DNS servers and NTP servers dynamically.
> o NTP. NTP can be used to set the local time.
> o TELNET. The TELNET server hooks in to the standard TT: terminal
>    driver, and the number of terminals to create is configurable.
>    The TELNET client can be used to connect to other systems.
> o FTP. The FTP server can serve all kind of files to other RSX
>    systems, and can serve text and binary files to any system.
>    The FTP client can retrieve RSX format files from RSX servers,
>    and text, binary and block format files from any system.
> o TFTP. The TFTP server and client can be used for simpler file
>    transfer operations.
> o RWHOD. RWHOD is a program that reports current users and uptime
>    from RSX, for other systems to collect.
> o IRC. IRC is a program to communicate with other users around
>    the world.
> o IRCBOT. IRCBOT is a small example robot program connecting to IRC
>    and performing a service for IRC users.
> o PCL. PCL is a protocol for printing, used by HP (and other) printers
>    over a network. The PCL implementation in BQTCP/IP appears as a
>    print symbiont, which you can create a printer queue for.
> o WWW. WWW (or World Wide Web) is a service that can present hypertext
>    information to clients. The WWW server in BQTCP/IP also supports CGI,
>    which makes it possible to create dynamic content.
> o DNS. BQTCP/IP have DNS implemented as an ACP, that anyone can query
>    to get translations between IP addresses and domain names. It also
>    supports different users using different name servers, or private
>    translations.
> o SINK. A standard TCP service.
> o ECHO. A standard TCP service.
> o DAYTIME. A standard TCP service.
> o QUOTD. A standard TCP service.
> o IDENTD. A standard TCP service.
> BQTCP/IP also have automatic IP spoof detection and prevention.
> Additional tools are IFCONFIG, PING, TRACEROUTE, NETSTAT as well as two
> new pages for RMD.
> High level language libraries exists for BASIC+2, PDP-11 C and FORTRAN-77.
> I'm sure I have forgotten a thing or three, but that's a fairly
> comprehensive list.
> The documentation is a weak point, but there is hopefully enough
> documentation to get people running, and I am happy to answer any
> questions, or give support if needed. BQTCP/IP is already running on the
> internet, and have been for a while. People who are curious to check it
> out can ether look at, or telnet to
> telnet:// and login as user GUEST with password
> GUEST, or use ftp against Anonymous ftp
> account exist.
> As usual, the distribution is available from:
> The .tap file is an RSX virtual tape. It is only possible to download
> and use if you are using FTP from anther RSX system and fetch the file.
> The .dsk files are virtual RL02 images that are useful both from within
> RSX as well as through emulators.
> The documentation is also available through ftp on Madame, or also at
>      Johnny

More information about the cctech mailing list