Abstract
We present a network model that allows processing of QoS (quality of service) information about media flows to enable applications to make adaptation decisions. Our model is based around a multi-dimensional spatial representation that allows QoS information describing the flow constructions and QoS parameters – flow-states – to interact with a representation of the network QoS. The model produces reports about the compatibility between the flow-states and the network QoS, indicating which flow-states the network can currently support. The simple nature of the reports allows the application to make decisions, dynamically, on which flow-state it should use. The model is relatively lightweight and scaleable. We demonstrate the use of the model by simulation of a dynamically adaptive audio tool. Our work is ongoing.
Keywords
QoS (quality of service); QoS summarisation; Adaptive applications; Internet applications
1. Introduction
In a best-effort network such as the Internet, there is no guarantee of the network QoS that a particular application instance might receive. The QoS may fluctuate due to routing effects or traffic interactions in the network 1 and 2, or the application may be resident on a mobile host [3]. There is currently great interest in making applications adaptable to changes in network QoS. This is of particular importance for real-time media flows or flows that are sensitive to QoS fluctuations. Much of the attention for this work has focused on mechanisms that allow adaptability of the media flow construction by scaling (e.g. Ref. [4]), filtering (e.g. Ref. [5]) or encoding techniques (e.g. 6 and 7). An area that has received little attention is how applications can dynamically select the correct flow construction to match the available network QoS. The application must currently rely on the user to set the correct preferences to allow operation in a particular QoS regime. Although application-specific mechanisms exist to allow some automatic adaptation (e.g. elastic buffering to combat jitter in audio tools), we would like to offer a more general model to allow applications to dynamically adjust their flow construction.
In this paper, we start by considering the interactions required between the user, the application and the network in deciding how flows should adapt (Section 2) and consider existing work (Section 3). We then present our model and a short analysis of its function (Section 4) followed by simulation of three scenarios showing an audio tool that uses our model (Section 5). This is followed by a discussion of the key observations and insights we have gained from this work, so far (Section 6). We end with some short concluding remarks (Section 7).
2. The user, the application and the network
To allow adaptation, there must be interaction between the user, the application and the network. The network must supply information about the QoS that is being provided to the flow. The user must specify preferences that govern the behaviour of the application. It is then up to the application to decide how adaptation should take place based on both of these pieces of information. Our area of interest is shown by the dashed box in Fig. 1. We think of the application as having well-defined modes that represent operating conditions for the application. Associated with the applications modes are media flow-states, QoSStates, that represent the operating conditions for flows. The QoSSpace is our network model and the QoSStates conceptually exist within the QoSSpace. The QoSEngine maps network state (derived from real QoS parameter measurements for the flow) into the QoSSpace. (We do not consider the QoSEngine in detail in this paper, but it does form part of our work.) The QoSSpace issues QoSReports that contain a state compatibility value (SCV) for each flow-state from the application. The application then combines the SCVs with other application-specific information to make an adaptation decision using an application adaptation function (AAF). We say more about QoSStates, QoSSpace, QoSReports and SCVs in Section 4, and show an example of an AAF in Section 5. In Fig. 1, we show only one flow but many are possible. The definition of a flow is application-specific.