[OpenSIPS-Users] Load balancer sending 403 when caller hangs uo

Bogdan-Andrei Iancu bogdan at voice-system.ro
Sat Jun 20 00:31:08 CEST 2009


Hi James,

I see your call is not actually cancelled - see the negative reply on 
the CANCEL and the 200 OK on INVITE - so the call does establish and 
this is the reason for showing up in the dialog and lb module.


Regards,
Bogdan

James Wiegand wrote:
> Hi Bogdan,
>
> Here's the dialog from a test call.
> The remote client is Eyebeam on a PC connected to Asterisk.  I made a
> call and hung up before answering.  The call has been terminated for
> some time.  I can do an lb_reload to clear out the hung lb session.
>
> opensipsctl fifo lb_list
> Destination:: sip:XXX.XXX.XXX.6 id=1
>         Resource:: pstn max=0 load=0
> Destination:: sip:XXX.XXX.XXX.7 id=2
>         Resource:: pstn max=0 load=0
> Destination:: sip:XXX.XXX.XXX.8 id=3
>         Resource:: pstn max=1 load=1
> Destination:: sip:XXX.XXX.XXX.9 id=4
>         Resource:: pstn max=0 load=0
>
> opensipsctl fifo dlg_list
> dialog::  hash=3498:265315739
>         state:: 3
>         user_flags:: 0
>         timestart:: 1245419911
>         timeout:: 99843
>         callid:: 30cd5dba1a90fbe7023054f8293fc520 at YYY.YYY.YYY.12
>         from_uri:: sip:8705082000 at YYY.YYY.YYY.12
>         from_tag:: as14720305
>         caller_contact:: sip:8705082000 at YYY.YYY.YYY.12
>         caller_cseq:: 102
>         caller_route_set::
>         caller_bind_addr:: udp:XXX.XXX.XXX.24:5060
>         to_uri:: sip:8706569978 at XXX.XXX.XXX.24
>         to_tag:: as4042950a
>         callee_contact:: sip:8706569978 at XXX.XXX.XXX.8
>         callee_cseq:: 102
>         callee_route_set::
>         callee_bind_addr:: udp:XXX.XXX.XXX.24:5060
> dialog::  hash=3895:1205860066
>         state:: 3
>         user_flags:: 0
>         timestart:: 1245419947
>         timeout:: 99879
>         callid:: 768a3fbb026fec2038c9334c05e12298 at YYY.YYY.YYY.12
>         from_uri:: sip:8705082000 at YYY.YYY.YYY.12
>         from_tag:: as5a726731
>         caller_contact:: sip:8705082000 at YYY.YYY.YYY.12
>         caller_cseq:: 102
>         caller_route_set::
>         caller_bind_addr:: udp:XXX.XXX.XXX.24:5060
>         to_uri:: sip:8706569978 at XXX.XXX.XXX.24
>         to_tag:: as3ac79c83
>         callee_contact:: sip:8706569978 at XXX.XXX.XXX.8
>         callee_cseq:: 102
>         callee_route_set::
>         callee_bind_addr:: udp:XXX.XXX.XXX.24:5060
>
>
> TCP SIP trace, not from the same call, but with the same result:
>
> 09:08:37.758213 IP (tos 0x0, ttl  45, id 34347, offset 0, flags
> [none], proto: UDP (17), length: 855) YYY.YYY.YYY.12.sip >
> XXX.XXX.XXX.24.sip: SIP, length: 827
>         INVITE sip:8706569978 at XXX.XXX.XXX.24 SIP/2.0
>         Via: SIP/2.0/UDP YYY.YYY.YYY.12:5060;branch=z9hG4bK1fe6bb8d;rport
>         From: "device" <sip:8705082000 at YYY.YYY.YYY.12>;tag=as0fb4ac11
>         To: <sip:8706569978 at XXX.XXX.XXX.24>
>         Contact: <sip:8705082000 at YYY.YYY.YYY.12>
>         Call-ID: 6d25870c2c9d32c90c6e4498079dcd84 at YYY.YYY.YYY.12
>         CSeq: 102 INVITE
>         User-Agent: Asterisk PBX
>         Max-Forwards: 70
>         Date: Fri, 19 Jun 2009 14:00:50 GMT
>         Allow: INVITE, ACK, CANCEL, OPTIONS, BYE, REFER, SUBSCRIBE, NOTIFY
>         Supported: replaces
>         Content-Type: application/sdp
>         Content-Length: 284
>
>         v=0
>         o=root 3848 3848 IN IP4 YYY.YYY.YYY.12
>         s=session
>         c=IN IP4 YYY.YYY.YYY.12
>         t=0 0
>         m=audio 6962 RTP/AVP 0 3 8 101
>         a=rtpmap:0 PCMU/8000
>         a=rtpmap:3 GSM/8000
>         a=rtpmap:8 PCMA/8000
>         a=rtpmap:101 telephone-event/8000
>         a=fmtp:101 0-16
>         a=silenceSupp:off - - - -
>         a=ptime:20
>         a=sendrecv
>
> 09:08:37.759853 IP (tos 0x10, ttl  64, id 0, offset 0, flags [DF],
> proto: UDP (17), length: 345) XXX.XXX.XXX.24.sip > YYY.YYY.YYY.12.sip:
> SIP, length: 317
>         SIP/2.0 100 Giving a try
>         Via: SIP/2.0/UDP YYY.YYY.YYY.12:5060;branch=z9hG4bK1fe6bb8d;rport=5060
>         From: "device" <sip:8705082000 at YYY.YYY.YYY.12>;tag=as0fb4ac11
>         To: <sip:8706569978 at XXX.XXX.XXX.24>
>         Call-ID: 6d25870c2c9d32c90c6e4498079dcd84 at YYY.YYY.YYY.12
>         CSeq: 102 INVITE
>         Server: VistaVox SIP Service
>         Content-Length: 0
>
>
> 09:08:40.113592 IP (tos 0x10, ttl  64, id 0, offset 0, flags [DF],
> proto: UDP (17), length: 874) XXX.XXX.XXX.24.sip > YYY.YYY.YYY.12.sip:
> SIP, length: 846
>         SIP/2.0 183 Session Progress
>         Via: SIP/2.0/UDP
> YYY.YYY.YYY.12:5060;received=YYY.YYY.YYY.12;branch=z9hG4bK1fe6bb8d;rport=5060
>         Record-Route: <sip:XXX.XXX.XXX.24;lr;ftag=as0fb4ac11;did=f0d.85cca1c>
>         From: "device" <sip:8705082000 at YYY.YYY.YYY.12>;tag=as0fb4ac11
>         To: <sip:8706569978 at XXX.XXX.XXX.24>;tag=as2661bdde
>         Call-ID: 6d25870c2c9d32c90c6e4498079dcd84 at YYY.YYY.YYY.12
>         CSeq: 102 INVITE
>         User-Agent: Asterisk PBX
>         Allow: INVITE, ACK, CANCEL, OPTIONS, BYE, REFER, SUBSCRIBE, NOTIFY
>         Supported: replaces
>         Contact: <sip:8706569978 at XXX.XXX.XXX.8>
>         Content-Type: application/sdp
>         Content-Length: 262
>
>         v=0
>         o=root 18239 18239 IN IP4 XXX.XXX.XXX.8
>         s=session
>         c=IN IP4 XXX.XXX.XXX.8
>         t=0 0
>         m=audio 16734 RTP/AVP 0 8 101
>         a=rtpmap:0 PCMU/8000
>         a=rtpmap:8 PCMA/8000
>         a=rtpmap:101 telephone-event/8000
>         a=fmtp:101 0-16
>         a=silenceSupp:off - - - -
>         a=ptime:20
>         a=sendrecv
>
> 09:08:55.476673 IP (tos 0x0, ttl  45, id 34348, offset 0, flags
> [none], proto: UDP (17), length: 372) YYY.YYY.YYY.12.sip >
> XXX.XXX.XXX.24.sip: SIP, length: 344
>         CANCEL sip:8706569978 at XXX.XXX.XXX.24 SIP/2.0
>         Via: SIP/2.0/UDP YYY.YYY.YYY.12:5060;branch=z9hG4bK1fe6bb8d;rport
>         From: "device" <sip:8705082000 at YYY.YYY.YYY.12>;tag=as0fb4ac11
>         To: <sip:8706569978 at XXX.XXX.XXX.24>
>         Call-ID: 6d25870c2c9d32c90c6e4498079dcd84 at YYY.YYY.YYY.12
>         CSeq: 102 CANCEL
>         User-Agent: Asterisk PBX
>         Max-Forwards: 70
>         Content-Length: 0
>
>
> 09:08:55.477405 IP (tos 0x10, ttl  64, id 0, offset 0, flags [DF],
> proto: UDP (17), length: 393) XXX.XXX.XXX.24.sip > YYY.YYY.YYY.12.sip:
> SIP, length: 365
>         SIP/2.0 405 Method Not Allowed
>         Via: SIP/2.0/UDP YYY.YYY.YYY.12:5060;branch=z9hG4bK1fe6bb8d;rport=5060
>         From: "device" <sip:8705082000 at YYY.YYY.YYY.12>;tag=as0fb4ac11
>         To: <sip:8706569978 at XXX.XXX.XXX.24>;tag=9508a3e09327a949e746abbd3d262852.51a3
>         Call-ID: 6d25870c2c9d32c90c6e4498079dcd84 at YYY.YYY.YYY.12
>         CSeq: 102 CANCEL
>         Server: VistaVox SIP Service
>         Content-Length: 0
>
>
> 09:09:04.124970 IP (tos 0x10, ttl  64, id 0, offset 0, flags [DF],
> proto: UDP (17), length: 860) XXX.XXX.XXX.24.sip > YYY.YYY.YYY.12.sip:
> SIP, length: 832
>         SIP/2.0 200 OK
>         Via: SIP/2.0/UDP
> YYY.YYY.YYY.12:5060;received=YYY.YYY.YYY.12;branch=z9hG4bK1fe6bb8d;rport=5060
>         Record-Route: <sip:XXX.XXX.XXX.24;lr;ftag=as0fb4ac11;did=f0d.85cca1c>
>         From: "device" <sip:8705082000 at YYY.YYY.YYY.12>;tag=as0fb4ac11
>         To: <sip:8706569978 at XXX.XXX.XXX.24>;tag=as2661bdde
>         Call-ID: 6d25870c2c9d32c90c6e4498079dcd84 at YYY.YYY.YYY.12
>         CSeq: 102 INVITE
>         User-Agent: Asterisk PBX
>         Allow: INVITE, ACK, CANCEL, OPTIONS, BYE, REFER, SUBSCRIBE, NOTIFY
>         Supported: replaces
>         Contact: <sip:8706569978 at XXX.XXX.XXX.8>
>         Content-Type: application/sdp
>         Content-Length: 262
>
>         v=0
>         o=root 18239 18240 IN IP4 XXX.XXX.XXX.8
>         s=session
>         c=IN IP4 XXX.XXX.XXX.8
>         t=0 0
>         m=audio 16734 RTP/AVP 0 8 101
>         a=rtpmap:0 PCMU/8000
>         a=rtpmap:8 PCMA/8000
>         a=rtpmap:101 telephone-event/8000
>         a=fmtp:101 0-16
>         a=silenceSupp:off - - - -
>         a=ptime:20
>         a=sendrecv
>
> 09:09:05.123714 IP (tos 0x10, ttl  64, id 0, offset 0, flags [DF],
> proto: UDP (17), length: 860) XXX.XXX.XXX.24.sip > YYY.YYY.YYY.12.sip:
> SIP, length: 832
>         SIP/2.0 200 OK
>         Via: SIP/2.0/UDP
> YYY.YYY.YYY.12:5060;received=YYY.YYY.YYY.12;branch=z9hG4bK1fe6bb8d;rport=5060
>         Record-Route: <sip:XXX.XXX.XXX.24;lr;ftag=as0fb4ac11;did=f0d.85cca1c>
>         From: "device" <sip:8705082000 at YYY.YYY.YYY.12>;tag=as0fb4ac11
>         To: <sip:8706569978 at XXX.XXX.XXX.24>;tag=as2661bdde
>         Call-ID: 6d25870c2c9d32c90c6e4498079dcd84 at YYY.YYY.YYY.12
>         CSeq: 102 INVITE
>         User-Agent: Asterisk PBX
>         Allow: INVITE, ACK, CANCEL, OPTIONS, BYE, REFER, SUBSCRIBE, NOTIFY
>         Supported: replaces
>         Contact: <sip:8706569978 at XXX.XXX.XXX.8>
>         Content-Type: application/sdp
>         Content-Length: 262
>
>         v=0
>         o=root 18239 18240 IN IP4 XXX.XXX.XXX.8
>         s=session
>         c=IN IP4 XXX.XXX.XXX.8
>         t=0 0
>         m=audio 16734 RTP/AVP 0 8 101
>         a=rtpmap:0 PCMU/8000
>         a=rtpmap:8 PCMA/8000
>         a=rtpmap:101 telephone-event/8000
>         a=fmtp:101 0-16
>         a=silenceSupp:off - - - -
>         a=ptime:20
>         a=sendrecv
>
> 09:09:06.123020 IP (tos 0x10, ttl  64, id 0, offset 0, flags [DF],
> proto: UDP (17), length: 860) XXX.XXX.XXX.24.sip > YYY.YYY.YYY.12.sip:
> SIP, length: 832
>         SIP/2.0 200 OK
>         Via: SIP/2.0/UDP
> YYY.YYY.YYY.12:5060;received=YYY.YYY.YYY.12;branch=z9hG4bK1fe6bb8d;rport=5060
>         Record-Route: <sip:XXX.XXX.XXX.24;lr;ftag=as0fb4ac11;did=f0d.85cca1c>
>         From: "device" <sip:8705082000 at YYY.YYY.YYY.12>;tag=as0fb4ac11
>         To: <sip:8706569978 at XXX.XXX.XXX.24>;tag=as2661bdde
>         Call-ID: 6d25870c2c9d32c90c6e4498079dcd84 at YYY.YYY.YYY.12
>         CSeq: 102 INVITE
>         User-Agent: Asterisk PBX
>         Allow: INVITE, ACK, CANCEL, OPTIONS, BYE, REFER, SUBSCRIBE, NOTIFY
>         Supported: replaces
>         Contact: <sip:8706569978 at XXX.XXX.XXX.8>
>         Content-Type: application/sdp
>         Content-Length: 262
>
>         v=0
>         o=root 18239 18240 IN IP4 XXX.XXX.XXX.8
>         s=session
>         c=IN IP4 XXX.XXX.XXX.8
>         t=0 0
>         m=audio 16734 RTP/AVP 0 8 101
>         a=rtpmap:0 PCMU/8000
>         a=rtpmap:8 PCMA/8000
>         a=rtpmap:101 telephone-event/8000
>         a=fmtp:101 0-16
>         a=silenceSupp:off - - - -
>         a=ptime:20
>         a=sendrecv
>
> 09:09:08.123528 IP (tos 0x10, ttl  64, id 0, offset 0, flags [DF],
> proto: UDP (17), length: 860) XXX.XXX.XXX.24.sip > YYY.YYY.YYY.12.sip:
> SIP, length: 832
>         SIP/2.0 200 OK
>         Via: SIP/2.0/UDP
> YYY.YYY.YYY.12:5060;received=YYY.YYY.YYY.12;branch=z9hG4bK1fe6bb8d;rport=5060
>         Record-Route: <sip:XXX.XXX.XXX.24;lr;ftag=as0fb4ac11;did=f0d.85cca1c>
>         From: "device" <sip:8705082000 at YYY.YYY.YYY.12>;tag=as0fb4ac11
>         To: <sip:8706569978 at XXX.XXX.XXX.24>;tag=as2661bdde
>         Call-ID: 6d25870c2c9d32c90c6e4498079dcd84 at YYY.YYY.YYY.12
>         CSeq: 102 INVITE
>         User-Agent: Asterisk PBX
>         Allow: INVITE, ACK, CANCEL, OPTIONS, BYE, REFER, SUBSCRIBE, NOTIFY
>         Supported: replaces
>         Contact: <sip:8706569978 at XXX.XXX.XXX.8>
>         Content-Type: application/sdp
>         Content-Length: 262
>
>         v=0
>         o=root 18239 18240 IN IP4 XXX.XXX.XXX.8
>         s=session
>         c=IN IP4 XXX.XXX.XXX.8
>         t=0 0
>         m=audio 16734 RTP/AVP 0 8 101
>         a=rtpmap:0 PCMU/8000
>         a=rtpmap:8 PCMA/8000
>         a=rtpmap:101 telephone-event/8000
>         a=fmtp:101 0-16
>         a=silenceSupp:off - - - -
>         a=ptime:20
>         a=sendrecv
>
>
> On Fri, Jun 19, 2009 at 2:18 AM, Bogdan-Andrei
> Iancu<bogdan at voice-system.ro> wrote:
>   
>> Hi James,
>>
>> Could you please check if the "dialog" module sees the call as ended? Use
>> "opensipsctl fifo dlg_list"
>>  (http://www.opensips.org/html/docs/modules/1.5.x/dialog.html#id272726) and
>> paste the output here.
>>
>> Also, do you have a full SIP trace of the call (ngrep) ?
>>
>> Regards,
>> Bogdan
>>
>>
>>
>> James Wiegand wrote:
>>     
>>> Hi all,
>>>
>>> I am using OpenSIPS 1.5.1 and the lb module.  Following the example I
>>> see this chunk of code execute when the caller hangs up as the dial
>>> progresses (but before the other side answers):
>>>
>>>        # from now on we have only the initial requests
>>>        if (!is_method("INVITE")) {
>>>                send_reply("405","Method Not Allowed");
>>>                exit;
>>>        }
>>>
>>> This leaves a session hanging in the load balancer:
>>>
>>> Destination:: sip:XXX.XXX.XXX.XXX id=3
>>>        Resource:: pstn max=1 load=1
>>>
>>> I'm seeing CANCEL come in from the caller and it looks like
>>> !t_check_trans() is not picking this up?  How do I catch this case?
>>>
>>> Thanks for the help,
>>>
>>> -jim
>>>
>>>
>>>
>>>       
>>     
>
>
>
>   




More information about the Users mailing list