A framework for network-aware applications

Today’s best-effort Internet infrastructure is well-known for its heterogeneity (both in endsystem capabilities and connectivity) and the significant fluctuations in service quality that can be observed. These two properties are often problematic from the viewpoint of a networked application, because they often result in unpredictable application behavior. Network-aware applicationsprovide an approach to mitigate these problems: they dynamically adapt their demands to match the varying supply of network resources, e.g., with the goal to achieve predictable response times. Such network-awareapplications must often trade network resources for somemeasure of qualityof the data delivered. This dissertation puts forth the claim that dynamic adaptation is an attractive and often necessary means to achieve the goal on predictable service quality. Unfortunately, network-aware applications are notoriously difficult to construct and evaluate. Two recurring issues need to be addressed when constructing such applications: how to find out about network resource availability and dynamic changes thereof, and how to adapt application behavior (to such dynamic changes), so that a goal on the response time and the quality of the data delivered can be met. Addressing these questions the dissertation makes three main contributions. First, the dissertation presents a reusable framework for network-aware applications. In contrast to other work, an integral view on the quality-response time tradeoff is adopted, which means that applications built on the framework try to be smart about how to reduce the quality of the data delivered, so that a user-specified time limit can be met, and so that the negative impact on the overall service quality is minimized. Applications are free to define their notion of quality. The dissertation shows that a framework-based approach to the construction of such network-aware applications allows for reuse of the core adaptation process and can therefore shield developers from many of the complexities in dealing with network dynamics. Reusability is achieved by factoring out three aspects of application-specific functionality: the data types handled by the application, the algorithms applicable to achieve quality reductions for a particular type, and the application’s notion of quality. Second, a systematic approach to the evaluation of the complex dynamic behavior of network-aware applications is presented. There are three questions to ask of such adaptive applications. Does adaptation work, and if so, what are the key factors that effect the application’s ability to adapt to the network environment? Does network-aware delivery provide a benefit to the user? At what costs can such benefits be obtained? The evaluation establishes that adaptation is robust with respect to many of the parameters that influence adaptation decisions. We find that network-aware content delivery can provide predictable response times over a wide range of bandwidths and CPU powers, can be smart about how to tradeoff quality for network resources, and incurs only small overheads.

[1]  William E. Lorensen,et al.  Object-Oriented Modeling and Design , 1991, TOOLS.

[2]  Peter Steenkiste,et al.  Automatic selection of load balancing parameters using compile-time and run-time information , 1997, Concurr. Pract. Exp..

[3]  Martin Wechsler,et al.  Spoken document retrieval based on phoneme recognition , 1998 .

[4]  Markus H. Gross,et al.  Fast Wavelet Based Volume Rendering by Accumulation of Transparent Texture Maps , 1995, Comput. Graph. Forum.

[5]  Matt Mathis TReno Bulk Transfer Capacity , 1999 .

[6]  Roy T. Fielding,et al.  Hypertext Transfer Protocol - HTTP/1.0 , 1996, RFC.

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

[8]  Charles E. Perkins,et al.  Service Location Protocol , 1997, RFC.

[9]  Richard Han,et al.  Dynamic adaptation in an image transcoding proxy for mobile Web browsing , 1998, IEEE Wirel. Commun..

[10]  Vern Paxson,et al.  An architecture for large-scale Internet measurement , 1998, IEEE Commun. Mag..

[11]  Brian Foote,et al.  Designing Reusable Classes , 2001 .

[12]  Atul Prakash,et al.  The case for better throughput estimation , 1999, Proceedings of the Seventh Workshop on Hot Topics in Operating Systems.

[13]  Deborah Estrin,et al.  Quality adaptation for congestion controlled video playback over the Internet , 1999, SIGCOMM '99.

[14]  Stefan Savage,et al.  Modeling TCP latency , 2000, Proceedings IEEE INFOCOM 2000. Conference on Computer Communications. Nineteenth Annual Joint Conference of the IEEE Computer and Communications Societies (Cat. No.00CH37064).

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

[16]  David D. Clark,et al.  The design philosophy of the DARPA internet protocols , 1988, SIGCOMM '88.

[17]  Ralph Johnson,et al.  design patterns elements of reusable object oriented software , 2019 .

[18]  Lixia Zhang,et al.  On the placement of Internet instrumentation , 2000, Proceedings IEEE INFOCOM 2000. Conference on Computer Communications. Nineteenth Annual Joint Conference of the IEEE Computer and Communications Societies (Cat. No.00CH37064).

