Announcing TCP/IP for RSX-11M-PLUS

Johnny Billquist bqt at
Tue Jun 30 06:46:28 CDT 2015

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
o UDP. The largest UDP packets supported are approximately
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
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


More information about the cctalk mailing list