CS556 Course Project Performance Analysis of M-NET using GSPN

Similar documents
Programma della seconda parte del corso

Keywords Backup and restore strategies, online backup, metrics, modelling methods, hourly backup.

A Markovian Sensibility Analysis for Parallel Processing Scheduling on GNU/Linux

Test Coverage Criteria for Autonomous Mobile Systems based on Coloured Petri Nets

Real-Time Billing Throughput Analysis of Wireless Telecommunication Systems

Process Modelling from Insurance Event Log

Response time behavior of distributed voting algorithms for managing replicated data

ISSN Vol.04,Issue.25, July-2015, Pages:

Modeling and Performance Evaluation of Internet of Things based on Petri Nets and Behavior Expression

Computer Science. General Education Students must complete the requirements shown in the General Education Requirements section of this catalog.

Introduction to Finite Automata

How To Understand The Difference Between Business Process And Process Model In Java.Java.Org (Programming)

Modeling and Simulation Firewall Using Colored Petri Net

A Model-driven Approach to Predictive Non Functional Analysis of Component-based Systems

Voice Service Support over Cognitive Radio Networks

Chapter 3. Internet Applications and Network Programming

Software Performance and Scalability

Survey on Models to Investigate Data Center Performance and QoS in Cloud Computing Infrastructure

OPTIMIZED PERFORMANCE EVALUATIONS OF CLOUD COMPUTING SERVERS

DiPro - A Tool for Probabilistic Counterexample Generation

A novel load balancing algorithm for computational grid

Traffic Control by Influencing User Behavior

Performance Modeling and Analysis of a Database Server with Write-Heavy Workload

Web Server Software Architectures

TIME DEPENDENT PRIORITIES IN CALL CENTERS

Information Systems. Administered by the Department of Mathematical and Computing Sciences within the College of Arts and Sciences.

Logical Data Models for Cloud Computing Architectures

A QUEUEING-INVENTORY SYSTEM WITH DEFECTIVE ITEMS AND POISSON DEMAND.

Load Balancing and Switch Scheduling

Modeling Agile Manufacturing Cell using Object-Oriented Timed Petri net

Layered Dependability Modeling of an Air Traffic Control System

PERFORMANCE ANALYSIS OF PaaS CLOUD COMPUTING SYSTEM

M/M/1 and M/M/m Queueing Systems

Possibilities and limitations of formal methods for business process analysis and design

Performance Modeling for Web based J2EE and.net Applications

GOAL-BASED INTELLIGENT AGENTS

Workflow Automation and Management Services in Web 2.0: An Object-Based Approach to Distributed Workflow Enactment

Comparison of Request Admission Based Performance Isolation Approaches in Multi-tenant SaaS Applications

A Scheme for Implementing Load Balancing of Web Server

PETRI NET BASED SUPERVISORY CONTROL OF FLEXIBLE BATCH PLANTS. G. Mušič and D. Matko

There are a number of factors that increase the risk of performance problems in complex computer and software systems, such as e-commerce systems.

Load Testing on Web Application using Automated Testing Tool: Load Complete

Analysis of a Production/Inventory System with Multiple Retailers

RESEARCH PAPER International Journal of Recent Trends in Engineering, Vol 1, No. 1, May 2009

Scheduling Algorithms for Downlink Services in Wireless Networks: A Markov Decision Process Approach

A STUDY OF WORKLOAD CHARACTERIZATION IN WEB BENCHMARKING TOOLS FOR WEB SERVER CLUSTERS

Excerpts from Chapter 4, Architectural Modeling -- UML for Mere Mortals by Eric J. Naiburg and Robert A. Maksimchuk

Parallel Data Selection Based on Neurodynamic Optimization in the Era of Big Data

Periodic Capacity Management under a Lead Time Performance Constraint

Achieve Better Ranking Accuracy Using CloudRank Framework for Cloud Services

A Comparative Performance Analysis of Load Balancing Algorithms in Distributed System using Qualitative Parameters

Automatic Stress and Load Testing for Embedded Systems

CURTAIL THE EXPENDITURE OF BIG DATA PROCESSING USING MIXED INTEGER NON-LINEAR PROGRAMMING

CHAPTER 7 STOCHASTIC ANALYSIS OF MANPOWER LEVELS AFFECTING BUSINESS 7.1 Introduction

PIPE The Great Re-Plumbing

An Implementation of Software Project Scheduling and Planning using ACO & EBS

International Journal of Scientific & Engineering Research, Volume 6, Issue 4, April ISSN

Component visualization methods for large legacy software in C/C++

Resource Allocation Schemes for Gang Scheduling

AN EFFICIENT DISTRIBUTED CONTROL LAW FOR LOAD BALANCING IN CONTENT DELIVERY NETWORKS

