1 / 64

SIMULATION MODELING AND ANALYSIS WITH ARENA T. Altiok and B. Melamed Chapter 13

SIMULATION MODELING AND ANALYSIS WITH ARENA T. Altiok and B. Melamed Chapter 13 Modeling Computer Information Systems. Computer Networks. Computer networks consist of computer nodes, called hosts transmission lines, called communications links System attributes

kamali
Download Presentation

SIMULATION MODELING AND ANALYSIS WITH ARENA T. Altiok and B. Melamed Chapter 13

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. SIMULATION MODELING AND ANALYSIS WITH ARENA T. Altiok and B. Melamed Chapter 13 Modeling Computer Information Systems Altiok / Melamed Simulation Modeling and Analysis with Arena Chapter 13

  2. Computer Networks • Computer networks consist of • computer nodes, called hosts • transmission lines, called communications links • System attributes • usability is the ease with which a user can learn to operate, prepare inputs for, and interpret outputs from a system or component • flexibility is the ease with which a system or component can be modified • for use in applications or environments other than those for which it was • specifically designed • interoperability is the ability of two or more systems or components to exchange information and use it • scalability is the ease with which a system or component can be modified to fit larger problems Altiok / Melamed Simulation Modeling and Analysis with Arena Chapter 13

  3. Client/Server Networks • A common computer-network architecture is the Client/Server configuration • a client is a host playing the role of a requestor of services • a server is a host providing the requisite service • the two interact over a communications network • Client/Server architecture is versatile, message-based and modular • Example: web services implemented in the Client/Server architecture • the Internet/Web infrastructure has placed increasingly larger demands on servers as well as the networks connecting them • a crowded Internet can slow the delivery of responses (latency) to customer queries and transactions, resulting in poor quality of service (QoS) • and disappointed users and loss of business • thus, performance evaluation of distributed Client/Server and web-based applications has become extremely important Altiok / Melamed Simulation Modeling and Analysis with Arena Chapter 13

  4. Capacity of Web-Based Services • As the Web keeps growing, applications will have to be designed with capacity issues in mind • For example, businesses must often formulate and answer “what-if” questions such as the following: • what is the impact of a 20% increase in customer transactions on the response time of the system? • how would the response time be changed if part of the workload were shifted from one hard disk to another? • what good would it do to move a database to a remote host? Altiok / Melamed Simulation Modeling and Analysis with Arena Chapter 13

  5. Client/Server System Architectures • In a Client/Server system, • a client computer sends requests for specific services • a server computer listens to client requests, processes them, and sends the response back to the client • Client/Server system architectures: • In a two-tier Client/Server architecture, the client side utilizes a user interface that permits direct communication with the server host • In a three-tier Client/Server architecture, a middle tier is added between the client side and the server side (typically for transaction processing, or monitoring) Altiok / Melamed Simulation Modeling and Analysis with Arena Chapter 13

  6. Client Nodes Server Nodes TP Monitor Transmission Network Request Reply Three-Tier Client/Server Systems • A schematic representation of a three-tier Client/Server system is shown below • The transaction processing (TP) monitor receives the transactions, • queues them up for service, manages their path to completion, and • finally, sends the reply back to the client Altiok / Melamed Simulation Modeling and Analysis with Arena Chapter 13

  7. Message-Based Communications • Clients and servers communicate via messages • a client request is a message requesting a specific service from a server (e.g., a database service) • a server reply is packaged as another message, and sent back to the client (e.g., a database result set) • each message has origination and destination information, as well as a message body • thus, there are as many request types as there are services • Example: Online banking • users query their account status at an ATM (Automatic Teller Machine) or access a secure Web site for the same • example: “show me the balance of my account” • example: “show me the last 15 cashed checks” • the reply is printed on paper or displayed on a computer monitor Altiok / Melamed Simulation Modeling and Analysis with Arena Chapter 13

  8. Local CPU Client Process CPU Queue Message Traffic Client Hosts • Client hosts are computers that issue service requests initiated by • computer programs or by customers connected to the host • A schematic representation of a client host is shown below • a generated request undergoes local preprocessing at the client host • it is then is transmitted to a server host usually over a communications network (unless the client and server are on the same host) • on service completion, the reply is transmitted back to the client host and undergoes local post-processing, thereby completing the request/reply cycle • The most critical performance measure is response time • the total time elapsed from the moment of submitting a request (just before local preprocessing) up until the reply becomes available (just after local post-processing) Altiok / Melamed Simulation Modeling and Analysis with Arena Chapter 13

  9. Transaction Monitor CPU Message Traffic Server Processes Server Hosts • Server hosts perform the bulk of request processing • A schematic representation of a server host is shown below • in its simplest form, a server node consists of one or more processors • (CPUs) and a number of server processes that actually execute the code for the services requested by clients • the server processes and the CPU have each a message queue in front of them • each server process is enabled to perform a specific set of services Altiok / Melamed Simulation Modeling and Analysis with Arena Chapter 13

  10. Requests BWC = 1250 bytes/ms Replies Communications Networks • Nodes in the transmission network • consist of hardware and software • interoperate and interact via transmission protocols • A schematic representation of an abstraction of a single-server queue of a transmission node is shown below • a finite buffer precedes a transmission server operating at a given transmission speed (rate), known as the bandwidth capacity (BWC) • as not all of this capacity is available to messages, the message transferefficiency (MTE) is the ratio of available BWC to total BWC (typically in the range 60%-80%) • message transmission time is proportional to message size, for example, a BWC of 10 Mbps (equivalent to 1250 bytes/millisecond) at 70% MTE transmits a 1024-byte message in 1024 / (1250 * 0.7) = 1.17 milliseconds Altiok / Melamed Simulation Modeling and Analysis with Arena Chapter 13

  11. Server Node Client Nodes Monitor Network Server Processes Requests Replies Example: 2-Tier Client/Server System • Consider a Human Resources (HR) application, configured as a • two-tier Client/Server system, consisting of • 4 client nodes • 1 server node • traffic flows as shown in the schematic below Altiok / Melamed Simulation Modeling and Analysis with Arena Chapter 13

  12. Request Type No. Request Type Name Request Size (in bytes) Reply Size (in bytes) Service Requested Add employee 1 Add 1024 256 Delete employee Delete 1024 512 2 Find employee 3 Find 256 512 Search for employees 4 Search 512 HR Transactions Attributes • The HR system supports a number of services (request types) • services relate to company employee records • a database server maintains an HR database (HRDB) of employee-related information • the table below lists the attributes of supported HR services Altiok / Melamed Simulation Modeling and Analysis with Arena Chapter 13

  13. HR Transactions Attributes (Cont.) • Service requests in the table belong to the following types: • 1. a request of type Add adds a new employee with all his/her • information (name, address, phone, expertise, etc.) to the HRDB in a • message size of 1024 bytes, and the system returns a confirmation message of size 256 bytes. • 2. a request of type Delete deletes an employee entry (with all related information) from the HRDB, and the system returns a confirmation • message of size 512 bytes • 3. a transaction of type Find finds the complete employee information in the HRDB, based on partial data (e.g., the name alone), and the system returns a reply message of size 512 bytes • 4. a transaction of type Search searches the HRDB for all employees with • given characteristics (e.g., same expertise, same department, etc.), and the system returns a reply of random size, whose (discrete) distribution is given in the preceding table Altiok / Melamed Simulation Modeling and Analysis with Arena Chapter 13

  14. Request Inter-arrival Distribution(in messages / millisecond) Client Node Request TypeDistribution 1 2 3 4 HR Client Request Arrival Profiles • To characterize the traffic patterns in the system, we specify the arrival processes of all request types at each client node • the table below specifies client-side service request arrival profiles Altiok / Melamed Simulation Modeling and Analysis with Arena Chapter 13

  15. Request Type Name Request Type No. Elapsed Time (in milliseconds) 10 1 Add 2 Delete 8 3 Find 15 4 Search HR Server Profiles • To characterize the service in the system, we specify the servers and the time it takes to execute a service on them (elapsed times) • there are two server processes, called and , where the former • provides services of types Add and Delete, and the latter provides • services of types Find and Search. • the table below specifies server-side profiles of elapsed times Altiok / Melamed Simulation Modeling and Analysis with Arena Chapter 13

  16. Arena Model of the 2-Tier Client/Server HR System Altiok / Melamed Simulation Modeling and Analysis with Arena Chapter 13

  17. Client Nodes Segment • The client nodes segment models the arrivals of requests • by client request type • by destination server Altiok / Melamed Simulation Modeling and Analysis with Arena Chapter 13

  18. Client Nodes Segment Modules Dialog box of the Assign module Assign Service Requested_1 Altiok / Melamed Simulation Modeling and Analysis with Arena Chapter 13

  19. Network Segment • The network segment provides a simplified model of the entire communications network that performs message transmission • It consists of • a Process module to model transmission delay • a Decide module to model transaction routing • The Expression field specifies the delay time in the Process module (to be shown next) as the expression • ((Type==1) * Request_Size(Service_Requested) + (Type==2) * Reply_Size(Service_Requested)) • / ( 0.7 * 200) • where • Request_Size is used in the expression above to retrieve the associated request size as function of the service type • Reply_Size is used in the expression above to retrieve the associated reply size as function of the service type Altiok / Melamed Simulation Modeling and Analysis with Arena Chapter 13

  20. Communications Network Modules Dialog box of the Process module Com_Network Altiok / Melamed Simulation Modeling and Analysis with Arena Chapter 13

  21. Communications Network Modules (Cont.) Dialog boxes of the Expression module specifying message by type (bottom) and their sizes by service type (top) Altiok / Melamed Simulation Modeling and Analysis with Arena Chapter 13

  22. Server Node Segment • The server node segment models the server node • It uses a Decide module to dispatch requests to the appropriate server process Altiok / Melamed Simulation Modeling and Analysis with Arena Chapter 13

  23. Server Node Modules Dialog box of the Process module Transaction Monitor Altiok / Melamed Simulation Modeling and Analysis with Arena Chapter 13

  24. Server Node Modules (Cont.) Dialog box of the Decide module Dispatch Requests for Services in Server Node Altiok / Melamed Simulation Modeling and Analysis with Arena Chapter 13

  25. Server Node Modules (Cont.) • The Decide module dispatches requests to a server process based on the outcome of an N-way condition as follows: • the Type attribute is checked first: • if Type == 2, then this entity is a reply; • otherwise, if Type == 1, then the entity is a request transaction • in the latter case (Type == 1), the Service_Requested attribute is checked next: • if Service_Requested == 1 (Add request), then the transaction is dispatched to server process 1 • if Service_Requested == 2 (Delete request), then the transaction is dispatched to server process 1 • if Service_Requested == 3 (Find request), then the transaction is dispatched to server process 2 • if Service_Requested == 4 (Search request), then the transaction is dispatched to server process 2 Altiok / Melamed Simulation Modeling and Analysis with Arena Chapter 13

  26. Server Node Modules (Cont.) Dialog box of the Process module Server Process_1 Altiok / Melamed Simulation Modeling and Analysis with Arena Chapter 13

  27. HR System Simulation Results Altiok / Melamed Simulation Modeling and Analysis with Arena Chapter 13

  28. HR System Simulation Results (Cont.) Altiok / Melamed Simulation Modeling and Analysis with Arena Chapter 13

  29. HR System Simulation Results (Cont.) Altiok / Melamed Simulation Modeling and Analysis with Arena Chapter 13

  30. Server Node 1 Server Cluster Client Nodes Transmission Network Client Nodes Server Node 2 Example: 3-Tier Client/Server System • Consider a bookseller’s e-business network, configured as a three-tier Client/Server system, consisting of • a cluster of 2 server nodes (bold circles), each hosting 2 server processes with FIFO priority queues and providing multiple services • a transmission network that links the server nodes (yellow rectangle) • transaction processing (TP) middleware (purple circles) that dynamically balances the queue sizes of server processes in the cluster’s 4 client nodes • client nodes with traffic flows shown in the schematic below Altiok / Melamed Simulation Modeling and Analysis with Arena Chapter 13

  31. Elapsed Time at Server Node 1 (in milliseconds) Elapsed Time at Server Node 2 (in milliseconds) Service No. Service Priority Service Name 1 Best Sellers (BS) 5 Unif(10,20) Unif(18,28) 2 New Releases (NR) 4 Unif(13,23) Unif(21,31) 3 Book Search (BE) 3 Unif(4,14) Unif(10,20) 4 View Cart (VC) 2 Unif(7,17) Unif(2,12) Go to Cashier (GC) 5 1 Unif(1,11) Unif(5,15) Service Profiles • Server processes provide a number of services, each with a random elapsed (service) time • The table below displays • elapsed-time distributions by services • service priorities (lower priority numbers indicate higher priorities) Altiok / Melamed Simulation Modeling and Analysis with Arena Chapter 13

  32. Client Node / Server Process (SP) Service Name BS, NR ,BE Node 1 / SP_11 VC, GC Node 1 / SP_12 Node 2 / SP_21 BS, NR BE, VC, GC Node 2 / SP_22 Server Process Profiles • Services are allocated to server processes within server nodes • The table below displays this allocation Altiok / Melamed Simulation Modeling and Analysis with Arena Chapter 13

  33. TP Monitor Operation • A number of client nodes are connected to each server node • however, when a service request arrives at a server node, it is not necessarily processed there • rather, the TP monitor decides where it would be processed by selecting a server process (anywhere in the system) with the minimal queue size • In reality, dynamic load balancing aims to equalize the queue • workload (the total service time needed to serve all transactions in the queue, usually excluding the one in service) • however, for the sake of modeling simplicity, this model will balance only queue sizes Altiok / Melamed Simulation Modeling and Analysis with Arena Chapter 13

  34. Node 1 Node 2 Distribution of Request Inter-Arrival Times (in milliseconds) Expo(1/12) Expo(1/18) Distribution of Requests in Arrival Streams (Percentages in Mix) Best Sellers (BS) 0.20 0.23 New Releases (NR) 0.15 0.25 0.30 0.25 Book Search (BE) View Cart (VC) 0.05 0.07 Go to Cashier (GC) 0.30 0.20 Service Request Profiles • The table below displays • request inter-arrival time distributions • request mix distributions by server node Altiok / Melamed Simulation Modeling and Analysis with Arena Chapter 13

  35. Reply Profiles • Once a service request completes processing, a reply is sent back to the client node • Reply messages have • a random size of 1024 bytes or 8096 bytes • the reply size distribution is Altiok / Melamed Simulation Modeling and Analysis with Arena Chapter 13

  36. Performance Statistics • We wish to estimate • response times of service requests by type • delays in server process queues • resource utilization Altiok / Melamed Simulation Modeling and Analysis with Arena Chapter 13

  37. Arena Model of Request Arrivals and the Transmission Network Segments Altiok / Melamed Simulation Modeling and Analysis with Arena Chapter 13

  38. Request Arrival Modules Dialog box of the Create module Client Requests Node 1 Altiok / Melamed Simulation Modeling and Analysis with Arena Chapter 13

  39. Request Arrival Modules (Cont.) • Generated request transaction entities proceed to a corresponding • Assign module (Request Attributes 1 or Request Attributes 2) to assign values to attributes, as illustrated below Dialog box of the Assign module Request Attributes 2 Altiok / Melamed Simulation Modeling and Analysis with Arena Chapter 13

  40. Transmission Network Modules Dialog box of the Station module Com_Net Entrance Altiok / Melamed Simulation Modeling and Analysis with Arena Chapter 13

  41. Transmission Network Modules (Cont.) Dialog box of the Process module Network Altiok / Melamed Simulation Modeling and Analysis with Arena Chapter 13

  42. Transmission Network Modules (Cont.) • Since transmission times are size dependent, transmission delays are computed as an expression utilizing the message size attributes • Req_Mes_Size and Rep_Mes_Size in the Expression field above • The expression is • ((Type==Req)*Req_Mes_Size + (Type==Rep)*Rep_Mes_Size) / BWC / 0.8 • where • the message size is selected by the message type • the requisite service time is obtained by dividing the message size by the effective bandwidth capacity BWC*0.80, where 0.80 is the MTE (Message Transfer Efficiency) parameter Altiok / Melamed Simulation Modeling and Analysis with Arena Chapter 13

  43. Transmission Network Modules (Cont.) Dialog box of the Decide module Routing Map Altiok / Melamed Simulation Modeling and Analysis with Arena Chapter 13

  44. Transmission Network Modules (Cont.) Dialog box of the Route module Message Transmission Altiok / Melamed Simulation Modeling and Analysis with Arena Chapter 13

  45. Transmission Network Modules (Cont.) Dialog box of the Record module Response Time Tally Altiok / Melamed Simulation Modeling and Analysis with Arena Chapter 13

  46. Transmission Network Modules (Cont.) Dialog box of the spreadsheet view of the Setmodule (bottom) for the members of set Response Times(top) Altiok / Melamed Simulation Modeling and Analysis with Arena Chapter 13

  47. Arena Model of Server Node 1 Altiok / Melamed Simulation Modeling and Analysis with Arena Chapter 13

  48. Server Node 1 Modules • The Decide module in server node 1 • examines incoming transactions • separates those arriving directly from client nodes from those dispatched from server node 2 by the TP monitor, since the logic sequences of transactions depend on the origination node Dialog box of the Decide module Is It a Dispatched Job_1 Altiok / Melamed Simulation Modeling and Analysis with Arena Chapter 13

  49. Node 1 TPM Modules Dialog box of the Process module TPM_1 Altiok / Melamed Simulation Modeling and Analysis with Arena Chapter 13

  50. Node 1 TPM Modules (Cont.) • In the Search Condition field below, SP_Queue_Occupancy is an expression, to be defined next Dialog box of the Search module BB_1 Altiok / Melamed Simulation Modeling and Analysis with Arena Chapter 13

More Related