USITS '03 Abstract
A Flexible and Efficient Application Programming Interface (API) for a Customizable Proxy Cache
Vivek S. Pai, Alan L. Cox, Vijay S. Pai, and Willy Zwaenepoel, iMimic Networking, Inc.
Abstract
This paper describes the design, implementation, and performance of
a simple yet powerful Application Programming Interface (API) for
providing extended services in a proxy cache. This API facilitates
the development of customized content adaptation, content
management, and specialized administration features. We have
developed several modules that exploit this API to perform various
tasks within the proxy, including a module to support the Internet
Content Adaptation Protocol (ICAP) without any changes to the proxy
core.
The API design parallels those of high-performance servers, enabling
its implementation to have minimal overhead on a high-performance
cache. At the same time, it provides the infrastructure required to
process HTTP requests and responses at a high level, shielding
developers from low-level HTTP and socket details and enabling
modules that perform interesting tasks without significant amounts
of code. We have implemented this API in the portable and
high-performance iMimic DataReactor
proxy cache.
We show that implementing
the API imposes negligible performance overhead and that realistic
content-adaptation services achieve high performance levels without
substantially hindering a background benchmark load running at a
high throughput level.
- View the full text of this paper in HTML and PDF.
Until March 2004, you will need your USENIX membership identification in order to access the full papers. The Proceedings are published as a collective work, © 2003 by the USENIX Association. All Rights Reserved. Rights to individual papers remain with the author or the author's employer. Permission is granted for the noncommercial reproduction of the complete work for educational or research purposes. USENIX acknowledges all trademarks within this paper.
- If you need the latest Adobe Acrobat Reader, you can download it from Adobe's site.
|