throbber
An Analysis of Issues Facing World Wide Web Servers
`
`A Thesis presented
`
`by
`
`Stephen Lee Manley
`
`to
`
`Computer Science
`
`in partial fulfillment of the honors requirements
`
`for the degree of
`
`Bachelor of Arts
`
`Harvard College
`
`Cambridge, Massachusetts
`
`April 7, 1997
`
`Google Inc.
`GOOG 1018
`CBM of U.S. Patent No. 6,286,045
`
`i
`
`

`
`Abstract
`The World Wide Web has captured the public’s interest like no other computer application
`
`or tool. In response, businesses have attempted to capitalize on the Web’s popularity. As a
`
`result propaganda, assumption, and unfounded theories have taken the place of facts, sci-
`
`entific analysis, and well-reasoned theories. As with all things, the Web’s popularity
`
`comes with a price for the first time the computer industry must satisfy exponentially
`
`increasing demand. As the World Wide Web becomes the “World Wide Wait” and the
`
`Internet changes from the “Information Superhighway” to a “Giant Traffic Jam,” the pub-
`
`lic demands improvements in Web performance.
`
`The lack of cogent scientific analysis prevents true improvement in Web conditions.
`
`Nobody knows the source of the bottlenecks. Some assert that the server must be the prob-
`
`lem. Others blame Internet congestion. Still others place the blame on modems or slow
`
`Local Area Networks. The Web’s massive size and growth have made research difficult,
`
`but those same factors make such work indispensable.
`
`This thesis examines issues facing the Web by focusing on traffic patterns on a variety
`
`of servers. The thesis presents a method of categorizing different Web site growth patterns.
`
`It then disproves the theory that CGI has become an important and varied tool on most
`
`Web sites. Most importantly, however, the thesis focuses on the source of latency on the
`
`Web. An in-depth examination of the data, leads to the conclusion that the server cannot be
`
`a primary source of latency on the World Wide Web.
`
`The thesis then details the creation of a new realistic, self-configuring, scaling Web
`
`server benchmark. By using a site’s Web server logs, the benchmark can create a model of
`
`the site’s traffic. The model can be reduced by a series of abstractions, and scaled to pre-
`
`dict future behavior. Finally, the thesis shows the benchmark models realistic Web server
`
`traffic, and can serve as a tool for scientific analysis of developments on the Web, and their
`
`effects on the server.
`
`1
`
`

`
`Table of Contents
`
`1 Introduction
`
`2 Related Work
`
`2.1 Web Server Traffic Analysis
`
`2.2 Modeling of WWW Traffic
`
`2.3 Analysis of Recent Developments in Web Traffic
`
`2.4 Benchmarking
`3 Analysis of Web Server Access Logs
`
`3.1 Site characterization
`
`3.2 General Analysis
`
`3.3 Differentiating Among Sites
`
`3.4 CGI
`
`3.5 Persistent Connections
`
`3.6 Caching
`
`3.7 Latency
`4 Design of a Web Server Benchmark
`
`4.1 Philosophy of Benchmarking
`
`4.2 Modeling Traffic from Server Logs
`
`4.3 Statistical Basis for Model
`
`4.4 Reducing the Model
`
`4.5 Changing the Traffic Patterns
`
`4.6 Scaling the Model to Predict Future Traffic pattern
`
`4.7 Run Time Environment
`
`4.8 Conclusion
`
`2
`
`4
`
`8
`
`8
`
`12
`
`13
`
`15
`18
`
`19
`
`21
`
`25
`
`32
`
`35
`
`40
`
`46
`54
`
`54
`
`56
`
`57
`
`59
`
`60
`
`62
`
`64
`
`67
`
`

`
`3
`5 Experimental Proof of the Accuracy of the Benchmark-
`
`ing Model
`
`5.1 Experimental Setup
`
`5.2 Analysis of the Basic Model
`
`5.3 Analysis of the Reduced Models
`
`5.4 Analysis of Generating Specific Types of Traffic
`
`5.5 Analysis of Scaling
`
`5.6 Results
`
`5.7 Conclusion
`6 Conclusion
`
`6.1 Future Work
`
`6.2 Availability
`
`6.3 Appreciation
`
`69
`
`69
`
`70
`
`71
`
`74
`
`74
`
`76
`
`78
`80
`
`81
`
`82
`
`82
`
`