[19]  Scott Shenker,et al.  Network Element Service Specification Template , 1997, RFC.

[20]  I. Damgård,et al.  The protocols. , 1989, The New Zealand nursing journal. Kai tiaki.

[21]  Nathalie Weiler,et al.  WaveVideo – An integrated approach to adaptive wireless video , 1999, Mob. Networks Appl..

[22]  Thomas R. Gross,et al.  The effectiveness of end-to-end congestion control mechanisms , 1999 .

[23]  Lixia Zhang,et al.  Resource ReSerVation Protocol (RSVP) - Version 1 Functional Specification , 1997, RFC.

[24]  Craig Partridge,et al.  Improving round-trip time estimates in reliable transport protocols , 1991, TOCS.

[25]  H. T. Kung,et al.  TCP fast recovery strategies: analysis and improvements , 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.

[26]  Vern Paxson,et al.  On calibrating measurements of packet transit times , 1998, SIGMETRICS '98/PERFORMANCE '98.

[27]  S. McCanne,et al.  Toward a common infrastructure for multimedia-networking middleware , 1997, International Workshop on Network and Operating System Support for Digital Audio and Video.

[28]  Peter A. Dinda,et al.  Performance characteristics of mirror servers on the Internet , 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).

[29]  David D. Clark,et al.  The structuring of systems using upcalls , 1985, SOSP '85.

[30]  Mats Björkman,et al.  Adaptive end-to-end compression for variable-bandwidth communication , 1999, Comput. Networks.

[31]  Carla Schlatter Ellis,et al.  JPEG Compression Metric as a Quality-Aware Image Transcoding , 1999, USENIX Symposium on Internet Technologies and Systems.

[32]  Keith Bostic,et al.  The design and implementa-tion of the 4.4BSD operating system , 1996 .

[33]  Srinivasan Keshav,et al.  A control-theoretic approach to flow control , 1991, SIGCOMM '91.

[34]  Deborah Estrin,et al.  RAP: An end-to-end rate-based congestion control mechanism for realtime streams in the Internet , 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).

[35]  P. Young,et al.  Time series analysis, forecasting and control , 1972, IEEE Transactions on Automatic Control.

[36]  Ellen W. Zegura,et al.  A novel server selection technique for improving the response time of a replicated service , 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.

[37]  Kendall Scott,et al.  UML distilled - applying the standard object modeling language , 1997 .

[38]  Volker Strumpen,et al.  The network machine , 1995 .

[39]  D. Estrin,et al.  RSVP: a new resource reservation protocol , 1993, IEEE Communications Magazine.

[40]  Jeffrey K. MacKie-Mason,et al.  Pricing the Internet , 1995 .

[41]  Peter Steenkiste,et al.  Collecting network status information for network-aware applications , 2000, Proceedings IEEE INFOCOM 2000. Conference on Computer Communications. Nineteenth Annual Joint Conference of the IEEE Computer and Communications Societies (Cat. No.00CH37064).

[42]  Armando Fox,et al.  A framework for separating server scalability and availability from internet application functionality , 1998 .

[43]  Henning Schulzrinne,et al.  RTP: A Transport Protocol for Real-Time Applications , 1996, RFC.

[44]  John S. Heidemann,et al.  Modeling the performance of HTTP over several transport protocols , 1997, TNET.

[45]  Steven McCanne,et al.  The BSD Packet Filter: A New Architecture for User-level Packet Capture , 1993, USENIX Winter.

[46]  San-qi Li,et al.  A predictability analysis of network traffic , 2000, Proceedings IEEE INFOCOM 2000. Conference on Computer Communications. Nineteenth Annual Joint Conference of the IEEE Computer and Communications Societies (Cat. No.00CH37064).

[47]  Anindo Banerjea,et al.  The Tenet real-time protocol suite: design, implementation, and experiences , 1996, TNET.

[48]  Srinivasan Seshan,et al.  A network measurement architecture for adaptive applications , 2000, Proceedings IEEE INFOCOM 2000. Conference on Computer Communications. Nineteenth Annual Joint Conference of the IEEE Computer and Communications Societies (Cat. No.00CH37064).

[49]  G. Mehta Preference and utility , 1998 .

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

[51]  Mary Baker,et al.  Measuring bandwidth , 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).

