vPath: precise discovery of request processing paths from black-box observations of thread and network activities

  • Authors:
  • Byung Chul Tak;Chunqiang Tang;Chun Zhang;Sriram Govindan;Bhuvan Urgaonkar;Rong N. Chang

  • Affiliations:
  • Dept. of Computer Science and Engineering, Pennsylvania State University;IBM T.J. Watson Research Center;IBM T.J. Watson Research Center;Dept. of Computer Science and Engineering, Pennsylvania State University;Dept. of Computer Science and Engineering, Pennsylvania State University;IBM T.J. Watson Research Center

  • Venue:
  • USENIX'09 Proceedings of the 2009 conference on USENIX Annual technical conference
  • Year:
  • 2009

Quantified Score

Hi-index 0.00

Visualization

Abstract

Discovering end-to-end request-processing paths is crucial in many modern IT environments for reasons varying from debugging and bottleneck analysis to billing and auditing. Existing solutions for this problem fall into two broad categories: statistical inference and intrusive instrumentation. The statistical approaches infer request-processing paths in a "most likely" way and their accuracy degrades as the workload increases. The instrumentation approaches can be accurate, but they are system dependent as they require knowledge (and often source code) of the application as well as time and effort from skilled programmers. We have developed a discovery technique called vPath that overcomes these shortcomings. Unlike techniques using statistical inference, vPath provides precise path discovery, by monitoring thread and network activities and reasoning about their causality. Unlike techniques using intrusive instrumentation, vPath is implemented in a virtual machine monitor, making it agnostic of the overlying middleware or application. Our evaluation using a diverse set of applications (TPC-W, RUBiS, MediaWiki, and the home-grown vApp) written in different programming languages (C, Java, and PHP) demonstrates the generality and accuracy of vPath as well as its low overhead. For example, turning on vPath affects the throughput and response time of TPC-W by only 6%.