Analytical Model to Create Proxy Server Sessions in Multimedia Networks
محورهای موضوعی : Communication Systems & Devices
1 - Computer Engineering Department, Kermanshah University of Technology
کلید واژه: Modeling, Prioritize, Queue theory, Proxy server, MVA algorithm.,
چکیده مقاله :
One of the most popular and widely applied protocols on multimedia networks is the Session Initiation Protocol (SIP) to create, modify, and terminate the sessions. SIP is the platform of Next Generation Networks (NGN). In this way, SIP should be able to respond to the needs of such a largely-used network. One of the major problems in SIP networks is overload. This challenge creates a sharp drop in quality of service for NGN users. In this regard, many studies have been conducted on the effectiveness of this protocol, especially under overload. A new analytical model is developed that prioritizes the SIP message processing. An analytical approach is proposed based on the Mean Value Analysis (MVA) algorithm in queue theory. Considering some appropriate assumptions customizing MVA as to implement this proposed model and to cope with the limitations of the MVA is highly essential. The output of the analytical model is compared with the standard SIP model obtained from the simulator and the results confirm that prioritizing original messages would enhance the SIP performance at different load conditions. Prioritization of original messages is advantageous, and outperforms the normal SIP. Nevertheless, prioritizing the repeated messages not only has no advantage, but also its performance is less than the normal SIP.
One of the most popular and widely applied protocols on multimedia networks is the Session Initiation Protocol (SIP) to create, modify, and terminate the sessions. SIP is the platform of Next Generation Networks (NGN). In this way, SIP should be able to respond to the needs of such a largely-used network. One of the major problems in SIP networks is overload. This challenge creates a sharp drop in quality of service for NGN users. In this regard, many studies have been conducted on the effectiveness of this protocol, especially under overload. A new analytical model is developed that prioritizes the SIP message processing. An analytical approach is proposed based on the Mean Value Analysis (MVA) algorithm in queue theory. Considering some appropriate assumptions customizing MVA as to implement this proposed model and to cope with the limitations of the MVA is highly essential. The output of the analytical model is compared with the standard SIP model obtained from the simulator and the results confirm that prioritizing original messages would enhance the SIP performance at different load conditions. Prioritization of original messages is advantageous, and outperforms the normal SIP. Nevertheless, prioritizing the repeated messages not only has no advantage, but also its performance is less than the normal SIP.
[1] D. Y. Yavas, I. Hokelek, and B. Gunsel, "Controlling SIP server overload with priority based request scheduling", International Conference on Computing, Networking and Communications (ICNC), 2015, pp. 510-514.
[2] I. Kuzminykh, "A combined LIFO-Priority algorithm for overload control of SIP server", International Conference on Modern Problems of Radio Engineering Telecommunications and Computer Science (TCSET), 2012, pp. 330-330.
[3] R. G. Garroppo, S. Giordano, S. Spagna, and S. Niccolini, "Queueing Strategies for Local Overload Control in SIP Server", In IEEE Global Telecommunications Conference, 2009, pp. 1-6.
[4] J. Lee and I. Joe, "An Overload Control Algorithm based on Priority Scheduling for SIP Proxy Server", Proceedings on the International Conference on Internet Computing, Athens 2012.
[5] K. K. Guduru and J. Usha, "Queuing strategies for self overload control in SIP servers", International Conference on Contemporary Computing and Informatics, 2014, pp. 1007-1011.
[6] A. Montazerolghaem, M. H. Yaghmaee, A. Leon-Garcia, M. Naghibzadeh, and F. Tashtarian, "A Load-Balanced Call Admission Controller for IMS Cloud Computing", IEEE Transactions on Network and Service Management, vol. 13, no. 4, pp. 806-822, 2016.
[7] A. Montazerolghaem, M. H. Y. Moghaddam, and A. Leon-Garcia, "OpenSIP: Toward Software-Defined SIP Networking", IEEE Transactions on Network and Service Management, vol. 15, no. 1, pp. 184-199, 2018.
[8] H. Kim and N. Feamster, "Improving network management with software defined networking", IEEE Communications Magazine, vol. 51, no. 2, pp. 114-119, 2013.
[9] P. Abaev, A. Pechinkin, and R. Razumchik, "Analysis of Queueing System with Constant Service Time for SIP Server Hop-by-Hop Overload Control", Berlin, Heidelberg, 2013, pp. 1-10: Springer Berlin Heidelberg.
[10] K. E. Samouylov, P. O. Abaev, Y. Gaidamaka, A. Pechinkin, and R. Razumchik, "Analytical Modelling And Simulation For Performance Evaluation Of SIP Server With Hysteretic Overload Control", In ECMS, 2014.
[11] Y. Gaidamaka, A. Pechinkin, R. Razumchik, K. E. Samouylov, and E. S. Sopin, "Analysis of an M|G|1|R queue with batch arrivals and two hysteretic overload control policies", International Journal of Applied Mathematics and Computer Science, vol. 24, pp. 519 - 534, 2014.
[12] V. K. Gurbani, L. J. Jagadeesan, and V. B. Mendiratta, "Characterizing session initiation protocol (SIP) network performance and reliability", presented at the Proceedings of the Second international conference on Service Availability, Berlin, Germany, 2005.
[13] S. V. Subramanian and R. Dutta, "A study of performance and scalability metrics of a SIP proxy server – a practical approach", Journal of Computer and System Sciences, vol. 77, no. 5, pp. 884-897, 2011/09/01/ 2011.
[14] G. Mishra, S. Dharmaraja, and S. Kar, "Performance analysis of SIP signaling network using hierarchical modeling", In Twentieth National Conference on Communications, 2014, pp. 1-5.
[15] S. Shorgin, K. Samouylov, Y. Gaidamaka, and S. Etezov, "Polling System with Threshold Control for Modeling of SIP Server under Overload", Cham, 2014, pp. 97-107: Springer International Publishing.
[16] Y. V. Gaidamaka, "Model with threshold control for analyzing a server with an SIP protocol in the overload mode", Automatic Control and Computer Sciences, vol. 47, no. 4, pp. 211-218, 2013/07/01 2013.
[17] Y. Hong, C. Huang, and J. Yan, "Modeling chaotic behavior of SIP retransmission mechanism", International Journal of Parallel, vol. Emergent and Distributed Systems, 02/01 2013.
[18] Y. Hong, C. Huang, and J. Yan, "Modeling and simulation of SIP tandem server with finite buffer", ACM Trans. Model. Comput. Simul., vol. 21, no. 2, p. Article 11, 2011.
[19] M. Jahanbakhsh, S. V. Azhari, and H. Nemati, "Lyapunov stability of SIP systems and its application to overload control", Computer Communications, vol. 103, pp. 1-17, 2017/05/01/ 2017.
[20] A. Montazerolghaem, M. H. Yaghmaee Moghaddam, and F. Tashtarian, "Overload Control in SIP Networks: A Heuristic Approach Based on Mathematical Optimization", 2015.
[21] V. A. F. A. Daniel A. Menascé, Lawrence W. Dowdy, Performance by Design: Computer Capacity Planning by Example. Prentice Hall PTR, 2004.
[22] M. Khazaei and N. Mozayani, "A dynamic distributed overload control mechanism in SIP networks with holonic multi-agent systems", Telecommunication Systems, vol. 63, 12/30 2015.
[23] M. Khazaei, "Occupancy Overload Control by Q-learning", Singapore, 2019, pp. 765-776: Springer Singapore.
[24] J. Wang, J. Liao, T. Li, J. Wang, J. Wang, and Q. Qi, "Probe-based end-to-end overload control for networks of SIP servers", Journal of Network and Computer Applications, vol. 41, pp. 114-125, 5// 2014.
[25] J. Liao, J. Wang, T. Li, J. Wang, J. Wang, and X. Zhu, "A distributed end-to-end overload control mechanism for networks of SIP servers", Comput. Netw., vol. 56, no. 12, pp. 2847-2868, 2012.
[26] C. Shen, H. Schulzrinne, and E. Nahum, "Session Initiation Protocol (SIP) Server Overload Control: Design and Evaluation", Berlin, Heidelberg, 2008, pp. 149-173: Springer Berlin Heidelberg.
[27] M. Khazaei and N. Mozayani, "Overload management with regard to fairness in session initiation protocol networks by holonic multiagent systems", International Journal of Network Management, vol. 27, no. 3, p. e1969, 2017.
Analytical Model to Create Proxy Server Sessions in
Multimedia Networks
Department of Computer Engineering, Kermanshah University of Technology, Iran
Received: 29/Aug/2021 Revised: 13/Nov/2021 Accepted: 07/Dec/2021 |
|
Abstract
One of the most popular and widely applied protocols on multimedia networks is the Session Initiation Protocol (SIP) to create, modify, and terminate the sessions. SIP is the platform of Next Generation Networks (NGN). In this way, SIP should be able to respond to the needs of such a largely-used network. One of the major problems in SIP networks is overload. This challenge creates a sharp drop in quality of service for NGN users. In this regard, many studies have been conducted on the effectiveness of this protocol, especially under overload. A new analytical model is developed that prioritizes the SIP message processing. An analytical approach is proposed based on the Mean Value Analysis (MVA) algorithm in queue theory. Considering some appropriate assumptions customizing MVA as to implement this proposed model and to cope with the limitations of the MVA is highly essential. The output of the analytical model is compared with the standard SIP model obtained from the simulator and the results confirm that prioritizing original messages would enhance the SIP performance at different load conditions. Prioritization of original messages is advantageous, and outperforms the normal SIP. Nevertheless, prioritizing the repeated messages not only has no advantage, but also its performance is less than the normal SIP.
Keywords: Modeling; Prioritize; Queue theory; Proxy server; MVA algorithm.
1- Introduction
Today's world requires designing an efficient and scalable system, since the lack of these criteria may cause the system not to be implemented, so that the system is quickly eliminated from the competition. As the performance improvement after system designing may fail or associate with high costs, it is better to consider this issue during the design phase. Accordingly, it is necessary to develop a model of the system before construction that can describe a general view of the system to improve the performance of the system lifetime. Nevertheless, in practice, it is impossible to generate a model with all details and limitations of the actual system, and if possible, it is highly complex and expensive. Consequently, many critical details are mainly not considered in the modeling process that can affect the performance via either low effect or ineffectiveness. The details level of the model depends on the aim of the model that should not be more complex than the defined target.
The modeling process can be performed as simulation or analytic. In simulation method, a computer program mimics the various states of the system. However, the analytical method includes several mathematical and computational equations calculating performance parameters based on offered load. It should be noted the analytical model involves fewer details than the simulation method because it is implemented using some mathematical equations. The reasons to utilize the analytical modeling instead of the simulation method are: 1) simulators may depend on either time or event, so that non-convergence or very long convergence occurs by increasing the simulation time or load, and 2) if the parameters are not valued correctly, the results of the simulation are unrealistic. However, the analytical model calculates the performance parameters in a short time, and the results do not depend on the specific settings of the parameters. Ensuring the accuracy of the results of the analytical model, the output of the model is compared to the output of the simulation, which is highly useful.
In the queuing theory, the Markov model is utilized to describe the sequence of possible events, in which the probability of each event occurring depends only on the state of the previous event. In fact, the Markov model is a memory-less random process, which is the basis of most quantitative analysis methods. This model is formed based on the state diagram that is a powerful tool to describe systems. In addition, it can be visually understood by less-experienced people and is employed in many problems. It should be noted that as the Markov model often determines the interaction between the various components of the system, it could be utilized as a predictor of the system behavior. Nevertheless, the main challenge of the Markov model is its extreme sensitivity to the sudden increase in the state space. In some cases, as the number of requests increase, the state space becomes so large that solving its equations does not converge. Therefore, some alternative solution methods like Mean Value Analysis (MVA) have been proposed.
The MVA is an algorithm developed to solve various Markov models, which does not require both explicit and simultaneous solutions of a large number of equations. The MVA utilizes a recessive relation to obtain each state instead of solving simultaneous equations to find probabilities.
The Session Initiation Protocol (SIP) is applied in many multimedia networks, and is introduced as the kernel protocol for next-generation networks. SIP is a text-based protocol where both request and response are expressed as HTTP, standardized by IETF. In this protocol, the control and data transmission sections are separated. SIP contributes to the end points’ coordination, finding session participants, and agreeing on the session features.
Many studies are done on the performance of the SIP servers under specific conditions like overload. Overload is one of the most unsolved issues in SIP networks. In general, when the offered load to the server exceed its processing capacity, overloading becomes inevitable and the retransmission leads to queues server overflow. Hence sessions creating is delayed and overload is increased. Overload problem solutions are presented within simulation or analytical models, which are often simulation dependent.
One approach to overcome the local overload is to prioritize processing of the incoming requests in the proxy servers, where retransmitted messages are reduced and the corresponding transaction is terminated faster [1-4]. The prioritization method can be combined with intelligent methods to reduce the unnecessary in retransmissions by giving high priority to retransmitted requests [5]. As to VLB-CAC [6], the Virtual load-balanced call admission controller (VLB-CAC) is introduced for the cloud-hosted SIP servers to control overload in SIP network. The VLB-CAC determines the optimal call admission rates and signaling paths based on a heuristic mathematical model. The proposed scheme is implemented in smart applications on virtual infrastructure as testbed. The new concepts of computer networks, OpenSIPPartial and VLB-CAC are applied in overcoming the overload issue. As to the OpenSIPPartial, the SIP network is upgraded based on SDN and NFV technologies [7, 8].
On the other, SIP proxy server is composed of the dynamic subsystems, each subsystem interacts with each other to manage session constantly. In addition, overload indicate the proxy server as dynamic and complex system. Specially, with the development of SIP networks and their role in communication, the number of SIP servers will increase, and they will be geographically distributed. Hence, simulation is slow and time-consuming method to model SIP server but an analytical method is the right tool.
A priority-based approach is modeled through M/D/1/R according to RFC 357 in [9, 10]. In this method, three normal (L), overload (H) and removal (R) areas are defined, the input load is controlled according to the number of requests in each area. Also, two types of loads are defined, the first has an exclusive priority over the second. In the overload area, only first type load is accepted, but no load is accepted in the rejection area. In this method, a random process is defined for each region, and the rapid probability distribution function of that region is obtained. At the end, the mean return time to the normal state is calculated by the distribution function [11].
Applying the prioritization and the Markov model, the proxy servers between each UAC and UAS are modeled through a series of M/M/1 open queues. Each proxy server consists of a number of parallel and series queues, each of which is associated with a specific request or response. In this method, each message enters one of these queues with a defined probability. Then, based on the Markov model, an analytical model is presented that assesses the performance of the SIP network by input load, service rate, and different delays. Finally, it has been shown to improve the performance in the use of memory and CPU [12, 13].
Appling the queue theory model, a hierarchical model is presented in [14] to assess the performance of the SIP server in normal and overload states, where, Petri Net networks are used to check the network performance. In this model, two types of load management are considered to reduce retransmissions. The present paper aims to prioritize resource planning and reservation, so that the performance of the degradation system is at a lower level.
As statistical analytical models, the SIP server is modeled by the queuing system and it is analyzed by numerical methods. In these method, two limited queues for invite and non-invite requests are considered, which the non-invite queue is a priority. For the non-invite queue, a threshold (L) is considered, and when the number of requests in the queue exceeds (L), the incoming requests are rejected in the invite queue. The switch between the two queues for processing is as exponential. The polling systems, along with two general and gradual policies, have also been utilized to process requests. In any gradual processing, a number of requests per queue are processed, and the rest of the requests are waited, until it is their turn to be processed. Evaluation indicates that the gradual method has better performance [15, 16].
Most of the non-statistical prioritization models are implemented through the recursive equations. The fluid-flow model of one server, and then tandem servers are obtained for infinite queue length [17]. In this research, the initial conditions of the queue are obtained, so that the server is not overloaded by prioritizing the messages. The fluid-flow model of tandem servers with a finite buffer size can be calculated [18].
The trapezoid topology to tandem servers and several user agents, providing a Liapanov function that can assess the probability of rejection of calls through the proxy servers to achieve stability [19]. For this purpose, the fluid-flow model of the trapezoid topology of the SIP server is obtained by giving higher priority to non-invite messages.
As to LB-CAC a call acceptance controller with load balancing is proposed in [20], where a linear programmed model is involved in estimating the acceptance rate and signaling pathways, to assure the CPU and memory allocations and acceptance rates optimization.
A. Innovations
Many solutions have been offered to overcome overload, one being the priority-based processing. There exists no article regarding an analytical model based on MVA with low cost computations. A new analytical model based on the MVA algorithm that models the SIP server performance under message prioritization, together with considerable details and accuracy is developed in this articles. For this purpose, the MVA algorithm must be customized to meet these proposed models requirements, something not done yet in this field. The output of this analytical model is compared with the same of the simulator to determine its reliability.
The article is organized as follows: The literature is reviewed in Sec. 2; the proxy server is modeled in Sec. 3; model is adapted to the MVA in Sec. 4; the results are analyzed in Sec. 5 and article is concluded is Sec. 6.
2- Literature Review
Since the purpose is modeled SIP server based on the MVA, needed the related concepts to be briefly explained.
2-1- MVA
The MVA has been developed for a broad class of useful Markov models that do not require the explicit solution to a large number of simultaneous equations. Instead of solving a set of simultaneous linear equations to find the steady state probability of being in each system state, from which performance metrics can be derived, MVA is a simple recursion. MVA calculates the performance metrics directly for a given number of requests, knowing only the performance metrics when the number of requests is reduced by one. The recursion is intuitive, efficient, and elegant. Its impact on the field of analytical performance evaluation has been huge. The basic MVA algorithm is quite powerful. It is applicable across a wide set of performance models. It has been the focus of much research and several extensions have been developed. These include: multi-class, load dependent servers and open and closed classes. The optimization parameters for each request are solved through MVA, with the following limitations [21]:
· MVA does not provide the steady-state probability on its own.
· MVA does not provide information on the transient and non-stationary state of the system.
· MVA does not model the state-dependent behavior.
· MVA is not applied in solving the non-multiplicative problems, like the Gaussian, uniform and stationary distributions, priority queues and multi-class FIFS queues. The approximate MVA techniques is applied to solve non-multiplicative cases.
2-2- SIP
The SIP protocol architecture contains two logical entities, namely the user agent and the server agent. The User Agents (UA) is divided into two groups of User Agent Client (UAC) is an applicant and User Agent Server (UAS) is a respondent. The proxy servers seek the user location and perform a routing operation to deliver messages to the desired user. SIP transaction is a request and all the relevant responses are exchanged between two adjacent components. Proxy servers are configured state-full or state-less depending on network conditions. In the state-full, the proxy server saves the data of each transaction to perform some operations like requests retransmission. In the state-less proxy, no operation log is recorded. Retransmission mechanism is utilized to prevent the loss of packets when the SIP is run on a non-reliable transmission layer protocol like UDP [22, 23]. The call establishment model between UACs and UASs as state-full proxy server is illustrated in Fig. (1).
The UACs start sending messages by delivering an invite messages (λIO), so that when this message reaches the server, the 100-Trying response (μ100-Trying) as confirming is sent to UACs, and the invite is passed to the other side of the session (μIO). When the invite message reaches by UAS, 180-Ringing message (λ180) and 200-OK (λ200) are sent by answering the call. Finally, a session is made when ACK (λACK) is sent for every pair of 180-Ringing/200-OK (μ180-200). Afterward, the data are exchanged without passing through the proxy server. In terms of confirmation and retransmission, SIP transactions are classified as invite or non-invite invites. The different variables and parameters applied in this manuscript are tabulated in the Table 1.
When the invite request is transmitted, a timer is responsible to control the retransmission set to the initial value. Upon expiration of this timer, the request will be retransmitted again, thus, doubling the timer. This process continues until a response is received or the timer is expired with a default value, consequently, an invite request may be repeated for about six times. The λIR and λIRS symbolize the repeated invites retransmitted by the UACs or proxy servers. If no ACK is received the UAS will retransmitted a 200-OK message, that is, a 200-OK request can be retransmitted for about eleven times [22]. The μR and μIR symbolize the processing rate of responses and repeated invites, respectively.
Fig. 1 The model of session create between the UAs
Table 1 The model parameters
Parameters | Description | |
λ | Offered load transmitted through UACs | |
λIO | Original invites rate transmitted through UACs | |
λIR | Repeated invites rate transmitted through UACs | |
λIRS | Repeated invites rate retransmitted through server | |
λACK | ACK responses rate transmitted through UACs | |
λ200 | 200-OK responses rate transmitted through UASs | |
λ180 | 180 responses rate transmitted through UASs | |
μIO | Processing rate of original invites | |
μIR | Processing rate of repeated invites | |
μR | Processing rate of responses | |
μ | Processing rate of all requests | |
qIO | Queue of original invites | |
Tj | Time to retransmit repeated messages | |
Di | Sum of the times’ means when a request receives service from the ith source | |
Vi | Number of visits to the ith source | |
Si | Length of time that a request receives service from the ith source | |
| Demand service of original CPU applied through kth category of invites (k= IO or IR) | |
| Demand service of original CPU applied through responses | |
| Demand service of original CPU applied through responses | |
| Demand service of yth Shadow CPU applied through responses | |
| Demand service of yth Shadow CPU applied through kth category of invites (k= IO or IR) | |
| Demand service of original CPU applied through kth category of invites (k= IO or IR) | |
| Original CPU utilization applied through responses | |
| yth Shadow CPU utilization applied through kth category of invites (k= IO or IR) | |
| Throughput of responses | |
| Throughput of kth category of invites (k= IO or IR) | |
α(j) | Service rate coefficient | |
μ(j) | Mean service rate of j requests | |
M | Coefficient determining the number of invites, repeated for the first time | |
H | Upper bound from which the number of processes remains constant | |
ω | Volume from which the service rate is constant | |
P(j|n) | Probability of j occurrence when n requests are present throughout the network | |
NIO | Number of original invites in the corresponding queue | |
NIR | Number of repeated invites in the corresponding queue | |
NR | Number of responses in the corresponding queue | |
| Average residence time for original invites | |
| Average residence time for repeated invites | |
| Average residence time for responses | |
C | Maximum proxy server capacity |
Priority | Values | Input Parameters |
-- |
|
|
-- |
|
|
-- |
|
|
IO |
|
|
IR |
|
|
IR |
|
|
IO |
|
|
IO |
|
|
IR |
|
|
IR |
|
|
IO |
|
|