1 / 21

9/25/2001 Network Computing Lab. EECS. KAIST Kang, Seungwoo

Providing Differentiated Levels of Service in Web Content Hosting J ussara Almeida, Mihaela Dabu, Anand Manikutty and Pei Cao First Workshop on Internet Server Performance, 1998. 9/25/2001 Network Computing Lab. EECS. KAIST Kang, Seungwoo. Contents. Introduction Methodology

fuller
Télécharger la présentation

9/25/2001 Network Computing Lab. EECS. KAIST Kang, Seungwoo

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. Providing Differentiated Levels of Service in Web Content HostingJussara Almeida, Mihaela Dabu, Anand Manikutty and Pei CaoFirst Workshop on Internet Server Performance, 1998 9/25/2001 Network Computing Lab. EECS. KAIST Kang, Seungwoo

  2. Contents • Introduction • Methodology • Design & Implementation • Experiment & Results • Limitations of the study • Conclusions

  3. Introduction • Increased Web content hosting • Many servers charge fees for the Web service • Customers expect quality of service proportional to the fee • Apache • Most used Web server • FCFS(first-com first-served) • doesn’t support for differentiated quality of service • Objective • To provide differentiated levels of service by priority-based request scheduling • Focus on server QoS, not network QoS • Single-machine server system

  4. Methodology (1/2) • Priority-based approaches • Two levels (high, low) of quality • priority based on requested documents • Approaches • User-level • Add a scheduler process to Apache • Kernel-level • Both Apache and Linux kernel by adding new system calls • Mapping from request priorities into process priorities • Keeping track of which processes are running at each priority level

  5. Methodology (2/2) • Performance metric • Response time • The average latency time taken by the server • After accepting a connection, until closing the connection

  6. Design & Implementation (1/5) • Scheduling policies • Preemptive at kernel-level, non-preemptive at user-level • Sleep policy : Upon receiving a request • Wakeup policy : In place of a completed request • Implementation • Maximum thresholds : A fixed number of slots for each priority level • Queue for blocked requests request or or High-priority Queue Low-priority

  7. Design & Implementation (2/5) • Conserving policies • Non-work conserving • Allow requests to occupy only slots of the same type • Work conserving • Not allow a slot to go empty • Allows requests to occupy slots of a different type request High-priority 3 requests or or 4 requests Queue Low-priority

  8. Design & Implementation (3/5) • User-level approach • A master process spawn a child process for each request and a Scheduler process • The child process determines its priority from URL • Maps the customer name into a priority value Master process Scheduler sleep or wakeup policy requests spawn request scheduling spawn Child process #1 Child process #2 Child process #3

  9. Design & Implementation (4/5) • Kernel-level approach • Parameters • The number of priority levels • The number of concurrent processes at each level • The priority value • The priority value assigned to a blocked process • SLEEPING_PRIORITY • New system calls • initialize_priority_scheme • my_set_priority • my_release_priority

  10. Design & Implementation (5/5) • Roles of kernel • Maps request priority to a process priority • Scheduling (sleep & wake-up policy) • Wake-up • Decides the priority level of the processes to be unblocked • Choose the oldest process Process call Wakeup policy Sleep policy kernel

  11. Experimental Setup (1/2) • HTTP server : Apache 1.3b2, KeepAlive off • For user-level approach • Sun SparcStation • Two 66MHz CPUs, 64 MB RAM, Solaris 2.4, 100 Mbps Ethernet • Client : WebStone • 6 machines, 5 client processes per machine

  12. Experimental Setup (2/2) • For kernel-level approach • DEC 90MHz Pentium • 32 MB RAM, Linux 2.1.54, 10 Mbps Ethernet • Client : WebStone • 2 independent WebStone benchmarks on the same machine • 15 client processes for one specific type • 2 different workloads

  13. Results (1/6)- User-level approach (1/3) • Non-work conserving

  14. Results (2/6)- User-level approach (2/3) • Non-work conserving

  15. Results (3/6)- User-level approach (3/3) • Work conserving

  16. Results (4/6)- Kernel-level approach (1/3) Average latency for requests of type A & B for both workload with no policy The configurations used in the experiments

  17. Results (5/6)- Kernel-level approach (2/3) Average latency for workload WA

  18. Results (6/6)- Kernel-level approach (3/3) Average latency for workload WB Average latency for workload WB using non-work conserving and SLEEPING_PRIORITY = -1

  19. Limitations of the Study • For truly differentiated QoS • CPU scheduling • Replacement policy for buffer cache • Disk I/O scheduling to favor high-priority • Networking QoS • But, focused on only CPU scheduling in this study • Webstone cannot drive the Web server to overload • Need to test under bursty loads with various mix of high-priority and low-priority requests

  20. Conclusions • Implement the priority-based scheduling • Restricting the number of concurrent processes is a simple and effective strategy • Work conserving policy is not adequate when the thresholds are large • Non-work conserving is better for multiple levels of priority

  21. Critique • Is the way to determine priority reasonable? • Too small benefit for high-priority, too much loss for low-priority • Is modifying kernel good approach? • If requests of the same type are explosive?

More Related