`
`Chapter 1
`
`Introduction
`
`Computer scientists have been looking at exponential growth patterns for years. Exponen-
`
`tial growth in computing power has extended computer functionality in ways that few peo-
`
`ple thought possible. Only four years ago, an Intel 486, 33MHz processor was considered
`
`the top-of-the-line. Now, the Intel Pentium Pro runs at 200 MHz -- 6 times as fast. Four
`
`years ago, machines ran with 4 MB of RAM. Now, retailers sell standard PCs with 16 MB
`
`of RAM. The advances in computer power have made a desktop machine more powerful
`
`than the supercomputers of the past. Advances in technology enable someone to send text,
`
`pictures, movies, or sounds to another person thousands of miles away.
`
`After years of enjoying exponential growth in computing power, the computer com-
`
`munity now faces exponential growth in demand. The Internet and World Wide Web
`
`(WWW or Web) have captured the world's imagination like no other computer product or
`
`service. The Internet, nicknamed “The Information Superhighway” enables any two com-
`
`puters in the world to send information to one another. Popular World Wide Web browsers
`
`such as Netscape or Microsoft Internet Explorer give users a simple to use Graphical User
`
`Interface (GUI). With this simple but powerful interface, a user can download a file from
`
`another computer with only a click of the mouse. The simplicity of the Web promotes the
`
`construction of Web sites, groups of Web pages, for purposes ranging from Kellogg's
`
`advertising their cereals to high school and college students setting up their resumes. The
`
`WWW has enabled everybody to become a publisher, with the HyperText Markup Lan-
`
`4
`
`

`
`5
`
`guage (HTML) facilitating the layout of text, pictures, animated pictures, sounds, and
`
`movies onto one Web page. Moreover, advances in technology continue to extend the
`
`functionality of the Internet. The Common Gateway Interface (CGI) enables somebody
`
`making a Web site to create a program that behaves differently for each client that
`
`accesses the site. Java allows the user to download a program from the server to his/her
`
`own computer. The WWW is simple to use and is becoming increasingly powerful.
`
`The simplicity, power, and ubiquity of the Web sparked, and continue to fuel, its tre-
`
`mendous growth. Table 1 shows the growth of the Internet and the much more rapid
`
`growth of the Web from December 1991 until March 1995 [8]. Perhaps it is the greatest
`
`testament to the growth of these services, that in the past two years nobody has even
`
`attempted to quantify the amount of traffic on the Internet or the Web. The best estimates
`
`on the number of Web pages and servers come from the Alta Vista search engine run by
`
`the Digital Electronic Corporation. Alta Vista claims to have indexed over thirty-one mil-
`
`lion WWW pages on over 476,000 WWW sites.
`
`Date
`
`Total Traffic (GB)
`
`WWW
`Percentage
`0.00
`1900
`12/91
`0.02
`4300
`12/92
`2.21
`8200
`12/93
`15.98
`16,000
`12/94
`23.88
`20,329
`3/95
`Table 1: Internet and Web growth from 12/91 to 3/95
`Perhaps the greatest indication of the Web’s continued growth
`comes from the fact that nobody even attempts to determine the
`traffic currently on the Internet.
`
`The exponentially increasing demand for services due to the World Wide Web has led
`
`to great concerns about scaling computing resources to meet future needs. America Online
`
`Users can scarcely login to their system. Most users experience tremendous latencies in
`
`using the WWW during the day, leading to the nickname - “World Wide Wait.” As a
`
`result, companies and individuals continually ask, “How can the Internet and World Wide
`
`Web effectively scale with demand?” Microsoft and Netscape are trying to make their
`
`WWW server software increasingly powerful. Silicon Graphics, Incorporated and Sun
`
`claim that their only their machines have the requisite power needed to run a WWW
`
`

