49.13. FAX Relay with Abilis

This section briefly describes fax relay method and the conditions required to offer a reliable fax relay service.

49.13.1. Fax over packet networks

Group 3 faxes communicates using a standardized analogue telephone channel which transports frequencies in the range 300-3100 Hz with small distortion. This actually means that the fax machines send the data related to scanned image using modems, more precisely V.26, V.27, V.29 modems.

There are two basic ways to transport fax over packet networks:

  • Fax bypass:

    The fax signal is treated as a normal phone call. The voice compressors like G.723.1, G.729, GSM, etc aren't able to transport fax signals since fax signals tolerate a much smaller distortion than voice. At the time of writing only G.726 and G.727 at 40 kbit/sec are able to pass faxes acceptably. Of course G.711 and fully TRANSPARENT coders, which both require 64 kbit/sec, transport fax signal without any additional distortion.

  • Fax relay:

    The fax signal is demodulated locally and converted into data packets which are sent to a remote site for re-modulation. This process requires much less bandwidth on the packet network than fax bypass. The demodulation extracts the original data bits, which can be at one of the bit rates available in group 3 faxes, i.e. 9.6, 7.2, 4.8, 2.4, and only this information is transported over the packet network. Recently group 3 faxes have been extended with a 14.4 kbit/sec bit rates using V.34 modulation scheme. The Abilis CPX supports also this method.

49.13.2. Fax Relay

Fax relay is a method which:

  • Demodulates fax signals locally;

  • Converts demodulated fax signals into data packets;

  • Have the following feature: fax data packets are transported to remote side;

  • Have the following feature: remote side converts data packets into fax data and remodulates them locally.

In this process, there are four points where problems can arise:

  • Errors on analogue channel (modulation/demodulation);

  • Packet loss and late packets;

  • Excess delays;

  • Incompatibilities between fax machines, and between fax machines and the Abilis CPX fax relay engine.

49.13.2.1. Errors on analogue channel

