This document describes fax error correction mode (ECM).
There are no specific requirements for this document.
This document is not restricted to specific software and hardware
Technical Tips Conventions for information on document
The ECM feature in fax communications is optional and is negotiated at
the beginning of a fax call during the Digital Information Signal (DIS)/Digital
Command Signal (DCS) message exchange. If both the sending and receiving fax
devices support ECM, ECM is typically used during the fax call. If either
device does not support or agree to ECM, the fax transaction proceeds as a
normal G3, non-ECM call. This process allows fax devices that support ECM to be
compatible with other fax devices that do not support the feature.
ECM is used to detect and correct errors in the fax page data. In order
to detect and correct errors in the fax page data, ECM divides each fax page
data into blocks, known as partial pages. These partial pages contain
high-level data link control (HDLC) frames that have a Frame Check Sequence
(FCS) value that can be checked to ensure the integrity of the data in that
partial page. The terminating fax machine will checksum the HDLC frames as an
error detection method, and it will request for a frame to be retransmitted if
it is corrupt (that is, contains errors). The retransmittion of errored frames
for a page that contains many errors can be very time consuming and
consequently greatly delay the delivery of a fax or even cause the fax to fail.
Most fax machines automatically redial if a fax transmission does not make it
through. ECM relies on this automatic redial to try again at another time when
there will be an opportunity for a better-quality connection.
The main advantage of ECM is that it guarantees error-free faxes. The
principal disadvantage for ECM is that its persistent error correcting behavior
can cause faxes to fail or take a long time to successfully deliver a fax when
line quality is poor or conditions where there are lots of errors. If this
problem is encountered, most fax devices can easily disable the ECM feature.
Consequently, another disadvantage of ECM when in an IP environment is that it
is less tolerant of packet loss than non-ECM calls.
Cisco gateways that use passthrough as their fax transport method
cannot alter the ECM setting as it is negotiated between the fax endpoints in
the DISC/DCS negotiation. This is because with passthrough the gateways do not
demodulate the T.30 messages, rather they are passed through transparently in a
G.711 codec across the IP network. However, if the gateway uses fax relay as
the fax transport method, then it does demodulate the T.30 messages and can
manipulate the ECM negotiation. On Cisco IOS® voice gateways, the default
behavior is to not manipulate or alter the ECM setting that is negotiated by
the end fax devices. If you need for ECM to be disabled for a fax call
(regardless of the ECM setting decided by the fax endpoints) on Cisco IOS voice
gateways, you can use the Cisco IOS fax-relay ecm disable
configuration command under the VoIP dial peer or, in the case of
MGCP, use the no mgcp fax t38 ecm command. (Note
that the no mgcp fax t38 ecm command also works for
Cisco fax relay.) In order to allow the gateway to override the ECM setting
(bit 27) in the DIS message from the answering fax machine, these commands
demodulate the DIS message and flip bit 27 (the bit that signals ECM support by
the answering fax machine) to indicate that it does not support ECM. As shown
in Figure 1, this process essentially tricks the originating fax machine to
think the answering fax machine does not support ECM, so it responds with a no
ECM support setting in the DCS message, and the call proceeds as a regular
non-ECM fax call.
Figure 1. ECM Feature Disabled by a Cisco
From a message flow perspective, ECM and non-ECM calls are similar. The
main difference is that with ECM the fax page data is broken into partial
pages. The partial pages are blocks of data of a fixed size. There might be one
or more partial pages that correspond to one physical page.
In Figure 2, the message exchange for a standard, two-page G3 fax
transaction using ECM is shown. As illustrated in the image, the first page is
broken into two partial pages while the second page is wholly transmitted by a
single partial page.
Figure 2. ECM Two-Page Fax
The different partial page messages that are used in the T.30 signaling
of an ECM call are:
A PPS-NULL message follows any partial page block that is not the
last block for a page.
The final page block for a particular page is followed by a PPS-MPS
A PPS-EOP is sent when the last block of the last page is transmitted
to indicate there is no more page data to be sent.
The reception of all three PPS messages above are acknowledged by a
Message Confirmation (MCF).
Since the whole point of ECM is to detect and correct any page errors,
it has a T.30 message to signal this. The Partial Page Request (PPR) is the
T.30 message used by the terminating device to indicate that some portion of
the partial page it received contained error(s) and that the originating fax
machine must retransmit that data block. The PPR tells the calling fax device
specifically where in the partial page errors were detected. This process
prevents the originating fax machine from resending the entire partial page
again but still maintains the data integrity of the whole page.
Figure 2 shows that the partial page, which makes up the second
physical page, contained errors. These errors are known because a PPR is sent
by the terminating fax machine to request a retransmission of the corrupted
portion of the partial page. The corrupted portion of the partial page is
retransmitted by the originating fax machine in another Partial Page Signal
(PPS)/End Of Procedure (EOP) message. There are no errors encountered, so the
corrected data block is acknowledged with an MCF, and the call disconnects
gracefully with a DCN (Disconnect) message.