H323: Who is responsible for using an MTP?

Unanswered Question
May 12th, 2008
User Badges:

Does anybody which end of a call is resonsible for using an MTP?

Is it the caller?

..... the called part?

..... or always Call Manager?

I am trying to troubleshoot a one way audio issue on inbound calls after call is placed on hold and then resumed.

We have an integration between CCM4.3(2) and a Nortel CS2K Softswitch. The Cisco IP Phones are using G729a 20ms and the Nortel CS2K Softswitch is using G711alaw 10ms. Consequently, we have deployed a Cisco 3825 SP Services 12.4(16b) as a hardware transcoder.

We can establish successfully inbound and outbound calls. However, when the inbound call is modified (placed on hold) we get one way audio.

Traces show that outbound calls utilise hardware MTP but inbound calls do not.

Furthermore, packet traces also show that there are duplex G711 A LAW RTP streams between the xcoder and Nortel softswitch before and during the call is placed on hold. But after a Resume softkey is pressed, the xcoder starts sending G711 U LAW RTP packets to the softswitch. This is successfully relayed to the phone on the softswitch but the RTP stream from the Nortel switch, still G711 A LAW to the xcoder is not relayed to the IP phone.

Obviously, we have a codec mismatch, but can not tell why it changes to ULAW after placing a call on hold. Is this a defect with the IOS or is there something wrong with our configuration?



PSTN <- Nortel H323 Softswitch (G711alaw 10ms) <- c3825-spservicesk9-mz.124-16b (XCODER/HW MTP) <- CCM 4.3(2) <- (G729a 20ms) CP7941

Outbound call from IP Phone to PSTN is successfully established. One transcoder session and one hardware MTP session is used. When call is placed on hold by IP phone and then resumed a two way audio stream is re-established.



PSTN -> Nortel H323 Softswitch (G711alaw 10ms) -> c3825-spservicesk9-mz.124-16b (XCODER) -> CCM 4.3(2) -> (G729a 20ms) CP7941

Inbound call from PSTN to IP Phone is successfully established. One transcoder session is used but no hardware MTP session is used (for some reason). However, when call is placed on hold by IP phone and then resumed there is audio from IP phone to PSTN but not PSTN to IP Phone.

Any help much appreciated.

Kind regards


  • 1
  • 2
  • 3
  • 4
  • 5
Overall Rating: 0 (0 ratings)
e.huntley Tue, 05/13/2008 - 11:57
User Badges:

A couple of general questions to start with.

1. Do you have the applicable codecs assigned to the transcoder profile.

2. Do you have the transcoder and MTP in a MRGL assigned to both the phones and the gateway

christopher.jeffs Wed, 05/14/2008 - 00:29
User Badges:

Hi e.huntley

Thank you for your quick response.

1. Yes we have G711 a and u law plus G729a.

dspfarm profile 1 transcode

codec g711alaw

codec g729ar8

codec g711ulaw

maximum sessions 85

associate application SCCP


2 Yes, the phone and H323 Trunk both use the same MRGL which contains the same xcoder and HW MTP.

Kind regards


abdel-moniem Thu, 05/15/2008 - 10:16
User Badges:


I will try to give you some points of thoughts to look at it the way you like and please tell me the result

What is the Transcoder MTP being defined on the CUCM ..is it IOS MTP or IOS enhanced MTP ?? it should be Enhanced MTP.

As it is on 38xx ISR so I suppose it is PVDM2 [if it is on the Motherboard ] so try to make the Codec complexity to be FLEX not medium [ also specify if it is on NM or not]

Try Also to check The "MTP required" check box on the CCM H225 trunk configuration [ Try it and see if it makes a difference ]

Normally the DSP should transparently comply with G711u/a law ...although it is not a normal behavior to begin streaming in U law , but it is normal in some cases as the Main codec coded in the DSP firmware is to stream U law

Tell me what is the DSPware version ? try to change it to another one [ with IOS 12.4(15)Tx ) is good

christopher.jeffs Thu, 05/15/2008 - 23:38
User Badges:

Hi Abdel,

Thank you for your response.

Yes I can confirm that we are using IOS Enhanced MTP's and that the codec complexity is flex. The PVDM2's are on a NM-HDV with no voice port. The "MTP required" is ticked, hence it using it for outbound calls.

The DSPware version is 4.4.26. We did try 12.4(15)T5 but that didnt make any difference. The MTP was still not used for inbound calls. Consequently, when the call was placed on hold, the codec between the IP phone and the transcoder changed from alaw to ulaw.

Kind regards


abdel-moniem Fri, 05/16/2008 - 00:02
User Badges:

MTP is checked to Support Suppelemntry services with 3rd party H323 , or softswitch , and also forces the use of MTP in the Call flow

so does it matter if you MTP checked or Not ?

Another thing

try to make Two MRGs , With Two MRGL put the the Same Xcoder in both and assign one to the GW and the other to the IP phone

try it

abdel-moniem Tue, 05/20/2008 - 05:32
User Badges:

Tell me , Any result of the Testing

Did you able to solve the Issue?

christopher.jeffs Tue, 05/20/2008 - 06:34
User Badges:

Hi Abdel,

The issue is still outstanding.. we are progressing with a TAC case.

The current status is that the xcoder is changing the codec because an MTP is not being invoked for inbound calls.

We have found from the CCM traces that the the MTP is getting allocated...

