Subject: Multiple equivalent P-CSCF discovery issues

From: Bourdoukis Dimitrios <[email-masked]>
Date: Mon, 2 Jun 2014 15:04:04 +0000

Hello team

I have deployed in the network an SBC acting as A-ALG and I am trying to load-balance the REGISTER requests coming from the UEs towards multiple cores (P-CSCFs) by means of DNS which resolves the P-CSCFs hosts with equal priority and weight.

I am using Digest authentication without TLS for the UEs and the problem I am facing  is the following:

After a UE is challenged by the network with 401 Unauthorized, it resubmits the REGISTER request with the appropriate credentials and same Call-Id as appropriate. However this new REGISTER request is routed individually by the SBC A-ALG towards the core side  by executing again DNS procedures. The effect is that this 2nd REGISTER request may be routed to a different P-CSCF which in turn results again to a new challenge for obvious reasons (different contact reaches the S-CSCF), and so on.

Note that this is not the case for the Re-REGISTER requests, where in that case my A-ALG remembers where the initial Registration has been concluded as it uses that address:port when a binding is refreshed by the UE.

I was not able to find any explicit reference in the specs on how a UE Proxy Registrar (in my case an A-ALG) should route a REGISTER request following the challenge from the network with 401, in case of multiple equivalent core targets.

Can anybody help on that?  Is there any RFC reference or other spec  that clarify this? Note that the SIP multicast Registrar discovery is not an option in my implementation.

Thanks in advance

Dimitris