Design, Implementation and Evaluation of a Client Characterization Driven Web Server - PowerPoint PPT Presentation

About This Presentation
Title:

Design, Implementation and Evaluation of a Client Characterization Driven Web Server

Description:

Users with varying connectivity request a variety of files ... Identifies client connectivity. Takes action if required: alternate content etc. ... – PowerPoint PPT presentation

Number of Views:104
Avg rating:3.0/5.0
Slides: 25
Provided by: kus8
Learn more at: https://cseweb.ucsd.edu
Category:

less

Transcript and Presenter's Notes

Title: Design, Implementation and Evaluation of a Client Characterization Driven Web Server


1
Design, Implementation and Evaluation of a Client
Characterization Driven Web Server
  • Balachander Krishnamurthy ATT Research Labs
  • Craig Wills WPI
  • Yin Zhang ATT Research Labs
  • Kashi Vishwanath Duke University

2
Motivation
  • Users with varying connectivity request a variety
    of files
  • Web site wants no user to get disinterested
  • Handle requests based on connectivity

3
Outline of our solution
  • Figure out connectivity use web server logs
  • Classify clients(IPs) store in shared memory
  • Cluster group of IPs KW00
  • When a page is requested, the Web server
  • Identifies client connectivity
  • Takes action if required alternate content etc.
  • 122.3.4.22 - - 12/Apr/2003014022 0400
    GET /foo.html HTTP/1.0 200 147

4
System Architecture
Server Log
Classifier
User Requests
Classification Table (Shared Memory)
Apache Processes
5
What is a page access?
  • User clicks container page page eg. /foo.html
  • Subsequent requests embedded objects
    eg. /img1.gif
  • At server how long before the user
  • starts getting the first object ?E_first
  • gets the entire page ? E_last
  • Smoothed means for popular pages
  • Classes (poor, rich, normal) KW02
  • Poor E_first gt3 and E_last gt5
  • Rich E_first lt1 and E_last lt2

6
Modified Apache Server
  • Modification to Apache 1.3.24
  • three files, less than 200 lines
  • http_main.c, http_protocol.c, http_core.c
  • One time overhead
  • Open cluster library
  • Read in configuration file
  • /foo.html .gz .p_lc .r_mc
  • Initialize shared memory

7
Modified Apache Server Per Request Changes
  • Per Request Changes
  • Is it a popular page ( URI ) ?
  • Lookup class (in shared memory data)
  • Cluster lookup if IP unavailable
  • Tailored action if appropriate and log it

8
Testing How to choose test pages
  • Proxy logs from a large manufacturing company
    (Dec 2001)
  • Over 100,000 users
  • Select 1000 most popular pages
  • Download these April 2002
  • 641 successful pages reconstructed
  • 33 and 66 percentile value for characteristics
  • Container bytes, of Embedded object, embedded
    bytes
  • 3 x 3 x 3 27 buckets of pages

9
TestingDistribution for test pages
Percentage of pages in each bucket
10
Server Overhead Latency increase at
client
  • Generate IPs (X-IP header)

11
Stress Test
  • Plot of average increase in processing time for
    the modified server

12
Placing Clients and Modified Servers
  • Prototype Apache Server with our test site
  • Linux att.com in NJ, USA
  • Linux wpi.com MA, USA
  • FreeBSD icir.org CA,USA
  • Clients
  • attATT Labs-Research, NJ,USA
  • de Saarbruecken University, Germany
  • cable cable modem user, NJ,USA
  • modem 56Kbps dialup modem user, NJ,USA
  • ukLondon, U.K via a dedicated 56Kbps line.

13
ClientsObserved network
characteristics
uk-icir
Spans a wide spectrum
uk-att
cable-icir
de-att
att-icir
att-wpi
uk-wpi
14
Experiments Httperf Clients
  • Request similar mix of pages as described earlier
  • 200 random requests each
  • New Headers X-Server-Actions, X-Class
  • Baseline measure
  • parallel-1.0 up to 4 parallel HTTP/1.0 requests
  • Server actions
  • Manner of delivery
  • Compress, serial-1.1, pipeline-1.1, bundle
  • Amount served
  • Base-only, half-object,half-resolution

15
Classifier Stability and Correctness
Rich
Moderate
Poor
Overall consistent with
expectation 90
16
Results Low throughput client
  • Uk-wpi

17
Results medium throughput
  • de-att

18
ResultsSummary
19
Conclusions
  • What all do we do ?
  • Online client classification
  • Deliver modified server actions
  • Measure latency reduction to different clients
  • Compare various actions
  • First to do this in a unified framework.

20
Conclusions Server and Classifier
  • Overhead at server
  • Average75 usec. Negligible for end-user
  • Turn off classification during overload
  • Server poor-content during overload
  • Classification
  • Close to expectation
  • Stable over the duration of experiment
  • Improve by using select pages and better
    thresholds

21
Future
  • Other server actions
  • Delta encoding
  • Policies regarding cacheablility of objects
  • Create a test for clustering

22
Acknowledgement
  • Client testing
  • Saarbruecken, Germany
  • ICIR, USA
  • Proxy logs - Manufacturing company

23
Thanks!
Slides http//www.cs.duke.edu/kvv/www.ppt
  • Questions ?

24
Related Work
  • Mark network packets NT02
  • Improve performance of all clients
  • Adapt content based on server load AB99
  • Users expectation BBK00
  • Alternate admission control and server scheduling
    policies CMC01, CR02
  • Dynamically altering multimedia content MB01
  • Explicit client notification e.g. SPAND SSK97
Write a Comment
User Comments (0)
About PowerShow.com