05/16/2008 13:40:50.595 CCM|DeviceManager::findDeviceInfoGivenKey - Name=PKR_MTP1 Key={7224403E-A4ED-4D7F-9290-672A85A8379C} Pid=(3,62,33)|

But the MTP doesn't support G729 (capBcount is the cap count for the MTP which is only so this looks to be software MTP with G711a/ulaw)

05/16/2008 13:40:50.595 CCM|RegionsServer::MatchCapabilities -- kbps=64, capACount=3, capBCount=2|

05/16/2008 13:40:50.595 CCM|RegionsServer::MatchCapabilities -- kbps=8, capACount=9, capBCount=2|

05/16/2008 13:40:50.595 CCM|MediaTerminationPointControl(33)::waiting_AllocateMtpResourceReq - ERROR - mismatch cap. match1=1, match2=0|

So this explains why MTP is not being used for inbound calls.

So we are left to reconfigure out hardware MTP to support G729. Currently it is...

dspfarm profile 2 mtp

codec g711alaw

maximum sessions hardware 86

associate application SCCP

But we are unable to set any other codec on the ISR.

abdel-moniem Tue, 05/20/2008 - 06:47
User Badges:


Your are right the CCM trace Doesnt Allocate the Correct MTP resource for Transcoding and Media Termination

Normally in PVDM2 , DSPFARM profile for the Xcoder supports the MTP functionality with diverse codecs .

Define the DSPFARM for Xcoder not MTP and Allow the G729ar8 put it in a seperate MRG called "HW_XCODER_MTP" and creat a MRGL specially for the IP phone and put it on the Device level

Also put the other MRGL to the GW...

I know it is all the Same HW MTP , but try to see the difference in the Trace when you do that

j.reinbold Sat, 06/07/2008 - 15:59
User Badges:

Hi Christopher,

your issue is interesting for me as the description is exactly the same as an issue I've seen on a voip network I've installed.

I've opened a severity 1 case with TAC because a callcenter connected behind the CUCM with a H323 trunk was having very big troubles and one way voice because of the codec problems with MTP.

Through the case I've learned the following:

- Check if your calls are going through the default dialpeer 0.

( seen with sh voice call status). When it is the case, add an inbound voip dialpeer with incoming called number 0T (the same as the outgoing pstn pots destination pattern) and add a voice class codec list with the needed codecs.

- Fact: Default dialpeer is using G729 in one direction#

- Fact: g711alaw/ulaw transcoding is hard coded and should not use any ressources in the dsp pool. Tha't why the target should be to not use MTP on the Gwy config in cucm as ressources are burned.

My solution:

- use H323 slow start under voice service voip

- use only mtp maximum sessions sw (hw not needed as transcoding ressources are used when needed)

- unckeck MTP on gwy config in cucm

- keep video call as audio call checked ( because existing video clients such as video adv. are transmitted in "unrestriced digital" on the isdn if not checked.

- use MRG and MRGL with only the router resoures included and cucm moh and annunciator (because it is ever needed)

- use a voice class codec list in the following order : g711ulaw (most used into the voip network, g711alaw for fax/modem or pstn calls europe, g729.

In my case, after this config I could see that no more unnecessary resources on the router were used, and if MTP was necessary for some pstn features like external tranfers to a pstn mobile phone, the sw mtp's were used.

What I've seen also is that if you are trying to use cucm resources instead of router resources, you will rapidely have critical system messages about exhausting mtp/transcoding resources on the cucm.

I did no find out how the limitation on the cucm is and if it is possible to increase the threshold on the cluter.

It would be very interesting for me to know how you did resolve the issue as I've find also the use of transcoding and of mtp's a little bit strange...

For your information: pstn is located in germany and switch type is isdn primary net 5



christopher.jeffs Mon, 06/09/2008 - 09:13
User Badges:

Hi Jacky,

Thank you for taking the time to respond to my query.

I too have an open Cisco TAC case. It is currently with the developers as we think I may have hit CSCeb75407 (which is not publically assessible!!)

I am not using any dial peers as this is a H323 Gatekeeper controlled trunk directly between Call Manager and the Nortel Soft switch. The transcoders are only signalled via Skinny.

I agree with you, if an call is passed through a transcoder then an MTP is not required as it should be able to support both roles. However, I was finding that on outbound PSTN calls it used a MTP with the xcoder (and worked perfectly). But when it was an inbound PSTN call it didnt use an MTP with the transcoder. Consequently, the transcoder somehow changed codecs from G711alaw to G711ulaw as soon as the call was hold/resumed and I got one way audio.

It is interesting that you mentioned H323 slow start though. I am using fast start as directed by some previous interop testing. But I will give that a try.

It appears (again due to another defect) that Hardware DSP's can only support G711 MTP mode. Since the my original post, I have switched to using IOS Software MTP's. This gives me (on a 3825 ISR) a maximum of 200 sessions, against the default ceiling of 24 on a Call Manager.

My issue is still outstanding. As a work around, I have changed the codec of the IP phones and the Nortel softswitch to G729a 10ms, thus matching the capabilities and temporarily eliminating the need for the transcoder. As soon as I did that MTP's were being invoked in both directions, with one exception!!!! When an inbound PSTN call is ultimately forwarded to a Unity Connection box, it doesnt use an MTP and I get one way audio again. Arrrgh!! I suspect is because the capabilities dont match again and I need a transcoder - here we go again!!

Thanks for help.

Kind regards



This Discussion