`
`6
`
`server. Internet Service Providers buy hundreds of megabits of bandwidth to serve their
`
`clients' needs. Researchers continue to refine the HyperText Transfer Protocol (HTTP)[1],
`
`which enables servers to send Web pages to clients. While the developments are exciting,
`
`and seem to hold great promise, all of the proposed enhancements to the Web suffer from
`
`an identical flaw. How can anybody solve a problem, without knowing exactly what the
`
`problem is? Companies spend millions of dollars and thousands of work hours on improv-
`
`ing WWW performance. Every hacker claims to know how to improve web performance,
`
`but nobody has even identified the source of WWW performance degradation.
`
`The nature of the World Wide Web has made it an extremely difficult phenomenon to
`
`measure. The distributed and extensive nature of Web makes it difficult to understand all
`
`of the issues involved. Those who possess interesting information on client behavior
`
`refuse to distribute it. Users don't want their behavior and access patterns made public, for
`
`obvious reasons. Webmasters refuse to make access logs from their servers available, due
`
`to possible security holes as well as privacy concerns. Finally, by the time the information
`
`is released and the analysis completed, the conclusions have become obsolete. With a lack
`
`of current and widely available general information, one has a very difficult time analyz-
`
`ing the World Wide Web.
`
`The goal of this work is to conduct scientific analysis on the effects of the server on
`
`WWW scaling. Servers create logs of data, known as server, access, or Web logs, that
`
`detail the requests sent to the server. Access logs can reveal the type of workload being
`
`placed on a server, as well as its ability to handle such a load. From a series of these logs,
`
`one can also see trends in the type of traffic on that server. Therefore, to understand the
`
`role of the server's effect on the handling of increased WWW traffic, as well as its limita-
`
`tions and assets in handling a greater workload, I analyze a variety of WWW logs. While
`
`an analysis of the traffic patterns handled by a server is useful, one would like to actively
`
`test the server, to monitor its behavior as it runs. Benchmarks were created for the very
`
`reason of simulating realistic behavior, in a controlled environment. To gather interesting
`
`data about the server, the benchmark must realistically model the type of load experienced
`
`by a server. To this end, I have constructed a self-configuring WWW benchmark. The
`
`

`
`benchmark analyzes a set of server logs to create a model of the site’s traffic, which
`
`becomes the basis of the benchmark’s activity.
`
`7
`
`Thesis Roadmap
`Chapter 2 discusses other research into the access patterns to WWW servers and the
`
`history of Web server benchmarking. Chapter 3 presents an analysis of server traffic pat-
`
`terns for a variety of sites. Chapter 4 details the design of the self-configuring, scaling,
`
`WWW server benchmark. Chapter 5 explores the quality of the benchmark’s approxima-
`
`tion of actual WWW traffic patterns. Finally, Chapter 6 concludes the work, presenting the
`
`most important results, and their importance in the issue of improving the scalability of the
`
`Web.
`
`

`
`Chapter 2
`
`Related Work
`
`8
`
`A survey of the relevant work in measuring Web site traffic and server performance
`
`leads to one inescapable conclusion. No real analysis of the Web has been conducted in
`
`the past two years. Basing all of the current developments on traffic patterns from two
`
`years ago can be considered nothing short of disastrous. The work presented laid a good
`
`foundation for a more in-depth analysis of Web traffic patterns. Such work never occurred.
`
`The chapter discusses the research into the fields that pertain to Web server perfor-
`
`mance. Section 2.1 examines statistical analyses of the traffic experienced by a variety of
`
`WWW servers. Section 2.2 considers current attempts at statistical modeling of WWW
`
`traffic. Section 2.3 covers research that measure the impact of new developments on Web
`
`server performance. Section 2.4 discusses the range of benchmarks currently available.
`
`2.1 Web Server Traffic Analysis
`Research into realistic traffic patterns has been extremely limited. The research efforts
`
`have been divided between proxy servers and primary Web servers. A proxy server acts as
`
`a mediator between primary Web servers and users. All user requests for a given area,
`
`such as Harvard University, can be funneled through a proxy server, which then passes the
`
`request to the intended primary server. Much of the analysis of servers has been conducted
`
`to help justify the viability and effectiveness of other research. The difficulty in conduct-
`
`ing accurate and effective analyses have been limited by the difficulty in finding accessible
`
`Web logs, the enormous variety of issues to explore, and the rapidly changing nature of the
`
`Web.
`
`Information about the behavior of users and servers is not freely available to research-
`
`ers. The Web pages that any given user accesses are known only to that user. Only when
`
`

