lect2..ppt - 08/11/04 cis 4100 systems performance and evaluation lecture 1 by zornitza genova...
TRANSCRIPT
Lect2..ppt - 08/11/04
CIS 4100 Systems Performance and Evaluation
Lecture 1
byZornitza Genova Prodanoff
ZGP002
Lecture Outline:
• The Web as an evolving system• Web site performance• Client/Server performance• Capacity planning• Corporate Portal/ISP performance
ZGP003
Introduction: How is performance evaluation used?• How good is current system?• Why is my system so slow?• What would happen if some component would be changed to
a twice as fast component?• How long will current system be ”fast enough”?• How many transactions (per second) can current system
handle?• Do we need complete system upgrade, or just larger
message buffers?
ZGP004
Introduction: Goals of Performance Evaluation
• What is the overall process of systems performance evaluation?
• How are performance evaluation models developed, solved, and used?
• How are parameter values determined?• What specific analytical solution methods are there and how
do they work?• What are the limits of analytical solution methods, I.e., when
is simulation needed?
ZGP005
Introduction: Course Contents
• Introduction−Probability Theory −Statistics
• Performance and Capacity Planning−Methods for Capacity Planning−Models for Performance Evaluation−Solutions to Simple Models−Practical Examples
ZGP006
Introduction: Why Do Capacity Planning?
• To avoid financial losses• To ensure customer satisfaction• To preserve company’s external image• Capacity problems are solved slowly and related expenses
could be substantial
ZGP02
server
modem
modem
PC
Transmission Medium
Introduction: What is Internet communication?
010001001011… information
ZGP02
Introduction: Internet communication (Continued)
• Twisted pair cable
• Coaxial cable
• Fiber optic cable
… is the largest computer network What are computers?• PCs, mainframes, pocket PCs,• mobile phones, microwave ovens, toasters, • produced by: Intel, AIX, SPARC, …• SW: Windows, UNIX, Linux, Mac OS X, …
ZGP02
Introduction: The Internet
ZGP02
Introduction: The Internet: exp. (2n) growth
y axis :computers in millions
80M
20001982
Source: D. E. Comer, “Computer Networks and Internets”, 3rd edition, Purdue University
ZGP02
Introduction: The Internet (Continued)
• the illusion of a single network, but a network of networks • depicted as a cloud for clarity
Internet
ZGP02
Introduction: Internet addressing
10000001 00110100 00000011
Octet(8 bit)
129 52 6 3
00000110
• IP addresses: an ID unique for each computer
129.52.6.3
ZGP02
Introduction: Internet addressing (Continued)
• IP Addresses are written using dotted decimal notation: • 4 groups of 8 bits • Each group can be 0 – 255 • Example:
Source: D. E. Comer, “Computer Networks and Internets”, 3rd edition, Purdue University
ZGP02
Introduction: Packets
• packets can get lost, duplicated, delayed, and corrupted
Packets(server to client)
Client Server
Ethernet(cable, link)
Source andDestinationaddress
ZGP02
Introduction: Packets (Continued)
Source andDestinationIP address
Header Data
10000000 00001010 00011110
Octet(8 bit)
…
8 bytes in lengthpacket
link of ratebit (pkts/sec) ratepacket
ZGP02
Introduction: Packets (Continued)
~22ms (=0.02sec)
• Electromagnetic signal speed ~ 300, 000km/sec • Network links have capacity (data rate)
– dial-in link: 56-Kbps– Ethernet: 10 or 100 (or 1000) Mbps– “T1”: 1.544 Mbps
ZGP02
Introduction: Routing
• A router connects two or more physical networks • A router is part of each network (has 2+ IP addresses)• Forwarding packets to the right destination
• Glue smaller networks together • Data travel packet by packet
ZGP02
Introduction: IP Routing
Source: D. E. Comer, “Computer Networks and Internets”, 3rd edition, Purdue University
HostIP address 129.52.6.3
DestinationIP address 129.52.6.3
Introduction: Routing on the WWW
ZGP02
Client
Origin Server
CacheClient
RequestDistributedServer
URL: http://www.somesite.com
Internet
ZGP0020
The Web as an Evolving System
• Interconnect (Web) pages into a web of (Web) sites by using hyper links
– Static content– Dynamic content
• Applications:– Digital libraries– Video-on-demand– Distance Learning– E-commerce
ZGP0021
• Web site administrators need to find the balance between:– IT infrastructure size – Quality of Service (QoS) user requirements
Web browser Human user
– Budget and other business considerations
• Realize this goal by:– Tracking intensity of workload– Detecting bottlenecks– Predicting traffic burstiness and peak demands
The Web as an Evolving System (continued)
ZGP0022
• The Web evolved from a publishing medium to a system that supports transaction processing
– Dynamic content– Personalized content– Integration with Databases– Planning, scheduling, tracking systems
• Web services categories: – Informational– Interactive– Transactional– Workflow– Collaborative environments– On-line communities– Web portals
The Web as an Evolving System (continued)
ZGP0023
• Virtual Car Dealer – Store car make and model, etc. information in a RDBMS– Allow execution of remote queries
Types of requests– Requests for documents and images (static
pages)– Database searches (dynamic pages)
– Response time– Requests’ Arrival rate– Increase/Decrease in arrival rate
Web Site Performance
ZGP0024
• Management needs to answer these capacity planning questions:
– Will the Web site support load increase, while keeping response time acceptable (below threshold)?
– At which point could the capacity be saturated and why?– What is the (daily) opportunity cost of saturating the Web
site, while demand increases (request arrival rate increases)?
Web Site Performance (continued)
ZGP0025
Web Site Performance (continued)
ZGP0026
• What servers should be used?– Number and type of processors– Number and type of discs
capacity plus RAID or other striping technology
– Operating Systems
• Should a transaction processing monitor be used?
• What database server and RDBMS should be used?
• What LAN and WAN networking technology should be used?
• How much LAN / WAN bandwidth?
Client/Server Performance
ZGP0027
Client/Server Performance (continued)
ZGP0028
Client/Server Performance (continued)
ZGP0029
Client/Server Performance (continued)
% of the response time attributed to each major system component
• > 50% of the response time is dominated by the database server
bottleneck is the component where a transaction spends most of its time
• If car rentals increase by 5, 10, and then 15% with respect to the current level, will the system support the corresponding increase in the number of transactions, while maintaining the response time within the desired levels?
ZGP0030
Capacity Planning is:• The process of predicting when future load levels would
saturate the system• Determine the most cost effective way of delaying system
saturation• Must consider evolution of the workload and the desired
service levels
Client/Server Performance (continued)
ZGP0031
Performance Evaluation Goals:• What is the overall process of systems performance
evaluation?• How are performance evaluation models developed,
solved, and used?• How are parameter values determined?• What specific analytical solution methods are there and
how do they work?• What are the limits of analytical solution methods, i.e.,
when is simulation needed?
Client/Server Performance (continued)
ZGP0032
Client/Server Performance (continued)
By using performance evaluation and capacity planning we can predict response time of:
• local reservations• road assistance requests• car pickup• phone reservations.
ZGP0033
Client/Server Performance (continued)
ZGP0034
Client/Server Performance (continued)
Table 1.3 shows response times of:• current load • load increase of 5% of the current load• load increase of 10% of the current load• load increase of 15% of the current load.
Load is the average transaction arrival rate
ZGP0035
Examples
ZGP0036
Examples (continued)
• Fig. 1.2 shows that the increase in response time is not linear with the load increase
−e.g. 15% increase in the arrival rate of phone reservations generates a 5x increase in response time
−Local reservations will exceed their max. acceptable response time of (2 sec.) at around a 7% increase in the current load;
−Phone reservations will be able to support a 10% increase in the current load before the 2-sec. response time service level is violated;
−Car pickup transactions will not get near their 3-sec. threshold, even if the load increases by 15%;
−Road assistance transactions will exhibit a response time slightly higher (about 7% higher) than its 3-sec. threshold at arrival rate of 15%.
ZGP0037
We say that if any of the service levels has been violated, as in the case of the reservation transactions at a 15% higher load, the capacity of the system reaches saturation. The term saturation should not be used to indicate that the utilization of a device (e.g., CPU, disk) reaches 100%, because service levels can be violated well before the utilization of any device reaches 100%.
Examples (continued)
ZGP0038
Capacity Planning will include both:• predicting if performance requirements will be met by
either a new system or an existing system under a higher load situation
• determine why performance will not be met
Examples (continued)
ZGP0039
Example (Fig. 1.2): local reservation transactions spend 83% of their time doing Input/Output (I/O) at the database (DB) server located at the reservation center
Improve the DB server performance by:• spreading the same I/O load among more disks, • using faster disks, • increasing the cache size at either the storage box • increasing the cache size or at the DB server.
Examples (continued)
ZGP0040
Examples (continued)
ZGP0041
• Figure 1.3 shows that when the arrival rate of requests doubles from the current value of about 0.3 tps to 0.6 tps, the response time approaches 50 seconds
− > 3x increase from the 16-sec. response time at the current load
• At 0.6 tps, a saturation on the response time value is observed (the number of requests in the system reaches its max. value).
− Connections start to be refused, showing a very poor performance of the help desk application.
Examples (continued)
ZGP0042
• Solutions to the performance problem at the help desk site:
−upgrading the server's CPU, −adding more CPUs, −more disks, −splitting the load among more servers.
Examples (continued)
ZGP0043
• An ISP has 100,000 users.
• Average of 2 12 minutes sessions per day, per customer
• Customers who do not find an available modem to connect get a busy signal
• Volume-based-customers have 2 hours of free time per month, after which they pay by the minute of connected time
• Move to the following rate structure: customers will pay a flat fee independent of the amount of time they spend connected to the service
• Expected is a significant boost in the number of users
• Expected is that users to spend more time using the service since they will not be charged by connection time
Examples (continued)
ZGP0044
• The management of the ISP wants to know how many modems it should have in order to guarantee that the probability of a customer finding all modems busy is less than 5%.
• The ISP currently has 1,500 modems. Using models to be discussed in later chapters of this book, the performance analyst was able to show what would happen with the probability that a user gets a busy signal as the number of users varies.
Examples (continued)
ZGP0045
• Figure 1.4 shows this probability for two values of the session duration: 12 minutes and 18 minutes. As the graph shows, if the number of users doubles, the busy probability increases to 55% for 12-minute sessions and to 70% for 18-minute sessions
• QoS complains are expected if number of users doubles−closing accounts −suing the ISP
• Figure 1.5 shows how the busy probability varies as a function of the number of modems. It shows that if the ISP wants to keep a 5% busy probability, it needs 2,400 modems when sessions last 18 minutes on average.
Examples (continued)
ZGP0046
Examples (continued)
ZGP0047
• Figure 1.5 shows how the busy probability varies as a function of the number of modems
• If the ISP wants to keep a 5% busy probability, it needs 2,400 modems when sessions last 18 minutes on average
Examples (continued)
ZGP0048
Examples (continued)
ZGP0049
• Web site with numerous functions is of no use if it takes forever to connect or get useful information from it
• Performance problems can bring all sorts of undesired consequences:
−financial and sales losses−decreased productivity−a bad reputation for a company
Examples (continued)
ZGP0050
• We consider the capacity of networked systems
• Capacity planning involves prediction
• Performance prediction is accomplished through the performance models presented in later chapters
• Capacity planning is also important when predicting the performance of a new application under development or when predicting the performance of applications that are being downsized to C/S environments
• An increasing number of organizations are moving mission-critical applications into C/S systems
Examples (continued)