• No results found

Model and Methodology

3.9 Defining the Experimental Phases and Workloads

The uniform() model initially ranks all the objects with the same probability, meaning that it chooses the object randomly from the the set of objects which previously have been requested. However, since the objects from the beginning of the test are more often requested than the later objects, it still implies some notion of popularity.

3.9 Defining the Experimental Phases and Workloads

As noted above, one key requirement for an experiment to run successfully is that thefrozen working setshould be sized appropriately. The frozen working set is the maximum size to which the original working set which grows during the fill phase to generate cache misses. However, this parameter cannot be set directly.

Moreover, the growth of the working set varies according to several factors, in-cluding the length of the fill phase, the object size range and type, the extent of object cache-ability, and the like. Thus the size of frozen working set is different from workload to workload despite using same WSS setting of 100 MB. Thus, substantial experimentation and tweaking is required to determine the proper parameters for a workload in order to achieve the desired traffic characteristics and other properties.

Several different workloads were designed and tuned for use in this research.

They are described individually in the following subsections.

3.9.1 The best effort method

In this scenario, the robots were configured to use the best effort method. The best effort method means that a robot sends the next request as soon as a response is received for the previous request, but not sooner. In practice,this means that no robot makes parallel connections at any given time. In this sce-nario, the cache never gets overloaded. This method shows how fast a proxy is by "nature" – what request rate the proxy is convenient with – and the rate of requests is indirectly justified by the proxy itself.

To run such a test, the req_ rate variable of robot objects is set to null or is simply removed from the robot part of the configuration files. The workload specifications which were used in this part are given in Table3.3. Note that the frozen working set size is the one resulting from specifying the other parameters.

3.9. DEFINING THE EXPERIMENTAL PHASES AND WORKLOADS

Best Effort workload

Varnish Apache Traffic Server

Working set size (MB) 100 100

Cache Size (MB) 1100 1100

Frozen WSS (GB) 2.9 3.2

Mean object size (xact) 147625 141027

Robot population 100 100

Content Type All All

Peak Rate not specified not specified

Table 3.3: Parameters for the Best Effort workload

The following graph illustrates the content type mix for this workload.

Figure 3.6: Content type distribution The phases used for this workload are described in Table3.4.

Phase Request rate(%Peak) Recurrence (%) Goal

warm 10 to 100 5 5 min

fill 100 5 2*Cache Size

link fill to 100 95 5 min

top1 100 95 60 min

dec 100 to 10 95 5 min

idle 10 95 10 min

inc 10 to 100 95 5 min

top2 best effort 95 120 min

cool 100 to 0 95 1 min

Table 3.4: The Phases for the Best Effort Workload 3.9.2 Baseline Workloads

A series of baseline workloads were created in order to measure cache perfor-mance under controlled circumstances with limited amounts of variation. These workloads use a single content type and the constant method request rate pro-file. In the constant method, the robots are instructed to send requests at a constant rate throughout the test. The req_rate variable for each robot specifies the interval after which the client should send a new request.

3.9. DEFINING THE EXPERIMENTAL PHASES AND WORKLOADS

req_rate = 0.4/sec;

In these workloads, each robot is instructed to issues requests at an average request rate of 0.4 requests/sec. WHile the clients are capable of generating much higher request rates, that is somewhat artificial in that typical real world clients in the web do not generate such large amounts of requests. Therefore a small value for each individual client was chosen.

A large part of this work was conducted using individual types of objects. That means that the three major type of web objects (Images, HTML and Down-load) are used one by one to determine the baseline behaviour for each proxy.

The workloads cannot be totally identical in these cases. For example, using a working set size which is suitable for HTML objects would generate a much higher, excessive frozen working set for Downloads and a smaller frozen WSS for Images. Thus, each workload has its own specifications. The specifications used for each workload are specified in the corresponding section of the results discussion in Chapter 4. However, the phases are identical for each baseline and are shown in Table3.5.

Phase Request rate(%Peak) Recurrence (%) Goal

warm 10 to 100 5 5 min

fill 100 5 2*Cache Size

link fill to 100 95 5 min

Table 3.5: The Phases for each individual content type workload 3.9.3 The increasing rate workload

After completing the baseline experiments, a final scenario were designed to combine all the object types. In this case, the request rate was gradually in-creased during one phase in order to simulate a real, stressful load for the cache.

The phases and workload specifications for this workload are described in con-junction with the results in Chapter 4 in order to facilitate the discussion. The results for bothtop1 andincphases are important in this test. The top1 phase is a phase with a relatively low request rate which is not stressful and simulates a normal web traffic situation. In the phaseinc, on the other hand, the load is increased gradually to reach to the saturation points of the proxies.

Chapter 4