To place multiplexing in a relevant context, imagine a company with its headquarters in Glasgow and a factory outlet in Edinburgh. Throughout this factory, at various locations, are a number of computer terminals, all of which require to be connected to the computer residing at headquarters. Clearly one solution to this problem would be to have a tangible link from each terminal to the computer. However, it is obvious that this would be uneconomical and hence a much more realistic solution would be for all the terminals to share a single line between Glasgow and Edinburgh.
In fact, by using the technique of multiplexing the latter solution can indeed be employed. A mulitplexor is a device which divides a data channel into two or more independent fixed data channels of lower speed. Moreover, this device divides the communications link between a number of terminals in a manner that is transparent to the users. It should be noted that multiplexors are normally required at both ends of the "shared" telephone line. A new generation of multiplexor-like devices are now becoming available - exhibiting all the properties of simple multiplexors but also able to switch data links in the same manner that an exchange switches telephone lines, and having the ability to handle a mixture of synchronous and asynchronous terminals.
Basically there are three basic forms of muliplexing available:
Frequency division multiplexing (FDM)
FDM is the oldest type of multiplexing which is available for use. It takes advantage of the fact that the bandwidth of a voice-grade telephone line is significantly greater than that required by a low-speed channel. In this case all the signals are transmitted along the single line simultaneously but each at a different frequency. By using the variable of frequency, data transmission systems can be distinguished into two categories:
The frequencies used in FDM must be separated by unused frequencies, known as GUARD BANDS, in order to prevent interference. Clearly, the channel must have sufficient bandwidth to allow this to occur. In other words, it must be able to carry a broad range of frequencies. However, as a result of the essential inclusion of guard bands the entire bandwidth is not available for communication purposes.
FDM signals are demultiplexed by "tuning in" to a particular frequency - very similar to the situation found in radio broadcasting.
Time division multiplexing (TDM)
On the other hand, the approach of time division multiplexing (TDM) interleaves bits (bit TDM) or characters (character TDM), one from each low-speed channel attached, and transmits the combined data stream serially down a high speed line. The multipexor at the other end demultipexes the data stream, presenting one bit or character to each low-speed channel just as they originated. Hence each channel is allocated a fixed time duration or time slot on the high speed line. In theory, the speed of the fast line should at least be equal to the total of the speeds of the slow lines coming into the multiplexor. The diagram below shows how four terminals operating at 300 bit/sec could be multiplexed onto a single 1200 bits/sec channel:
Statistical time division multiplexing (STDM)
As indicated beforehand each channel in a fixed time division multiplexor is allocated to a fixed time slot on the high speed line. A slot is allocated to a channel whether it is active or not, idle characters being inserted if it is not active. Therefore, even when a channel has sporadic or low use, the time slot must still be allocated. Clearly, this leads to inefficient use of the high speed line.
Another deficiency of conventional TDMs is that errors occurring on the high speed line cannot be corrected and will cause corruption of the characters received by one or more channels. This does not matter if the terminals connected to the multiplexor have their own built-in error correction features, but a large proportion of terminals in use are simple asynchronous devices without this capability.
Lack of error correction effectively limits the applications for which conventional TDMs can be used, since on all but the very best lines the error rates typically experienced are unacceptable to the business user.
To overcome these problems a device known as a statistical TDM is now widely used. The STDM operates on the principle that at any one instant only some of the channels will be transmitting data. The TDM frame is collapsed, with no idle characters being inserted. Instead addressing information is included to indicate for which channels data characters are present.
Using STDMs the high-speed line can in practice be slower that the speed implied by adding together the individual channel speeds. An improvement of 2 to 4 times can be achieved in a typical application. Since there is a finite probability of all channels sending data simultaneously, STDMs must incorporate temporary storage of the low speed data and some form of flow control to temporarily turn off the data input from terminals or computer ports in the event that the storage becomes full. The data on the high speed lines is usually protected against data errors on the telephone line or other transmission medium by some form of error detection and automatic retransmission on error.
Thus these multiplexors cab be safely used at high speeds to provide very efficient use of the lines even in highly sensitive applications where data loss or corruption is unacceptable.
Concentators and Front End Processors
A concentrator is a small computer system, usually with some backing storage attached, which carries out a similar function to a multiplexor. It can accept either asynchronous or synchronous input at a variety of speeds and carry out code conversion. Moreover, the concentrator may also be able to maximise line utilisation in a similar manner to a STDM.
Basically a front-end processor is a concentrator which is located adjacent to a host computer. Its main function is to collect communications traffic of a variety of characteristics and present it in a consistent form to the host. Important is the fact that the front-end processor relieves the host computer of carrying out communications related tasks and thus leaves it to deal with its primary functions.
Line Sharing
Although multiplexing is a useful way of allowing multiple terminals to share a single line, it requires that all the terminals are in the same location. Often the situation arises when there are a number of terminals that require to be connected to a single line, but at different locations along the length of the channel. This predicament is known as multidropping and an example is shown below:
The main difficulty of this approach occurs when two terminals attempt to send a message to the computer simultaneously - the problem of contention. The two main techniques to resolve this problem is to use: