One way calling CUCM 6.0 / MGCP

Answered Question
Nov 5th, 2007

Whenever I dial into a phone or have the phone dial out it's always a one way conversation. I can never talk on the IP phone and have the other end hear it. The other end can always talk and it will come through the IP phone. The network topology is a CCM box then routes to a ASA then to a MGCP gateway. Any ideas or tips on what to look for? It's almost as if the firewall is blocking a port or something but I have everything opened between the two boxes.

I have this problem too.
0 votes
Correct Answer by allan.thomas about 9 years 2 months ago

The following is the VoIP call leg extract from the MGCP_Log2:-

MDCX 1580 S0/SU2/DS10/[email protected].n_codec_list(647):[lvl=0]begin

Nov 7 00:12:09.223: //-1/xxxxxxxet MGCP 0.1

C: D000000001a3a96b000000F580000066

I: 3

X: 13

L: p:20, a:G.729, s:off, t:b8

M: sendrecv

R: D/[0-9ABCD*#]

S:

Q: process,loop

v=0

o=- 3 0 IN EPN S0/SU2/DS1-0/[email protected]

s=Cisco SDP 0

t=0 0

m=audio 24896 RTP/AVP 18

c=IN IP4 192.168.30.250

<---

You can see that the compression codec algorithm option is a:G.729 is only G.729, I would have expected something like a:PCMU;PCMA;G726-32.

When the call is established can run 'show voice call summary' and 'show voice dsp' and post the output.

Also can you confirm that the call agent name tweak is in fact the hostname of your CCM on IP address 192.168.30.250?

Can you amend the mgcp call-agent command to 'mgcp call-agent 192.168.30.250 2427 service-type mgcp version 0.1'

Also when you configured the MGCP bind commands did you initiate a reset of the gateway through CCM?

Please could you also post the output of the 'show ccm-manager' command.

Regards

Allan.

  • 1
  • 2
  • 3
  • 4
  • 5
Overall Rating: 5 (1 ratings)
Loading.
jbarcena Mon, 11/05/2007 - 09:23

90% of the times one way audio issues are because of routing issues. I recommend you to take a CCM detailed trace on the CCM where the phone is registered, then make a call and gather the trace. Most likely you will see the Create Connection message to one IP that you can reach but then a Modify Connection message to an IP that you can not ping, probably a bind on the GW will help.

Upload the trace and we can go from there.

nicolas.jachiet Mon, 11/05/2007 - 09:49

You can check the routing issue. During a phone call, if you press two times on the "?" key, you will have the details about the call. It includes the number of packets received.

If it stays at 0, you know were to search :)

rraver Mon, 11/05/2007 - 11:33

It's only on calls that go through the MGCP gateway and it's always the person on the IP phone or internal endpoint not being able to talk to the person on the other side of the PSTN. Internal calls seem to be fine between IP phoens. When I hit the "?" mark twice it shows packets going back and forth.

HoustonG33K Mon, 11/05/2007 - 11:41

I had the same issue. Check your ACLs, firewall and routes. The phone can go out but coming in it can't get to the phone.

rraver Mon, 11/05/2007 - 11:43

Another note is that inbound calls work, I can call from a phone on the PSTN and have it routed to an IP phone endpoint. After the call is active it's the same behavoir. Everything shows established and registered for the gateway though. I know it's not a routing issue because they both communicate when a call is initiated from inside the network or outside. Also they both show registered and can talk to each other. I just double checked the access-lists are permitting anything between these two hosts.

allan.thomas Mon, 11/05/2007 - 18:28

A common problem is the source address for MGCP packets on the IOS gateway. Verify which address port 2427 is bound to 'show ip socket'.

Typically MGCP will bind to a logical loopback address, ensure that if this is the case the you are able to route to this address. Alternatively bind MGCP to a reachable IP address, for example the FastEthernet/LAN IP address.

Regards

Allan.

HTH.

Please rate helpful posts.

rraver Tue, 11/06/2007 - 13:23

This is what I found:

generaldisarray#show processes | inc MGCP

297 Mwe 60AA8FA8 172 9500 18 4044/12000 0 MGCP Application

308 Mwe 60ABACF0 20 25386 0 5512/6000 0 MGCP App STW Tic

309 Mwe 60ABA494 4 8 500 3760/6000 0 MGCP App DNS

310 Mwe 60AE25BC 0 1 011600/12000 0 MGCP App TFTP

generaldisarray#

generaldisarray#

generaldisarray#show sockets 297 detail

FD LPort FPort Proto Type TransID

0 2427 0 UDP DGRAM 0x67E3970C

State: SS_ISBOUND

Options: SO_NBIO, SO_STRICT_ADDR_BIND

Total open sockets - TCP:0, UDP:1, SCTP:0

I specifically bound to the interface I know works.

mgcp bind control source-interface FastEthernet0/1

mgcp bind media source-interface FastEthernet0/1

Rob

rraver Tue, 11/06/2007 - 13:41

