With the end of life and removal of traditional analog telephone lines, maintainers of legacy modem applications have been forced to use basic Analog Telephone Adaptors (ATAs) to deliver an FXS connection to their modems. As they have quickly come to find out, ATAs do not provide a service that is compatible with modems, and they often fail to successfully complete their calls. This creates a question, why do modem calls fail when connected to ATAs? What other options do we have?
Ultimately, the issues with ATAs and modems come down to a simple fact – ATAs were designed primarily for voice communications. Because of this, there are several design choices that promote high quality voice calls but hinder modem operations.
Jitter and Packet loss
Jitter and packet loss are an unavoidable part of packet switched networks. Jitter is the variation in traversal time for a packet to get through a network. For example, 1 packet may take 50ms to get from one endpoint to another while the next packet takes 62ms. Packet loss is the case where the packets fail to get to the destination entirely.
These phenomena can occur when there is congestion on the local network, for example when a network has many users that are using video conferencing, downloads, or streaming on a network. As traffic volume increases, links will become congested. This results in varying queuing times as packets wait their turn to be processed and this can also lead to packets being dropped entirely.
ATAs deal with jitter and packet loss using jitter buffers. The ATA will maintain a buffer of audio samples that will help normalize the jitter of the incoming RTP packets. The depth of this jitter buffer needs to be carefully selected as too large a buffer will cause delay in the round-trip audio path. This creates an uncomfortable environment for voice communication. However, making the jitter buffer too small with increase the chance that audio data is lost due to network jitter. For voice communication, a small amount of lost audio has a minor impact on perceived call quality so ATAs will attempt to keep their jitter buffers very small at the cost of losing some samples occasionally.
Why are jitter and packet loss a problem for modems?
Legacy analog modems were designed to solve the challenges of the analog circuit switched telephone system. They are very good at dealing with problems like noise and interference. However, they were not designed to handle the problems present in packet switched VoIP networks. Because of this, losing packets or samples is catastrophic for a modem call. The modems will lose synchronization and they will suffer retrains, garbage data, and connection instability ultimately resulting in failed communications.
In an attempt to reduce bandwidth usage, many ATAs will use a compressed voice codec such as G.729. These codecs are designed to take advantage of the acoustic properties of speech to reduce the required bit-rate while minimizing the impact on perceived audio quality. Unfortunately, these codecs are lossy and tailored to speech signals. As a result, modem signals transmitted over a compressed voice codec will become distorted and unrecoverably damaged. These signals are unable to be demodulated by the remote modem and the information contained within will be destroyed when going through the compression process.
ATAs also need to contest with line echo that can cause a user can hear their own voice echoing back when they are trying to have a conversation. To deal with this, ATAs will use a line echo canceller that actively cancels out the speakers own signal, eliminating the echo. These echo cancellers are designed to operate efficiently and are targeted at reducing echo for comfortable phone conversations.
Some full duplex modem protocols such as V.32 and V.34 require their own echo cancellers. With these protocols, both modems will simultaneously transmit using the same frequency band so they need to cancel out their own transmission to properly demodulate the received modem signal. Unfortunately the line echo cancellers implemented in ATAs are typically not precise enough for modem applications and they will instead damage and distort the modem signal to the point that it can no longer be demodulated and the communication will fail.
Any media termination points in a VoIP network, including an ATA, will have it’s own sample clock source. The sample clocks between any 2 endpoints will not be exactly in sync. This is called clock skew. If clock skew is allowed to accumulate, the round trip latency will continually increase resulting in uncomfortable voice communications. To prevent this accumulation, the ATA will occasionally drop excess samples. This is called sample slip and it can lead to unstable modem communications.
How do you get modems to work over an ATA?
VOCAL has created a special kind of ATA called an Analog Modem Adaptor (AMA) to solve these common issues that prevent modem communications. The AMA works by locally demodulating the modem data and sending it over a reliable IP transport. The modem data can then be either remodulated and forwarded to a 3rd party modem, or it can be sent directly to a polling application using a virtual COM port, TTY device, or directly via TCP.