Subject: [Sipping] recover from avalance registrations

From: [email-masked]
Date: Wed, 15 Nov 2006 19:42:52 +0100

Consider the following circumstances:
500000 users connected to a proxy-registrar configured as active/active
each proxy registrar is capable of handling 500 registrations/s
The phones register once every hour, in normal circumstances, which the 
server
can easily handle.
However under double failures, in short time, the rate of registrations
builds up massively, due to the cumulation of failed registrations which
reattempt once per minute iso once per hour  and the  retransmissions  
generated  for
each of them.
Successful registration of a user requires 2 cycles since the first 
registration is challenged
in the 401 response. Coming up after 10min, the first server is hit by 
around 28000 registers/s
After short time the chances for both register cycles to succeed, drops 
to such small
value, that it would take too much time to from the registration storm.
Are there any recommendations concerning this.

_______________________________________________
Sipping mailing list  https://www1.ietf.org/mailman/listinfo/sipping
This list is for NEW development of the application of SIP
Use [email-masked] for questions on current sip
Use [email-masked] for new developments of core SIP

---

From: Jonathan Rosenberg <[email-masked]>
Date: Wed, 15 Nov 2006 13:58:43 -0500

There is currently active working in defining overload mechanisms to 
address this. See:

http://www.ietf.org/internet-drafts/draft-rosenberg-sipping-overload-reqs-02.txt
http://www.ietf.org/internet-drafts/draft-hilt-sipping-overload-00.txt

-Jonathan R.

-- 
Jonathan D. Rosenberg, Ph.D.                   600 Lanidex Plaza
Cisco Fellow                                   Parsippany, NJ 07054-2711
Cisco Systems
[email-masked]                              FAX:   (973) 952-5050
http://www.jdrosen.net                         PHONE: (973) 952-5000
http://www.cisco.com

---

From: [email-masked]
Date: Wed, 15 Nov 2006 20:33:46 -0500

There is little that can be done to avoid the fist cruch of
registrations after a registrar becomes available again.  Well, the
phones can back off in the interval between registration attempts.

If the normal registration interval is 60 mins, and at maximum
back-off the phones attempt to register once every 10 mins, even if
all the phones lose their registrations, the attempt rate is only
3,000 registrations/sec, not 28,000.

Initially, only a small fraction of attempts succeed, but as those
phones get registrations, the intensity of registrations decreases.

What you can avoid is the problem 1 hour after restoration of
service.  Normally, if the phones request 2 hour expiration and
re-register after 1 hour, there will be a huge burst of
re-registration attempts 1 hour after restoration of service, which
can choke the system.

sipX avoids this by giving each phone not the registration time it
asked for, but a random fraction of that time.  This breaks up large
blocks of registrations without the registrar having to maintain any
additional state to allocate registration times.  The cost is that the
registrar has to handle about double the previous registration load.

Unfortunately, some phones do not check the expiration time returned
on the REGISTER response, and assume that they have been allocated the
full requested time...

Dale