[52]  Thomas R. Gross,et al.  Adaptive distributed applications on heterogeneous networks , 1999, Proceedings. Eighth Heterogeneous Computing Workshop (HCW'99).

[53]  Walter Willinger,et al.  Self-similarity through high-variability: statistical analysis of Ethernet LAN traffic at the source level , 1997, TNET.

[54]  Randy H. Katz,et al.  The Case for Wireless Overlay Networks , 1994, Mobidata.

[55]  Steven McCanne,et al.  vic: a flexible framework for packet video , 1995, MULTIMEDIA '95.

[56]  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).

[57]  John A. Zinky,et al.  Architectural Support for Quality of Service for CORBA Objects , 1997, Theory Pract. Object Syst..

[58]  David Wetherall,et al.  Extending Tcl for Dynamic Object-Oriented Programming , 1995, Tcl/Tk Workshop.

[59]  Eric A. Brewer,et al.  Adapting to network and client variability via on-demand dynamic distillation , 1996, ASPLOS VII.

[60]  Ralf Steinmetz Analyzing The Multimedia Operating System , 1995, IEEE Multim..

[61]  QUTdN QeO,et al.  Random early detection gateways for congestion avoidance , 1993, TNET.

[62]  John Wroclawski,et al.  Specification of the Controlled-Load Network Element Service , 1997, RFC.

[63]  Hong Va Leong,et al.  Mobile Data Access , 2001, Lecture Notes in Computer Science.

[64]  Klara Nahrstedt,et al.  The QOS Broker , 1995, IEEE Multim..

[65]  Clemens A. Szyperski,et al.  Component software - beyond object-oriented programming , 2002 .

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

[67]  Henning Schulzrinne,et al.  Operating system issues for continuous media , 1996, Multimedia Systems.

[68]  Vern Paxson,et al.  Automated packet trace analysis of TCP implementations , 1997, SIGCOMM '97.

[69]  D.E. Tolmie Gigabit networking , 1992, IEEE LTS.

[70]  Aruna Seneviratne,et al.  Managing application level quality of service through TOMTEN , 1999, Comput. Networks.

[71]  Walter Willinger,et al.  Self-similarity through high-variability: statistical analysis of Ethernet LAN traffic at the source level , 1997, TNET.

[72]  Larry L. Peterson,et al.  TCP Vegas: new techniques for congestion detection and avoidance , 1994 .

[73]  Hans-Jörg Schek,et al.  Architecture of a networked image search and retrieval system , 1999, CIKM '99.

[74]  Matthew Mathis,et al.  The stationary behavior of ideal TCP congestion avoidance , 1996 .

[75]  Van Jacobson,et al.  Congestion avoidance and control , 1988, SIGCOMM '88.

[76]  Sally Floyd,et al.  TCP Selective Acknowledgment Options , 1996, RFC.

[77]  Olis Rubin The design of automatic control systems , 1986 .

[78]  Amin Vahdat,et al.  Multimedia Web services for mobile clients using quality aware transcoding , 1999, WOWMOM '99.

[79]  Peter Steenkiste Adaptation Models for Network-Aware Distributed Computations , 1999, CANPC.

[80]  Larry L. Peterson,et al.  Predicting MPEG execution times , 1998, SIGMETRICS '98/PERFORMANCE '98.

[81]  Robert Tappan Morris,et al.  TCP behavior with many flows , 1997, Proceedings 1997 International Conference on Network Protocols.

[82]  Brian C. Smith,et al.  Implementation techniques for continuous media systems and applications , 1994 .

[83]  Donald F. Towsley,et al.  Modeling TCP throughput: a simple model and its empirical validation , 1998, SIGCOMM '98.

[84]  Mahadev Satyanarayanan,et al.  Agile application-aware adaptation for mobility , 1997, SOSP.

[85]  Kurt Rothermel,et al.  Dynamic distance maps of the Internet , 2000, Proceedings IEEE INFOCOM 2000. Conference on Computer Communications. Nineteenth Annual Joint Conference of the IEEE Computer and Communications Societies (Cat. No.00CH37064).

[86]  Peter B. Danzig,et al.  A measurement-based admission control algorithm for integrated services packet networks , 1995, SIGCOMM '95.

[87]  Matthew Mathis,et al.  The macroscopic behavior of the TCP congestion avoidance algorithm , 1997, CCRV.

[88]  Martin Vetterli,et al.  Scalable compression and transmission of internet multicast video , 1996 .

[89]  Thomas R. Gross,et al.  Bandwidth modelling for network-aware applications , 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).

[90]  David L. Tennenhouse,et al.  The VuNet Desk Area Network: Architecture, Implementaion, and Experience , 1995, IEEE J. Sel. Areas Commun..

