The web stream customizer architecture: improving performance, reliability and security for wireless web access

In this dissertation, we address the problem of adapting Web content to improve access by wireless devices and other resource limited clients. We present a Web middleware architecture that supports the customization of Web content and streams, called the Web Stream Customizer Architecture (WSCA). Our thesis is that the WSCA improves upon proxy-based customization of Web content by using intermediaries called Customizers to support flexible, adaptive customization, yet by using existing Web mechanisms and focusing on HTTP only, it remains deployable and avoids the complexity of more general customization systems. Customizers intercept and act on HTTP stream to improve performance, reliability and security, supporting the following customization functionality: (1) Stream buffering; (2) Traffic regulation; (3) Filtering or modifying the data as it passes through; (4) Repeating, redirecting, and generating HTTP requests; (5) Storing data for remote access. This allows such functionality as image filtering, storing transaction results in case of connection failures, encrypting sensitive data, and buffering streaming video near the client to improve playback quality, all of which are especially valuable for wireless clients, which are our primary target of support. We introduce the use of a personal server, which supports running customization modules and maintaining user configuration and application data, while third party servers can be used to bolster performance, increase fault tolerance, and satisfy special security requirements. Designing the system specifically for the Web allows us to make a number of simplifying assumptions regarding the programming model, the user model, and the system design and implementation. Our architecture is more flexible than existing static and dynamic proxy systems, and less complex than more general mobile code systems, and is deployable, while incurring low overhead. We present experiments showing that the benefits of using Customizers far outweigh the overhead of using them, and analyze the performance of a number of Customizer applications, including an adaptive image filter and a video buffer that improves the performance of streaming video.

[1]  Andreas Paepcke,et al.  Power browser: efficient Web browsing for PDAs , 2000, CHI.

[2]  Donald F. Towsley,et al.  Proxy prefix caching for multimedia streams , 1999, IEEE INFOCOM '99. Conference on Computer Communications. Proceedings. Eighteenth Annual Joint Conference of the IEEE Computer and Communications Societies. The Future is Now (Cat. No.99CH36320).

[3]  Donald F. Towsley,et al.  Smoothing variable-bit-rate video in an Internetwork , 1999, TNET.

[4]  Sansanee Auephanwiriyakul,et al.  An active transcoding proxy to support mobile web access , 1998, Proceedings Seventeenth IEEE Symposium on Reliable Distributed Systems (Cat. No.98CB36281).

[5]  Matti A. Hiltunen,et al.  Providing QoS Customization in Distributed Object Systems , 2001, Middleware.

[6]  Jennifer Rexford,et al.  Online Smoothing of Variable-Bit-Rate Streaming Video , 2000, IEEE Trans. Multim..

[7]  Srinivasan Seshan,et al.  System support for bandwidth management and content adaptation in internet applications , 2000, OSDI.

[8]  Dan S. Wallach,et al.  Extensible security architectures for Java , 1997, SOSP.

[9]  Soam Acharya,et al.  MiddleMan: A Video Caching Proxy Server , 2000 .

[10]  Dan S. Wallach,et al.  Enforcing Java Run-Time Properties Using Bytecode Rewriting , 2002, ISSS.

[11]  Jim Miller,et al.  Application-Specific Proxy Servers as HTTP Stream Transducers , 1996, World Wide Web journal.

[12]  Vaduvur Bharghavan,et al.  Alleviating the Latency and Bandwidth Problems in WWW Browsing , 1997, USENIX Symposium on Internet Technologies and Systems.

[13]  Tatsuo Nakajima,et al.  An approach for constructing mobile applications using service proxies , 1996, Proceedings of 16th International Conference on Distributed Computing Systems.

[14]  Amin Vahdat,et al.  Active Names: flexible location and transport of wide-area resources , 1999, Proceedings DARPA Active Networks Conference and Exposition.

[15]  Scott Shenker,et al.  Supporting real-time applications in an Integrated Services Packet Network: architecture and mechanism , 1992, SIGCOMM '92.

[16]  Alec Wolman,et al.  Measurement and Analysis of a Streaming Media Workload , 2001, USITS.

[17]  John R. Smith,et al.  Adapting Multimedia Internet Content for Universal Access , 1999, IEEE Trans. Multim..

[18]  Brian D. Noble System support for mobile, adaptive applications , 2000, IEEE Wirel. Commun..

[19]  David Hutchison,et al.  QoS Filters: Addressing the Heterogeneity Gap , 1996, IDMS.

[20]  Wenjun Zeng,et al.  Scalable streaming of JPEG2000 images using hypertext transfer protocol , 2001, MULTIMEDIA '01.

[21]  Bruce Zenel,et al.  A general purpose proxy filtering mechanism applied to the mobile environment , 1997, MobiCom '97.

[22]  Edith Cohen,et al.  Improving end-to-end performance of the Web using server volumes and proxy filters , 1998, SIGCOMM '98.

[23]  Thorsten von Eicken,et al.  JRes: a resource accounting interface for Java , 1998, OOPSLA '98.

[24]  Andrzej Duda,et al.  Implementation of MAP: A system for mobile assistant programming , 1996, Proceedings of 1996 International Conference on Parallel and Distributed Systems.

[25]  Paolo Bellavista,et al.  Mobile agents for QoS tailoring, control and adaptation over the internet: the ubiQoS video on demand service , 2002, Proceedings 2002 Symposium on Applications and the Internet (SAINT 2002).

[26]  Steven McCanne,et al.  An active service framework and its application to real-time multimedia transcoding , 1998, SIGCOMM '98.

[27]  Robbert van Renesse,et al.  Operating system support for mobile agents , 1995, Proceedings 5th Workshop on Hot Topics in Operating Systems (HotOS-V).

[28]  Kimmo E. E. Raatikainen,et al.  Optimizing World-Wide Web for weakly connected mobile workstations: An indirect approach , 1995, Second International Workshop on Services in Distributed and Networked Environments.

[29]  Zhi-Li Zhang,et al.  A network-conscious approach to end-to-end video delivery over wide area networks using proxy servers , 1998, Proceedings. IEEE INFOCOM '98, the Conference on Computer Communications. Seventeenth Annual Joint Conference of the IEEE Computer and Communications Societies. Gateway to the 21st Century (Cat. No.98.

[30]  Alec Wolman,et al.  Organization-Based Analysis of Web-Object Sharing and Caching , 1999, USENIX Symposium on Internet Technologies and Systems.

[31]  John V. Guttag,et al.  ANTS: a toolkit for building and dynamically deploying network protocols , 1998, 1998 IEEE Open Architectures and Network Programming.

[32]  Vaduvur Bharghavan,et al.  A framework for application adaptation in mobile computing environments , 1997, Proceedings Twenty-First Annual International Computer Software and Applications Conference (COMPSAC'97).

[33]  Bruce Zenel A general purpose proxy filtering mechanism applied to the mobile environment , 1999, Wirel. Networks.

[34]  George C. Necula,et al.  Safe kernel extensions without run-time checking , 1996, OSDI '96.

[35]  Amin Vahdat,et al.  Transcoding characteristics of Web images , 2000, IS&T/SPIE Electronic Imaging.

[36]  Yong Wang,et al.  Bi-level video: video communication at very low bit rates , 2001, MULTIMEDIA '01.

[37]  Joseph Pasquale,et al.  A web middleware architecture for dynamic customization of content for wireless clients , 2002, WWW '02.

[38]  Balachander Krishnamurthy,et al.  Improving web performance by client characterization driven server adaptation , 2002, WWW '02.