Turning flash crowds into smart mobs with real-time stochastic detection and adaptive cooperative caching

  • Authors:
  • Jay A. Patel;Charles M. Yang;Indranil Gupta

  • Affiliations:
  • University of Illinois at Urbana-Champaign;University of Illinois at Urbana-Champaign;University of Illinois at Urbana-Champaign

  • Venue:
  • Proceedings of the twentieth ACM symposium on Operating systems principles
  • Year:
  • 2005

Quantified Score

Hi-index 0.00

Visualization

Abstract

The past decade has experienced a continued increase in thepopular use of Web services. Unfortunately, the growth of Webservices, coupled with their their role as a vital source of newsand information has lead to many well published sources of stressthat tend to cripple performance at both the client and the serverside [1, 4]. Our work considers one such type of stress, called aflash crowd. A flash crowd arrives as a tidal wave, wherethe initial (and largest) spike in traffic generally occurs withinthe first few minutes. This gives client and servers only a fewtens of seconds to adapt to the incoming traffic! In addition,flash crowds are infrequent and unpredictable. Hence, any solutiondeployed to mitigate flash crowd must consist of: (1) proactive andreal-time mechanisms to detect the flash crowd while (oreven before) it happens, and (2) an initiation of immediateaction that can mask the effects of the stress.A variety of system designs for content delivery have emergedover the past few years. Based on their underlying designmethodologies, we classify these existing designs intofour classes. We use this taxonomy to comparethe effectiveness of the existing designs to mitigate flash crowds.The four classes are: (1) Single server solutions that target coreserver performance, such as SEDA [6]; (2) Server cooperationsolutions that distribute content through cooperation amongstmultiple servers, such as Coral [2]; (3) Server-Client solutionsthat require changes to the behavior of both the client and serverside, such as Overhaul [5]; (4) Client cooperative cachingsolutions that utilize peer-to-peer routing substrates, such asSquirrel [3].We follow a four-step approach in our study of flash crowds:• Characteristics of flash crowds:We study the properties of six real flash crowds based on tracescollected from the respective websites.• Real-time Flash Crowd Detector: Wepresent the design and implementation of a real-time stochasticdetector of flash crowds, running at the server. A detector mustcontinuously monitor visitor traffic and resource utilization, andbe able to immediately and accurately flag a flash crowd inreal-time. Additionally, the detector must run efficiently, withoutconsuming significant computational and memory resources,especially during normal operations. We find that ourdesign enables us to detect a flash crowd while the event ishappening.• Comparison of existing solutions:We use flash crowd traces to compare the effectiveness of three ofthe four methodologies discussed above. We measure both networkutilization of the server (a resource which directly affects thecontent provider's costs) and the quality of service as perceivedby the clients (i.e., the turnaround latency for each request).• Design of an Adaptive Cooperative CachingSolution: We combine our real-time flash crowd detectorat the server, with a cooperative caching scheme among clients, todesign an adaptive cooperative caching solution for flash crowds.We compare the performance of this scheme with the existingmethodologies. Our results reveal that such an approach isextremely effective in turning a flash crowd into a smartmob.