I did some traces for it and have them uploaded. Both were 20 sec calls one originating from the IP phone the other originating from the PSTN (Cell phone). Both of which have the same results, the PSTN (Cell phone) end point can talk and it reaches the IP Phone, but when someone talks on the IP phone it doesn't reach the PSTN.

allan.thomas Tue, 11/06/2007 - 15:19

Incidentally when you configured the MGCP bind commands, can you reload the MGCP app by running 'no mgcp' and then 'mgcp'. Once you have done this can you run 'show ip socket' and post the output.

Also can you post the output of a debug mgcp packet from the IP originating side. I want to establish whether the connection mode becomes two-way send and receive this means full conversation.

One other consideration if you have elimated IP routing issues, is that the Telco correctly Sends and Receives Answer supervision.

Failure to receive the answer supervision causes the Cisco IOS gateway to fail to cut through (open) the audio path in a forward direction.

This failure causes one-way voice. A workaround is to issue the voice rtp send-recv global command.

The voice path is established in the backward direction at the start of the RTP stream.

The forward audio path is not cut through until the Cisco IOS gateway receives a Connect message from the remote end.

In some cases, it is necessary to establish a two-way audio path as soon as the RTP channel is opened, which is before the Connect message is received. In order to achieve this, issue the voice rtp send-recv global configuration command.

Another possiblity is that you could be running into a known issue, so please can you advise platform and IOS release so that I can look into it.

Regards

Allan.

rraver Tue, 11/06/2007 - 16:29

I added the command and it didn't help any, I also reloaded the router and ran no mgcp / mgcp.

Also, the show ip socket command doesn't work in this ver of IOS. I can find the PID and then reference that into the show sockets command. The following output is what I get:

generaldisarray#show processes cpu | inc MGCP

297 372 10648 34 0.16% 0.10% 0.09% 0 MGCP Application

309 36 28258 1 0.24% 0.18% 0.16% 0 MGCP App STW Tic

310 0 8 0 0.00% 0.00% 0.00% 0 MGCP App DNS

311 0 1 0 0.00% 0.00% 0.00% 0 MGCP App TFTP

generaldisarray#show sockets 297 detail

FD LPort FPort Proto Type TransID

0 2427 0 UDP DGRAM 0x67A65608

State: SS_ISBOUND

Options: SO_NBIO, SO_STRICT_ADDR_BIND

Total open sockets - TCP:0, UDP:1, SCTP:0

generaldisarray#

MGCPlog - Call from IP endpoint to cell

MGCPlog2 - Call from cell to IP endpoint no answer

showver - Show ver of router

Attachment: 
allan.thomas Tue, 11/06/2007 - 17:57

Certainly from the configuration and traces there are couple aspects which require clarification:-

1) The configuration of the router, specifically the FE interface has NAT configured?

NAT traversal in MGCP, NAT traversal in RTP requires a client must specifiy what type of NAT it sits behind.

RTP Support for MGCP-Based Calls does allow calls to flow through Network Address Translation networks unaware of voice signaling. This does require additional config. Can NAT command be removed from the FE?

2) The traces MGCP_Log2 certainly indicates full conversation state.

However, from the call agent messages it appears that G729 is being used? Can you please confirm/verify that the gateway is within the same region as the IP Phone endpoints and that the appropriate codec is being used within the same region. Or are the IP Phones and Gateway in different regions, they are certainly on different subnets?

Can you post the output of the 'show mgcp' command.

Incidentally I could not find any resolved on closed caveat in relation to this problem under the current IOS installed.

Regards

Allan.

rraver Tue, 11/06/2007 - 18:58

show mgcp :

MGCP Admin State ACTIVE, Oper State ACTIVE - Cause Code NONE

MGCP call-agent: tweak 2427 Initial protocol service is MGCP 0.1

MGCP validate call-agent source-ipaddr DISABLED

MGCP validate domain name DISABLED

MGCP block-newcalls DISABLED

MGCP send SGCP RSIP: forced/restart/graceful/disconnected DISABLED

MGCP quarantine mode discard/step

MGCP quarantine of persistent events is ENABLED

MGCP dtmf-relay for VoIP is SDP controlled

MGCP dtmf-relay for voAAL2 is SDP controlled

MGCP voip modem passthrough mode: NSE, codec: g711ulaw, redundancy: DISABLED,

MGCP voaal2 modem passthrough disabled

MGCP voip modem relay: Disabled

MGCP T.38 Named Signalling Event (NSE) response timer: 200

MGCP Network (IP/AAL2) Continuity Test timer: 200

MGCP 'RTP stream loss' timer disabled

MGCP request timeout 500

MGCP maximum exponential request timeout 4000

MGCP rtp unreachable timeout 1000 action notify

MGCP gateway port: 2427, MGCP maximum waiting delay 3000

MGCP restart delay 0, MGCP vad DISABLED

MGCP rtrcac DISABLED

MGCP system resource check DISABLED

