Issue No.05 - May (1998 vol.24)
DOI Bookmark: http://doi.ieeecomputersociety.org/10.1109/32.685260
<p><b>Abstract</b>—Modern networks provide a QoS (quality of service) model to go beyond best-effort services, but current QoS models are oriented towards low-level network parameters (e.g., bandwidth, latency, jitter). Application developers, on the other hand, are interested in quality models that are meaningful to the end-user and, therefore, struggle to bridge the gap between network and application QoS models. Examples of application quality models are response time, predictability, or a budget (for transmission costs). Applications that can deal with changes in the network environment are called <it>network-aware</it>. A network-aware application attempts to adjust its resource demands in response to network performance variations. This paper presents a framework-based approach to the construction of network-aware programs. At the core of the framework is a feedback loop that controls the adjustment of the application to network properties. The framework provides the skeleton to address two fundamental challenges for the construction of network-aware applications: 1) how to find out about dynamic changes in network service quality and 2) how to map application-centric quality measures (e.g., predictability) to network-centric quality measures (e.g., QoS models that focus on bandwidth or latency). Our preliminary experience with a prototype network-aware image retrieval system demonstrates the feasibility of our approach. The prototype illustrates that there is more to network-awareness than just taking network resources and protocols into account and raises questions that need to be addressed (from a software engineering point of view) to make a general approach to network-aware applications useful.</p>
Adaptive applications, network-aware computing, software construction, frameworks, QoS.
Jürg Bolliger, Thomas Gross, "A Framework-Based Approach to the Development of Network-Aware Applications", IEEE Transactions on Software Engineering, vol.24, no. 5, pp. 376-390, May 1998, doi:10.1109/32.685260