`
`9
`
`user requests are directed through a proxy can one collect information on the behavior of
`
`real users. Even in these situations, users obviously do not want information about their
`
`Web surfing habits released. As a result, proxy server logs remain unavailable. On the
`
`other side of the connection, webmasters are unwilling to distribute information about a
`
`server. Some claim that access to server logs could lead to the discovery and exploitation
`
`of security holes. Others do not wish to identify those who access their site, as they feel
`
`their customers would feel violated and not return. Some ISPs don't want to release infor-
`
`mation on the number of requests and bytes of data they handle, as they fear it might make
`
`clients unwilling to subscribe to them for service. Furthermore, those who have gained
`
`access to logs, or have done research in the past, have seen the conditions of the Web
`
`change so rapidly, that their conclusions are outdated. Still, despite the difficulties inherent
`
`in analyzing Web traffic, other researchers have laid the groundwork, and posed interest-
`
`ing questions that should continue to be analyzed.
`
`2.1.1 Caching
`
`Pitkow and Recker used WWW logs from the Georgia Tech main university server,
`
`from January 1, 1994 to March 31, 1994 to test the effectiveness of caching schemes[12].
`
`In the three months, the server handled approximately 305,000 requests, with an average
`
`of 3500 requests a day. The researchers were attempting to model the likelihood that a file
`
`would be accessed, based on the previous weeks' traffic. Their model, based on human
`
`memory patterns, could quite accurately predict the likelihood that a file would be
`
`accessed during the coming week. Less than a year later, this research was obsolete.
`
`By 1995 researchers looking at WWW caching were examining ways to reduce the
`
`bandwidth consumption of the Internet, as traffic had increased exponentially in the time
`
`since the Georgia Tech research was completed. No longer were people concerned with
`
`whether a file would be accessed, but with how often it was accessed, and the concurrent
`
`bandwidth consumption. Bestavros and Gwertzman both examined the benefits of server-
`
`side caching. Their primary conclusion from WWW server logs was that, as users surf the
`
`Web, most requests download a small number of unique bytes. From this data, they advo-
`
`cate that a server can effectively cache its most popular files in a variety of proxy caches,
`
`thus reducing latency and bandwidth consumption on the Internet.
`
`

`
`10
`
`Bestavros and Gwertzman both use Web server access logs to detail the potential ben-
`
`efits of server-side caching. Bestavros examined a series of 1994 and 1995 logs from the
`
`Boston University(BU) Computer Science Department server. His support for the effec-
`
`tiveness of caching is enhanced by the conclusion that 0.5% of the files account for 69% of
`
`requests, and that 91% of requests download a mere 10% of unique bytes on the server. He
`
`contends that this behavior is indicative of the entire Internet because the logs of the Roll-
`
`ing Stones Fan Page, from Nov. 1, 1994 to Feb. 19, 1995 exhibit similar patterns[2].
`
`Gwertzman derives similar results from the December 1994 logs of the NCSA site, the
`
`main Harvard University site, the Harvard Division of Engineering and Applied Sciences
`
`site, and a Harvard computer club server[8]. A small number of bytes and files account for
`
`the majority of sites' requests. Interestingly, Gwertzman's figures show a significant dis-
`
`parity between the most popular sites, and common sites. The Harvard sites actually han-
`
`dle less traffic than that seen by the Georgia Tech site - between 1400 and 2800 requests a
`
`day. The NCSA site processed over 600,000 requests a day - over half a year's traffic on
`
`the other servers listed by Gwertzman. Still despite the enormous disparity in the types of
`
`sites, Gwertzman and Bestavros both claim that their extremely focused analysis of a lim-
`
`ited number of sites gives sufficient justification for their theories. My detailed examina-
`
`tion of over ten sites in chapter 3 will discuss issues ignored by Gwertzman and Bestavros,
`
`as well as the current needs for caching.
`
`An analysis of proxy server logs helps characterize user behavior. Proxy server logs
`
`reveal access patterns of a subset of users to all sites, rather than all users to one Web site,
`
`so that the entire behavior pattern of a variety of users can be seen. Duane Wessels set up a
`
`proxy server at the University of Colorado at Boulder and analyzed the traffic patterns
`
`from October 31, 1994 to December 31, 1994[16]. Over the 62 day period, almost 12,000
`
`requests were generated - of which only 7.8% were handled by the proxy server's cache.
`
`This result surprised Wessels because he assumed that the people at one college would all
`
`tend to access the same pages more often. With the greater number of Web sites and users,
`
`this number it seems unlikely that this number would increase. The type of traffic was also
`
`detailed : 99% of requests were to GET files, while 1% were to POST data to the remote
`
`server. Most of the time, users merely downloading information, and did not send any-
`
`thing to the server. Of the requests, 42% were for HTML files, and another 23% of
`
`