Telephone Traffic Queues in a Customer Call Center. A Thesis. Presented for the. Master of Science Degree. The University of Tennessee at Chattanooga

Radar Image Processing with Clusters of Computers

A Comparison of General Approaches to Multiprocessor Scheduling

Load Balancing Algorithm Based on Services

How To Model A System

A Network Flow Approach in Cloud Computing

Module 1: Introduction to Computer System and Network Validation

Performance Comparison of Database Access over the Internet - Java Servlets vs CGI. T. Andrew Yang Ralph F. Grove

Chapter 14 Managing Operational Risks with Bayesian Networks

Moodle Integrated Synchronous Teaching/Conferencing: A Free Open-Source Synchronous Capability for Moodle

Aerospace Software Engineering

Introduction to Modelling Embedded Systems with Alvis

IFS-8000 V2.0 INFORMATION FUSION SYSTEM

Single Sign-On Secure Authentication Password Mechanism

Load Testing and Monitoring Web Applications in a Windows Environment

UML Modeling of Network Topologies for Distributed Computer System

Transcription:

Performance Analysis of M-NET using GSPN CS6 Course Project Jinchun Xia Jul 9 CS6 Course Project Performance Analysis of M-NET using GSPN Jinchun Xia. Introduction Performance is a crucial factor in software system. For many software development groups, it remains easier to wait until a system has been built before evaluating its performance. Among the three most used techniques, measurement, simulation and analytic modeling [7], measurement is believed to be the most accurate method. But it is only feasible after system is implemented. Most organizations rely solely on performance testing and regularly incur the cost of redesign when performance problems arise. Situation would become better if we can evaluate system performance before we physically build up that system. That s why simulation and analytic modeling become useful. Simulation tends to be expensive due to large computation time and can t prove properties. Many analytic performance models are proposed by different researchers, including Queueing Network model, Markov chain model, and Markov reward models, etc. As a mathematical and graphic tool, Petri Net can be used to describe a large variety of different systems [9]. It has been proven to be able to model system behaviors [6]. Based on that model, Petri Net provides approaches for the formal analysis, including performance analysis. Because of those benefits, applications of Petri Net range from informal systems to formal systems, from software systems to hardware systems, and from systems with concurrent processes to systems without any concurrency. Various extensions to Petri net models have been proposed. Among them, we chose Generalized Stochastic Petri Nets (GSPN) over other techniques because of their ability to randomize arrival and processing delays and of their capacity to model complex interactions. A good property of GSPNs is they are isomorphic to continuous time Markov chains (MCs) []. This makes it easier to apply performance analysis based on GSPNs.. Work in this paper M-Net is a web based meeting net, which enables people in remote areas to hold virtual meetings through the internet [, 8]. This system has been developed by Professor Carl K. Chang s students. We intend to build up an analytic model for M-Net and analyze its performance. This paper is organized as follows: section gives a brief overview to GSPN, section introduces M-NET which will be modeled in this paper. In section, GSPN models for M-NET are described. Section /9

Performance Analysis of M-NET using GSPN CS6 Course Project Jinchun Xia Jul 9 applies some performance analysis based on those GSPN models. Section 6 evaluates and concludes this paper.. Generalized Stochastic Petri Net (GSPN). Introduction to GSPN Murata [] described Petri Nets (PN s) as a promising tool for describing and studying information processing systems that are characterized as being concurrent, asynchronous, distributed, parallel, nondeterministic, and/or stochastic. PN can be formally defined as [Peterson] : PN = (P, T, A, M) () where P, T, A, M are the sets of place, transition, arc, and marking. One of the important developments in the theory of PN s is the introduction of enhancements that make PN s more useful in performance evaluation studies. One such enhancement is the Stochastic Petri Net (SPN) which associates a random firing time to each transition. The reachability graph of an SPN can be turned into a continuous-time Markov chain (CTMC) by assigning to each edge a weight equal to the firing rate of the associated SPN transition. A SPN is defined formally as a tuple: SPN = (P, T. A, M, R) [] () where P, T, A, M are as in (), and R = {r, r,, r m } is the set of firing rates associated with the PN transitions. GSPN s [0] are timed Petri nets in which the transitions are classified into two groups: immediate and timed transitions. Immediate transitions have higher priority than timed transitions, fire in zero time and are labeled with a marking-dependent firing probability. Associated with timed transitions there are random, exponentially distributed firing times. A marking in which immediate transitions are enabled is known as a vanishing marking, while a marking in which only timed transitions are enabled is known as a tangible marking. Vanishing states have sojourn times which are zero, while tangible states have nonzero exponentially distributed sojourn times.. Performance analysis based on GSPN Smith defined performance [] as the degree to which a system or component accomplishes its designated functions within given constraints, such as speed, accuracy, or memory usage. What makes GSPN useful to performance analysis is that GSPN is isomorphic to Markov Chain. CTMC is one of the most useful tools for numerical analysis, but it s difficult to directly get CTMC for a big system. Compared to CTMC, GSPN model is more straightforward to build. So it s a normal way to build GSPN model first, then recognize its embedded CTMC. After that, we can analyze system performance based on numerical results gained from CTMC. Based on steady-state and /9

