Network bandwidth and interoperability considerations
Voice-over-Internet Protocol (VoIP) has achieved wide acclaim and usage as a low-cost alternative for long-distance and international calling. For this same reason, VoIP networks are an attractive option for fax applications. Fax-over-IP (FoIP) makes fax calls on the same IP network that transports voice and data applications. Using VoIP for fax transmission offers a number of advantages, from cost savings and location independence to the ability to store and retrieve faxes. IP network bandwidth also is conserved in some applications because fax bit rates are lower than VoIP voice calls.
While there are cost and service benefits, FoIP is impacted by a number of interoperability problems. These problems range from the type of fax machines used to a number of IP network impediments. Interoperability concerns can be alleviated, however, by ensuring that FoIP implementations are tolerant of the many anomalies that may occur. This article will provide an overview of FoIP, compare fax network bandwidth requirements with G.711 voice calls and examine interoperability concerns that must be addressed to ensure that FoIP works like a fax call over the public switched telephone network (PSTN).
FoIP applications enable standard fax machines to work with VoIP infrastructure. The voice interfaces on VoIP customer premises equipment (CPE) – also called VoIP adapters or gateways – will support fax calls much the same way PSTN telephone interfaces support them. The popular real-time modes of sending FoIP are fax pass-through and T.38 fax relay.
Figure 1: Functional PSTN fax call as G.711 voice.
Fax pass-through is similar to a G.711-based VoIP voice call, but the functions of voice modules must be modified, requiring additional care. These functions include echo cancellation, voice activity detection/comfort noise generation (VAD/CNG), packet loss concealment (PLC), dual tone multi-frequency (DTMF) rejection, signal gain-loss settings and jitter buffers.
T.38-based fax relay is a true, real-time FoIP call. T.37 is a store and forward equivalent of T.38, which is similar to how e-mail works. T.38- or T.37-based fax uses a fax data pump modem (modem here refers to modulation and demodulation) that consists of ITU-T-V.21, V.27ter, V.29, V.17 and V.34 modules.
Fax machines that support V.34 are known as super group-3 (SG3) and machines without V.34 are known as group-3 (G3). These modules are used to extract bits from modulations for delivering payload bytes in VoIP packets. The management of a fax call is done through VoIP signaling, such as session initiation protocol (SIP) and T.38. T.30 ensures proper operation of end-to-end fax calls in the PSTN. A minimal part of T.30 is resident with T.38 to handle T.30 time-outs and simulate spoofing techniques. In the absence of T.38 support in the gateway, or if interoperation of T.38 and the data pump is not able to progress with the FoIP call, a fax call is established in G.711 pass-through mode.
PSTN and VoIP fax calls
A high-level representation of a PSTN-based fax call is shown in Figure 1. In PSTN calls, fax and voice share the same telephone lines. In the digital hierarchy of PSTN, fax or voice samples are sent as G.711 compression bit streams and take 64 kilobits per second (kbps) per call. The PSTN central office (CO) or digital loop carrier (DLC) converts analog signals to digital bit streams.
A VoIP fax call is shown in Figure 2. In some of the VoIP deployments, a fax is sent in pass-through mode using G.711. When network conditions are perfect, fax pass-through will work exactly like a PSTN-based fax call. In many VoIP deployments, however, packet impediments are unavoidable. Multiple redundant packets are sent as per RFC2198 – a guideline for redundant media packets – to counter packet impediments. In T.38 and T.37, modulations are extracted as bits and bytes for sending as packets. This conserves bandwidth compared to G.711 pass-through. A T.38-based fax call makes use of transmission control protocol (TCP)- and user datagram protocol (UDP)-based transport protocols to deliver packets on the IP network. On UDP, packets are sent using either real-time transport protocol (RTP) or UDP transport layer (UDPTL). T.38 fax over UDP with UDPTL for transport is the most popular and well-established method used in today’s deployments. UDPTL makes use of redundancy and forward error correction (FEC) techniques as per ITU-T T.38.
Figure 2: Representation of a VoIP fax call between two gateways.
Session Initiation Protocol (SIP)-based FoIP calls
A SIP-based FoIP call is shown in Figure 3. The FoIP call initially establishes like a voice call. On detection of either answering tone (ANS, also referred to as caller tone-CED), or ANS amplitude and phase modulated (ANSam) and V.21 preamble indications, a SIP INVITE request is sent to the emitting gateway for T.38 fax call connection. At a high level, the following functional events occur with a FoIP call:
The receiving or terminating gateway detects an ANS/ANSam/V.21 flag sequence and sends an INVITE with T.38 details in the session description protocol (SDP) field to the emitting/originating gateway or to the SIP proxy server, depending on the network topology.
The originating gateway receives the invitation to the call with an INVITE message and sends back acceptance with a 200 OK message. SIP uses these capitalized message names to adhere to long-standing conventions in a number of protocols.
Figure 3: T.38 basic fax call.
CLICK HERE TO ENLARGE CHART
The terminating/receiving gateway acknowledges the 200 OK message and sends a confirmation with an ACK message directly to the originating gateway.
The fax call will be established in T.38 mode if the originating gateway supports the T.38 relay; otherwise, the fax call will fall back to G.711 mode.
In T.38 mode, the originating gateway starts sending Internet fax packets (IFP) over UDPTL, transport protocol data unit packet (TPKT) or RTP, depending on the negotiations between the gateways. Most of the gateways use UDPTL to transmit fax packets.
At the end of the fax transmission, another INVITE message is sent to return the line to voice mode, or the originating machine disconnects the T.38 session after detecting a disconnect (DCN) message.
Fax over IP bandwidth calculations
To compensate for network impediments, redundancy and FEC techniques are used in FoIP calls based on UDPTL/RTP. However, these techniques increase the bandwidth requirements for the FoIP call. Table 1 provides a summary and comparison of T.38 and G.711 bit rates. In the table, redundancies are marked with symbols “R0, R1 and R3.” In this article, R0 means that there is no redundancy with the primary payload. R1 is redundancy-1, signifying that there is one extra previous payload; and R3 indicates three extra previous payloads. FoIP pass-through takes 126.4 kbps on an Ethernet interface. At R3, G.711 takes 328.8 kbps. In practical systems, G.711 pass-through is used with 10 or 20 ms packets with R1.
In T.38, redundancy up to R3 is used. Low-speed (V.27ter-2400 bps) fax with T.38 takes only 8.48 kbps on an Ethernet interface. High-speed fax of 9600 or 14400 bps is popularly used worldwide. Fax at 14400 bps with R3 takes 65.12 kbps, which is comparable to basic PSTN 64 kbps and lower than a G.711 VoIP voice call. In general, T.38 offers a bandwidth utilization advantage of two to 20 times compared to a G.711 fax pass-through call. In this article, bandwidth calculation examples are considered with G.711 at 10 ms intervals and T.38 payloads at 40 and 100 ms intervals. Smaller packetization reduces end-to-end delay and the packet payload size in case of V.34 higher bit rates. V.34 at 40 ms packetization is noted as the highest bandwidth used in a T.38 FoIP call. In some countries, users receive 50 Mbps to 100 Mbps Internet bandwidth. As a result, bandwidth from G.711 pass-through, even with R3, is negligible compared to the available bandwidth. In general, G.711-based FoIP can be used when the available guaranteed network bandwidth is at least 256 kbps per channel and there are no impediments in end-to-end packet delivery.
The primary challenge in FoIP implementation is end-to-end interoperability. By improving interoperability, FoIP calls can be comparable to PSTN-based fax calls.
In most situations, PSTN fax calls are completed successfully. Nevertheless, PSTN fax calls can occasionally fail because of line conditions from the user fax machine to the PSTN digital loop carrier or central office. Fax machine anomalies, mismatched message and capability exchanges contribute to these failures. Even in the PSTN, intermediate long distance routing of fax calls may happen as FoIP or G.711 VoIP voice calls.
FoIP interoperability can be impacted by the type of fax machines used, VoIP gateway features, fax call switching and deviations in fax call tones. IP network impediments – such as delays and timing issues, packet formats, redundancy, error correction mode (ECM), end-to-end transmission characteristics, clock drifts, various configurations and interactions between voice and fax modules – also affect interoperability. However, interoperability concerns can be alleviated by ensuring that FoIP implementations are tolerant of the many anomalies that may occur.
FoIP interoperability issues include: Interoperability with fax machines. There are several deviations among the available fax machine timings in delivering messages and responses. T.38 FoIP adds delays that may exceed fax-timing limits, resulting in failed fax calls or forcing the fax call to G.711 pass-through mode. The new SG3 with V.34 support is creating interoperability with other low-speed machines and computers. Personal computers, in combination with a telephone interface, also are used for faxing document files. In many situations, users may not have upgraded the bug patches or use of the computer as a fax machine is not fully evaluated with hardware and operating system combinations. The goal here is to make the VoIP gateway interoperate with several fax machine anomalies.
Interoperability with VoIP adapters and gateways. Many of the VoIP gateways primarily will be used for voice services and may not support T.38. There are several revisions in fax standards with new features and optional messages given in RFC4161 (as “Guidelines for Optional Services for Internet Fax Gateways”) that may be handled in a fax call. These changes introduce gateway interoperability issues. To ensure proper functionality, VoIP gateways must continually be upgraded with the latest fax revisions.
Handling of voice-to-T.38 fax call switching. Gateways initially establish VoIP voice calls using compression codecs, such as G.729A, G.723.1 and G.711, then switch to the fax call after analyzing for CNG (calling tone), CED/ANS family of fax/modem tones and V.21 preambles. Some FoIP gateways also wait for the V.21 preamble from the originating fax machine to switch from a Voice-to-T.38 fax call. In in-band operation, tones and V.21 preamble tone and DIS signals may be distorted with compression codecs. Out-of-band packet creation will introduce huge delays in detecting and regenerating tones and messages. In general, voice-to-fax call switching is established with CNG, ANS, V.21 preamble in-band and out-of-band combinations. In all these situations, the T.38 relay should be generic so it can handle several combinations of fax call switching modes.
Deviations in fax call tones. CED/ANS tones have several deviations. The ANS family of tones consists of ANS, ANS/, ANSam and ANSam/. Here the suffix ‘/’ in keywords denotes phase modulation. Some fax machines also send modem tones in place of fax tones. This requires extra validation for the fax and modem, which is not supported in all the gateways. Validating ANS or ANS/ with additional CNG or V.21 preamble detections is a useful option. Some machines omit the ANS and just begin with the V.21 preamble first handshake message. A G3 fax machine sends an ANS tone, while a high-speed SG3 fax machine sends the ANSam/ tone during the call set-up phase. These deviations create the interoperability challenges.
IP network impediments. The IP network creates impediments of delay, jitter, packet drop, fragmentation and errors. With packet impediments, message collisions happen as a result of increased delays and unacknowledged commands. In T.30 protocol, procedures are defined with timeout mechanisms. If a response to the message is not received within the specified time of three seconds, then the fax machine re-transmits the message or disconnects the call after repeating the message for three times. With more end-to-end impediments, users will experience more time outs and disconnects. Fax spoofing techniques and logic for collisions are used to improve call success with IP impediments. In the absence of required data from the network, spoofing logic sends the known pattern to a fax machine that makes the fax connection live.
Table 1: Summary on G.711 and T.38 fax bandwidth on the Ethernet interface.
Message collisions – example with DIS and TCF. Fax works as half-duplex. Fax message collisions mainly with digital identification signal (DIS), digital command signal (DCS), and training check (TCF) contribute to the fax call-switching failures. To avoid DIS and TCF collision, the DCS spoof timers are used. Sometimes it is useful to deny the first DIS message and keep using subsequent DIS messages. This will allow enough time to check for collisions and prevent further collisions and retransmissions.
Packet payload and format issues. FoIP has several options in IP packet creation. T.38 IFP fax data is sent as TCP using TPKT and UDP using UDPTL or RTP. The problems grow with combinations of fax machines, redundancy, FEC and ECM modes. T.38 relay should be capable of handling several combinations of packets. The deviations include:
- T.38 implementation sends one T.30 signal frame as one or multiple packets.
- High Level Data Link Control (HDLC) frames and packets have different frame boundaries when inserting the data into packets.
- Redundancy and duplicate packets are used without distinction.
- T.38 relay implementations follow different packetization intervals and redundancies for low-speed data and indicator packets.
- There are some T.38 implementations that follow duplicate indicator packets with the same sequence number for multiple times.
In ECM, fax image data is divided into blocks and frames. Frames are sent with HDLC and cyclic redundancy check (CRC). Transmitting and receiving fax machines work in coordination to get complete error free blocks through retransmission. Retransmission of lost packets can cause long delays, causing the fax call to time out.
Transmission characteristics. VoIP gateways should comply with local PSTN transmission guidelines. Ensuring these transmission characteristics through the proper selection of telephone interface components and proper tuning to comply with local PSTN standards helps reduce transmission errors.
End-to-end gateway clock precision. The clocks used in VoIP gateways will create several issues if they drift. VoIP boxes may use a +/-50 parts per million (PPM) clock as a reference for generating voice and fax packets. This clock PPM rating can result in fax transmission errors when several pages of faxes are sent. By incorporating clock matching very close to the Stratum-3 precision of +/-4.6 PPM, these fax transmission errors can be reduced.
Interactions with various voice modules. As shown in Figure 3, a fax call is established as a VoIP voice call, and then switched to a FoIP call. In the transition of voice to fax call, configurations are modified for various voice modules like echo canceller, VAD/CNG, PLC and jitter buffer. Any mismatch in configurations will create fax page errors.
Achieving FoIP interoperability
FoIP transmission offers many of the same benefits as VoIP voice calls. However, there are significant differences, too. T.38-based FoIP calls take relatively lower bandwidth than G.711 VoIP calls. Voice calls are interactive and listeners can adapt to voice impediments. In fax calls, tones, messages, and page data have to operate in an automated way without human interaction. Several deviations and options must be taken into consideration when implementing FoIP solutions.
In spite of these issues with T.38 fax interoperability, it is possible to achieve quality comparable to PSTN fax calls by making the system tolerant of anomalies and standards violations, while giving the solution the intelligence to handle several unexpected events. FoIP seamlessly integrates with VoIP and provides the advantages expected from an IP network. FoIP working as G.711 pass through, T.38 or T.37 – in combination with perfecting the solutions to provide robust high-quality fax services – will serve to support the migration of PSTN-based fax calls to VoIP.
About the authors
Sivannarayana Nagireddi Ph.D., is a system architect and senior manager of DSP and VoIP solutions for Ikanos Communications Inc. Nagireddi has more than 20 years of experience designing communication and voice processing applications. Vijay S. Kalakotla is a senior member of Ikanos’ technical staff, managing voice and fax algorithms and DSP software. Hemavathi Lakkalapudi is a principal member of Ikanos’ technical staff, managing voice and fax systems and software. Both Kalakotla and Lakkalapudi have worked on VoIP solutions for the past seven years.