A Modest Proposal

Jan 16, 2022

I have a modest proposal: I would like to see a HamWan-like network spanning the eastern seaboard, from (at least) Washington, DC into Nova Scotia.

Ok, maybe that’s not so modest.

Regardless, I envision hams running a high-speed microwave data network providing both IPv4 and IPv6, with multiple Internet peering points. This network would provide a true resource complex for radio amateurs, with hosts on the network providing a variety of services for research, experimentation, collaboration, and even emergency communications.

I imagine using this resource to interconnect AX.25 networks using this resource, providing AXUDP over the microwave network to interconnect low-speed packet networks.

With such infrastructure in place, we can begin to think about what the future might hold for amateur radio internetworking. Robert Quattlebaum, N6DRC, has designed a next generation link-layer protocol for amateur radio designed to directly support IP networking. Dubbed ARNGLL for “Amateur Radio Next-Generation Link-Layer”, this is roughly based on the 6LoWPAN standard for IPv6 connectivity for low-power devices. I have been working with him (slowly) in our mutual spare time to develop a reference implementation of the protocol and the associated ARNCE (Amateur Radio Numeric Callsign Encoding) specification, which describes how to convert callsigns into a numeric representation suitable for direct use as a station address.

An advanced future?

In the future, I envision a high-speed, long distance microwave amateur radio internetwork based on TCP/IP, peered with the Internet, with slow- and medium-speed devices connected with IP over ARNGLL and AX.25 tunneled over AXUDP.

The KZ2X Computing Resource Complex

Jan 16, 2022

So I have an AMPRNet allocation and a packet station. These are tremendous resources, but their existence immediately begs the question: what should I do with them?

In the post I made about AMPRNet, I mentioned the documentary film Computer Networks: The Heralds of Resource Sharing that goes into detail about the origins of the ARPNANET, the forerunner to today’s Internet. In that film, at about the 9:05 mark, is a quote from Frank Heart at Bolt, Beranek and Newman that I find fascinating:

As soon as the network began working, we really had a nationwide resource complex. And this resource complex was very attractive to many users who had no resource of their own to really contribute. These people wanted direct terminal access to the net even though they had no host to get that access through. So we designed a new kind of IMP; we called it a Terminal Interface Message Processor; we call it a TIP for short. And this machine really includes a very tiny mini-host. With this TIP, many different kinds of terminals can be directly connected to the TIP or can be dialed in through low-speed lines to the tip and can provide access to the entire nationwide resource pool to users at various kinds of terminals.

The critical, and intriguing thing here, is the realization that the ARPANET was designed to provide access to shared resources to its users. Later in the documentary, at roughly 15:06, Prof. Fernando J. Corbató, principle investigator of the MIT Multics project, goes on to say:

One of the things that is coming out as people begin to use the network more and more is that they must have, at the nodes of the network, computers which are of a Multics-like class, or essentially a major computer utility which is capable of manipulating information because the network itself doesn’t hold information, doesn’t keep information; an important design criteria, in fact.

That is, while the networks themselves provide access, it is important that they provide access to some kind of resource complex.

As hams, we’ve got networks: we have the AX.25 and NET/ROM packet network, and we have the AMPRNet. These are powerful means of communications, but what resources are available for use? What are we sharing on those networks? And how are we manipulating the information that traverses them?

As near as I can tell, most modern use of AX.25 is for NTS-style traffic handling. There’s certainly nothing wrong with that and it is undeniably useful, but what else? The AMPRNet seems mostly just not used.

We can do better.

Creating a Resource Complex.

I decided to approach this problem by creating my own complex of resources accessible to our networks. To start, I installed a modern computer running Unix on my AMPRNet segment. This machine is powerful: it has 16 Intel i7 threads, 64 GiB of RAM and a 1TB NVMe SSD. It runs DragonFly BSD, a derivative of 4.4BSD. I am happy to give accounts to other hams, and is accessible as kz2x.ampr.org.

I have also made this machine available for interactive use over AX.25 and NET/ROM. Connecting to the KZPAD:KZ2X-3 NET/ROM node or to KZ2X-1 on 145.090 MHz in the greater Boston area will allow hams to connect it, login, write and run programs, play games, send and receive local mail, access the Internet, etc.

This experiment was a tentative success: I have an RF-accessible networked timesharing system. But what else can one do?

Going back to Corbató’s comment about a major computing utility of a Multics-like class at the nodes of the network, I asked myself, “why not just provide access to Multics?”

