[net.micro.cpm] MODEM Protocols

BEC.SHAPIN@usc-ecl@sri-unix.UUCP (10/05/83)

From:  Ted Shapin <BEC.SHAPIN@usc-ecl>

In regard to the Aug 14 message of Richard Foulk, Honolulu regarding
a faster protocol, the following contribution is from Harold Price.
- - - - - - -
Thoughts on a faster transfer protocol than the Christensen
protocol.

First, increasing the frame size will increase thruput only if
the bit error rate of the transmission medium is low enough.
Obviously, not only does a 1k frame take longer to resend, but
it is a bigger target for a line hit.  Error rate aside, larger
frames is the only way to increase thruput as long as two other
things remain unchanged, the line is treated as half duplex, and
only one frame is sent at a time.

If more than one frame is sent at once, the number of
turnarounds can be reduced.  A fancy error recovery scheme can
take care of retransmission of damaged frames.  The number of
frames sent before line turnaround depends on the memory buffer
size of the destination machine, assuming that the destination
can't write to disk and read the data at the same time, and on
the error rate of the transmission line.  A line with no errors
and a destination with infinite memory would require no
turnarounds.

The problem of how many frames to send is solved if the line can
be treated as full duplex.  In this mode, frame n is acknowledged
while frame n+1 is being transmitted.  This is very efficient,
the only overhead is the frame number and checksum.  This method
would also promote simultaneous two way data transfer, the
acknowledgment of an incoming frame can be piggy-backed on the
next outgoing frame.

Suprisingly enough, such a scheme has already been defined.  In
general, such a thing is called a sliding window protocol.  A
good example of one is LAPB, a protocol which forms the basis for
level 2 of the X.25 network standard.  LAPB can be used as the
transmission protocol for an efficient two-way file transfer
scheme.  It is somewhat more difficult to implement than the
MODEM7 protocol which has grown out of Christensen's work, but
not too much so.

Several implementations of LAPB for micro computers have been
done as part of the growing "packet radio" movement in Amateur
Radio.  The protocol is called AX.25, since it is modeled on
X.25.  AX.25 is the protocol which is currently recommended for
use in amateur terrestrial networks as well as space based
transmisson modes using the recently launched OSCAR-10 high earth
orbit satellite.  AX.25 will also be used for PACSAT, an orbiting
mailbox system with 4MB of on-board memory, due to be launched in
1986.

AX.25 implementations exist for 6809, Z80, and 8085 systems,
several of these are implemented in C or Pascal.  They are not
currently configured as "file transfer" programs, but as more
generalized "data transfer" processors.  A high level file
transfer module can easily be added.


To move on to the subject of tampering with a defacto standard,
there are now enough "commercial" file transfer packages around
using the Christensen protocol that it is unlikely to die.
Because of the off the shelf nature of these packages, most users
can't or won't tweak their program or add features to it.  If
they use a new protocol it will be because they bought it or
someone gave it to them.  My point is as long as you've got to do
a complete replacement anyway, don't limit yourself to thinking
in terms of a slight modification to the existing MODEM programs.
Go the whole way and get the most out of your connect time, use a
sliding window protocol with simultaneous two-way capability.

Drop a working model off at each RCPM system you encounter and
encourage the SYSOP to make it available on his system.  There
are, or course, commercial packages available that use sliding
window full duplex protocols, and other efficient protocols, so
if you have enough $$ you can buy these for the systems you
interact with most.  I would recommend looking into the AX.25
work that has already been done.  Most of it is in the public
domain.

For more info you can contact me at the address below, or any of
the amateur radio groups working on AX.25, ARRL, AMSAT, TAPR.
The addresses of these organizations can be found in any of the
more recent amateur magazines, QST, 73, and Ham Radio.

Harold Price, NK6K
PACSAT Project Manager
1211 Ford Ave
Redondo Beach, CA  90278

-------

rjh@ihuxh.UUCP (Randolph J. Herber) (10/19/83)

You may want also to look into HASP (IBM OS/360) Multi-leaving protocol.
It has similiar capacities to piggy-back responses and handle two-way
data flow. And, it could ease communication with IBM-compatible mainframes.

Randolph J. Herber, ..!ihnp4!ihuxh!rjh.