Synonyms

Network and terminal adaptation

Definition

Usage environment adaptation refers to customization of network and terminal resources based on usage and content.

Usage environment adaptation refers to the case where instead of adapting the content (i.e., its format, resolution, bit-rate, frame rate and coefficient dropping) to suit the usage environment properties, the usage environment is adapted (i.e., device resolution to accommodate video resolution, bandwidth) to suit to the content properties and hence provide better quality of service to users. Usage environment adaptation may consider the context and the content that can be described using multimedia metadata, such as the MPEG-7 and MPEG-21, respectively [1].

If the objective is to maximize content quality for an individual user by taking into account only user preferences and device constraints but disregarding shared resource constraints, then the adaptation becomes client-centric [2]. For example, client-centric schemes may allocate bandwidth with prioritization by considering constraints placed on content, system and user, may modify device properties such as resolution and processor speed, may allocate memory and CPU to running process, may adapt operating system policies [3], may alter application properties such as the window size of the media player. However, client-centric schemes can only adapt resources they have access to, i.e., client device and application properties. In some cases, this kind of adaptation is not desirable, for example, where there is limited network bandwidth between clients and servers, higher cost of bandwidth usage and unsupported content format.

Server-centric schemes, on the other hard, consider user preferences and device constraints but in relation to shared computational and resource constraints such as available memory and bandwidth. Consequently, server-centric usage environment adaptation aims to maximize computational and network resource usage whilst providing an average quality of service to users, for example, a differential video service [4]. Server-centric schemes are usually deployed on the same servers where content is stored or intermediate proxies.

Client-centric and server-centric schemes manage resources differently and sometimes apply strategies of varying degrees of fairness such in the case where a service allocates bandwidth to users based on the user and the service. Whilst client-centric schemes may consider the client resource, server centric schemes are constrained by the shared resources, such as the server memory and network bandwidth between server and client. Thus, concurrent requests imply management that takes into account fairness handling and optimum usage of shared resources for the best interest of the server and the network rather than maximizing the experience of individual users. Managing these shared resources without considering the latter issues can lead to unwanted statuses in networks, which can affect both the clients and the content server. Consider for example the case of the bandwidth allocation to multiple client requests. Bandwidth misuse can result in a network bottleneck and bad end-user experience.

When computational and network resources are scarce or client devices can not support the target content, neither usage environment adaptation schemes will function efficiently without simultaneous content adaptation [5].