And that’s what I’ve done. I set up an instance of Multics on an emulated Honeywell/Bull DPS8/M mainframe, and made it similarly accessible via AX.25 and TCP/IP. This worked surprisingly well, which then led to installation of a DECSYSTEM-20 running TOPS-20, a VAX 3900 running VAX/VMS, another VAX running 4.3BSD Unix, a PDP-11/93 running RSTS/E 10.1-L, a PDP-11/70 running 7th Edition Unix, a CDC Cyber 175 running NOS 2.8.7, and an IBM 4381 mainframe running VM/370. These machines are all virtualized on modern hardware, but are interconnected locally using both TCP/IP and DECnet, accessible from the Internet via AMPRNet, and accessible from AX.25 and NET/ROM via KZPAD:KZ2X-3.

Interestingly, since so many of these systems date from an era where computers were accessed via line-oriented terminal concentrators, using low-bandwidth serial lines and high-latency mechanical teletypewriters, they are very well suited for use in low-bandwidth, high-latency, high-loss RF environments like AX.25.

Here is an example of an interactive Multics session:

Multics MR12.7: KZ2X Computing Complex (Channel d.h001)
Load = 6.0 out of 90.0 units: users = 6, 01/16/22  1832.4 est Sun
l KZ2X
Password:
You are protected from preemption until 18:32.
KZ2X.Ham logged in 01/16/22  1832.5 est Sun from ASCII terminal "none".
Last login 01/13/22  0856.5 est Thu from ASCII terminal "none".
No mail.
r 18:32 0.766 54

ls -a

Segments = 6, Lengths = 5.

r w    1  skull.txt
r w    1  KZ2X.profile
r w    1  start_up.ec
r w    1  hello.pl1
       0  KZ2X.mbx
r w    1  KZ2X.value

Directories = 1.

sma  exec_com

r 18:32 0.037 0

who -lg

Multics MR12.7; KZ2X Computing Complex
Load = 7.0 out of 90.0 units; users = 7, 2 interactive, 5 daemons.
Absentee users = 0 background; Max background absentee users = 3
System up since 12/25/21  1512.1 est Sat
Last shutdown was at 12/25/21  1510.9 est Sat

    Login at      TTY  Load   User ID

12/28/21  21:41  none  1.0   Cross.SysEng
01/16/22  18:32  none  1.0   KZ2X.Ham

r 18:32 0.038 0

logout
KZ2X.Ham logged out 01/16/22  1833.0 est Sun
CPU usage 1 sec, memory usage 0.2 units, cost $0.07.
hangup
Multics has disconnected you

As far as I know, accessing Multics in this way over AX.25 is an historical first.

Similarly, here is TOPS-20 session in which I write a small Lisp program and run it interactively:

CONNECTING TO TOPS20
Trying 44.44.107.10...
Connected to tops20.kz2x.ampr.org.
Escape character is 'off'.

 KZ2X Twenex, PANDA TOPS-20 Monitor 7.1(21733)-4

--> Amateur Radio DECSYSTEM-20

This system is for authorized use only.  It is part of
the KZ2X amateur radio computing resource complex.  For
problems or questions, send email to root@kz2x.ampr.org.

@log KZ2X
 Job 9 on TTY44 vhf1.kz2x.ampr.org(TCP) 16-Jan-2022 18:58:18
  Last interactive login 16-Jan-2022 18:56:32
  Last non-interactive login Never
@dir

   TOPS20:<KZ2X>
 HELLO.CLISP.1
 LOGIN.CMD.1
 SKULL.TXT.1

 Total of 3 pages in 3 files
@type hello.clisp
(defun hello (who)
  (format t "Hello, ~A!~%" who))
@clisp

Uppsala Common Lisp, Version of 15-Dec-1987, (c) 1985, C. Hedrick
Please mail bugs and suggestions to BUG-CLISP@tops20.kz2x.ampr.org
Use (NEWS) to see what's new in this version.
CL>(defun hi (who)
     (format t "Hi, ~A~%" who))