`
`11
`
`requests were for index files, HTML files or directory listings. Only 12.5% of requests
`
`were for image files, and another 3% of requests were due to CGI. Surprisingly, most
`
`requests from the University of Colorado resulted in text being returned. With the prolifer-
`
`ation of images on the Web, this seemed unusual. Wessels does note that the University of
`
`Colorado used text-based browsers, which would decrease the quantity of image traffic to
`
`the site's users. Still, his analysis provides interesting data. First, while Gwertzman and
`
`Bestavros show that most Web sites show a significant skewing of requests for a small per-
`
`centage of files, the same skewing cannot be seen in the requests emerging from a site.
`
`Moreover, over 65% of requests were for HTML and index files. The data show that in
`
`1994, different sites handle different levels of traffic, that HTML was a primary source of
`
`traffic, and that requests to a site's Web server showed much greater skewing than requests
`
`through a proxy server. Wessels work into analyzing proxy server logs forms a model for
`
`my own analysis. He used the logs, not to further an agenda, but to assess the current types
`
`of Web traffic.
`
`2.1.2 Network Behavior
`
`Jeffrey Mogul conducted the most comprehensive analysis of server behavior, record-
`
`ing information on a set of busy servers as they ran[10]. Mogul's analysis of three servers
`
`used during the California elections of 1994 was facilitated by his instrumentation of serv-
`
`ers to record the number of concurrently open HTTP requests, connection duration, PCB
`
`(process control block) statistics, and packet transmission statistics. The three servers han-
`
`dled 1.6 million requests in a 10 day period, with 1 million requests coming on one day.
`
`Combined, the servers handled as many as 60 requests per second. Some requests required
`
`more than 1000 seconds to complete, but most were handled in under one second. The
`
`PCB table, which stores information on each open connection, grew as large as 1297
`
`entries, 1049 of which were in TIME_WAIT - a state to ensure proper closure of the con-
`
`nection. At this time, only 100 connections were alive. Over 90% of requests used fewer
`
`than 25 packets between client and server. The fact that most Web requests are small
`
`means that they can be handled more quickly than the infrastructure for the connection can
`
`be discarded. Nearly 70% of requests were for GIF formatted images, while only 30% of
`
`requests were for HTML files. Other types of traffic were negligible. In this data, one can
`
`

