A Session Initiation Protocol, SIP, server comprising a processor connected to a memory, the processor configured to: establish a persistent connection between a user agent, UA, and the SIP server; initiate an idle connection timeout countdown timer subsequent to establishing the persistent connection; initiate authentication of an initial REGISTER request using a first level of authentication subsequent to initiating the idle connection timeout countdown timer; determine whether the initial REGISTER message is authenticated before expiry of the idle connection timeout countdown timer; terminate the persistent connection when the initial REGISTER request is not authenticated before expiry of the idle connection timeout countdown timer; and store a new binding for the UA in a registration repository when the initial REGISTER request is authenticated before expiry of the idle connection timeout countdown timer; wherein the processor is further configured to: receive a subsequent request from the UA over the persistent connection; and perform authentication of the subsequent request using a second level of authentication, wherein the second level of authentication is lower than the first level of authentication; determine whether the subsequent connection is authenticated; process the subsequent request, if it is determined that the subsequent request is authenticated; perform authentication of the subsequent request on the persistent connection using the first level of authentication, if it is determined that the subsequent request is not authenticated at the second level of authentication; and remove the new binding when the persistent connection is dropped. establish a persistent connection between a user agent, UA, and the SIP server; initiate an idle connection timeout countdown timer subsequent to establishing the persistent connection; initiate authentication of an initial REGISTER request using a first level of authentication subsequent to initiating the idle connection timeout countdown timer; determine whether the initial REGISTER message is authenticated before expiry of the idle connection timeout countdown timer; terminate the persistent connection when the initial REGISTER request is not authenticated before expiry of the idle connection timeout countdown timer; and store a new binding for the UA in a registration repository when the initial REGISTER request is authenticated before expiry of the idle connection timeout countdown timer; wherein the processor is further configured to: receive a subsequent request from the UA over the persistent connection; and perform authentication of the subsequent request using a second level of authentication, wherein the second level of authentication is lower than the first level of authentication; determine whether the subsequent connection is authenticated; process the subsequent request, if it is determined that the subsequent request is authenticated; perform authentication of the subsequent request on the persistent connection using the first level of authentication, if it is determined that the subsequent request is not authenticated at the second level of authentication; and remove the new binding when the persistent connection is dropped. receive a subsequent request from the UA over the persistent connection; and perform authentication of the subsequent request using a second level of authentication, wherein the second level of authentication is lower than the first level of authentication; determine whether the subsequent connection is authenticated; process the subsequent request, if it is determined that the subsequent request is authenticated; perform authentication of the subsequent request on the persistent connection using the first level of authentication, if it is determined that the subsequent request is not authenticated at the second level of authentication; perform authentication of the subsequent request using a second level of authentication, wherein the second level of authentication is lower than the first level of authentication; determine whether the subsequent connection is authenticated; process the subsequent request, if it is determined that the subsequent request is authenticated; perform authentication of the subsequent request on the persistent connection using the first level of authentication, if it is determined that the subsequent request is not authenticated at the second level of authentication; and remove the new binding when the persistent connection is dropped.