Home » Linux Magazine » Hamming It Up On Linux

Hamming It Up On Linux

Brian A. Lantz

Issue #13, May 1995

In an effort to corrupt the readers of Linux Journal, Brian asks you to take a pair of hypothetical binoculars (preferable of the “X-ray” genre so popular in old comic books) and become a “Peeping Tom” with him, looking into two very different homes.

The first house has something very different about it, seen even without the binoculars. You can see a 50-foot tower looming high into the sky. On the structure are scores of antennas in every size and shape imaginable. As you “peer” into the den of the house, you see more electronic equipment than you would expect to find at the local radio station. There are dials, lights, LEDs, and meters of every kind. There are the sounds of Morse code, static, and eerie-sounding human (human?) voices. The man at the equipment has a microphone in front of him, and in his right hand there is a telegraph operator’s key.

Now, moving to the second house, we see a typical home, like you’d expect in Anytown, USA. Nothing unusual as we approach it. So get out the binoculars! (Come on, get into the shadows. Someone will see us!)

In the den of this home, we find an ordinary-looking man sitting at his personal computer. His eyes seem a bit bleary, but he seems to be enjoying whatever it is that he is doing. Looking closer, you can see that the operating system is obviously Linux, as he swaps virtual consoles at the speed of light. But then he stops on one VC which seems to be an IRC-type chat group, but instead of “handles”, each VC is identified by a cryptic series of letters and numbers…

Okay, put the binoculars down. What do these two men have in common? They are both amateur radio operators. And amateurs have been migrating to Linux in remarkable numbers. In this article, I’ll try to give the non-amateur a feel for why this is occurring, from an insider’s viewpoint (yes, I’m one of them: KO4KS is my amateur radio callsign).

What is the Amateur Radio Service?

Without getting into the nitty-gritty details of it, the countries of the world cooperate together to provide radio spectrum for use by licensed operators for experimentation, public service, and just plain fun!

Amateurs have a wide variety of radio-related ways to enjoy their hobby. There is the traditional Morse code, shortwave, as well as local voice communications. In addition, among others, there are satellite communications, participation with the space program, and something called packet radio.

What is Amateur Packet Radio?

Most of you have probably seen e-mail addresses in the “ampr.org” domain. These are addresses of amateur radio operators, using packet radio. But how did they get on the Internet? Don’t get ahead of me….

Packet radio is described by some as Ethernet over radio (though Ethernet used to be described as packet radio over wire). Anything you can do over Ethernet can be done over packet. Packet operators and programmers have been highly involved in many Internet RFCs as they have found ways around the problems encountered in using radio in this manner.

Packet radio uses a variation of the X.25 protocol called AX.25 (Amateur X.25). Their radios are connected to their computers with a little packet modem.

Initially, the “killer app” of packet radio was the Packet BBS (PBBS). PBBSs are pretty crude by today’s BBS standards, but they pass messages internationally by means of thousands of individually owned radio sites that relay the mail, hop by hop along the way. Some packet PBBSs have HF (“High Frequency”–which, paradoxically, is at the very low end of the frequencies used for packet radio) ports for passing the mail over longer hops, but most hops are only a few miles each.

Then, several years ago, Phil Karn/KA9Q wrote a program called NET, to incorporate AX25 and TCP/IP together on computers running MS-DOS. As time progressed, NET became NOS (Network Operating System), which was now a multi-threaded application allowing multiple incoming and outgoing sessions. I am told that some commercial manufacturers have licensed the KA9Q code as a base for their development, and many of the new and modified protocols have made their way into commercial wireless TCP/IP networks.

Phil made his code available freely to amateurs and for educational purposes and even has allowed variations to spring up. There are many “xNOSs”, such as WNOS, JNOS, PMNOS, etc. and others that I’m sure I missed. I’m a little partial to Tampa NOS (TNOS), since I am the one who has developed this variation.

This interest in TCP/IP leads very naturally to Linux, but even more so when you consider the limitations of a program like xNOS under MSDOS. Good ol’ DOS doesn’t have a linear memory map, TCP/IP or multitasking built in. And it does have the 640K conventional memory barrier. It also requires dedicating a computer to xNOS under DOS.

Packet Radio Meets Linux

Linux is a good move for xNOS, since the DOS-related restrictions are gone. A couple of xNOSs have already been ported to Linux, including TNOS. Those interested can find it at ftp.lantz.com:/tnos/current/linux. For Web slingers, try www.lantz.com.

NOS under Linux is still a large program, with all of the same features as the DOS version, including its own TCP/IP stack. You can connect TNOS to the Linux TCP/IP stack by means of a ptty SLIP or PPP link.

Amateur Radio TCP/IP is passed over the real Internet by Amateur gateways. These gateways exist both on the Internet and on the local packet network. Other non-gateway Amateur packet stations can pass packets through the gateway to Amateur stations on the other side of distant gateways. This is done by encapsulating the 44.xx.xx.xx addresses (addresses assigned to the ampr.org domain) into “real” Internet addresses for passing through the backbones.

An Amateur TCP/IP Gateway Tour

In visiting a TNOS system, you will find many things that are familiar. Various core Internet protocols are supported, such as FTP, SMTP, POP, ICMP. Many familiar applications, like finger, can also be found.

You will find things that are new, too. A telnet connection, rather than a login to a shell program, will find you placed in a Packet Bulletin Board System. You will find specialized information servers and other goodies.

And then there are conference bridge applications. These are the amateur radio equivalant of IRC. You could be “chatting” with amateurs around the world.

I said “could” because most Amateur Radio gateways are secured very heavily: partly for the same reasons that you would secure your system on the Internet, and also because Amateur Radio operators have certain laws to which they are held accountable regarding the content of the information transmitted over their radios.

What Next?

AX.25 support has been added to the Linux kernel, and it is maturing quite well, thanks to the efforts of Alan Cox and several others. As this becomes more and more usable, the large xNOS applications will probably become history, with their unique functions becoming stand-alone daemon programs which will run in the background. Several TNOS-specific features have already been made into stand-alone programs. Additional Internet services will become readily available via Amateur Radio, e.g. Gopher, World Wide Web, NNTP, etc.

So, expect to see increasing numbers of Amateur Radio operators coming to Linux. You can take this as a welcome addition, as they are some of the most innovative and technologically sound individuals to be found. Now, when you read magazine articles that say that both the Internet and wireless technologies are on the increase, maybe you will have a better understanding as to why.

Brian A. Lantz has been a software developer in embedded and multi-user systems for the last 15 years, specializing in device drivers, communications and networking. Aside from being employed by Utility Partners, Inc., in Tampa, FL, he spends most of his idle time hacking on Linux, helping with the local Amateur Radio network and running an amateur radio gateway to the Internet. Sleeping is attended to occasionally. He welcomes your comments, sent to brian@lantz.com.