`
`12
`
`see the more expected pattern of images dominating the types of requests. Mogul's in-
`
`depth analysis of a busy Internet server in 1994, yielded information about the need for
`
`maintaining PCB (Protocol Control Block -- the infrastructure of the connection) tables
`
`effectively, to cope with large numbers of open connections, and even larger numbers of
`
`closed, but not destroyed, connections. His work described the increasingly prominent
`
`role of images in Web traffic. While Mogul makes no claim that the site he analyzes is
`
`indicative, he still only looks to one site. Furthermore, like Wessels' work, the data and
`
`analysis suffer from over two years of aging. Therefore, in Chapter 3, I extend Mogul's
`
`analysis of connections, type of traffic, burstiness, and types of traffic on a server to cur-
`
`rent data, for a wide variety of sites. I also provide a means of characterizing sites to help
`
`alleviate the myth that all sites exhibit similar characteristics.
`
`2.2 Modeling of WWW Traffic
`Researchers have begun to statistically model the traffic patterns found on the World
`
`Wide Web. A current theory in the field is that Web traffic from a set of clients at a site, fits
`
`the model of self-similarity. By describing Web traffic as self-similar, one looks at the
`
`inherent burstiness of Web traffic. Burstiness is a characteristic by which many requests
`
`arrive at once, followed by stretches of time with few or no connections. The bursts,
`
`whether examined on a time scale of one second, one minute, or one hour, look similar. If
`
`Web traffic were self-similar, current burstiness would correlate to future burstiness --
`
`long-range dependence. Crovella and Bestavros use the BU client traces detailed in Sec-
`
`tion 2.1.1 to show similar patterns of burstiness over four orders of magnitude of time - 1
`
`to 1000 seconds[4]. They note the importance of user “think time” when they read the
`
`Web page they have downloaded. The work concludes that WWW traffic is self-similar,
`
`but it cannot explain the cause of the self-similarity. The authors conjecture that the self-
`
`similar behavior can be traced to the basic hierarchical structure of Web sites, and the
`
`effects on the user. For my benchmark, I use the idea of modeling Web traffic, but rather
`
`than using a mathematical model at the request level, I create a heuristic model on a user
`
`level. Still, the fundamental ideas of the importance of user idle time, and burstiness play a
`
`role in any accurate model of Web traffic. Furthermore, like Crovella and Bestavros, I con-
`
`

`
`tend that future WWW traffic patterns can be reasonably predicted, and use such methods
`
`to form the basis of a benchmark that scales its load to model the future.
`
`13
`
`2.3 Analysis of Recent Developments in Web Traffic
`Other levels of research have gone beyond measurement and estimation of traffic pat-
`
`terns. In an attempt to identify performance limitations on systems, researchers have
`
`examined the effects of CGI traffic on a server, as well as the potential benefits of persis-
`
`tent connections. Some people have theorized that CGI traffic causes a server's perfor-
`
`mance to degrade because the server starts entirely new processes to execute the task. On
`
`the other hand, people have proclaimed that persistent connections can ease the burden
`
`placed on servers. Originally, Web browsers made a separate connection to the server for
`
`each downloaded file. As many Web pages contain tens of small files -inlined images- and
`
`the cost of setting up a connection is large, the performance impact of this process would
`
`seem to be noticeable to users. Moreover, as Mogul noted in his analysis of the California
`
`election server, the operating system needed to deal with thousands of closed, but not
`
`deleted, connections. Thus, researchers have attempted to quantify the benefits of persis-
`
`tent connections. Section 2.3.1 describes the work done to analyze the impact of CGI on
`
`server performance. Section 2.3.2 discusses the analyses of persistent connections.
`
`2.3.1 CGI
`
`The analysis of CGI focused on the process of handling one CGI request. Edward and
`
`Rees offer a quantitative analysis of a CGI request that details the amount of time spent in
`
`different stages of the request[5]. The work used a CGI script with trivial functionality to
`
`isolate the effects of a server handling CGI, rather than the script itself. Their platform of
`
`measurement was CERN httpd, one of the originally popular Web servers. Their data indi-
`
`cate that the most time-consuming operation is the transfer of request data to the CGI
`
`script. On the other hand, their conclusions focus on optimization of process creation -
`
`which consumed only one-tenth of the time required to do the IPC. The study's limited and
`
`contradictory nature, and the non-trivial amount of CGI traffic run on servers led to a fur-
`
`ther analysis of the Edwards and Rees work. In chapter 3, I emphasize the insignificance
`
`of CGI on most servers.
`
`

