university of jyvÄskylÄ service portability framework for integrated communication environments...
Post on 20-Dec-2015
214 views
TRANSCRIPT
UNIVERSITY OF JYVÄSKYLÄ
Service Portability Framework for Integrated Communication
EnvironmentsDmytro Zhovtobryukh
University of Jyväskylä
Veikko HaraTeliaSonera Corporation
IASW-2005 ConferenceAugust 27, 2005
27.08.2005 University of Jyväskylä, IASW 2005
2
Research Overview
MSc degree in Mobile Computing from the University of Jyväskylä, 2002Currently making research on a PhD thesisThe research is carried out in collaboration with TeliaSonera corporation and is motivated by their needsResearch interests:
Network InteroperabilityPervasive ComputingContext AwarenessAdaptive Applications
27.08.2005 University of Jyväskylä, IASW 2005
3
Contents
Motivation
Service Portability Framework
Service adaptation mechanisms
Applicability to Semantic Web environments
Conclusions
27.08.2005 University of Jyväskylä, IASW 2005
4
Evolution of Distributed Computing
Portable computing is an interim step between mobile and pervasive computing
DistributedComputing
remote communicatio
nsremote information
accessdistributed security
replication
fault tolerance
Mobile Computin
gmobile
networking
mobile information
accesslocation awareness
power management
Pervasive Computin
gsmart spaces
ubiquitous information
accessinvisibility
proactivity
Portable Computin
gnetwork
interoperability
context awarenessadaptive
applications
teleporting
27.08.2005 University of Jyväskylä, IASW 2005
5
Challenges
Service-level support for cross-network mobility
services
usersapplications
environments
provided in the form
consumed by
operate in roam between
Infra-structure support
Service independence of environments
Dynamic service adaptation for quality and continuity preservation
Solution: Context Aware Infrastructure Support for Service Portability
27.08.2005 University of Jyväskylä, IASW 2005
6
Service Portability
Service portability is a capability of a service to be consumed:
through diverse environmentsby various usersusing different devices
A variety of implementations for the same serviceAdaptive provisioning of a service through dynamically changing environments
27.08.2005 University of Jyväskylä, IASW 2005
7
Goals
Seamless provision of any service through any type of environment
decoupling services and service applications
maintenance of the global unique service instance
on-demand construction of service applications as specific service implementations
adaptation of service applications instead of services
continuous service sessions
27.08.2005 University of Jyväskylä, IASW 2005
8
Two-phase Service Provisioning
Allows decoupling of services and service applicationsComprises two distinct phases:
service creation: design of a generic serviceservice delivery: service application construction and run-time adaptation
Service provisioning architecture relies upon a context aware reflective middleware infrastructure
27.08.2005 University of Jyväskylä, IASW 2005
9
Service Portability Framework
Environment changes not only on a handover to a different network system, but also, for example, on a user’s switchover to a different terminal
Generic Service
Ap
plic
atio
n 1
Ap
plic
atio
n 2
*
Ap
plic
atio
n 2
devices
protocols
resources
media
Environment 1 Environment 2 Environment 3
bu
ild
bu
ild
service context
adapt
Context-Aware Middleware
acquire contexts
update contextsacquire
contexts
Generic service is designed wrt. the actual serviceEnvironment includes computing environment, physical surroundings, user’s terminal equipmentApplications are ported between environments instead of services
27.08.2005 University of Jyväskylä, IASW 2005
10
Service Creation
Generic Service:consists of the service core functionality and its description (metadata)is relieved of any specific implementation detailsunique, global and unambiguous
Benefits:the service is easily recognizabledoes not shrink the range of possible implementationsenables service porting between environmentspotentially simplifies service composition
27.08.2005 University of Jyväskylä, IASW 2005
11
Service Delivery
Reflects an application’s lifecycleTwo subphases:
load-time, i.e. build-timerun-time
Load-time:Application is constructed from generic service wrt. initial environmental conditions (initial context)
Run-time:Application adapts or gets adapted whenever essential contextual changes occurIdeally, such run-time adaptation leads to preservation of service session continuity
27.08.2005 University of Jyväskylä, IASW 2005
12
Vertical Services vs. Horizontal Services (I)
Vertical servicesprovided to an end userhave rigid implicit structurecannot dynamically adapt
Horizontal servicesprovided by a system to other services and processesperform highly specialized system functions (e.g. network transport, traffic management, etc.)are local for every other environmentreflect system layering
27.08.2005 University of Jyväskylä, IASW 2005
13
Vertical Services vs. Horizontal Services (II)
Transition from Vertical to Horizontal servicesallows for a flexible structure of a vertical service
variable system functionality within a vertical service
adjustment of system functionality of vertical service to changing horizontal services
necessity of a specific application design framework supporting reconfigurability
27.08.2005 University of Jyväskylä, IASW 2005
14
Application Design Framework
Modular structureaccurate vertical layering of system functionalityclassification of system functionality into primitive functions on each horizontal layerservice primitives, i.e. modules, being pieces of executable program codeunified interface between modules
Reconfigurabilityprimitives can be added, removed or substituted at run-timeprimitives are provided by the horizontal services running in the environment
27.08.2005 University of Jyväskylä, IASW 2005
15
Application Construction
creating generic service
C1 C2 … Cc
Content layer
M1 M2 … Mm
Generic Service
A1 A2 … Aa
Application layer
S1 S2 … Ss
System layer
T1 T2 … Tt
Transport layer
Network layerN1 N2 … Nn
Service
Service Primitives
Network
Transport
System
Horizontal Services
Vertical Service
Application
Middleware
launch
Service Creation
Service Delivery
Environment
service metadata
locating horizontal services
extracting service primitives
analysing initial conditions
building application
allocating service primitives
assembling vertical service
finalizing application
launching application
27.08.2005 University of Jyväskylä, IASW 2005
16
Context-based AdaptationAll adaptation-related data are treated as contextContext definition (by A.Dey):
Context is any information that can be used to characterize the situation of an entity. An entity is a person, place, or object that is considered relevant to the interaction between a user and an application, including the user and applications themselves.
Network contextsphysical: location, signal strength, levels of interference, etc. – measured by sensorssystem: resource levels, links’ throughput, error rates, etc. – measured by monitors
Service context: metadata within the generic serviceUser context: user profilesDevice context: device profiles
27.08.2005 University of Jyväskylä, IASW 2005
17
Service Adaptation Framework
Adaptation essence: reselection of service primitives constituting the applicationAdaptation procedure is basically under control of the context aware middleware infrastructure
P11 P12 P1k
P2lP21 P22
PnmPn2Pn1
…
…
…
…
Service Application
Context Reasoning Engine
CoI Board
Context Model
P11 P12 P1p
P2rP21 P22
PnsPn2Pn1
…
…
…
…
Service Primitives
System Contexts
Logical ContextsUpdate
Direct contexts
Notify Changes
Substitute
Substitute
Notify Changes
Register CoI
Analyze
- Context providers Pij – Service Primitives CoI –Context of Interest
Context Manager
Context Acquisition Proxy
Context Knowledge Base
Context Management Module
Track CoI
Direct contexts
27.08.2005 University of Jyväskylä, IASW 2005
18
Context Aware MiddlewareContext Acquisition Proxy
acquires context data from context sourcesfilters inessential readingspossibly generalizes the data received
Context Managerdisseminates context data between entitiesmanages and updates context knowledge base
Context Reasoning Engineinfers high-level contextsperforms context reasoning and aggregationmakes adaptation decisions
Context Knowledge Basestores contextual information wrt. the context modelcomprises System Contexts and Context Model repositories
27.08.2005 University of Jyväskylä, IASW 2005
19
Background Adaptation
Default type of adaptation
Is entirely handled by the middleware
The application may be even unaware of the adaptation performed on it
Inappropriate service primitives typically reside on the layers corresponding to horizontal services provided by a local environment
Preserves application’s operability and cross-network portability
27.08.2005 University of Jyväskylä, IASW 2005
20
Application Aware Adaptation
Middleware cannot sensibly manage application-specific issuesUtilized if the middleware cannot resolve the problem by its own strength, or the application explicitly requires the adaptationManaged by the application alone or with assistance of the middlewareInappropriate service primitives belong to the layers that are not transparent to the application, i.e. concern the service, not the environmentThe application can register certain ”contexts of interest” and adapt wrt. themPreserves service quality and achieves application-specific goals
27.08.2005 University of Jyväskylä, IASW 2005
21
User Aware Adaptation
Neither the middleware, nor the application can solve the problem by their own strengthAdaptation decision is made consciously by the userFeatures a so-called ”corrective action”, a solution proposed by the application and the middleware to the userMinimal distraction to the user is quite a challengePreserves service quality and user preferences
27.08.2005 University of Jyväskylä, IASW 2005
22
Why Semantic Web?
Web Service Architecture (WSA) provides support for two-phase service provisioningService portability framework resembles WSA with certain amendments, which can be realized within the middleware architecture without altering WSAOntologies are currently the most suitable tool for modeling contextSemantic Web services are already provided with metadataPractically, the infrastructure for service portability is easier to implement within a single enterprise network rather than on a wide scale of public communication systems
27.08.2005 University of Jyväskylä, IASW 2005
23
Ontologies for Modeling Context
High flexibility and manageabilityPossibility for distributed compositionCapturing incomplete and ambiguous informationHigh level of formalityApplicability to existing environmentsProvide means for contextual reasoning (in particular in OWL format)In real enterprise environments context sources may already provide information in an ontological form
27.08.2005 University of Jyväskylä, IASW 2005
24
A Scenario for SW Environment
Web service corresponds to the notion of Generic ServiceSemantic service description is the source of the service contextThe environment is comprehensively described within the enterprise ontology
Context Reasoning Engine
Context Manager
Context Model
Context Acquisition Proxy
Application
Service Provider Service Requestor
WS
EO
SP
low-level contexts
invoke service
service description
high-level contexts
adapt
provide
EO – Enterprise OntologySP – Service PrimitivesWS – Web Service
27.08.2005 University of Jyväskylä, IASW 2005
25
Conclusions
Context awareness can play a vital role for building up network interoperability and increasing service reusability across diverse communication environmentsDecoupling service and applications simplifies service creation, alleviates efforts on run-time service adaptation and increases service scalabilityThe use of reflective middleware enables efficient run-time adaptation and hence portability of services is achievedBringing context to Web services along with semantics will make them ever more flexible and intelligent
27.08.2005 University of Jyväskylä, IASW 2005
26
Future Work
The issues to be still addressed:Programming model for reconfigurable applications
Extraction of service primitives wrt. underlying system architecture
Distributed composition of the middleware architecture
Context modeling approach
Context dissemination protocols
27.08.2005 University of Jyväskylä, IASW 2005
27
Thank you
Questions?