Modem Basics


Basics

A modem is a device which converts a computer's digital information (ones and zeros) in to an analog signal (like the sine waves from trigonometry), that is, it converts it into sound. This is called MOdulating. On the other end, the other modem converts the data back into digital data (or DEModulates).

(MOdulate + DEModulate = MODEM)


Flow Control

When sending data over the phone lines, the data can flow at different rates. First, there's the transfer rate between the sending computer and the sending modem. Second, there's the transfer rate between the two modems over the phone lines. Third, there's the transfer rate between the receiving modem and receiving computer. (See the image below.)

Diagram

Now throw in the fact that the receiving modem can become the sending modem and the sending becomes the receiving, you now have six different possible transfer rates. Thus it is likely that one modem will send data faster than the other modem can handle.

Flow control allows one modem to request the one on the other end to pause in sending while it catches up.

There are three types of flow control:


Error Correction

Error correction is a method of ensuring all the data sent is received and received in usable form.

The data to be sent is broken down into small blocks called frames. A checksum is added to that frame. (A checksum is like a tamper-proof seal on a bottle of medicine--if the contents have been damaged, the seal will usually reveal it.) If the data doesn't match the checksum, the modem requests that the frame be resent.

Also, the receiving modem sends an acknowledgement for each frame it receives. If the sending modem doesn't get the acknowledgement, it resends the frame. Several frames can be sent before an acknowledgement is required. The size of the frame and the exact number of frames allowed before an acknowledgement is required is negotiated between the two modems when the connection is made.

There are two classes of modem error correction protocols:

  1. MNP (Microcom Networking Protocol) with versions 2, 3, 4 and 10
  2. V.42 is the standard which uses LAPM (Link Access Procedures for Modems) or can use MNP versions 2, 3 or 4


Data Compression

You cannot increase the number of bits of data carried over a connection by a modem, but you can make those bits carry more information. That is, you can make it so two or three bits of data sent by the modem actually stands for 10 to 15 bits of actual data.

This compacting is done through compression. Roughly, compression takes common, repeated series of characters and replaces it with other, shorter series of characters. For example, imagine how much smaller a text document would be if common words (like "the", "that", "which", etc.) and common groups of letters (like "ing", "ous", "ness", etc.) could be replaced by one or two special characters each.

The size of the document would be decreased, so there'd be less to send over the modem. The modem on the other end could convert it back back to the original format after receiving it (assuming both modems are using the same method to encode/decode the file).

In practice, data compression works best when transfering basic text files. Most program files or other files (like graphics) are already compressed to a certain extent. Compressing a compressed file can take longer and result in a larger file (which defeats the purpose of data compression for modems).

Data compression isn't required for a stable modem connection. As a matter of fact, some connection and stability problems can be resolved by turning off data compression.

There are two types of data compression protocols:


Connection Terms

It's not that likely you'll run across the following, but you never know:


Back to the Modem page