phone call is established from an IP station through a Cisco IOS voice
gateway/router, only one of the parties receives audio (one-way communication).
toll-bypass call is established between two Cisco gateways, only one of the
parties receives audio (one-way communication).
improperly configured Cisco IOS gateway, a firewall, or a routing or default
gateway problem, among other things, can cause this problem.
IP Routing is Enabled on Cisco IOS Gateway/Routers
IOS gateways, such as the VG200, have IP routing disabled by default. This will
lead to one-way voice problems.
Before going any
further, make sure that your router has IP routing enabled (that is, does not
have the global configuration command
IP routing, enter the following global configuration command in your Cisco IOS
Check Basic IP Routing
that basic IP access should always gets checked first. Because RTP streams have
no connections (transported over UDP), traffic may travel successfully in one
direction but get lost in the opposite direction.
configured at the end stations
IP routes on the
default gateways, mentioned above, leading to the destination networks
The following list
explains how to verify the default router/gateway configuration on various
Cisco Unified IP
For Cisco DT24+
Gateways, check the DHCP Scope and make sure that a Default Gateway (003
router) option exists in the scope. The 003 router parameter populates the
Default Gateway field in the devices and PCs. Scope option 3 should have the IP
address of the router interface that will be doing routing for the gateway.
Bind the H.323 Signaling to a
Specific IP Address on Cisco IOS Gateway/Routers
Cisco IOS gateway has multiple active IP interfaces, some of the H.323
signaling may use one IP address for course, and other parts of it may
reference a different source addresses. This can generate various kinds of
problems, including being one-way audio.
To avoid the
problem, the H.323 signaling can be bound to a specific source address, which
can belong to a physical or virtual interface (loopback). The command syntax to
use under the interface configuration mode follows:
h323-gateway voip bind
srcaddr<ip address>. Configure this command under the interface with
the IP address to which the Cisco Unified Communications Manager points.
Configuring H.323 Support for
Virtual Interfaces documents this command, which was introduced in Cisco
IOS Release 12.1.2T.
A bug exists in
version 12.2(6) where this solution can actually cause a one-way audio problem.
For more information, refer to bug ID CSCdw69681 (registered customers only) in
Cisco Software Bug Toolkit (registered customers only).
Check that Answer Supervision
Is Being Sent and Received Correctly from the Telco or Switch
implementation that has a Cisco IOS gateway connected to a Telco or switch,
verify that answer supervision gets sent correctly when the called device
behind the telco or switch answers the call. Failure to receive the answer
supervision will cause the Cisco IOS gateway not to cut through (open) the
audio path in a forward direction which causes one-way voice. A workaround
involves the need to configure
voice rtp send-recv
Cut-through Two-Way Audio
Early Using voice rtp send-recv on Cisco IOS Gateway/Routers
path gets established in the backward direction as soon as the RTP stream is
started. The forward audio path will not be cut through until the Cisco IOS
gateway receives a Connect message from the remote end.
cases you need to establish a two-way audio path as soon as the RTP channel is
opened—before the connect message is received. To achieve this, use the
send-recv global configuration command.
Check cRTP Settings on a
Link-by-Link Basis on Cisco IOS Gateway/Routers
applies to scenarios, such as toll-bypass, where more than one Cisco IOS
router/gateway is involved in the voice path and Compressed RTP (cRTP) is used.
cRTP, or RTP Header Compression, designates a method for making the VoIP packet
headers smaller to regain bandwidth. cRTP takes the 40-byte IP/UDP/RTP header
on a VoIP packet and compresses it to 2-4 bytes per packet, yielding
approximately 12Kb of bandwidth for a G.729 encoded call with cRTP.
on a hop-by-hop basis with decompression and recompression on every hop.
Because each packet header needs to be examined for routing, enable cRTP on
both sides of an IP link.
that cRTP is working as expected on both ends of the link. Cisco IOS levels
vary in terms of switching paths and concurrent cRTP support.
the history follows:
Until Cisco IOS
Software Release 12.0.5T, cRTP gets process-switched.
Cisco IOS Software
Release 12.0.7T, fast- and Cisco express forwarding (CEF)-switching support for
cRTP, which introduced and continue in 12.1.1T.
In Cisco IOS
Software Release 12.1.2T, introduced algorithmic performance improvements.
If you are
running cRTP on Cisco IOS platforms (IOS Release 12.1), verify that bug
CSCds08210 (registered customers only) (VoIP and FAX not working with RTP
header compression ON) does not affect your IOS version.
Verify Minimum Software Level
for NAT on Cisco IOS Gateway/Routers
If you are
using Network Address Translation (NAT), you must meet the minimum software
level requirements. Earlier versions of NAT do not support skinny protocol
translation and will lead to one-way voice issues.
software levels that are required for using NAT and skinny simultaneously
IOS Software 12.1(5)T for IOS gateways to support skinny
and H.323v2 with NAT.
If your Cisco
Unified Communications Manager is using a TCP port for skinny signaling that
differs from the default 2000, you need to adjust the NAT router with the ip nat service skinny tcp
port<number> global configuration command.
software level that is required for using NAT and skinny simultaneously on a
PIX firewall specifies 6.0.
These levels of
software do not necessarily support all the RAS messages necessary for full
gatekeeper support. Gatekeeper support occurs outside the scope of this
Disable voice-fastpath on
AS5350 and AS5400
enable gets a hidden global configuration command for the AS5350 and
AS5400, which is enabled by default. To disable it, use the
enable global configuration command.
enabled, this command caches the IP address and UDP port number information for
the logical channel that is opened for a specific call and prevents the RTP
stream from getting to the application layer, but rather forwards the packets
at a lower layer. This helps marginally reduce CPU utilization in
supplementary services, such as hold or transfer are used, the voice-fastpath
command causes the router to stream the audio to the cached IP address and UDP
port, disregarding the new logical channel information that was generated after
a call on hold was resumed or a transfer was completed. To avoid this problem,
traffic should go to the application layer constantly, so redefinition of the
logical channel gets taken into account, and audio gets streamed to the new IP
address/UDP port pair. That explains why you should disable voice-fastpath to
support supplementary services.
Configure the VPN IP Address
SoftPhone offers the ability to make a PC work like a Cisco Unified IP Phone
model 7900 Series phone. Remote users who connect back to their company network
through VPN need to configure some additional settings to avoid a one-way voice
requires you to configure the VPN IP address, instead of the IP address of the
network adapter under the Network Audio Settings.
command to verify packet flow specifies
rtp. This command displays packets that the router transmits (X) and
receives (R). An uppercase character indicates successful
transmission/reception whereas a lowercase character indicates a dropped
packet. See the following example:
voice-ios-gwy#debug cch323 rtp
RTP packet tracing is enabled
!--- This is an unanswered outgoing call.
!--- Notice that voice path only cuts through in forward
!--- direction and that packets are dropped. Indeed,
!--- received packets are traffic from the IP phone to the PSTN
!--- phone. These will be dropped until the call is answered.
Mar 3 23:46:23.690: ****** cut through in FORWARD direction *****
!--- This is an example of an answered call:
*Mar 3 23:53:26.570: ****** cut through in FORWARD direction *****
!-- At this point the remote end picks up the phone.
*Mar 3 23:53:30.378: ****** cut through in BOTH direction *****
!-- End of conversation.