Performance Analysis of M-NET using GSPN CS6 Course Project Jinchun Xia Jul 9 transient-state distribution probability derived from CTMC, most performance analysis can be handled.. Introduction to M-NET. Overview of M-NET M-Net is a web based meeting net, which enables people in remote areas to hold virtual meetings through the internet. M-Net System was built on a communication platform which manages communication among different users. It also includes various applications to support collaborative meetings. These applications include chat, which supports test based discussions; slideshow, which displays slides; IxiFtp, which allows file operations and browser operations; layered whiteboard, which supports the exchange of the visual pictures drawn in the browser. M-Net also includes features like secure control, user registration, and so on. In the M-Net System, everybody can apply to be a member, and can then launch a meeting and invite other members to attend. In a meeting, all attendee can share ideas through M-Net applications, and those ideas are broadcasted to all the other meeting members.. M-NET system architecture M-Net can be considered as a three-tier client/server system. The three tiers are client, server, and database. M-Net client is actually a Java let that is downloaded from a Server, and run in any browser. It communicates directly with servers through socket connections. M-Net mainly includes interfaces that need to communicate with servers and applications. Figure shows how M-Net communicates [] : /9

Performance Analysis of M-NET using GSPN CS6 Course Project Jinchun Xia Jul 9 Side Server Side M-Net Server (Java lication) M-Net Server (Java lication) M-Net Server (Java lication) Central Central Server (Java application) Central Central Database Server (Java application) JDBC Central MS- Access Figure : Top level system architecture of M-Net. Modeling M-NET by scenarios Due to its client/server structure and its complex applications, it s very difficult and tedious to describe the whole M-NET system by GSPN. Also because M-NET is a real-time system with random user requests, it s very difficult to analyze performance for the whole system. In this case, performance analysis based on scenarios is alternative and can still be very useful. System behaviors can be divided into different scenarios. So it s possible to get whole system performance evaluation by systematic scenario performance analysis. This paper will use one scenario: Floor control as example to illustrate this procedure. Its state diagram and GSPN are depicted as below.. Floor Control In M-Net, applications Chat and WhiteBoard have Floor Control. For example, in a Chat room, only FloorHolder can speak. Users can ask for floor at any time, and the chairman will either grant him the floor or deny his request. Figure is a state diagram that models the behavior of meeting members requesting the floor to gain access to the whiteboard. In this example there are three states representing FloorHeld, FloorRequested, and FloorNeitherHeldNor- /9

Performance Analysis of M-NET using GSPN CS6 Course Project Jinchun Xia Jul 9 Requested. Transitions are represented as probability variables, which enables close integration with Petri Net modeling and Markov modeling. A delay is introduced into the FloorHeld state so that once a person enters the state they will remain in that state for a time period equal to TimeToWrite, unless the floor is prematurely removed by the chair. These transitions are all represented as variables that can be used to support numerical performance analysis. Figure : Floor Control represented as a State transition diagram Figure is a Petri Net that models the behavior of meeting members requesting the floor to gain access to the whiteboard. We assume that there re one chairman and five members in this meeting. In order to gain a Markovian model of this scenario, the following assumptions are made: Members request floor at exponentially distributed random rate with average ; Members cancel their requests at exponentially distributed random rate with average ; The request may not immediately served, either because the floor is held by another member, or because the chairman denies this request; Floor can be prematurely removed from a floor-holder by the chairman. Floor-holder writes to whiteboard for an exponentially distributed random rate with average before releasing the floor. /9

Performance Analysis of M-NET using GSPN CS6 Course Project Jinchun Xia Jul 9 t P P P P m t t t t P Figure : Floor Control represented as a GSPN Table : Legend for the GSPN in Figure P : Active member P : Member waiting for floor P : Chairman P : Floor free P : Member holds floor T : Member requests floor T : Member cancel floor request T : Chairman assign floor to member T : Chairman removes floor from member T : Member releases floor. Performance analysis based on GSPN models Response time is one of the most important performances, especially for network based applications. In this paper, only response time analysis is proposed.. Derive CTMC Based on the Petri Net in Figure, we can draw reachability graph as Figure : t t t t t 00 0 0 0 0 00 t t t t t /t t t /t t t /t t t t /t t /t t 00 0 0 0 00 t Figure : Reachability graph for GSPN in Figure 6/9

