home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Hacker Chronicles 2
/
HACKER2.BIN
/
604.PACKET1.INT
< prev
next >
Wrap
Text File
|
1986-04-02
|
9KB
|
156 lines
SIG/Access: TYP PACKET.INT
INTRODUCTION to PACKET RADIO
------------ -- ------ -----
Radio amateurs in Canada, Sweden, and the United States have
been experimenting with packet radio, a system of computer-based
communications. This new mode can provide high-speed communication
with efficient use of the spectrum, and is resistant to inter-
ference due to other stations and to signal degradation due to
adverse band conditions. Not only can packet radio be used for
informal amateur QSO's and traffic handling, but it has additional
possibilities for exchange of data between hams with computers,
"bulletin boards" and message systems, and remote computer
programming.
WHAT IS PACKET RADIO?
Packet radio is a communication system in which information is
digitally encoded. In this respect it is similar to RTTY or ASCII,
but with important differences. These differences are the key to
insuring error-free reception and at the same time allowing max-
imum use of the spectrum through shared frequency use.
Data integrity is provided by packet radio through a "hand-
shaking" technique and error detection. Along with each trans-
mission, a computed value called a "frame check sequence" (FCS)
is sent, which allows the receiving station to check for errors.
The receiving station acknowledges an error-free packet with a
special acknowledgement (ACK) signal. If the sending station does
not receive such a signal within a certain period of time, it
automatically retransmits the packet.
A packet also contains identification of the destination
station, permitting several QSO's to take place on the same
frequency. A packet radio station can automatically ignore any
packets which are not addressed to it. Due to the fact that the
duration of most packet transmissions is very short, a user does
not need the channel most of the time. The time between trans-
missions is available to other users on frequency. This system is
called time-domain multiplexing. On a very busy channel, the user
will notice an increased delay time before getting replies to
transmissions, but the packet radio equipment will take care of
automatic retransmissions and sorting out the replies meant for
the station. The user never "hears" the QRM.
WHAT IS A PACKET RADIO STATION?
Packet radio requires the use of a microprocessor-based con-
troller at each station, and it will obviously appeal to the
ham who already has a computer in his shack. However, it does
not require that the operator be a programmer, or even that the
station have a personal computer. All that is really nec-
essary is a terminal, a terminal node controller (TNC), and an
amateur radio transceiver.
The terminal can be a simple display (CRT) or typewriter
terminal that produces ASCII characters, a personal computer,
or even a commercial mainframe computer. What you need is a
terminal with a keyboad to allow you to talk and a screen or
a printer to allow you to read incoming information. You can
even get an inexpensive terminal that uses a TV set for the
display.
The way in which most terminals encode ASCII characters is
in "asynchronous" format. SInce characters are encoded as they
are typed, there is a flag consisting of one or more "mark"
(binary 1) values to mark the beginning and end of each char-
acter. The device decoding the characters expects a specific
"baud rate", or number of transitions from "mark" to "space"
(binary 0) per second during the character, but no particular
time interval between characters themselves.
The terminal node controller is the heart of the packet
radio system. It has one port that is connected to the term-
inal or computer, and communicates through it by asynchronous
ASCII format at the baud rate required by the terminal. The
TNC converst the data stream from the terminal to a packet
by attaching a "header" showing the destination of the packet
and control information for the network, a "tail" containing
the result of the FCS calculation for error detection, and
flags to mark the beginning and end of the packet.
The second port of the TNC connects it to the trans-
ceiver microphone and speaker audio lines, and the PTT line.
Ordinarily, the TNC will produce AFSK modulation by putting
one of two tones into the microphone input, corresponding
to a "mark" or "space". In this fashion, the packet is sent
out on the air at the packet channel baud rate, which is
unrelated to the terminal baud rate at the other port of
the TNC.
The receiving TNC reverses this procedure, decoding the
audio tones from the speaker audio line of the radio, re-
moving and reading the header and tail information, and
passing a successfully received packet to the terminal at
the terminal baud rate.
The part of the TNC that does the translation between the
sequence of tone levels and the characters is called a
"modem", short for MOdulator-DEModulator. This device may or
may not be built into the TNC board. Most packet radio
modems operate at 1200 baud, which corresponds to about 1200
wpm, although the FCC now authorizes much higher baud rates
on some amateur bands. The audio tones used are 1200 hz and
2200 hz. This choice of frequencies is that of the Bell 202
modem, which is available as surplus.
The final component of a packet radio station is an
amateur radio transceiver. Most packet radio activity so far
has been in the 2-meter band. The only important requirement
of the radio is that its audio frequency response at 2200
hz be adequate. In other words, the 2-meter FM rig you
already have is probably just fine.
WHAT THE TNC DOES
The TNC consists of a special purpose microcomputer, con-
taining all the necessary software and hardware to communicate
with your terminal, assemble a packet, operate your trans-
mitter and receiver to send and receive a packet, and decode
a packet. The special functions of the TNC which would be
difficult to implement with an ordinary personal computer are
the use of protocol to communicate with other TNC's and
real-time control.
The encoding and decoding of packets involves a carefully
standardized set of procedures called "protocol". The proto-
col basically determines the exact form of the header and tail
parts of the packet. The header allows receiving TNCs to auto-
matically determine the purpose of the packet, e.g., net
check-in, part of a QSO, or ACK to a previous transmission. The
tail contains the FCS which allows the TNC to automatically
determine whether the packet was received correctly, and if so,
to automatically acknowledge it. Since the protocol is pro-
grammed into the TNC, the operator does not need to know exactly
what his packet looks like. In particular, he does not need to
know how the destination of his packet is indicated. The oper-
ator communicates with other amateurs by call sign, and the
TNC translates the call sign into the identification required
by the protocol.
The TNC is required to perform a number of tasks simultan-
eously, including responding to events such as the receipt of
a packet or instructions from the operator in "real time", in
other words, as they happen. This makes programming in BASIC,
the common language of personal computers, undesirable. This
is because BASIC use┬ an "interpreter" which reads each line
of the program and translates it into machine-type instructions
every time the line is executed. The time required for the
translation would prevent a program from responding rapidly
enough in a packet radio environment. In order to meet the
speed requirement, an assembly-language program or equivalent
is required. While BASIC looks pretty much the same on any
computer, assembly language is different for every machine.
If the TNC were replaced by personal computers, program dev-
elopment would have to be redone for each variety of com-
puter. In addition to maintaining the right pace, the TNC also
must be constantly "listening" at both ports simultaneously
while putting packets together or taking them apart. The
hardware of personal computers may not even be capable of this
sort of multi-task application.
Programming of individual TNC's must be as easy as possible,
since there will inevitably be unforseen problems in the
initial software. In addition, hardware changes may necessitate
software changes. For this reason, TNCs are designed around
erasable programmable read-only memories (EPROM's), which
normally function like the ROM of a personal computer, where
the vital software is storaed in an indestructible form.
However, if the need arises, they can be reprogrammed by
"burning in" the new program using special equipment.