`
`14
`
`2.3.2 Persistent Connections
`
`The original analysis of persistent connections examined the probability of reuse of
`
`open connections. Mogul ran the server access logs from the popular California election
`
`server, as well as that of a popular corporate site, through a simulator to estimate the effec-
`
`tiveness of persistent connections[9]. The logs revealed that persistent connections could
`
`significantly reduce the number of open connections, by reusing the open connections.
`
`The logs showed that over 50% of users retrieved at least 10 files per open connection. On
`
`average, one connection would support six requests. His results revealed that with a time-
`
`out of sixty seconds, connections were reused fairly often, while also enabling the maxi-
`
`mum number of open connections to remain low. Mogul also focused on the importance of
`
`allowing users to only open one connection at a time, rather than the Netscape driven stan-
`
`dard of four connections per user. The age of his data leads to concerns about the accuracy
`
`of the results. Furthermore, in the construction of the new HTTP protocol, browsers are
`
`allowed to open two persistent connections. Therefore, the work needs to be updated to
`
`examine the effects of such a decision.
`
`Currently, the World Wide Web Consortium(W3C) is conducting an analysis of persis-
`
`tent connections[11]. Rather than using historical logs to simulate behavior, the W3C
`
`chose to implement a client and a server that implement persistent connections. They then
`
`analyzed the performance weaknesses of their implementations. At first, they discovered
`
`that the latency incurred with one persistent connection lagged significantly behind that of
`
`the standard type of request. They concluded that the parallelism of 4 open connections
`
`enabled the client to receive data more quickly than the one open connection - with future
`
`requests not being produced until after current requests. They concluded that only by pipe-
`
`lining requests can persistent connections achieve reasonable latency. By pipelining
`
`requests, servers receive multiple requests from the client before they have even fulfilled a
`
`request. In this way, the transportation of data is not serialized, and performance is
`
`enhanced. On the other hand, in validating a simple page with multiple files, persistent
`
`connections generated only one-tenth of the packets as non-persistent connections. Since
`
`validating pages usually results in a response that the file is unmodified, little data is sent
`
`to the user. This research validates the potential benefits of persistent connections, as well
`
`as detailing a potential performance limitation. However, the authors do not give evidence
`
`

