330
A Combined LIFO-Priority Algorithm for Overload Control of SIP Server Ievgeniia Kuzminykh Abstract - In this paper a simulation model of message service procedure in SIP server in the normal conditions and in the congestion state is represented. The paper proposes local overload control for SIP server applied FIFO discipline in normal state and LIFO discipline with priority service model during overload. Keywords – SIP server, overload control, FIFO, LIFO, priority.
I. INTRODUCTION The SIP protocol provides two basic mechanisms for congestion control which uses the error code 503 (Service Unavailable) [1]. First, if SIP server can not process the request during overload state it rejects the request with 503 response. The sender can try to resend the message to alternate server. Second mechanism is to send with 503 response a Retry-After header field indicating the time in seconds when the client should retry the request. The basic overload control algorithm has numerous problems in actual deployment. The solution is proposed to use various "local" overload control algorithms described in [2, 3]. Algorithms reject the incoming messages based on different queueing and service discipline, on different values of thresholds to detect overload. To compare the effectiveness of the existing algorithms we construct a simulation model of message service procedure in SIP server using for implementation Colored Petri Nets.
II. OVERLOAD CONTROL MECHANISMS In this paper we discuss four algorithms for congestion control proposed in [1, 2, 3] and one algorithm that we propose based on LIFO service discipline. First scheme is without overload control mechanism. When buffer of SIP server is full the messages wait to be processed. The clients that don’t receive the provisional response from server retransmit message again and buffer can never decrease its occupancy. The congestion collapse is occurred. Second scheme use simple overload control such as overload detection with thresholds. When buffer occupancy is higher than threshold all incoming messages are rejected. Third scheme is proposed in specification [1] and provides limited overload control mechanism through 503 (Service Unavailable) response with Retry-After header field. We use two thresholds for detecting overload and one buffer to store messages [2]. In normal state the messages are processed by FIFO discipline but when buffer occupancy is higher than threshold H the server comes in the overload state. In this state server sends to client 503 response with Retry-After header indicating when the client should retry the request. When buffer occupancy becomes lower than threshold L the server returns to normal state. The structure scheme of SIP server is shown on figure 1(a). Ievgeniia Kuzminykh – Kharkiv National University of Radioelectronics , Lenina Avenu, 14, Kharkiv, 61166, UKRAINE, E-mail:
[email protected]
Fourth scheme is modification of previous one but provides priority strategy for overload control [3]. All incoming messages are processed by FIFO discipline but we use two buffers - one for INVITE messages and the other for nonINVITE ones. When the server is in normal state we use FIFO discipline, otherwise the two buffers are served using a priority discipline. All INVITE messages in overload state are rejected with 503 response. Two buffers scheme for priority overload control is shown on figure 1(b).
(a) (b) Fig. 1 Structure schemes of server’s buffers with (a) limited overload control using 503 response and (b) priority overload control
To improve last mechanism we propose to change service discipline from FIFO to LIFO in overload state. The effectiveness of last-in-first-out scheduling was proved in [4] and shows that LIFO based schemes are more attractive at overload from both throughput and delay. Also for fair service we add priority for messages: calls to emergency services have the highest priority, then for corporate clients and for home domain it is the lowest.
V. CONCLUSIONS In this paper is represented the performance of SIP server in normal and overload states. Different mechanisms of overload control were compared and it was proposed improved mechanism used LIFO discipline for serving messages in overload state. The combined LIFO-Priority algorithm allow to decrease the message process time on SIP server in overload state and improve a throughput characteristic.
REFERENCES [1] J. Rosenberg, H. Schulzrinne, “SIP: Session Initiation Protocol”, RFC 3261, Internet Engineering Task Force, June 2002. [2] M. Ohta, “Overload Control in a SIP Signaling Network”, International Journal of Electrical and Electronics Engineering,3:2, pp.87 – 92, 2009 [3] R.G. Garroppo, S. Giordano, “Queueing strategies for local overload control in SIP server”, IEEE Global Telecommunications Conference, pp.1-6, Nov.2009 [4] Б. С. Цыбаков, П. Папантони-Казакос, “Наилучшая и наихудшая дисциплины передачи пакетов”, Проблемы передачи информации, т. 32, вып.4, сс.72-92, 1996
TCSET'2012, February 21–24, 2012, Lviv-Slavske, Ukraine Lviv Polytechnic National University Institutional Repository http://ena.lp.edu.ua