From: rbharding@yuggoth.org (Ron Harding)
Newsgroups: comp.sys.amiga.datacomm
Subject: Re: Modem Terminology is Confusing
Distribution: world
X-NewsSoftware: GRn 1.16e (7/4/92) by Mike Schwartz & Michael B. Smith
Date: 22 Dec 92 20:52:40 EST
Organization: The Leningrad Carrot Conspiracy

In article <Bzo8y3.M4H@news.cso.uiuc.edu> ja51359@uxa.cso.uiuc.edu (axelrod) writes:
> Could someone please explain in a followup message what the various protocols
> mean?  i.e. what is v.42/v.32, what do the various MNP levels mean?  Is a
> 14.4K bps modem really 14.4K on purely random data?  What are the capabilities
> of each protocol when sending data both directions at the same time?
> 
> Thanks,
> Jeff

Snicker.  Very confusing indeed.  Somebody has fucked up royally with the
names.  Anyway, here's the info:


V.32    : method for transmitting raw data at 9600 bps full-duplex (both
          directions at once.)

V.32bis : method for transmitting raw data at 14400 bps full-duplex.

HST 9600    : method for transmitting raw data at 9600 bps in one direction,
              and 2400 bps in the other direction.  A short delay is required
              to the turn the line around.  This is usually not a problem
              in most terminal sessions or while downloading, since data flow
              is quite lopsided in either case.  Unfortunately, it's
              proprietary to US Robotics, and only found in their modems.
              It's quite common now, but with the increasing popularity of
              V.32xxx modems, I think HST's days are numbered.

HST 16800   : I don't know anything about this.  Only heard of it a couple
              days ago.  Probably still proprietary.

V.42    : error-control protocol.  Should simulate an error-free connection.
          Also known as LAPM (Link Access Procedure for Modems).

V.42bis : data compression protocol.  Achieves up to 4x compression, giving
          a max throughput of 57600 bps using V.32bis.  Also known as BTLZ 
          (British Telecom Lempel Ziv).

MNP2-4  : Various error-control protocols.  I don't know the differences
          between them.  "Microcom Network Protocol"

MNP5    : data compression protocol.  Achieves up to 2x compression.
          Unfortunately it hurts your throughput if you try to send
          uncompressible data through it.

In addition to that list, there are also fax protocols, about which I know
very little.

A V.32 modem can achieve 9600 bps even on random or compressed data.  A 2400
bps modem using V.42bis, even though you may set your terminal program to
9600 bps, can only achieve 9600 bps with very compressible data.  Like a
file of all zeroes.

In many cases, you don't need to put all your eggs in one protocol basket.
Hayes Optima 144 supports everything up there except the HST standards, and
optionally FAX protocols..  The US Robotics HST Dual Standard supports at 
least HST and the V.32 suite, and probably others but I don't know for
certain.

Since we're on the subject, I'll also talk a bit about modem escape sequences.
Escape sequences are sent to the modem to change it from data-transmission
mode to command mode, usually to issue an "ATH" (hang up) sequence.

Hayes Improved Escape Sequence with Guard Time (what a mouthful):
    Consists of short delay, followed by three special characters, usually
    '+', followed by another short delay.  Patented (and vigorously enforced)
    by Hayes.


TIES    : "Time-independant Escape Sequence"  Used by Hayes-pseudo-compatible
          modems.  The sequence consists of the five characters: "+++AT", 
          that is, the Hayes sequence, but without the guard times, followed
          by the "AT" characters that must preceed any Hayes-compatible
          command sequence.


The debate about escape sequences centers on the fact that there is no 
guarantee that the TIES sequence won't occur accidentally in the middle of
sending some binary file.  Anything can happen in the random-looking
garbage produced by a compression program.  When a random "+++AT" shows up
in the data stream, the modem will pop into command mode, and try to interpret
the rest of the data as modem-commands.

The probability of this happening is usually very small.  But consider this:
were I using a TIES modem, I wouldn't be able to send out this posting.  It
contains two TIES escape sequences.  I'm using a Hayes Optima 144, so even
though this file contains the "+++" sequence (there I go again), it won't
have the required delays before and after the '+'s (unless, of course, by
some odd circumstance, my UUCP transfer gets preempted by a higher priority
task before and after sending the "+++".  Even the Hayes sequence isn't
perfect.)

In the spirit of complete honesty, let me confess here that I'm a Hayes
employee, albeit in LAN software, not modems.  I've written this on my own
time, on my own system, in my own bedroom while drinking my own homebrew, so
nothing I've said is on behalf of Hayes.  Any errors are likely the fault of
the homebrew.

+---------------------------------------------+--------------------------------+
| Nuke'Em: Get them before they get you!      | Ron Harding                    |
| Another quality home game from Butler Bros. | uunet.ca!yuggoth!rbharding     |
+---------------------------------------------+--------------------------------+
Newsgroups: comp.sys.amiga.datacomm,comp.sys.amiga.misc