HI
CL>(load "hello")
;Loading tops20.kz2x.ampr.org::TOPS20:<KZ2X>HELLO.CLISP.1 into package USER.
T
CL>(hello "Dan")
Hello, Dan!
NIL
CL>(hi "Amateur Radio")
Hi, Amateur Radio
NIL
CL>(pprint #'hi)

(LAMBDA (WHO)
  (BLOCK HI
    (FORMAT T "Hi, ~A~%" WHO)))
CL>(quit)
@sy
 Sun 16-Jan-2022 18:59:35  Up 99:59:13
 1+8 Jobs   Load av   0.01   0.01   0.01

 No operator in attendance

 System is remedial

 Job  Line Program  User              Origin
   9*   44  SYSTAT  KZ2X              vhf1.kz2x.ampr.org(TCP)

   1    13  OPR     OPERATOR
   2   DET  SYSJB1  OPERATOR
   3    14  RESOLV  OPERATOR
   4    15  NETSRV  OPERATOR
   5    16  SMTJFN  OPERATOR
   6    17  MMAILR  OPERATOR
   7    20  IMAPSV  OPERATOR
   8    21  FTS     OPERATOR
@logout
Killed Job 9, User KZ2X, TTY44 vhf1.kz2x.ampr.org, at 16-Jan-2022 18:59:40
 Used 0:00:00 in 0:01:21
Connection closed by foreign host.

HOST TOPS20 DISCONNECTED

As of today, the following hosts are available in the KZ2X Computing Resource Complex:

System Name     Description
UNIX x86_64 Unix Host
BSD VAX 3900 4.3BSD
V7 PDP-11/70 7th Edition Unix
RSTS PDP-11/93 RSTS/E
MULTICS DPS8/M Multics
VM IBM 4381 VM/CMS
VMS VAX 3900 VAX/VMS
TWENEX DECSYSTEM-20 TOPS-20 7.1 (Panda)
CYBER CDC 6600 series Cyber 175 NOS 2.8.7
 

[Note that the IBM mainframe isn’t directly accessible, as the 3270 protocol cannot be easily tunneled over AX.25. But it is accessible via AMPRNet.]

Conclusion

Using these systems in conjunction with amateur radio is not only fun, but it’s exciting. The things we can do with even antiquated systems with providing interesting, entertaining, and genuinely useful services to ourselves and served organizations is limited only by our imaginations and Part 97.

What other resources does it make to introduce into our amateur radio milieux?

On AMPRNet

Jan 15, 2022

Did you know that amateur radio operations have access to our own dedicated, globally accessible, IP network? We do! AMPRNet, sometimes colloquially called 44Net, is a large space of IP address space reserved exclusively for use by hams. It is administered by Amateur Radio Digital Communications, a non-profit organization dedicated to the advancement of amateur radio.

It is also a ridiculously underutilized resource. Every radio amateur ought to request an allocation; seriously, there is no reason not to, and most of the space is simply going to waste. Get your allocation now!

Brief History of the Internet and AMPRNet

In the beginning was the ARPANET, an experiment in wide-are packet-switched computer networking. Starting under the auspices of the US Department of Defense’s Advanced Research Projects Agency (ARPA), ARPANET was the prototype for what would become the modern Internet.

For background Information, I highly recommend the book, Where Wizards Stay Up Late: The Origins of the Internet by Katie Hafner and Matthew Lyon. Also, the contemporary 1972 documentary, Computer Networks: The Heralds of Resource Sharing gives a wonderfully prescient view into the early days of computer networking. The early ARPANET designers foresaw almost everything we take for granted on the Internet of today, including cloud computing!

The ARPANET project was a great success, and several years into it, the focus turned to inter-networking: that is, networking networks of computers, bridging them together into an inter-network, or “internet”. An intense period of research and design starting in the late 1970s lead to the development of the Internet Protocol suite in the 1980s. The so called TCP/IP suite consisted of a set of layered protocols with the the Internet Protocol and its adjacent Internet Control Message Protocol sitting on top of even lower-level device and link layer protocols, with the higher-level Transmission Control Protocol (TCP) and User Datagram Protocol (UDP) layered on top of IP. These formed the basis for application-level protocols such as TELNET and FTP on top of TCP, and the Domain Name Service on top of UDP. TCP/IP emerged as a US Department of Defense standard in 1983, with version 4 of the Internet Protocol (IP or IPv4).

As this was happening, a forward-thinking ham by the name of Hank Magnuski, KA6M, thought it might be interesting to try and use TCP/IP over amateur radio, so he wrote to Jon Postel, the Internet Assigned Numbers Authority at the time, asking for an IP network allocation for amateur radio. Postel gave the “class A” IP network 44 to Magnuski for experimental amateur radio use. Thus was born 44Net, so named because its IP addresses start with the number 44.

It’s probably worth mentioning at this point that IPv4 uses addresses that are always 32-bits long and divided into a host and network portion: the higher order bits define the network, and the low order bits identify a host on that network. In the historical Internet class-based routing scheme, a “class-A” network meant the first 8 bits were reserved for the network address, while the bottom 24 bits were the host portion; 24 bits allows 2^24 or roughly 16.7 million addresses. For comparison, addresses on the early ARPANET were limited to 256.

Since the Internet started out as a US government-funded research project, it was not initially approved for commercial use. However, the this changed during the Clinton administration, with the Telecommunications Act of 1996. Opening the Internet to commercial applications led to an explosion of use and accelerating demand for IP addresses, which soon became scarce. Various techniques were used to relieve the pressure on available IP address space, including the elimination of class-based routing and pervasive use of Network Address Translation (NAT), but demand for IPv4 increased exponentially and IP addresses became a very valuable commodity.

Through this time, we hams kept our allotment of the 44.0.0.0 network. Ownership of the segment moved from Magnuski through a series of individuals and culminated in the transfer to the Amateur Radio Development Corporation, forerunner of the modern ARDC. A group of volunteers took care of the administrative duties, allocating subnetworks to interested radio amateurs, establishing peering points with the rest of the Internet, etc.

However, AMPRNet remained an absurdly underutilized resource: out of the more than 16 million available address, never more than about 40,000 have been allocated; out of those allocated, only a fraction have been used (most hams are allocated a minimum of 256 addresses by default). As demand for IPv4 address space grew commercially, ARDC was sitting on a goldmine.

In 2019, ARDC made the decision to sell one quarter of the AMPRNet address space, at a rate of about USD $25 per IP address, or roughly $100 million USD. That money was then put into a non-profit, the present ARDC, for distribution to the community in the form of grants, scholarships, etc.

Hams never shying about from a good kvetch, this caused quite a kerfuffle in the 44Net community. However, the money is being put to good use, and in this author’s opinion, this was the most impactful thing to do with the space. Like our spectrum, we use it or lose it and we weren’t using it (hence why I encourage all hams to get an AMPRNet allocation!). As an aside, ARDC minimizes its tax burden by claiming the remaining 44Net address space as an asset they are distributing to hams: if that were not the case, they would basically have to keep selling parts of it off until it was gone. This is another reason to get an allocation if you don’t already have one!

For more details on the history of AMPRNet and the sale, the ARDC has put together a page.

So What Can I Do With It?

Okay, so I’ve convinced you that you want — nay, need — an AMPRNet allocation. You’ve headed on over to the 44Net wiki and learned how to get access to the portal and gotten yourself an allocation.

Next you set up a router running OpenBSD and configured it as an AMPR gateway. You’re passing traffic with other AMPRNet networks and the Internet. Congratulations!

Now what do you do with this?

It’s cliche, but essentially anything: the possibilities are nearly endless. You can basically set up a parallel Internet. For instance, you could send and receive email using the same standardized protocols used on the Internet at large, but without relying on commercial Internet infrastructure. Similarly, you can run web servers, login between AMPRNet attached hosts, tunnel AX.25 over IP over AMPRNet, provide instant messaging services, or make use of real-time communication using IRC or the venerable Unix talk program. Almost anything you can do on the Internet at large you can do on AMPRNet, as long as you follow applicable regulations when transmitting over RF. Real-time voice and streaming video? Yes! Your only limits are your imagination and part 97.

Example: HamWAN

That all sounds great in theory, but a real-world example might be illustrative. Consider the HamWAN reference implementation in the Seattle area: this is a high speed (multi-megabit) IP network covering a large chunk of western Washington State, and extending north into Canada: HamWAN covers from as far north as Vancouver in British Columbia, to parts of the Cacades Range and Mount Rainier National Park, to well south of Olympia. Another segment covers most of the Portland metro area in Oregon. Virtually all of Seattle and Tacoma is covered. That is an enormous area, all covered by a high-speed, amateur operated network that is mostly independent of the Internet.

Naturally, they use AMPRNet addresses.

What do they do with it? A partial list of applications includes:

  • High-definition realtime streaming video
  • APRS igates
  • Authoritative DNS service
  • High precision network time services (a stratum-1 NTP server)

Additionally, administrative services for the Puget Sound Data Ring network are handled on the network itself. For more details see their services page.

Conclusion

Get an AMPRNet allocation. No seriously, please, use the resource: if we don’t make use of it, we will lose it.

Wouldn’t you like to have a ham-centric parallel Internet that you could use for amateur radio? It’s already there.