`
`15
`
`of the potential role of persistent connections in real traffic patterns. Their research is
`
`focuses on analysis of assumed situations. Thus, while their results detail the effects of an
`
`actual implementation of persistent connections, their tests suffer from a lack of realism.
`
`They refer to Mogul's research, but understand the limitations of the study. In chapter 3, I
`
`update the research that Mogul began. In chapter 4, I describe a benchmark that can use
`
`persistent connections.
`
`2.4 Benchmarking
`Properly designed and implemented, a benchmark enables researchers, such as the
`
`W3C, to accurately test new developments. Poorly constructed, a benchmark creates
`
`faulty impressions of needs in a given community. Web server research has suffered from
`
`just such a crisis. Benchmarks have either ignored the inherent differences in the traffic
`
`handled by a variety of sites, or have completely ignored the considerations of realism in
`
`generating traffic. Currently, developments in benchmarking technology have attempted to
`
`address some of the flaws of older benchmarks. Section 2.4.1 describes the first Web
`
`server benchmark - Silicon Graphics, Incorporated's WebStone. Section 2.4.2 looks at
`
`SPEC's venture into Web server analysis. Section 2.4.3 considers recent developments
`
`from Lotus and Harvard, with DBench.
`
`2.4.1 WebStone
`
`WebStone filled the complete void of Web server benchmarks, and despite its flaws,
`
`many of its features have rightfully become standards. The general approach of WebStone
`
`is to create a master process that spawns and gathers data from multiple client pro-
`
`cesses[15]. The master spawns multiple clients that repeatedly open one connection to the
`
`server and download one file. The key parameters of the benchmark are fileset, number of
`
`client processes, and the length of the test run. Since it is impossible to quantify WWW
`
`traffic in one way, these parameters are configurable. The theory, then, is that users can
`
`configure the benchmark to simulate the behavior experienced by their sites. Unfortu-
`
`nately, the lack of a well-researched and reasonable standardized load leads to difficulties
`
`in comparing WebStone numbers. In addition, there is no suitable means of deriving a
`
`suitable configuration for a particular site. As is often the case, individuals frequently have
`
`

`
`16
`
`misconceptions about the inner workings of their systems. The configurations used and
`
`reported often generate traffic that has little to no resemblance of real WWW traffic. As an
`
`attempt to provide a standard for comparison and testing, WebStone attempted to offer a
`
`“standard load” with a fileset of five files ranging from 500 bytes to 5 megabytes, varying
`
`by an order of magnitude. The configuration requires running with 20 to 100 users,
`
`increasing by 10 users every 10 minutes. WebStone's final limitation arises from its focus
`
`on throughput. Even with an accurate portrayal of a site in the configuration logs, the
`
`behavior of the WebStone clients is so unlike real browser behavior that the model would
`
`still fail. Since WebStone focuses on the number of bytes that can be transferred, portray-
`
`ing accurate user behavior is not salient. Instead, the benchmark chooses to try to make as
`
`many requests as possible in a short time. Unfortunately, throughput can be as much a
`
`measure of the networking hardware of the system, as performance of the server software
`
`and operating system.
`
`2.4.2 SPECWeb
`
`SPECWeb '96 and '97[13,14] attempt to rectify the lack of comparability of statistics,
`
`while retaining some of the structural aspects of WebStone. SPECWeb also builds upon
`
`the client-master model, but rather than spawning off clients that randomly download files
`
`as rapidly as possible, SPEC designed the benchmark to scale the load it generates to
`
`stress test a server. The file set is determined by the goal for operations per second on the
`
`server. Furthermore, client process behavior is also constrained by this goal. Thus, clients
`
`will remain idle for some amount of time to ramp up the generated load over time. Thus,
`
`the SPEC benchmark attempts to show the results of increasing the load on a server, until
`
`it can handle no more. SPECWeb controls the load generation of its processes with a finer
`
`granularity than WebStone because it controls how clients behave, not just the number of
`
`clients. The metric reported by SPECWeb is a report of the number of operations (connec-
`
`tions) that the server can execute per second. This metric helps show the ability of the
`
`server to handle requests, not merely its ability to send bytes over the network. While
`
`SPEC initially bases its definition of users from analysis of Web server logs, the definition
`
`degrades as users are controlled primarily by the load they generate, rather than approxi-
`
`mation to the log. Like WebStone, the

This document is available on Docket Alarm but you must sign up to view it.


Or .

Accessing this document will incur an additional charge of $.

After purchase, you can access this document again without charge.

Accept $ Charge
throbber

Still Working On It

This document is taking longer than usual to download. This can happen if we need to contact the court directly to obtain the document and their servers are running slowly.

Give it another minute or two to complete, and then try the refresh button.

throbber

A few More Minutes ... Still Working

It can take up to 5 minutes for us to download a document if the court servers are running slowly.

Thank you for your continued patience.

This document could not be displayed.

We could not find this document within its docket. Please go back to the docket page and check the link. If that does not work, go back to the docket and refresh it to pull the newest information.

Your account does not support viewing this document.

You need a Paid Account to view this document. Click here to change your account type.

Your account does not support viewing this document.

Set your membership status to view this document.

With a Docket Alarm membership, you'll get a whole lot more, including:

  • Up-to-date information for this case.
  • Email alerts whenever there is an update.
  • Full text search for other cases.
  • Get email alerts whenever a new case matches your search.

Become a Member

One Moment Please

The filing “” is large (MB) and is being downloaded.

Please refresh this page in a few minutes to see if the filing has been downloaded. The filing will also be emailed to you when the download completes.

Your document is on its way!

If you do not receive the document in five minutes, contact support at support@docketalarm.com.

Sealed Document

We are unable to display this document, it may be under a court ordered seal.

If you have proper credentials to access the file, you may proceed directly to the court's system using your government issued username and password.


Access Government Site

We are redirecting you
to a mobile optimized page.





Document Unreadable or Corrupt

Refresh this Document
Go to the Docket

We are unable to display this document.

Refresh this Document
Go to the Docket