This may occur because:

  • The CTI SYSTEM clock between Abilis CPX and the Fax machine (or PABX if it's in the middle) isn't synchronized. This is actually the usual problem of ISDN/TDM synchronization issues between devices, while tolerable with voice calls become critical with fax/data connections.

  • The level of the analogue signals isn't adequate. It's very rare to have the need to change default level, which is of −9 dbm. However Abilis CPX allows to change it via FM-LEVEL: parameter in CTISYS and FMLEVEL parameter in CTIR.

49.13.2.2. Packet loss and late packets

Fax relay and fax bypass are similar to voice, they require real time treatment. The only difference is that they can tolerate a little bit higher round-trip delay.

The literature widely available on the Internet explains very well the challenges of transporting real time data over packet networks. This isn't the place where we will explain them deeply, but we want to summarize a few key points:

  • Packet networks work with message store-and-forward paradigm, therefore hops and queues introduce variable delays in packet delivery. This effect is called jitter.

  • Although coders, silence suppression, and other techniques, may make the packet exchange discontinued, voice and faxes produce and use data at a constant bit rate, based on a clock available at A/D and D/A converters.

  • Each application has its own tolerable delays, which poses constrains to buffer dimensioning.

  • Buffering, also known as jitter-compensation, has to be dimensioned as a trade-off to cover all the above points and provide the desired, or acceptable,the quality of the service.

Packet loss and late packets are far the most critical problem, which may have several causes:

  • Network packet loss;

  • Buffer overflows;

  • Buffer underflows;

  • Insufficient jitter compensation.

49.13.2.3. Excess delay

The round-trip delay of land line telephone networks is usually of some millisecond, maximal some tenth.

The round-trip delay of satellite telephone networks is at least 500 msec.

The fax protocol tolerates delays which are between 1 to 3 seconds, therefore if the network offers a round-trip delay above 1 second ... problems “may” arise.

49.13.2.4. Incompatibilities

Fax bypass does not make any inspection of the fax signal and therefore compatibility isn't an issue.

Fax relay has to demodulate the signal locally and make some other “inspection”, so fax machine and the Abilis fax relay engine may not understand each other correctly.

49.13.3. Abilis configurations for best results

49.13.3.1. Jitter compensation

The default fax relay jitter compensation parameters are usually adequate, i.e. FMDJ:200 and FMMJ:400.

Both Abilis at the two sides of fax relay connection must have these values set. Each Abilis CPX can jitter compensate the packets it RECEIVES. These parameters affect only the CPX where they're set, for the receive direction.

They can be increased if the network shows a higher jitter, but there is a risk to fall in the excessive delay problem explained above.

49.13.3.2. Fax speed

Although faxes should work at all standard speeds of 9.6, 7.2, 4.8, 2.4, and in some cases also 14.4 and 12 kbit/sec, our experiences shows that speeds below 9.6 are badly supported.

For higher reliability, at least speed of 9.6 must be allowed by configuring SP:9600 in CTIR. Since we want to use only 6.4k for voice, a routing which intercepts numbers assigned to faxes and uses SP:9600 is required.

49.13.3.3. ECM

The ECM negotiation is disabled. This reduces incompatibilities problems and make lower failure chances in the presence of packet loss.

49.13.3.4. Clock sync

The clock synchronization between devices interconnected by ISDN/TDM interfaces, i.e. cpx-pabx, pabx-isdnfax is still mandatory, but the synchronization of the clocks of the fax-relay endpoints is no more required if FMDJ:200 and FMMJ:400 are correctly used.

It means that Abilis in “Site A” and Abilis in “Site B” which relay faxes each other through the Internet, may run different ISDN/TDM clocks without having negative effects to faxes. It means that either or both sides may miss interconnection to the ISDN network!

On the other hand synchronization to a unique clock is always preferred when possible. With unique synchronization the voice can be handled without buffer underrun/overrun also if silence suppression is disabled. Silence suppression is the only way to avoid that sooner or later one direction will persistently work on overrun condition (with high delay!) and the other at underrun condition (jitter compensation absent).

49.13.3.5. Fm-relay parameter

The fm-relay parameter in the CTISYS resource enables/disables the fax/data relay as default value for all ports. If FM-RELAY parameter is set to YES, the DSPs are enabled to recognize a fax handshaking tone. If this tone is generated by a fax near a phone and during a voice call, the fax handshaking tone reaches the microphone and it's recognized by the DSP. The result is that the local user (near the fax) hears only silence and the remote user hears the fax tone synchronization.

To avoid this:

  • Set to NO the FM-RELAY parameter in the CTISYS resource

  • Set to yes the FMRLY parameter in the fax CTI routing rule to enable fax/data relay only for that routing

Refer to chapter How to configure fax modem relay parameter to view an example of configuration.

49.13.3.6. V-RED parameter

The V-RED parameter of a packet voice resource allows to activate/deactivate redundancy for Voice and/or Modem/Fax packets over clusters. Since fax relay is very sensitive to packet loss this feature is very useful to increase the fax relay reliability on connections with packet loss.

If the previous parameters have been set correctly and several issues with fax are still present, administrator can try to set the V-RED parameter to FM (Fax Modem) for best results. V-RED must be set to FM on both local and remote Abilis.

49.13.4. Diagnostics and statistics

The statistics of PV and IP tunnels (AIPT) can be used to measure packet loss and to have an idea on jitter values. Remember that faxes are very sensible to packet loss.

The statistics to check carefully are MISSING and time arrival variation of voice frames. MISSING should not increase, and time arrival variation should not increase for values above 200 msec. If those two statistics increase ... fix the network (or network connections).

The statistics an diagnostics of Audio Compressors (CTIAC) provide more useful information. Jitter measures, available when an Audio Compressor is IN-USE, may be useful to troubleshoot fax connections.

An example of AC extended diagnostics is:

[16:16:35] ABILIS_CPX:d de ctiac:0

-------------------------------------------------------------------------------
AC   Card    DSP/C  Bus/TS DSPState ACState  ModeIn  ModeOut Coder      Ctip/BC
     Dtmf    DhVol  DlVol  FmLevel  InGain   OutGain SigGain MaxFaxSp  MaxModSp
     SC      V-DJ   V-MJ   V-CurJ   V-TopJ   V-AvgJ  EC      BypassCoder
     ECM     FM-DJ  FM-MJ  FM-CurJ  FM-TopJ  FM-AvgJ FaxTxPg FaxFlowState
-------------------------------------------------------------------------------
  0  QPRI-1    0/0    4/05 RUN      IN-USE   FAX     -       Spirit/6.4k      -
     OUTBAND -4     -4     -9       0        0       0       9600      7200
     YES     100    250    0        0        0       NO      -
     YES     200    400    0        216      22      0       Tx-DIS

where:

  • ECM: Error Correction Mode, fax.

  • V-DJ: Voice Negotiated Default Jitter Buffer.

  • V-MJ: Voice Negotiated Maximal Jitter Buffer.

  • V-CurJ: Voice Current Jitter Buffer.

  • V-TopJ: Voice Top Reached Jitter Buffer.

  • V-AvgJ: Voice Average Reached Jitter Buffer.

  • EC: Echo Canceler.

  • FM-DJ: FAX/MODEM Default Jitter Buffer.

  • FM-MJ: FAX/MODEM Negotiated Maximal Jitter Buffer.

  • V-CurJ: FAX/MODEM Current Jitter Buffer.

  • FM-TopJ: FAX/MODEM Top Reached Jitter Buffer.

  • V-AvgJ: FAX/MODEM Average Reached Jitter Buffer.

  • FaxTxPg: Tax Transmitted Pages.

  • FaxFlowState: Fax Flow Current State.

49.13.5. Conclusion

For a successful fax relay here is a check list:

  • Use FMDJ:200 and FMMJ:400.

  • Use CTI routings with SP:9600 or higher.

  • Use network connection with very low packet loss.

  • Use network connection with round-trip delay not higher than 1 second.

The Abilis FMDJ and FMMJ may be increased a little bit in the presence of network connections with bigger jitter, but reasonably to a value not greater than 400 and 600 respectively. Clock synchronization between the Abilis CPX at the two endpoints of the fax relay connection isn't required.