[91]  Mark Crovella,et al.  Measuring Bottleneck Link Speed in Packet-Switched Networks , 1996, Perform. Evaluation.

[92]  Scott Shenker,et al.  Best-effort versus reservations: a simple comparative analysis , 1998, SIGCOMM '98.

[93]  Paul Francis,et al.  An architecture for a global Internet host distance estimation service , 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).

[94]  Mark Crovella,et al.  Dynamic Server Selection using Bandwidth Probing in Wide-Area Networks , 1996 .

[95]  Steven McCanne,et al.  Receiver-driven layered multicast , 1996, SIGCOMM '96.

[96]  Peter A. Dinda,et al.  An evaluation of linear models for host load prediction , 1999, Proceedings. The Eighth International Symposium on High Performance Distributed Computing (Cat. No.99TH8469).

[97]  D. Reininger,et al.  Paying for QoS: an optimal distributed algorithm for pricing network resources , 1998, 1998 Sixth International Workshop on Quality of Service (IWQoS'98) (Cat. No.98EX136).

[98]  Bernhard Plattner,et al.  An active router architecture for multicast video distribution , 2000, Proceedings IEEE INFOCOM 2000. Conference on Computer Communications. Nineteenth Annual Joint Conference of the IEEE Computer and Communications Societies (Cat. No.00CH37064).

[99]  Ivar Jacobson,et al.  Object-Oriented Software Engineering , 1991, TOOLS.

[100]  Abhay Parekh,et al.  A generalized processor sharing approach to flow control in integrated services networks-the single node case , 1992, [Proceedings] IEEE INFOCOM '92: The Conference on Computer Communications.

[101]  K. Schwan,et al.  Dynamic authentication for high-performance networked applications , 1998, 1998 Sixth International Workshop on Quality of Service (IWQoS'98) (Cat. No.98EX136).

[102]  Erich M. Nahum,et al.  Locality-aware request distribution in cluster-based network servers , 1998, ASPLOS VIII.

[103]  Vern Paxson,et al.  On estimating end-to-end network path properties , 2001, SIGCOMM LA '01.

[104]  Takeo Kanade,et al.  Intelligent Access to Digital Video: Informedia Project , 1996, Computer.

[105]  Scott Shenker,et al.  Specification of Guaranteed Quality of Service , 1997, RFC.

[106]  Ian Wakeman,et al.  Scalable Feedback Control for Multicast Video Distribution in the Internet , 1994, SIGCOMM.

[107]  M. Hemy MPEG System Streams in Best-Effort Networks , 1999 .

[108]  Hans-Jörg Schek,et al.  A Quantitative Analysis and Performance Study for Similarity-Search Methods in High-Dimensional Spaces , 1998, VLDB.

[109]  Peter A. Dinda,et al.  The statistical properties of host load , 1999, Sci. Program..

[110]  Eric A. Brewer,et al.  Reducing WWW Latency and Bandwidth Requirements by Real-Time Distillation , 1996, Comput. Networks.

[111]  Anindo Banerjea,et al.  Network support for multimedia: a discussion of the Tenet approach , 1994 .

[112]  David D. Clark,et al.  Architectural considerations for a new generation of protocols , 1990, SIGCOMM '90.

[113]  Michael J. Vilot,et al.  Standard template library , 1996 .

[114]  Thomas R. Gross,et al.  A Framework-Based Approach to the Development of Network-Aware Applications , 1998, IEEE Trans. Software Eng..

[115]  Scott Shenker,et al.  Making greed work in networks: a game-theoretic analysis of switch service disciplines , 1994 .

[116]  Klara Nahrstedt,et al.  Resource Management in Networked Multimedia Systems , 1995, Computer.

[117]  Sally Floyd,et al.  Connections with multiple congested gateways in packet-switched networks part 1: one-way traffic , 1991, CCRV.

[118]  B. Stiller,et al.  Charging and Accounting for Integrated Internet Services - State of the Art, Problems, and Trends - , 1998 .

[119]  Jon Crowcroft,et al.  TCP-like congestion control for layered multicast data transfer , 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.

[120]  Stefan Savage,et al.  The end-to-end effects of Internet path selection , 1999, SIGCOMM '99.

[121]  Alexander Dimai Invariant scene representations for preattentive similarity assessment , 1999 .

[122]  S. Hadjiefthymiades,et al.  Common Gateway Interface (CGI) , 1996 .

[123]  Mahadev Satyanarayanan,et al.  Fundamental challenges in mobile computing , 1996, PODC '96.

[124]  Robert B. Miller,et al.  Response time in man-computer conversational transactions , 1899, AFIPS Fall Joint Computing Conference.

[125]  Roy T. Fielding,et al.  Hypertext Transfer Protocol - HTTP/1.1 , 1997, RFC.

[126]  John Wroclawski,et al.  The Use of RSVP with IETF Integrated Services , 1997, RFC.

[127]  Tim Bray,et al.  Measuring the Web , 1996, World Wide Web J..

[128]  John K. Ousterhout,et al.  Tcl and the Tk Toolkit , 1994 .

[129]  Ray Jain,et al.  The art of computer systems performance analysis - techniques for experimental design, measurement, simulation, and modeling , 1991, Wiley professional computing.

[130]  Vern Paxson,et al.  Measurements and analysis of end-to-end Internet dynamics , 1997 .

[131]  Andras Veres,et al.  The chaotic nature of TCP congestion control , 2000, Proceedings IEEE INFOCOM 2000. Conference on Computer Communications. Nineteenth Annual Joint Conference of the IEEE Computer and Communications Societies (Cat. No.00CH37064).

[132]  Allison Woodruff,et al.  An Investigation of Documents from the World Wide Web , 1996, Comput. Networks.

[133]  Sally Floyd,et al.  Promoting the use of end-to-end congestion control in the Internet , 1999, TNET.

[134]  Randy H. Katz,et al.  Trace-based mobile network emulation , 1997, SIGCOMM '97.

[135]  Richard Han,et al.  Factoring a mobile client's effective processing speeed into the image transcoding decision , 1999, WOWMOM '99.

[136]  K. W. Fendick Evolution of controls for the available bit rate service , 1996 .

[137]  T. V. Lakshman,et al.  The performance of TCP/IP for networks with high bandwidth-delay products and random loss , 1997, TNET.

[138]  Calton Pu,et al.  A Distributed Real-Time MPEG Video Audio Player , 1995, NOSSDAV.

[139]  Ralph Johnson,et al.  A framework for network protocol software , 1995, OOPSLA.

[140]  Larry L. Peterson,et al.  Image transfer: an end-to-end design , 1992, SIGCOMM '92.

[141]  Markus A. Stricker,et al.  Color indexing with weak spatial constraints , 1996, Electronic Imaging.

[142]  Steven McCanne,et al.  Low-Complexity Video Coding for Receiver-Driven Layered Multicast , 1997, IEEE J. Sel. Areas Commun..

[143]  Srinivasan Seshan,et al.  TCP behavior of a busy Internet server: analysis and improvements , 1997, 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.

[144]  Shanwei Cen,et al.  A software feedback toolkit and its application in adaptive multimedia systems , 1998 .

[145]  Eric A. Brewer,et al.  Cluster-based scalable network services , 1997, SOSP.

[146]  Vern Paxson,et al.  End-to-end Internet packet dynamics , 1997, SIGCOMM '97.

[147]  Robert W. Brodersen,et al.  Globally progressive interactive web delivery , 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).

[148]  Srinivasan Seshan,et al.  SPAND: Shared Passive Network Performance Discovery , 1997, USENIX Symposium on Internet Technologies and Systems.

[149]  S. Floyd,et al.  Tcp-friendly unicast rate-based flow control , 1997 .

[150]  Walter Willinger,et al.  On the Self-Similar Nature of Ethernet Traffic ( extended version ) , 1995 .

[151]  Sarah Collier Building object-oriented frameworks , 1994 .

[152]  Dragutin Petkovic,et al.  Query by Image and Video Content: The QBIC System , 1995, Computer.

[153]  Polly Huang,et al.  Enabling Large-scale Network Simulations: A Selective Abstraction Approach , 1999 .

[154]  James Gettys,et al.  Network performance effects of HTTP/1.1, CSS1, and PNG , 1997, SIGCOMM '97.

[155]  Steven McCanne,et al.  A Randomized Sampling Clock for CPU Utilization Estimation and Code Profiling , 1993, USENIX Winter.

[156]  Ian Wakeman,et al.  Towards a design methodology for adaptive applications , 1998, MobiCom '98.

[157]  William Stallings SNMP, SNMPv2, and CMIP: the practical guide to network management , 1993 .

[158]  Thomas R. Gross,et al.  Code reuse in an optimizing compiler , 1996, OOPSLA '96.