Hi there, this is just a general discussion on MRG and MRGL.
I used to assume that if Hardward Conference Bridge is placed ahead of software conference bridge, CUCM will still skip the hardware conference bridge and use the software conference bridge if the call are all from same site, which uses the G711. But recently I have found out this is not the case. In CUCM if there is hardware conference bridge first in the MRGL list then it will always use hardware conference bridge first, doesn't matter if the call all in G711 or involves g729.
we are runing CUCM 8.6, can someone reply back to me to confirm this is normal behavior in CUCM? many thanks Roy.
Resources are used in a best effort round robin fashion, this is explained in the SRND.
So yes, from the same MRG, you do not control which one you'll end up using.
You should use different groups for HW and SW to control that.
Sent from Cisco Technical Support iPad App
Hi Jaime, thanks for reply. I have tried just now. first conference group call used hardared conference bridge and second conference call group used again the hardware conference bridge, not the software CFB. so seem to me this is not "rond roubin fashion". otherwise I should expect second call move to software CFB.
My concerns is if we have Hardware CFB first ahd Software CFB second, then if the Hardware CFB reach the maximum and next it shoud move to software CFB, but if let's say this conference call mixed with different codec and call will failed. since software CFB can not handle other than G711 codec? cheers Roy
Jaime is correct, within a MRG we can not control how a resource is allocated. Also, Round-Robin behavior is exhibited only when there are more than one active call. If there are no active calls, the first incoming call goes to any device in the first MRG.
Your assumption is correct, that software CFB can only handle g711 calls.
Suppose you have hardware CFB in the first MRG and software CFB in the second MRG within the same MRGL. In that case the callmanager will always allocate the hardware CFB first until the resources are exhausted in first MRG before moving to the next MRG.
What you can do is - have a software based MRG at the top and the hardware based below it and then make some test calls and let us know how it goes.
In your case it depends on how you have configured your MRG and MRGL.
Because in MRG you can not set the priorities of media resources and hence resources will be used based on round robin.
For ex:- If in same MRG you have both resources i.e. software and hardware CFB, then resources will be used in round robin or randomly.
While in MRGL you can set priorities of MRG, so everytime first MRG resources will be used. It will not use resources of 2nd priority in MRGL unless 1st MRG is out of it's resources.
For ex:- If in MRGL you have separate MRG of software and hardware CFB, then first MRG will be always invoked.
So in case of conference call with different codec, at this time if 2nd resource (software CFB) is used then call will fail.
Media Resource Management
if this helps, please rate
Hi Jaime and others, thanks for the reply.
Have read the link, but it still do not answer my quesiton. Basically I belive when you have software CFB as first option in the list, the conference call which requires hardware CFB will be dropped.
Have made another quick test as following to prove the point, but let me know if you have other suggestion:
Scenario: two site involved, Datacenter and Branch01. G711 used intrasite, G729 used intersite. test01 and 02 is done in Datacenter site, while test03 is done in branch01 Site.
Order of the MGR in TETS01-MRGL for both test01 and test02 which on datacenter.
SoftwareGroup media resource group: SW-CONF1, SWCONF2
HardwareGroup media resource group: HW-CONF1,
in datacenter where CUCM located. involved phones: phone01, phone02, phone03, three phone and software CFB is in same Device Pool.
Result: conference call established and no hardware DSP trigged.
in datacenter where CUCM located. involved phones: phone01, phone02, phone04. The phone1, phone2 and software CFB is in same Device Pool. Phone04 is in branch01, G729 is used to datacenter.
Result: conference call dropped.
reason: need hardware CFB for this conference call, but in MRGL first available is Software CFB.
solution: 1, change the codec between datacenter and branch01 to G711
2, or in the MRGL, move the HW-CONF1 ahead of Software CFB.
Order of the MGR in TETS02-MRGL
SoftwareGroup media resource group: SW-CONF1, SWCONF2
HardwareGroup media resource group: HW-CONF2,
phone involved: phone10 phone20 phone30, all in branch office. within these phones, G711 is used. however G729 codec is used to communicated with phone in Datacenter.
result: onference call between all three dropped.
reason: region of all three phone is different from region of the Software CFB, although the three phones are using G711 between each other, but when they reach to the Software CFB, G729 used and as we all know the Software CFB only works with G711.
Solution: 1, change the codec between datacenter and branch01 to G711
2, or in the MRGL, move the HW-CONF2 ahead of Software CFB.
conclusion: buy as much dsp as you can afford and always keep the hardware CFB first, if reach to it maximum, then if next conference call involves all g711 codec and all in the same location as CUCM, then the conference can process, other conference call will be dropped.
I encourage you to give a try yourself and see if the result is same. cheers. Roy
Appreciate your work and this is the normal behaviour which infact has been shared to you by all the above members.
Hi Nishant, thanks for the reply.
However, I am still not very convinced with my finding from above test. If my test result is correct, then there is no point to deploy Software CFB, since we are facing some dilemma here:
So it is better to deploy the Hardware CFB in MRGL, however by saying that, in Cisco Admin Guide (see Jaime's URL) clearly displays an example of MRGL with Software CFB first, then Hardware CFB, and I would assume it must be tested by cisco people and this works, which leads me to think that if there is first conference call comes with G729 code, it should skip the software CFB and move to use the second MRG which is hardware CFB in the MRGL.
However, in my lab, as well as in life CUCM system, the conference call failed in above mentioned scenario, I have tried a few times, same result. This makes me to think that the example in Cisco Admin Guide is not correct, also cause me to rethink how to deploy the MRG and MRGL in existing Cluster.
Nishant, what is your suggestion on this? Cheers Roy
Can you please share the traces for the Test 2 that you performed earlier with the extensions and time of call?
This would help in understanding the reason why it did not attempt to allocate the resources in second MRG containing hardware resources.
Jagpreet Singh Barmi
If you're expecting CUCM to know what codecs you'll use on a CFB, and choose accordingly, or change the CFB on the fly, that's just never going to happen.
It'll choose one from the list, whether it's capable or not, and stick with it. So, either it succeeds, or it fails.
CUCM can only do that choice based on whether there's someone with video, and there's a video capable CFB available.
if this helps, please rate
Hi there, thanks for all your reply and discussion.
I have done another lab test last weekend and I would like to post my final finding here then we can call it a day. .
My finding about the conference bridge is as following,
let say we have CFB MRGL:
1, MRG (Software CFB)
2, MRG (Hardware CFB)
All the conference call will start with Soft CFB, if there is call involves g729, the call will be dropped. this is we all know now and to solve this issue, an Transcodec need, by add Transcode, all those G729 call will be convert to G711 and join the software conference bridge. but in which order, it does matter, you can crearte third MRG or just joint one of the existing one. but be aware that each those g729 call will consume 2 transcode though.
The best practise is to place hardware CFB first then software CFB second. With support of transcodec, if there is conference call start to use Software Conference Bridge, and this conference call also involves some of those caller coming with G729, the transcode should kick in to transfer the G729call to g711 and then join Software conference bridge.
Actually, for future new deployment, I will probably create one Hardware MRG for each site only, which includes Hardware CFB, Transcode and MTP. then add this MRG to the MRGL. that's it. since all those software Media resouce will be share by all device in cluster, as long as it is in it's default. This is my finding, I hope this helps. Cheers Roy