[sr-dev] Problem with Registration on pcscf

Hugh Waite hugh.waite at crocodile-rcs.com
Thu Feb 6 15:50:37 CET 2014


Hi,
This system is using GIT master built on December 18th and has the 
'fallback to ip' modparam set - which is being used in this case because 
all clients are behind a cloud based NAT.

The problem occurs when there are multiple entries for a user in the 
usrloc table, but ul.get_pcontact(...) only ever returns one. which may 
not match the contact or the source IP/port.

We believe that the multiple entries should be returned and looped round 
to check for matches.
Multiple entries can be easily created by disconnecting a TCP client (or 
sipp script) without deregistering and connecting + registering again 
from a different ephemeral port.

Regards,
Hugh

On 05/02/2014 14:09, Carsten Bock wrote:
> Hi Paul,
>
> since probably i'm the guilty one, i would check. In order to quickly
> reproduce that issue, some quick questions:
> - you are using GIT master? I've made some changes in GIT master
> (compared to 4.1) in terms of detecting, if a user is registered...
>
> Can you send me the SIPP-Scripts?
> I will then check next week for this topic.
>
> Thanks for testing,
> Carsten
>
>
>
> 2014-01-29 Paul Pankhurst <paul at crocodile-rcs.com>:
>> Hi Jason,
>>
>>
>>
>> I've not done anything further on this since Friday, as I've been busy on
>> other things.
>>
>>
>>
>> If you have trouble reproducing it I can send you my sipp scripts and some
>> wireshark traces if it helps.
>>
>>
>>
>> Paul
>>
>>
>>
>>
>>
>> From: sr-dev-bounces at lists.sip-router.org
>> [mailto:sr-dev-bounces at lists.sip-router.org] On Behalf Of Jason Penton
>> Sent: 29 January 2014 07:52
>> To: Kamailio (SER) - Development Mailing List
>> Subject: Re: [sr-dev] Problem with Registration on pcscf
>>
>>
>>
>> Hey Paul,
>>
>>
>>
>> Sorry for the delay on this. I had missed it. I will see if I can re-create
>> and get back to you. Have you maanged to do any more testing since?
>>
>>
>>
>> Cheers
>>
>> Jason
>>
>>
>>
>> On Fri, Jan 24, 2014 at 5:42 PM, Paul Pankhurst <paul at crocodile-rcs.com>
>> wrote:
>>
>> I've noticed a problem with registrations on the pcscf when doing some
>> testing with sipp
>>
>> If I send in a REGISTER with SIPP followed by an INVITE calls go through my
>> system no problem.
>> If I then stop the sipp script and run it again, I find that although the
>> registration succeeds, subsequent INVITES are rejected telling me that I
>> have not registered!
>> If I unregister at the end of my script everything is fine, and the problem
>> goes away after the original REGISTRATION times out, so this led me to think
>> that we had a problem with multiple registrations entries in the system.
>>
>> The problem seems to be a result of the fact that sipp always places the
>> same ip address and port number on the contact line when using tcp
>> connections.
>>
>> I've had a look through the code and believe that we are getting multiple
>> entries in the usrloc hash table in this scenario, and ul_get_pcontact only
>> ever returns the first one which causes pcscf_is_registered to incorrectly
>> report that the UE is not registered.
>>
>> Paul
>>
>> _______________________________________________
>> sr-dev mailing list
>> sr-dev at lists.sip-router.org
>> http://lists.sip-router.org/cgi-bin/mailman/listinfo/sr-dev
>>
>>
>>
>>
>> _______________________________________________
>> sr-dev mailing list
>> sr-dev at lists.sip-router.org
>> http://lists.sip-router.org/cgi-bin/mailman/listinfo/sr-dev
>>
>
>


-- 
Hugh Waite
Principal Design Engineer
Crocodile RCS Ltd.




More information about the sr-dev mailing list