Configuring Fax Pass-Through
This chapter describes the configuration of fax pass-through. With fax pass-through, modulated fax information from the PSTN is passed in-band over a voice speech path in an IP network. Fax pass-through disables compression, echo cancellation, and issues redundant packets to ensure complete transmission.
Your software release may not support all the features documented in this chapter. For the latest feature information and caveats, see the release notes for your platform and software release.
Use Cisco Feature Navigator to find information about platform support and Cisco IOS and Catalyst OS software image support. To access Cisco Feature Navigator, go to http://www.cisco.com/go/cfn . An account on Cisco.com is not required.
Finding Feature Information
Your software release may not support all the features documented in this module. For the latest caveats and feature information, see Bug Search Tool and the release notes for your platform and software release. To find information about the features documented in this module, and to see a list of the releases in which each feature is supported, see the feature information table.
Use Cisco Feature Navigator to find information about platform support and Cisco software image support. To access Cisco Feature Navigator, go to www.cisco.com/go/cfn. An account on Cisco.com is not required.
Prerequisites for Configuring Fax Pass-Through
Before you configure fax pass-through, perform the following tasks:
-
Ensure that you install a software release that supports fax pass-through.
-
Ensure that you have a working H.323 or SIP network for voice calls.
-
Complete voice interoperability testing with third-party gateways and gatekeepers.
-
Verify network suitability for fax pass-through by determining the packet loss threshold. Packet loss and latency are two impairments that can have a dramatic effect on fax pass-through performance.
Restrictions for Configuring Fax Pass-Through
Restrictions for fax pass-through are as follows:
-
Fax pass-through does not support the switch from G.Clear to G.711. If fax pass-through and the G.Clear codec are both configured, the gateway cannot detect the fax tone.
-
The Cisco AS5400 and Cisco AS5850 have the following limitations on the number of ports that can run fax pass-through simultaneously.
Subsystems are defined for these platforms, starting from port 0 and grouping consecutive ports 36 at a time. There are 3 subsystems per dfc108 card on the Cisco AS5400 (3 times 36 for a total of 108 ports) and 9 subsystems on the Cisco AS5850 tetryl card (9 times 36 for a total of 324 ports). The limitations are as follows:
-
- Thirty-six 10- or 20-ms fax pass-through sessions with no redundancy
- Thirty 20-ms fax pass-through sessions with redundancy
- Twenty 10-ms fax pass-through sessions with redundancy
Examples of fax pass-through sessions mixed with a high load voice session type are as follows:
-
- Ten 10-ms fax pass-through sessions and 20 G711, no VAD sessions
- Twelve 10-ms fax pass-through sessions and 16 G.711, no VAD sessions
-
With 10-ms fax pass-through, each subsystem has a 20-session fax pass-through limit. With 20-ms fax pass-through, each subsystem has a 30-session fax pass-through limit. The same limitations would apply to all subsequent subsystems.
The Cisco AS5400 and Cisco AS5850 have a capability to transmit 20-ms packets and receive 10-ms packets, which significantly improves performance over what can currently be handled with 10-ms packets in both directions. Currently, other Cisco universal gateway implementations may have an outgoing packet size limitation that imposes the use of 10-ms packets, as opposed to 20-ms packets, which is the optimal setting. This restriction limits the number of ports that can run fax pass-through to 20 per subsystem (10-ms connections only).
Note |
The modem passthrough protocol and fax protocol commands cannot be configured at the same time. If you enter either one of these commands when the other is already configured, the command-line interface returns an error message. The error message serves as a confirmation notice because the modem passthrough protocol command is internally treated the same as the fax protocol pass-through command by the Cisco IOS software. For example, no other mode of fax protocol (for example, fax protocol T.38) can operate if the modem passthrough protocol command is configured. |
Note |
Even though the modem passthrough protocol and fax protocol pass-through commands are treated the same internally, be aware that if you change the configuration from the modem passthrough protocol command to the modem passthrough nse command, the configured fax protocol pass-through command is not automatically reset to the default. If default settings are required for the fax protocol command, you have to specifically configure the fax protocol command. |
Information About Fax Pass-Through
Pass-Through Method of Transport
Fax pass-through takes place when incoming T.30 fax data is not demodulated or compressed for its transit through the packet network. The two endpoints (fax machines or modems) communicate directly to each other over a transparent IP connection. The gateway does not distinguish fax calls from voice calls.
On detection of a fax tone on an established VoIP call, the gateways switch into fax pass-through mode by suspending the voice codec and loading the pass-through parameters for the duration of the fax session. This process, called upspeeding, changes the bandwidth needed for the call to the equivalent of G.711.
With pass-through, the fax traffic is carried between the two gateways in RTP packets using an uncompressed format resembling the G.711 codec. This method of transporting fax traffic takes a constant 64-kbps (payload) stream plus its IP overhead end-to-end for the duration of the call. IP overhead is 16 kbps for normal voice traffic, but when switching to pass-through, the packetization period is reduced from 20 ms to 10 ms, which means that half as much data can be put into each frame. The result is that you need twice as many frames and twice as much IP overhead. For pass-through, the total bandwidth is 64 plus 32 kbps, for a total of 96 kbps. For normal voice traffic, total bandwidth is 64 plus 16 kbps, for a total of 80 kbps.
Packet redundancy may be used to mitigate the effects of packet loss in the IP network. Even so, fax pass-through remains susceptible to packet loss, jitter, and latency in the IP network. The two endpoints must be clocked synchronously for this type of transport to work predictably.
Performance may become an issue. To attempt to mitigate packet loss in the network, redundant encoding (1X or one repeat of the original packet) is used, which doubles the amount of data transferred in each packet. The doubling of packets imposes a limitation on the total number of ports that can run fax pass-through at one time. You can calculate that two voice sessions with no VAD equate to one fax pass-through session with redundancy.
Call Control for Fax Passthrough
Fax pass-through is supported under the following call-control protocols:
-
H.323
-
Session Initiation Protocol (SIP)
-
Media Gateway Control Protocol (MGCP)
In addition, the following information applies to H.323 and SIP fax pass-through.
Fax Pass-Through Signaling Using the Protocol Stack or NSEs
When a fax tone is detected, the originating and terminating gateways need to communicate to each other that they are changing to fax pass-through mode. Gateway signaling of the changeover to fax mode can use either of these methods:
-
H.323 or SIP protocol stack (fax pass-through)
-
Named signaling events (NSEs) (modem pass-through)
Beginning with Cisco IOS Release 12.2(13)T, you can specify the use of the H.323 or SIP protocol stack to signal the changeover to fax mode. This is enabled with the fax protocol pass-through command.
Alternately, you can use the modem passthrough command to configure the gateway to use Cisco-proprietary NSEs to signal the switch to pass-through mode. Fax pass-through using NSEs has been available on the Cisco AS5300 since Cisco IOS Release 12.1(3)T and on most other platforms since Cisco IOS Release 12.2(11)T.
Note |
Modem pass-through is preferred if all of the involved gateways are Cisco IOS gateways. |
If non-Cisco gateways are involved in the fax transmissions, fax pass-through must be used. In all cases, however, T.38 fax relay is the best solution if all of the involved gateways support it.
H.323 or SIP Support of Resource Reservation Protocol
As of Cisco IOS Release 12.2(13)T, H.323 or SIP gateways that are configured for fax pass-through or modem pass-through allow Resource Reservation Protocol (RSVP) bandwidth adjustments when the original voice call is configured to use RSVP. When the original voice codec is restored at the end of the fax session, the original RSVP bandwidth is restored as well. When current bandwidth is unavailable, the fax proceeds at a best-effort rate without RSVP and with no performance guarantees. RSVP bandwidth adjustments for fax transmissions are made as follows:
-
T.38 fax relay--RSVP bandwidth is adjusted to 80 kbps.
-
Fax pass-through--RSVP bandwidth is adjusted to 96 kbps.
H.323 Support for Call Admission Control
As of Cisco IOS Release 12.2(13)T, H.323 call admission control (CAC) adjustments are allowed in the case of fax pass-through and modem pass-through. An H.323 gateway that uses a gatekeeper requests the following bandwidths from the gatekeeper when codec changes are necessary:
-
T.38 fax relay--Bandwidth of 80 kbps
-
Fax pass-through--Bandwidth of 96 kbps
If the gatekeeper accepts the bandwidth changes, the session is permitted to continue over the fax codec (G.711). If the gatekeeper rejects the bandwidth increase, the fax codec is terminated and the gateway uses the configured fax protocol fallback or the original voice codec, in which case the fax transfer fails.
How to Configure H.323 and SIP Fax Pass-Through
For H.323 and SIP networks, fax pass-through is configured on gateway dial peers.
The purpose of these tasks is to configure VoIP dial peers for fax or modem pass-through, one at a time or globally. If both methods are used, an individual dial-peer configuration takes precedence over the global configuration, which means that a call matching a particular dial peer tries first to apply the fax method that was configured individually on that dial peer. If no individual dial peer configuration was made, the router uses the global configuration.
When configuring dial peers, you have the choice of specifying fax pass-through or modem pass-through for the pass-through method. If you use the fax protocol pass-through command to specify fax pass-through as the method, the gateway uses the H.323 or SIP protocol stack to signal the changeover to fax mode. If you use the modem passthrough command to specify modem pass-through as the method, the gateway uses NSEs for fax changeover signaling.
Note |
If you need to configure fax pass-through to work with Cisco CallManager (CCM), you must use the modem passthrough nse command. The fax protocol pass-through command does not work with CCM, which relies on NSE information. |
Configuring One or More Individual VoIP Dial Peers
Use this task to enable fax pass-through on individual dial peers. Select the fax protocol pass-through command or the modem passthrough command, but not both.
SUMMARY STEPS
- enable
- configure terminal
- dial-peer voice tag voip
- Do one of the following:
- fax protocol pass-through {g711ulaw | g711alaw } | system
- modem passthrough {system | nse [payload-type number ] codec {g711alaw | g711ulaw } [redundancy ]}
- fax-rate disable
DETAILED STEPS
Command or Action | Purpose | |||
---|---|---|---|---|
Step 1 |
enable Example:
|
Enables privileged EXEC mode.
|
||
Step 2 |
configure terminal Example:
|
Enters global configuration mode. |
||
Step 3 |
dial-peer voice tag voip Example:
|
Enters dial-peer configuration mode and defines a dial peer that directs traffic to or from a packet network.
|
||
Step 4 |
Do one of the following:
Example:
Example:
Example:
Example:
|
Specifies the type of fax protocol to use on this dial peer.
or Enables faxes to use modem pass-through and NSEs for fax changeover signaling.
|
||
Step 5 |
fax-rate disable Example:
|
(Optional) Disables fax protocol capability on this dial peer.
|
Configuring VoIP Dial Peers Globally
If you are adding fax pass-through capability previously defined VoIP dial peers, you can configure them globally in voice-service configuration mode.
Alternately, you can configure fax pass-through VoIP dial peers one at a time by following the instructions in the Configuring One or More Individual VoIP Dial Peers.
Note |
When fax or modem pass-through is configured under the dial-peer voice configuration, the configuration for an individual dial peer takes precedence over the global configuration under the voice service voip command. |
Note |
If you need to configure fax pass-through to work with Cisco CallManager (CCM), you must use the modem passthrough nse command. The fax protocol pass-through command does not work with CCM, which relies on NSE information. |
When using the voice service voip and modem passthrough nse commands on a terminating gateway to globally set up fax pass-through with NSEs, you must ensure that each incoming call is associated with a VoIP dial peer to retrieve the global fax configuration. Associate calls with dial peers using the incoming called-number command to specify a sequence of digits that incoming calls can match. You can ensure that all calls match at least one dial peer by using the following commands:
Router(config)# dial-peer voice tag voip
Router(config-dial-peer)# incoming called-number .
SUMMARY STEPS
- enable
- configure terminal
- voice service voip
- Do one of the following:
- fax protocol pass-through {g711ulaw | g711alaw }
- modem passthrough {nse | protocol } [payload-type number ] {codec {g711alaw | g711ulaw }} [redundancy [maximum-sessions sessions ] [sample-duration [10 | 20 ]]]
DETAILED STEPS
Command or Action | Purpose | |||
---|---|---|---|---|
Step 1 |
enable Example:
|
Enables privileged EXEC mode.
|
||
Step 2 |
configure terminal Example:
|
Enters global configuration mode. |
||
Step 3 |
voice service voip Example:
|
Enters voice-service configuration mode. |
||
Step 4 |
Do one of the following:
Example:
Example:
Example:
Example:
|
Specifies fax pass-through as the global transmission method for faxes, and the H.323 or SIP protocol stack to communicate codec switchover. Use the same codec for originating and terminating gateways. or Specifies modem pass-through as the global transmission method for fax and data.
|
How to Configure MGCP Fax Pass-Through
Use the following steps to configure MGCP fax pass-through on voice gateways. You must have the same configuration on the originating and terminating gateways.
Before you begin
Identify endpoints and configure the MGCP application as described in the MGCP and Related Protocols Configuration Guide.
SUMMARY STEPS
- enable
- configure terminal
- mgcp package-capability rtp-package
- mgcp modem passthrough voip mode nse
- mgcp modem passthrough voip codec {g711ulaw | g711alaw }
- mgcp modem passthrough voip redundancy [sample-duration [10 | 20 ]] [maximum-sessions sessions ]
- mgcp timer nse-response t38 timer
- mgcp fax t38 inhibit
DETAILED STEPS
Command or Action | Purpose | |||
---|---|---|---|---|
Step 1 |
enable Example:
|
Enables privileged EXEC mode.
|
||
Step 2 |
configure terminal Example:
|
Enters global configuration mode. |
||
Step 3 |
mgcp package-capability rtp-package Example:
|
Specifies an MGCP package capability type for a media gateway.
|
||
Step 4 |
mgcp modem passthrough voip mode nse Example:
|
Enables named signaling event (NSE) based modem relay mode for VoIP calls on an MGCP gateway.
|
||
Step 5 |
mgcp modem passthrough voip codec {g711ulaw | g711alaw } Example:
|
Selects the codec that enables the gateway to send and receive modem and fax data in VoIP configurations.
|
||
Step 6 |
mgcp modem passthrough voip redundancy [sample-duration [10 | 20 ]] [maximum-sessions sessions ] Example:
|
(Optional) Enables redundancy on a gateway that sends and receives modem and fax data in VoIP configurations. When redundancy is enabled, all calls on the gateway are affected.
|
||
Step 7 |
mgcp timer nse-response t38 timer Example:
|
(Optional) Configures how a gateway detects the RTP stream host.
|
||
Step 8 |
mgcp fax t38 inhibit Example:
|
(Optional) Configures MGCP fax T.38 parameters.
|
Configuration Examples for Fax Pass-Through
H.323 Fax Pass-Through Example
The following example show a configuration for fax pass-through with H.323 support.
version 12.2
service timestamps debug uptime
service timestamps log uptime
no service password-encryption
!
hostname 5850
!
no logging buffered
no logging rate-limit
!
resource-pool disable
dial-tdm-clock priority 1 trunk-slot 1 port 0
spe link-info poll voice 5
spe default-firmware spe-firmware-1
ip subnet-zero
ip cef distributed
ip ftp username mgcusr
ip ftp password lab
no ip domain lookup
ip host colos_tftp 10.100.00.00
ip host brios 255.255.255.255
ip dhcp smart-relay
!
isdn switch-type primary-net5
!
voice service voip
h323
modem passthrough nse codec g711alaw redundancy sample-duration 20
!
no voice hpi capture buffer
no voice hpi capture destination
!
mrcp client session history duration 0
mrcp client session history records 0
memory check-interval 3600
memory validate-checksum 7200
redundancy
no keepalive-enable
mode classic-split
!
controller E1 0/0
pri-group timeslots 1-31
!
dial-peer voice 5001 pots
incoming called-number 550
destination-pattern 800
direct-inward-dial
port 0/0:D
prefix 800
!
dial-peer voice 500 voip
incoming called-number 800
destination-pattern 550
session target ipv4:10.100.00.00
fax rate disable
codec g726r32
!
gateway
!
line con 0
exec-timeout 0 0
logging synchronous
line aux 0
exec-timeout 0 0
logging synchronous
line vty 0 4
password lab
no login
line 2/00 5/323
flush-at-activation
no modem status-poll
no modem log rs232
SIP Fax Pass-Through Example
The following configuration example shows fax pass-through with SIP support.
version 12.3
service timestamps debug datetime msec
service timestamps log datetime msec
no service password-encryption
!
hostname 2691
!
boot-start-marker
boot system flash:c2691-ipvoice-mz.andante_0224
boot-end-marker
!
logging buffered 100000 debugging
enable password lab
!
no aaa new-model
!
resource manager
!
memory-size iomem 25
clock timezone PST -8
clock summer-time PDT recurring
no network-clock-participate slot 1
voice-card 1
codec complexity high
dspfarm
!
ip subnet-zero
ip cef
!
no ip dhcp use vrf connected
!
no ip domain lookup
no ftp-server write-enable
isdn switch-type primary-qsig
!
voice service voip
fax protocol pass-through g711ulaw
sip
!
controller T1 1/0
framing sf
linecode ami
!
controller T1 1/1
framing sf
linecode ami
!
interface FastEthernet0/0
ip address 10.20.109.104 255.255.0.0
duplex auto
speed auto
!
interface FastEthernet0/1
no ip address
shutdown
duplex auto
speed auto
!
ip default-gateway 10.20.0.1
ip classless
ip route 0.0.0.0 0.0.0.0 10.20.0.1
!
no ip http server
!
control-plane
!
dial-peer voice 2000 voip
fax rate disable
fax protocol pass-through g711alaw
!
line con 0
exec-timeout 0 0
line aux 0
line vty 0 1
exec-timeout 0 0
password lab
login
line vty 2 4
login
!
ntp clock-period 17180778
ntp server 10.10.254.253 prefer
!
end
MGCP Fax Pass-Through Example
The following example shows an MGCP gateway configured for fax pass-through.
version 12.2
no parser cache
service timestamps debug datetime msec
service timestamps log datetime msec
no service password-encryption
!
hostname fptrtr
!
voice-card 1
!
ip subnet-zero
!
no ip domain lookup
!
isdn switch-type primary-5ess
!
voice call carrier capacity active
!
mta receive maximum-recipients 0
!
ccm-manager mgcp
no ccm-manager fax protocol cisco
!
controller T1 1/0
framing esf
clock source line primary
linecode b8zs
ds0-group 0 timeslots 1 type fxs-loop-start
!
controller T1 1/1
framing esf
linecode b8zs
ds0-group 0 timeslots 1 type e&m-wink-start
!
interface Ethernet0/0
ip address 10.3.222.6 255.255.0.0
ip helper-address 10.3.222.1
no ip mroute-cache
half-duplex
!
interface Ethernet0/1
shutdown
!
ip default-gateway 10.3.0.1
ip classless
ip route 192.168.254.0 255.255.255.0 10.3.0.1
ip http server
!
call rsvp-sync
!
voice-port 1/0:0
!
voice-port 1/1:0
!
voice-port 3/0/0
!
voice-port 3/0/1
!
mgcp
mgcp call-agent 10.3.222.1 service-type mgcp version 0.1
mgcp modem passthrough voip mode nse
mgcp package-capability rtp-package
mgcp fax t38 inhibit
!
mgcp profile default
!
dial-peer cor custom
!
dial-peer voice 3641 pots
application mgcpapp
port 3/0/0
!
dial-peer voice 3643 pots
application mgcpapp
port 1/1:0
!
line con 0
exec-timeout 0 0
line aux 0
line vty 0 4
exec-timeout 0 0
password cisco
login
!
!
end