[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