[asterisk-users] Random call drops on IAX2

Sebastian shop at open-t.co.uk
Wed Nov 10 12:51:01 CST 2010


Hello list,

I have an Asterisk setup with the following details:

1. 3 x internal extensions / sip hardphones - Grandstream 2000
2. 2 x internal extensions / dahdi cordless phone
3. 1 x 2 FSX ports OpenVOX pci card
4. 1 x internal sip extension / sip softphone (linphone)
5. 1 x 800Mhz Asterisk + Linux server
6. Asterisk version is 1.6.2.13
7. 1 x IAX2 incoming trunk from phone provider for 1 phone number (2 
channels).
8. 1 x IAX2 outgoing trunk (theoretically unlimited channels) to phone 
provider.
9. Internet connection used is ADSL 8mbs/350kbs.
10. All internet traffic goes through the Linux/Asterisk box (2 NIC's) 
and I use basic traffic shaping/priority using tos_sip/tos_audio/tos/cos 
directives in sip.conf and iax.conf.
11. The server doesn't have much load - some basic samba file sharing 
for 5 computers, some dovecot IMAP email for same machines.


The setup has worked fine for it's first 8 months. After that, users 
started to report dropped calls. Most of the time (but doesn't seem to 
be always) it seems to be the following scenario:

1. A member of staff places an outgoing call.
2. While in conversation - an external call is coming in.
3. The original outgoing call is cut off.

However, this is not consistent. I've tried to trigger it when on site - 
and didn't manage. It tends to happen randomly, about 1-3 times per day.

What I've done:

1. Measured the uplink bandwidth - it works out consistently at about 
350kbs - enough for (theoretically) up to 4 simultaneous ulaw/alaw calls 
(80kbs each).
2. There isn't much internet traffic generated by the local network - 
and the pattern of call drops doesn't match any spike in Internet 
activity from/to local network.
3. I've managed to put through 4 concurrent incoming and outgoing calls 
- and left them on for about 30 minutes - none of them cut off during 
this time.
4. I've tested the RAM on the server - couldn't discover any fault.
5. I've called the IAX provider and so far they are adamant that the 
problem is not at their end.
6. I've upgraded Asterisk to latest 1.6 trunk - 1.6.2.13 (use to be 
version 1.6.1.6)

I have kept and eye on the Asterisk logs - but just cannot find what is 
happening. I have asked users to let me know the time of call drops - so 
that I can look at specific portions of the Asterisk log. I attach below 
the log section concerned. I've been told that the user placed an 
outgoing call  - and they were cut off. I personally don't see anything 
in the log - it looks like a clean hang-up to me. I don't even know 
where to narrow things down. Is it the server hardware, is it the 
internet connection, is it the ADSL modem/router upstream of the server, 
is it the Grandstream phones, or is it the IAX provider?

As you can see below:

1. The outgoing call starts at 11:22:45
2. At 11:22:50 another previous incoming call ends.
3. Then the original outgoing call gets answered at 11:22:53
4. Then about a minute later, at 11:23:51, the outgoing call gets hanged up.

The user claims the outgoing call got cut off - but I don't see any 
error in the logs:

[Nov 10 11:22:22] VERBOSE[4365] pbx.c:   == Spawn extension 
(from_internal_phones, 23, 1) exited non-zero on 'SIP/25-00000087'
[Nov 10 11:22:45] VERBOSE[3242] netsock.c:   == Using SIP RTP TOS bits 184
[Nov 10 11:22:45] VERBOSE[3242] netsock.c:   == Using SIP RTP CoS mark 5
[Nov 10 11:22:45] VERBOSE[4366] pbx.c:     -- Executing 
[901512541010 at from_internal_phones:1] NoOp("SIP/23-00000089", "Adding 
call to trunk group") in new stack
[Nov 10 11:22:45] VERBOSE[4366] pbx.c:     -- Executing 
[901512541010 at from_internal_phones:2] Set("SIP/23-00000089", 
"GROUP()=TRUNK_GROUP") in new stack
[Nov 10 11:22:45] VERBOSE[4366] pbx.c:     -- Executing 
[901512541010 at from_internal_phones:3] Dial("SIP/23-00000089", 
"IAX2/ihs_trunk_out/01512541010") in new stack
[Nov 10 11:22:45] VERBOSE[4366] app_dial.c:     -- Called 
ihs_trunk_out/01512541010
[Nov 10 11:22:45] VERBOSE[3237] chan_iax2.c:     -- Call accepted by 
ip.address.rem.oved (format ulaw)
[Nov 10 11:22:45] VERBOSE[3237] chan_iax2.c:     -- Format for call is ulaw
[Nov 10 11:22:50] VERBOSE[4364] pbx.c:   == Spawn extension 
(from_trunks, proceed, 3) exited non-zero on 'IAX2/01519226927_in-2238'
[Nov 10 11:22:50] VERBOSE[4364] chan_iax2.c:     -- Hungup 
'IAX2/01519226927_in-2238'
[Nov 10 11:22:52] VERBOSE[4366] app_dial.c:     -- 
IAX2/ihs_trunk_out-1579 is ringing
[Nov 10 11:22:52] VERBOSE[4366] app_dial.c:     -- 
IAX2/ihs_trunk_out-1579 is making progress passing it to SIP/23-00000089
[Nov 10 11:22:53] VERBOSE[4366] app_dial.c:     -- 
IAX2/ihs_trunk_out-1579 stopped sounds
[Nov 10 11:22:53] VERBOSE[4366] app_dial.c:     -- 
IAX2/ihs_trunk_out-1579 answered SIP/23-00000089
[Nov 10 11:24:51] VERBOSE[4366] chan_iax2.c:     -- Hungup 
'IAX2/ihs_trunk_out-1579'
[Nov 10 11:24:51] VERBOSE[4366] pbx.c:   == Spawn extension 
(from_internal_phones, 901512541010, 3) exited non-zero on 'SIP/23-00000089'
[Nov 10 11:27:43] VERBOSE[3242] chan_sip.c:     -- Registered SIP '23' 
at 192.168.12.16 port 5064


Any ideas or comments on this one are much appreciated. I'm not sure 
where else to look to get more relevant information.

Sebastian



More information about the asterisk-users mailing list