[asterisk-r2] mfcr2_metering_pulse_timeout no difference; outgoing calls being dropped

Sebastian Peschko speschko at gmail.com
Tue May 10 19:47:37 CDT 2011


We have the problem that Telmex (mfcr2_variant=MX) is dropping outgoing
calls because the E1 receives a 0x00 (Forced Release) and 20 to 30 ms
afterwards is back to 0x04 (Connect) which causes a Protocol error and
drops the call seeing that the R2 protocoll reacts with a Clear Forwrd
and ends the call. This happens at random intervals anywhere from 5 sec
to 3 minutes into the outgoing call. It is caused by something similar
to the "metering pulse" which we are trying to eliminate by using the
variable "mfcr2_metering_pulse_timeout=100" which is longer than the
30ms that the pulse usually takes but the effect stays the same with
'mfcr2_metering_pulse_timeout=-1' or 'mfcr2_metering_pulse_timeout=100'
or 'mfcr2_metering_pulse_timeout=450'. It looks like openR2 does'nt do
what this parameter sais it does.

We have tested with Wanrouter v3.5.20, Dahdi 2.4.1.2, Asterisk
1.6.2.16.2 and 1.8.3.3, openR2 1.3.1.

Can anyone tell us what we need to do to avoid the calls being hung up
due to the 30ms change in state from 0x04 to 0x00 and back to 0x04??

Attached a snipped section of the protocol:

[16:50:26:924] [Thread: 3072629648] [Chan 21] - MF Tx >> 1 [OFF]
[16:50:27:024] [Thread: 3072629648] [Chan 21] - MF Rx << 1 [OFF]
[16:50:27:024] [Thread: 3072629648] [Chan 21] - scheduled timer id 3
(r2_answer)
[16:50:34:609] [Thread: 3072629648] [Chan 21] - Bits changed from 0x0C
to 0x04
[16:50:34:609] [Thread: 3072629648] [Chan 21] - CAS Rx << [ANSWER] 0x04
This is where the call is connected corectly
[16:50:34:609] [Thread: 3072629648] [Chan 21] - Attempting to cancel
timer timer 3
[16:50:34:609] [Thread: 3072629648] [Chan 21] - timer id 3 found,
cancelling it now
[16:50:34:609] [Thread: 3072629648] [Chan 21] - Attempting to cancel
timer timer 0
[16:50:34:609] [Thread: 3072629648] [Chan 21] - Cannot cancel timer 0
[16:51:14:988] [Thread: 3072629648] [Chan 21] - Bits changed from 0x04
to 0x00                                            This is where at a
random time the Rx changes from 0x04 to 0x00
[16:51:14:988] [Thread: 3072629648] [Chan 21] - CAS Rx << [FORCED
RELEASE] 0x00
[16:51:14:988] [Thread: 3072629648] [Chan 21] - Far end disconnected.
Reason: Forced Release
[16:51:15:008] [Thread: 3072629648] [Chan 21] - Attempting to cancel
timer timer 0
[16:51:15:008] [Thread: 3072629648] [Chan 21] - Cannot cancel timer 0
[16:51:15:008] [Thread: 3072629648] [Chan 21] - CAS Tx >> [CLEAR
FORWARD] 0x08                                       
[16:51:15:008] [Thread: 3072629648] [Chan 21] - CAS Raw Tx >> 0x09
[16:51:15:009] [Thread: 3076316048] [Chan 21] - Bits changed from 0x00
to 0x04                                           This where 20ms later
the state is returned from 0x00 to 0x04 but seeing that we have
[16:51:15:009] [Thread: 3076316048] [Chan 21] - CAS Rx << [0x04] 0x04
already processed the Forced Release we send a Clear Forward releasing
the call.
[16:51:15:009] [Thread: 3076316048] [Chan 21] - Protocol error. Reason =
Invalid CAS, R2 State = Clear Forward Transmitted, MF state = MF Engine
Off, MF Group = Forward Group II, CAS = 0x04
DNIS = 57280170, ANI = , MF = 0x20
[16:51:15:009] [Thread: 3076316048] [Chan 21] - Attempting to cancel
timer timer 0
[16:51:15:009] [Thread: 3076316048] [Chan 21] - Cannot cancel timer 0


-- 
Sebastian Peschko <speschko at gmail.com>

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.digium.com/pipermail/asterisk-r2/attachments/20110510/244f61f7/attachment.htm>


More information about the asterisk-r2 mailing list