MGCP xpc-codec: DISABLED, MGCP persistent hookflash: DISABLED

MGCP persistent offhook: ENABLED, MGCP persistent onhook: DISABLED

MGCP piggyback msg ENABLED, MGCP endpoint offset DISABLED

MGCP simple-sdp ENABLED

MGCP undotted-notation DISABLED

MGCP codec type g711ulaw, MGCP packetization period 20

MGCP JB threshold lwm 30, MGCP JB threshold hwm 150

MGCP LAT threshold lwm 150, MGCP LAT threshold hwm 300

MGCP PL threshold lwm 1000, MGCP PL threshold hwm 10000

MGCP CL threshold lwm 1000, MGCP CL threshold hwm 10000

MGCP playout mode is adaptive 60, 40, 200 in msec

MGCP Fax Playout Buffer is 300 in msec

MGCP media (RTP) dscp: ef, MGCP signaling dscp: af31

MGCP default package: line-package

MGCP supported packages: gm-package dtmf-package trunk-package line-package

hs-package rtp-package ms-package dt-package mt-package

sst-package pre-package md-package

MGCP Digit Map matching order: shortest match

SGCP Digit Map matching order: always left-to-right

MGCP VoAAL2 ignore-lco-codec DISABLED

MGCP T.38 Max Fax Rate is DEFAULT

MGCP T.38 Fax is ENABLED

MGCP T.38 Fax ECM is ENABLED

MGCP T.38 Fax NSF Override is DISABLED

MGCP T.38 Fax Low Speed Redundancy: 0

MGCP T.38 Fax High Speed Redundancy: 0

MGCP Fax relay SG3-to-G3: ENABLED

MGCP control bound to interface FastEthernet0/1

MGCP media bound to interface FastEthernet0/1

MGCP Upspeed payload type for G711ulaw: 0, G711alaw: 8

MGCP Static payload type for G.726-16K codec

MGCP Dynamic payload type for G.726-24K codec

MGCP Dynamic payload type for G.726-32K codec

MGCP Dynamic payload type for G.Clear codec

MGCP Dynamic payload type for NSE is 100

MGCP Dynamic payload type for NTE is 99

MGCP rsip-range is enabled for TGCP only.

MGCP Comedia role is NONE

MGCP Comedia check media source is DISABLED

MGCP Comedia SDP force is DISABLED

MGCP Guaranteed scheduler time is DISABLED

MGCP DNS stale threshold is 30 seconds

Also,

The ip nat inside on the fa 0/1 of the router is only to route outside it's data WAN circuit. The topology is below

CUCM 6.0 ---- ASA ---- Gateway (2801)

192.168.30.250 .. 30.254 .. 2.9 ..172.16.2.2

The ASA does a static translation between the CUCM and Gateway which doesn't convert the IP address. Traffic is allowed both directions with no limitations. I have done a ssh/telnet between the two devices to verify routing and permissions are correct. I removed the NAT from the inside interface and did a reset with no luck.

All phones are in the default device pool which is G.711, I am unsure why it would be G.729.

Correct Answer
allan.thomas Wed, 11/07/2007 - 03:16

The following is the VoIP call leg extract from the MGCP_Log2:-

MDCX 1580 S0/SU2/DS10/[email protected].n_codec_list(647):[lvl=0]begin

Nov 7 00:12:09.223: //-1/xxxxxxxet MGCP 0.1

C: D000000001a3a96b000000F580000066

I: 3

X: 13

L: p:20, a:G.729, s:off, t:b8

M: sendrecv

R: D/[0-9ABCD*#]

S:

Q: process,loop

v=0

o=- 3 0 IN EPN S0/SU2/DS1-0/[email protected]

s=Cisco SDP 0

t=0 0

m=audio 24896 RTP/AVP 18

c=IN IP4 192.168.30.250

<---

You can see that the compression codec algorithm option is a:G.729 is only G.729, I would have expected something like a:PCMU;PCMA;G726-32.

When the call is established can run 'show voice call summary' and 'show voice dsp' and post the output.

Also can you confirm that the call agent name tweak is in fact the hostname of your CCM on IP address 192.168.30.250?

Can you amend the mgcp call-agent command to 'mgcp call-agent 192.168.30.250 2427 service-type mgcp version 0.1'

Also when you configured the MGCP bind commands did you initiate a reset of the gateway through CCM?

Please could you also post the output of the 'show ccm-manager' command.

Regards

Allan.

rraver Wed, 11/07/2007 - 15:28

I did what you requested and the codec is still G.729. Also, tweak.part.net is 192.168.30.250. A did some tcpdumps and I noticed I wasn't seeing RTP data from the phone. Looking at the network configuration settings I noticed that a default gateway wasn't being picked up. After restarting the DHCP services in the CUCM box I reset the phones and they picked up the default gateway. It now works, thank you a ton for the help you provided. It was the show voice commands that lead to me to find out about the RTP packets which lead me to do a dump.

Rob

Actions

This Discussion