In my last post I talked a little about the issue of Microsoft Cisco interoperability and the issue with RTCP causing Cisco IP phones being dropped from calls when being put on mute while in an OCS audio conference by the conference leader. This is an issue I have been involved in and following for some time. The issue stems from when being put on mute a SIP message is sent telling the Cisco IP phone to go to recvonly and the call subsequently drops because when in recvonly only Cisco IP phones stop send RTCP. The problem here is that when this occurs the mediation server starts an RTCP timer that eventually drops the IP phone from a conference after 30 seconds. Now you may ask why this doesn’t occur when the Cisco IP phone is put on mute at the phone by the end user. Well, glad you asked. When a Cisco IP phone is placed on mute by the end user this is only a physical mute and RTCP packets still flow. Mystery solved:)
Quick diagram of the problem in question.
Cisco IP Phone ----------------------------------OCS
| <--Re-Invite(send Only)-------------|
| (RTCP Receiver Report) GOODBYE-->OCS|
| -----100 Trying------------------->|
| -----200OK (recvonly)------------->|
| (After 30 secs) |
| (RTCP Receiver Report) GOODBYE-->OCS|
Although I have only indicated that this affects Cisco IP Phones this issue also affects Cisco Unity and Cisco ISR gateways. The issue with Unity is a little different in that when you are recording a voicemail message Unity doesn’t send RTCP packets and therefore the recording stops at 30 seconds. This KB article should also solve this issue also.
Here is part of the SIP message stream that indicates a media timeout for the Unity issue.
BYE sip:email@example.com;opaque=user:epid:U_CefZQFsVm9gVJSmY_DWgAA;gruu SIP/2.0
CSEQ: 1 BYE
VIA: SIP/2.0/TLS 126.96.36.199:1620;branch=z9hG4bK8941dab2
USER-AGENT: RTCC/188.8.131.52 MediationServer
Ms-diagnostics: 10011;source="Server.RTCTEST.TL.CONTOSO.COM";reason="Media Gateway side stream timeout";component="MediationServer"
There has also been a large number of posts on Technet regarding these issues. Here is just one thread but if you look through the other discussions I know there are more.
So what possible side effect could turning this timer off possibly have on a deployment? Well I have not tested this myself but it could possibly leave to open conversation windows that do not close themselves after a call has ended. So the other end of the call hangs up and you leave the conversation window to close on its own, it is conceivable in certain circumstance that it won’t hang up and you will have to manually close it. But again just a theory. Although not a huge issue if this is a result you may have a few user grumbles. But on the flip side having calls stay up is by far more important.
Some notes from the KB article:
On the Microsoft Office Communications Server 2007 R2, Mediation Server, a media time-out occurs. This time-out occurs if no Real-Time Transport Protocol (RTP) packets or Real-Time Control Protocol (RTCP) packets are received for 30 seconds. When Office Communications Server 2007 R2, Mediation Server interacts directly through Session Initiation Protocol (SIP) with Cisco Call Manager (CCM), the following scenarios in which no RTP packets or RTCP packets are received for a call occur:
•For a call that is on hold, the direction attribute is inactive from the perspective of the Mediation Server and the perspective of CCM. In this case, CCM does not send any RTP packets or RTCP packets. Existing Mediation Server code ignored the media time-out. Therefore, the call is not dropped.
•A CCM user joins in an Office Communications Server 2007 R2 conference, and then mutes the telephone. Additionally, the direction attribute for the Mediation Server for the interaction with CCM is sendonly. Additionally, the direction attribute for the phone is recvonly. In this case, CCM does not send any RTP packets or RTCP packets while the telephone is muted. Therefore, the call is dropped after 30 seconds.
•An Office Communicator user calls a CCM user who is configured to use Cisco Unity voice mail. When the call is connected to Cisco Unity, the call obtains the original media packets from Cisco Unity. Then, the Office Communicator user is prompted to leave a voice mail. However, Cisco Unity does not send any RTP packets or RTCP packets when the Office Communicator user leaves a voice mail. Therefore, a media time-out occurs after 30 seconds. Then, the call is disconnected, and the Office Communicator user cannot leave a voice mail.
To solve this issue you will need to download and install the April updates for the mediation server. After you have installed the update the mediation server it set to ignore media timeouts from the gateway.