Performance Analysis of M-NET using GSPN CS6 Course Project Jinchun Xia Jul 9 It has been proved that there is a one-to-one correspondence between the reachability graph and the continuous-time Markov Chain (CTMC) []. Figure shows the CTMC corresponding to the GSPN of Figure. M : 00 M :0 M :0 M :0 M :0 M 6 :00 + + + + + M 7 :00 M 8 :0 M 9 :0 M 0 :0 M :00 Figure : Continuous time Markov Chain for the GSPN in Figure Without loss of generality, we assume =, =, =, =, =. For this CTMC, we generate matrix: Q = 6 9 6 9 6 9 6 9 6 7 6 6 6 6 6 Solve this CTMC, we can get π = [0.66, 0.86, 0.0, 0.0, 0.00, 0.00, 0.06, 0.078, 0.00, 0.00, 0.000]. Response time analysis Let n denote the average number of tokens in a place, λ denote the average arrival rate of tokens, and w denote the average wait of a token in a place. So we can derive n = λw () Our goal is to gain the mean response time t f that elapses from a floor request is generated until the floor is assigned to that member. If we can get the average number of token (by steady state) in a place, which is the n in (), we can easily compute w, which is the mean wait time of a token in that place. As for our goal, the response time t f is the time of waiting for floor. From Figure, we can see that is the waiting time in place. So we gain: t f = w. () Then n = 0*0.66 + *0.86 + *0.0 + *0.0 + *0.00 + *0.00 + 0*0.06 + *0.078 + *0.00 + *0.00 + *0.000 7/9

Performance Analysis of M-NET using GSPN CS6 Course Project Jinchun Xia Jul 9 = 0.9 λ = = w = 0.977 t f = 0.977 Hereby we know that the mean response time from a member request the floor till the member release that floor is 0.977 s.. Evaluate performance against original requirements After we calculate those numerical results, the next step is to evaluate those performances against the original requirements. According to the related requirement item Each floor request should be responded within second, obviously this requirement is satisfied. 6. Evaluation, Conclusion and Future work The example in this paper is a very simple one since only one scenario and only response time are considered. Values used in this example are fictitious. But from the numerical result, we can see that early performance evaluation is feasible. Actually GSPN can be very useful for most performance evaluation, like throughput, server load, CPU utilization, etc. All those work can be future work. Real-time Server- structure is difficult to model by even high-level Petri Net, but we can capture system behaviors by different scenarios, and analyze different system performances upon those scenarios. In doing this work, a major factor should be considered: those scenarios can completely capture system behaviors. References: [] Jian Zhang, M-Net Server Enhancement and NT Service, Master s Project Report, Apr. 00 [] Marco Ajmone, et al., A Class of Generalized Stochastic Petri Nets for the Performance Evaluation of Multiprocessor Systems, ACM Trans. Computer Systems, Vol., No., May 98, pp. 9- [] Kurt Jensen, An Introduction to the Theoretical Aspects of Coloured Petri Nets, de Bakker, J.W.; de Roever, W.-P.; Rozenberg, G.: Lecture Notes in Computer Science, vol. 80; A Decade of Concurrency, Springer-Verlag, Jun. 99, pp. 0-7. [] Murata, T. "Petri Nets: Properties, Analysis and lications", Proc. IEEE, Apr. 989, pp. -79 [] J.L. Peterson, Petri Net Theory and the Modeling of Systems, Prentice Hall PTR, 8/9

Performance Analysis of M-NET using GSPN CS6 Course Project Jinchun Xia Jul 9 Upper Saddle River, NJ, 98 [6] Kurt Jensen, An Introduction to the Theoretical Aspects of Coloured Petri Nets, de Bakker, J.W.; de Roever, W.-P.; Rozenberg, G.: Lecture Notes in Computer Science, vol. 80; A Decade of Concurrency, Springer-Verlag, Jun. 99, pp. 0-7. [7] O.C. Ibe, et al., Performance Evaluation of -Server Systems, IEEE Trans. Parallel & Distributed System, vol., no., Nov. 99, pp. 7-9. [8] Rong Qian, Meeting Net Real.0 Server Design and Implementation, Master Project Report. Int l Center for Software Eng., Computer Science Dept., Univ. of Illinois at Chicago, April 999. [9] J.L. Peterson, Petri nets. ACM Comput. Surv. 9, (Sept. 977), -. [0] M. A. Marsan, G. Balbo, and G. Conte, Performance Models of Multiprocessor Systems. Cambridge, MA: MIT Press, 986. [] C.M. Woodside and C. U. Smith, "Performance Validation at Early Stages of Development", Position paper, Performance 99, Istanbul, Turkey, October 99 9/9