Fax & Voip – Part 3/3 – Baud Rate & Fax Relay

oldfaxmachineDecrease Baud Rate and turning off ECM
Packet loss, jitter, and latency all add up to corrupt a fax transmission in VoIP env
and unfortunately also in Asterisk PBX.

When a fax machine determines that some data is lost, it will shut down the entire fax transmission, even though you would still have a workable document.

By slowing down the transmission speed up to 9600 bps, you’ll increase the probability that all the faxes will be transmitted or received correctly.

To slowing down the BAUD rate to 9600 bps you need to check the parameteres of the fax device.

In every fax trasmittion in the first steps of communications the involved devices put them agree about the speed to use in data transfer, usually the max possible (usually this is 14400 bps).
Att.: Lowering the fax baud rate can introduce some incompatibilities with some other fax devices, that are not configured to support use this value of bps. I.e. some fax software are not able (or or misconfigured) to receive/transmit fax in different baud/rate than 14400 bps. Sincerly it is rare but can happen !

Recent fax machines have ECM capability, which analyzes the received frames and detects any corrupted data: if any is detected, then a retransmit signal is sent until a error free frame is received.

The problem with this setting over VoIP is that some packet loss and latency can exist: the retransmits tend to increase the call duration, adding to the instability of the fax, creating additional retransmits which then quickly lead to failure with a communication error.

By disabling ECM the receiving fax machine will not continually request any slightly corrupted transmissions to be resent, ensuring a greater chance of a completed fax

Att.: Turning off ECM control could result in a fax image that is of slightly poorer quality (in most cases probably not even noticeable), but in most cases it should be more than sufficient.

Fax Relay (T.38 protocol)
fig02-t38callpathThe introduction of Fax Relay is a completely different approach in solving this kind of problem.

Using Fax relay the first gateway in the trasmittion path decode the modulated waveform and extract digital information, then transmit this bits-flow using T.38 protocolo via network connection to other device that receive the bits and remodule the signal for the fax device.

In other words T.38 is a protocol that describes how to send a fax over a computer data network in optimized way: using T.38 a fax is converted to an image, sent to the other T.38 device and then converted back to an analog fax signal. Jitter, packet loss can not alter much this type of fax-transmission !

As long as everything works correctly all the device involved in the path must be T.38 compatible, and the Voip PBX must be able to left intact pass this data stream.

Today most VoIP Gateways and ATA’s now support T38 reliably, and Asterisk is able to manage this kind of transmittion protocol.

I.e. Piece configuration for Patton SmartNode devices.

profile voip default
codec 1 g711alaw64k rx-length 20 tx-length 20 no-silence-suppression
codec 2 g711ulaw64k rx-length 20 tx-length 20 no-silence-suppression
dtmf-relay rtp
dejitter-max-delay 100
media detection-timeout 10
fax transmission 1 relay t38-udp
fax transmission 2 bypass g711alaw64k rx-length 10 tx-length 10
fax redundancy low-speed 2 high-speed 1
fax volume -9.0
fax dejitter-max-delay 100
fax bypass-method v150-vbd

Here you can see that when fax transmission it has been recognized the device will try to use T.38 protocol: if the device in other end “not agree”, alaw codec trasmittion will be used instead.

Asterisk

[1110]
type=friend
username=1110
dtmfmode=rfc2833
secret=XXXXX
context=from-trunk-sip
qualify=yes
insecure=very
host=dynamic
disallow=all
allow=alaw
directmedia=no
nat=no
t38pt_udptl=yes,redundancy,maxdatagram=400

Previous Post: Fax & Voip – Part 2/3