Semantic context-awareness for application servers in next-generation networks
PDF version | Permalink
As pervasive computing gains momentum, people are using an increasingly heterogeneous set of devices—for example, smart phones, tablets and Internet-capable TVs—for a variety of activities. Meanwhile, fixed and mobiles networks are being merged into a single network by sharing management functions among many different access technologies. Service providers must therefore provide a genuine ad hoc service for every device, which introduces two key problems. First, content must be adapted according to network conditions. For instance, a video stream might have to be supplied at reduced quality (lower bit-rate) at a time of high network congestion. Second, the service must be adapted with respect to the end user's device (the ‘terminal’).
For today's telecommunication networks, the upcoming new evolution is occurring through convergences of networks. The forthcoming architecture for telecommunication networks is generically referred to as the next-generation network (NGN). Currently, the most promising NGN architecture is the Internet Protocol Multimedia Subsystem (IMS).
Future NGN usage will be terminal-centric and must deal with problems such as a user changing access technology (e.g., from wi-fi to a cellular network) or transferring a session from one device to another. It is also mandatory to take into account both network and terminal capabilities at service runtime.1 To meet users' expectations, next-generation digital services must adapt as needed not only when a session is first established but also throughout the entire session. In IMS, these sessions are based on the Session Initiation Protocol, which makes it possible for the network and service layers to interact without violating the principles of the standard layers architecture.
Our work is about context modelling in NGNs. Our approach deals with context as being a unified model of the user's terminal and preferences, to adapt the delivered user experience according to the user's context. Modelling of context is related to the broader task of knowledge representation, a field of interest to computer scientists for decades. Modern approaches to knowledge representation on the Web encompass the ‘Semantic Web,’ in particular the use of ontologies for representing knowledge along with rules for making inferences. In our work, we use ontologies for context modelling and rules for encoding context thresholds (i.e., the criteria that determine when a context has changed significantly).
The ontologies are written in Web Ontology Language (OWL).2 OWL enables us to provide a shared conceptualization of the runtime environment, with contexts for both terminals and networks. The domain ontology enables us to represent the actual state of the environment. However, it only deals with context modelling, and not adaptation. We use rules to model the conditions that will trigger an adaptation and its corresponding behaviour. These rules are written in Semantic Web Rule Language (SWRL),3 a language that enables building of Horn-like rules using OWL axioms. The rules for adaptive behaviour for an application are created by software developers and bound to the digital service. This context awareness is shipped with the application bundle4 and is extracted when the application is deployed in the application server. Then, when a rule is triggered, the server's middleware triggers the context update.5
The underlying middleware is composed of several modules (see Figure 1). The Harvester gathers data about the runtime environment of client-side applications. The Semantic Formalizer transforms this raw data into semantic data and manages consistency. The Knowledge Base is the in-memory context model that holds the semantic data. The Context Querier detects triggered rules and the Context Broker notifies registered context-aware applications in the application server of context updates.
This work began with the observation of the upcoming convergence of networks and terminals, in the pervasive computing area. Nowadays, users can move geographically, terminals can switch from one network access technology to another and sessions can be transferred from one terminal to another. This situation calls for awareness frameworks for application servers in an NGN. This awareness is mainly based on the user's context, which is composed of the user's terminal capacities and access technology. The user's terminal and network capacities are both dynamic as they evolve with time (e.g., battery level and bandwidth). Our system models context by using semantic technologies for context-aware applications within application servers hosted in an NGN. Our next step will be to study how this approach could be used to achieve context-aware multi-tenancy (running a single instance of an application to serve many clients), for deployment in the cloud.