Dependability and Adaptivity in Cactus, Self , and iMobile ...
Transcript of Dependability and Adaptivity in Cactus, Self , and iMobile ...
![Page 1: Dependability and Adaptivity in Cactus, Self , and iMobile ...](https://reader033.fdocuments.us/reader033/viewer/2022050504/627194c1cd5edc5fd85cd3f4/html5/thumbnails/1.jpg)
Dependability and Adaptivityin Cactus, Self!, and iMobile:
Challenges and Solutions
Matti Hiltunen
AT&T Labs-Research180 Park AvenueFlorham Park, NJ
![Page 2: Dependability and Adaptivity in Cactus, Self , and iMobile ...](https://reader033.fdocuments.us/reader033/viewer/2022050504/627194c1cd5edc5fd85cd3f4/html5/thumbnails/2.jpg)
2
"Cactus: Event-based framework forconfigurable and adaptive distributedservices and protocols
"Self!: Data-flow based componentframework for pervasive dependability
"iMobile: Mobile enterprise servicesplatform� New name: AMN (AT&T Mobile Network)
![Page 3: Dependability and Adaptivity in Cactus, Self , and iMobile ...](https://reader033.fdocuments.us/reader033/viewer/2022050504/627194c1cd5edc5fd85cd3f4/html5/thumbnails/3.jpg)
3
Acknowledgements" Cactus: Joint work with Rick Schlichting (AT&T
Labs), Nina Bhatti (currently at HP Labs), PatrickBridges (current at the Univ. of New Mexico) andother former and current graduate students atthe Univ. of Arizona
" Self!: Work by Karin Högtedt and ChristofFetzer at AT&T Labs
" iMobile: Joint work with Robin Chen, Rittwik Jana,etc. at AT&T Labs
![Page 4: Dependability and Adaptivity in Cactus, Self , and iMobile ...](https://reader033.fdocuments.us/reader033/viewer/2022050504/627194c1cd5edc5fd85cd3f4/html5/thumbnails/4.jpg)
4
OutlineDefinitionsExample systems: Cactus, iMobile, Self!Issues in
� Dependability� Adaptivity
Dependability and adaptivity in Cactus,iMobile, Self!
Conclusions
![Page 5: Dependability and Adaptivity in Cactus, Self , and iMobile ...](https://reader033.fdocuments.us/reader033/viewer/2022050504/627194c1cd5edc5fd85cd3f4/html5/thumbnails/5.jpg)
5
DefinitionsMiddleware:� If it is not an application and it is not part of the
operating system, it must be middleware
� Software layers/components that provide higher
level abstractions for application designers
� Middleware must typically provide support for
more than one application (i.e., generality)
![Page 6: Dependability and Adaptivity in Cactus, Self , and iMobile ...](https://reader033.fdocuments.us/reader033/viewer/2022050504/627194c1cd5edc5fd85cd3f4/html5/thumbnails/6.jpg)
6
Customizable middleware can be tailored to provide
different service properties/attributes to
different applications.
Adaptive middleware can change its behavior at
runtime as a reaction to changes in the execution
environment or application requirements.
Dependable middleware is
� itself dependable
� increases the dependability of the applications
that use the middleware
![Page 7: Dependability and Adaptivity in Cactus, Self , and iMobile ...](https://reader033.fdocuments.us/reader033/viewer/2022050504/627194c1cd5edc5fd85cd3f4/html5/thumbnails/7.jpg)
7
OutlineDefinitionsExample systems: Cactus, iMobile, Self!Issues in
� Dependability� Adaptivity
Dependability and adaptivity in Cactus,iMobile, Self!
Conclusions
![Page 8: Dependability and Adaptivity in Cactus, Self , and iMobile ...](https://reader033.fdocuments.us/reader033/viewer/2022050504/627194c1cd5edc5fd85cd3f4/html5/thumbnails/8.jpg)
8
CACTUS
SERVICE X
SERVICE YReliability
Availability
Timeliness
Security
Consistency
Performance
CHANGED USERREQUIREMENTS INTRUSIONS
FAILURESCHANGES IN AVAILABLERESOURCES
CPUMemory
APPLICATION
OS & NETWORKNetworkBandwidth
Cactus Vision
![Page 9: Dependability and Adaptivity in Cactus, Self , and iMobile ...](https://reader033.fdocuments.us/reader033/viewer/2022050504/627194c1cd5edc5fd85cd3f4/html5/thumbnails/9.jpg)
9
Cactus Approach
Cactus goals:� Configurable services with highly-customizable functionality
and properties.� Dynamically adaptive services that can change their behavior
and properties at runtime.
Customizable APIC
om
po
site
pro
toco
lEventsMicro-protocols
Reliability
Prioritization
Integrity
accReq
recRep
delRep
usrReqS
har
ed d
ata
Service = a composite protocol consisting of micro-protocols,each of which implements a function or property.
Configuration = choosemicro-protocols.
Adaptation = activate/deactivate micro-protocolsat runtime.
![Page 10: Dependability and Adaptivity in Cactus, Self , and iMobile ...](https://reader033.fdocuments.us/reader033/viewer/2022050504/627194c1cd5edc5fd85cd3f4/html5/thumbnails/10.jpg)
10
Micro-protocol execution:
Micro-protocol = collection of event handlers.Handlers bound to events in the composite protocol.
� Binding dynamic, can be changed at runtime.� Order can be specified (often important).
Events provide a level of indirection between micro-protocols.Allow new micro-protocols to be loaded and activated at
runtime.
newServerRequest
readyToInvoke
invokeReturn
requestReturned
assignOrder
checkOrder
checkNext
TotalOrder mp
decryptRequest
encryptReply
DESPrivacy mp
![Page 11: Dependability and Adaptivity in Cactus, Self , and iMobile ...](https://reader033.fdocuments.us/reader033/viewer/2022050504/627194c1cd5edc5fd85cd3f4/html5/thumbnails/11.jpg)
11
Cactus Prototypes and ServicesPrototypes:
� Cactus/C on Linux, Cactus/C++ on Linux andSolaris, and Cactus/Java.
Example configurable services:� Fault-tolerance services: group RPC,
membership, system monitoring.� Real-time services: RTD channels
(communication).� Secure communication services: SecComm.� Services that address multiple QoS
attributes: CQoSServices range from transport protocols to
middleware and application services.
![Page 12: Dependability and Adaptivity in Cactus, Self , and iMobile ...](https://reader033.fdocuments.us/reader033/viewer/2022050504/627194c1cd5edc5fd85cd3f4/html5/thumbnails/12.jpg)
12
AOL Instant Messenger
WAPphone
MicrosoftExchange Server
Directory Service
PDA/EmailDevices
iMobile: Mobile Enterprise Services
?
What is missing?
firewall
Image and VideoDatabase
Voice mail
Devices Info Space
![Page 13: Dependability and Adaptivity in Cactus, Self , and iMobile ...](https://reader033.fdocuments.us/reader033/viewer/2022050504/627194c1cd5edc5fd85cd3f4/html5/thumbnails/13.jpg)
13
iMobile: Logical Architectural View
AT&T �What�sNew� Service
Corporate DB:Post Directory
Service
Devlet: devicedriver
Infolet: interfaceto an info space
Engine
User/deviceprofiles
AOL Instant Messenger
WAP phone
Applets
PDA/EmailDevices
iMobile
Applet: complexapplication logic
EnterpriseDatabase
![Page 14: Dependability and Adaptivity in Cactus, Self , and iMobile ...](https://reader033.fdocuments.us/reader033/viewer/2022050504/627194c1cd5edc5fd85cd3f4/html5/thumbnails/14.jpg)
14
iMobile Access to CriticalEnterprise Applications
� Authorized users can access:� Messaging services� Corporate directories and databases� Exchange Services: calendar, contacts,
inbox, etc.� Images/Engineering Drawings� Instructional Videos� Voice Mail� �
![Page 15: Dependability and Adaptivity in Cactus, Self , and iMobile ...](https://reader033.fdocuments.us/reader033/viewer/2022050504/627194c1cd5edc5fd85cd3f4/html5/thumbnails/15.jpg)
15
iMobile Enterprise Edition
MD
HTTPGateway
AAAServices
ReliableMessageQueue
iMobileServer
iMobileServer
iMobileServer
ExchangeServer
LocationServer
Post DBServer
ServiceProfile DB
�
Mobile Device
HTTPGateway
AIMGateway
EmailGateway
��
AAA: Authentication,Authorization, and Accounting
iMobileServer
GatewaysServers
infolet
VCRServer
Java Message Service(JMS)
TelnetGateway
![Page 16: Dependability and Adaptivity in Cactus, Self , and iMobile ...](https://reader033.fdocuments.us/reader033/viewer/2022050504/627194c1cd5edc5fd85cd3f4/html5/thumbnails/16.jpg)
16
Standards Compliant and Carrier Agnostic
� Standard Enterprise Software
� Message Oriented Middleware: JMS
� Corporate Database: JDBC
� Corporate Directory: LDAP, JNDI
� Microsoft Exchange Server: WebDAV
� Enterprise VPN Products: IPSec
� Content Transcoding: XML, XSLT
� Messaging Services: SMTP, IMAP, POP3
![Page 17: Dependability and Adaptivity in Cactus, Self , and iMobile ...](https://reader033.fdocuments.us/reader033/viewer/2022050504/627194c1cd5edc5fd85cd3f4/html5/thumbnails/17.jpg)
17
Self! Motivation: Home Networks
network
dsl/cable modem
Maybe up to 10 hostsEthernet
Fetzer, Hogstedt, AT&T Labs Research
![Page 18: Dependability and Adaptivity in Cactus, Self , and iMobile ...](https://reader033.fdocuments.us/reader033/viewer/2022050504/627194c1cd5edc5fd85cd3f4/html5/thumbnails/18.jpg)
18
Future: More Nodes & Services
network
Maybe up to 1000 hosts
sensor actuatorserviceFetzer, Hogstedt, AT&T Labs Research
![Page 19: Dependability and Adaptivity in Cactus, Self , and iMobile ...](https://reader033.fdocuments.us/reader033/viewer/2022050504/627194c1cd5edc5fd85cd3f4/html5/thumbnails/19.jpg)
19
Pervasive Dependability
� Pervasive systems are society critical
� System management has to be cheap� customers might pay low monthly fee
� each customer service call costs money
� Automatic (=cheap) system managementis needed to make pervasive systems areality
Fetzer, Hogstedt, AT&T Labs Research
![Page 20: Dependability and Adaptivity in Cactus, Self , and iMobile ...](https://reader033.fdocuments.us/reader033/viewer/2022050504/627194c1cd5edc5fd85cd3f4/html5/thumbnails/20.jpg)
20
Research issues
� self-management� self-diagnosis,� self-customization,� self-configuration,� self-reconfiguration,� self-*
"Approach: Developing Self !, a dataflow-oriented framework to use as test-bed
Fetzer, Hogstedt, AT&T Labs Research
![Page 21: Dependability and Adaptivity in Cactus, Self , and iMobile ...](https://reader033.fdocuments.us/reader033/viewer/2022050504/627194c1cd5edc5fd85cd3f4/html5/thumbnails/21.jpg)
21
Components & Pins
"Components have any number of pins
"Pins can only be connected pair-wise
"Pins are unidirectional (input or output)
"Pins are untyped (i.e., accept any object)
"All communication via pins
Componentinput pin output pin
Fetzer, Hogstedt, AT&T Labs Research
![Page 22: Dependability and Adaptivity in Cactus, Self , and iMobile ...](https://reader033.fdocuments.us/reader033/viewer/2022050504/627194c1cd5edc5fd85cd3f4/html5/thumbnails/22.jpg)
22
Master and Slave Pins
Connection � 2 pins together
1 Master pin provides control (caller)
1 Slave pin is controlled (callee)
# Both blocking and non-blocking functionality
# Standard adapter components used to fix pin mismatches
Master Slave Master Slave
Pin
Input Output
MasterOutput Pin
SlaveInput Pin
Push
Master Input Pin
SlaveOutput Pin
Pull
space available data available
Fetzer, Hogstedt, AT&T Labs Research
![Page 23: Dependability and Adaptivity in Cactus, Self , and iMobile ...](https://reader033.fdocuments.us/reader033/viewer/2022050504/627194c1cd5edc5fd85cd3f4/html5/thumbnails/23.jpg)
23
Self! Toolkit
"Self! Library"Standard Components
"Standard Pins
"User defined"Components
"Pins
"Generators"xml2C
Fetzer, Hogstedt, AT&T Labs Research
![Page 24: Dependability and Adaptivity in Cactus, Self , and iMobile ...](https://reader033.fdocuments.us/reader033/viewer/2022050504/627194c1cd5edc5fd85cd3f4/html5/thumbnails/24.jpg)
24
Example Application
switch S
temperature sensor
if (Temperature > Threshold)
switch off S
power line
Within 1sec, 99.999%
Fetzer, Hogstedt, AT&T Labs Research
![Page 25: Dependability and Adaptivity in Cactus, Self , and iMobile ...](https://reader033.fdocuments.us/reader033/viewer/2022050504/627194c1cd5edc5fd85cd3f4/html5/thumbnails/25.jpg)
25
coutin
in
Dataflow-OrientedApplications
filter
out
in
switch
in
Fetzer, Hogstedt, AT&T Labs Research
temperaturesensor
temperaturesensor
![Page 26: Dependability and Adaptivity in Cactus, Self , and iMobile ...](https://reader033.fdocuments.us/reader033/viewer/2022050504/627194c1cd5edc5fd85cd3f4/html5/thumbnails/26.jpg)
26
OutlineDefinitionsExample systems: Cactus, iMobile, Self!Issues in
� Dependability� Adaptivity
Dependability and adaptivity in Cactus,iMobile, Self!
Conclusions
![Page 27: Dependability and Adaptivity in Cactus, Self , and iMobile ...](https://reader033.fdocuments.us/reader033/viewer/2022050504/627194c1cd5edc5fd85cd3f4/html5/thumbnails/27.jpg)
27
Issues in Dependability
Middleware CAN increase the dependability of
applications (e.g., Isis, FRIENDS, Eternal,
QuO/AQuA,�).
� but �
it MAY also decrease the dependability of
applications.
![Page 28: Dependability and Adaptivity in Cactus, Self , and iMobile ...](https://reader033.fdocuments.us/reader033/viewer/2022050504/627194c1cd5edc5fd85cd3f4/html5/thumbnails/28.jpg)
28
Middleware introduces additional software
components - and hardware components, e.g., key
distribution server or replication manager - that
may fail/ become security vulnerability/etc.
Solutions: no magic bullet
� Use of dependability mechanisms: replication,
encryption, failure detection, etc.
� Measurement and analysis to determine the
necessary level of redundancy etc.
![Page 29: Dependability and Adaptivity in Cactus, Self , and iMobile ...](https://reader033.fdocuments.us/reader033/viewer/2022050504/627194c1cd5edc5fd85cd3f4/html5/thumbnails/29.jpg)
29
Issues in AdaptivityAdaptivity can improve the dependability of the
middleware as well as the applications using it.
Adaptation mechanisms:
� Value adaptation: change execution parameters
� Algorithmic adaptation: change algorithms used
� Resource reallocation: reassign resources based
on new operating conditions
Types of adaptation:
� Property preserving
� Property changing (e.g., graceful degradation)
![Page 30: Dependability and Adaptivity in Cactus, Self , and iMobile ...](https://reader033.fdocuments.us/reader033/viewer/2022050504/627194c1cd5edc5fd85cd3f4/html5/thumbnails/30.jpg)
30
Challenges:
� Policies (when and how)
� Coordination between different adaptive
components on a host (i.e., on the different
levels) � inter-component coordination
� Optimization
� Coordination between different hosts � inter-
host coordination
� Stability
� Overhead of the adaptation mechanisms
![Page 31: Dependability and Adaptivity in Cactus, Self , and iMobile ...](https://reader033.fdocuments.us/reader033/viewer/2022050504/627194c1cd5edc5fd85cd3f4/html5/thumbnails/31.jpg)
31
OutlineDefinitionsExample systems: Cactus, iMobile, Self!Issues in
� Dependability� Adaptivity
Dependability and adaptivity in Self!,iMobile, and Cactus
Conclusions
![Page 32: Dependability and Adaptivity in Cactus, Self , and iMobile ...](https://reader033.fdocuments.us/reader033/viewer/2022050504/627194c1cd5edc5fd85cd3f4/html5/thumbnails/32.jpg)
32
Dependability and adaptivity in Self!
Dependability mechanisms such as retransmission,
redundant transmission along separate paths can
be implemented as reusable components
Components themselves - or additional monitoring
components - can detect failures and reconfigure
the component graph
Component �wrappers� check the component failures
![Page 33: Dependability and Adaptivity in Cactus, Self , and iMobile ...](https://reader033.fdocuments.us/reader033/viewer/2022050504/627194c1cd5edc5fd85cd3f4/html5/thumbnails/33.jpg)
33
Data Collection
Fetzer, Hogstedt, AT&T Labs Research
filter
out
in
switch
in
temperaturesensor
temperaturesensor
cout
in
in
monitor
monitor
splitter
splitter
device1
device0 device2
device3
![Page 34: Dependability and Adaptivity in Cactus, Self , and iMobile ...](https://reader033.fdocuments.us/reader033/viewer/2022050504/627194c1cd5edc5fd85cd3f4/html5/thumbnails/34.jpg)
34
Fetzer, Hogstedt, AT&T Labs Research
Distributed Data Processing
monitor
monitordevice1
device0
device3
processing splitter
processing
repair agentsplitter
device2
repair agent
![Page 35: Dependability and Adaptivity in Cactus, Self , and iMobile ...](https://reader033.fdocuments.us/reader033/viewer/2022050504/627194c1cd5edc5fd85cd3f4/html5/thumbnails/35.jpg)
35
Self Re-/Configuration Problem
sourceout
sinkin
Fetzer, Hogstedt, AT&T Labs Research
device1 device2 device4
device3
filter
filter
object
![Page 36: Dependability and Adaptivity in Cactus, Self , and iMobile ...](https://reader033.fdocuments.us/reader033/viewer/2022050504/627194c1cd5edc5fd85cd3f4/html5/thumbnails/36.jpg)
36
Omission Failure Problem
sourceout
sinkin
retrywest
outin retryeast
outinfilter outin
Fetzer, Hogstedt, AT&T Labs Research
device1
filter
device2 device4
device3
object
![Page 37: Dependability and Adaptivity in Cactus, Self , and iMobile ...](https://reader033.fdocuments.us/reader033/viewer/2022050504/627194c1cd5edc5fd85cd3f4/html5/thumbnails/37.jpg)
37
Dependability in iMobile
Challenge: LOTS of system components:
� gateways, iMobile server, email servers,
databases, JMS servers, authentication servers,
� external servers/services accessed by infolets
� wireless connectivity providers (cell phone,
paging network, WiFi, etc)
![Page 38: Dependability and Adaptivity in Cactus, Self , and iMobile ...](https://reader033.fdocuments.us/reader033/viewer/2022050504/627194c1cd5edc5fd85cd3f4/html5/thumbnails/38.jpg)
38
Solutions:
� iMobile servers and gateways redundant
� Need to add �level 4 redirectors�
� Databases and JMS servers COTS components
with industry standard interfaces
⇒ rely on fault-tolerant versions from industry
(e.g., Oracle database clusters, IBM MQ)
� Component monitoring and automatic restart
� Retransmission of requests.
![Page 39: Dependability and Adaptivity in Cactus, Self , and iMobile ...](https://reader033.fdocuments.us/reader033/viewer/2022050504/627194c1cd5edc5fd85cd3f4/html5/thumbnails/39.jpg)
39
Solutions (cont.):
� Performance measurement and failure detection(syslog-based running, SNMP planned)
� Multiple access devices/protocols provideredundancy in case one or more wireless accessnetworks is down (SMS vs. Blackberry)
Planned:� Backup infolets� Transactional execution semantics� Use of Java 2 EE facilities� Cactus in iMobile� �
![Page 40: Dependability and Adaptivity in Cactus, Self , and iMobile ...](https://reader033.fdocuments.us/reader033/viewer/2022050504/627194c1cd5edc5fd85cd3f4/html5/thumbnails/40.jpg)
40
Adaptivity in iMobileSome failure recovery �adaptations� in place.
Planned:
� Dynamic resource allocation based on
load/failures
� Algorithmic and value adaptations to deal with
high system load and/or component failures
(service differentiation, traffic shaping,
filtering, etc.)
� Predictive adaptation based on system modeling
![Page 41: Dependability and Adaptivity in Cactus, Self , and iMobile ...](https://reader033.fdocuments.us/reader033/viewer/2022050504/627194c1cd5edc5fd85cd3f4/html5/thumbnails/41.jpg)
41
Dependability in CactusThe Cactus framework can be used to implement any
dependability mechanisms in a configurable
manner.
Example: CQoS.
� a configurable portable QoS architecture for
distributed object computing.
![Page 42: Dependability and Adaptivity in Cactus, Self , and iMobile ...](https://reader033.fdocuments.us/reader033/viewer/2022050504/627194c1cd5edc5fd85cd3f4/html5/thumbnails/42.jpg)
42
CQoS Motivation
Distributed object platforms lack unified support forQoS (fault tolerance, security, and timeliness)
Key observation:
� The fundamental techniques for implementingthese QoS attributes are often similarregardless of the specific middleware platform.
Goals:1. Support highly configurable multi-dimensional
QoS with support for fault tolerance, security,service differentiation, and any combination.
2. Platform independent and easily portable tonew platforms.
![Page 43: Dependability and Adaptivity in Cactus, Self , and iMobile ...](https://reader033.fdocuments.us/reader033/viewer/2022050504/627194c1cd5edc5fd85cd3f4/html5/thumbnails/43.jpg)
43
Software Architecture
Client and server applications and the middleware platformunmodified.
Middleware
Client Application
CQoS
Server Application
CQoS CQoSService
CQoSInterceptor
CQoS
CQoS consists of two components:� Application and platform-specific CQoS interceptor
generated from IDL.� Generic CQoS service component implements QoS.
Separates QoS implementation from specifics of theplatform.
![Page 44: Dependability and Adaptivity in Cactus, Self , and iMobile ...](https://reader033.fdocuments.us/reader033/viewer/2022050504/627194c1cd5edc5fd85cd3f4/html5/thumbnails/44.jpg)
44
Realizing QoS Enhancements
Micro-protocols can be used to implement anyfunction or property
Micro-protocols include:� Fault tolerance: ActiveRep, PassiveRep, TotalOrder,
MajorityVote, � .
� Security: DESPrivacy, �
� Timeliness: PrioritySched, QueueSched, TimedSched.
Different combinations of micro-protocolsprovide semantically different customvariations of CQoS.
![Page 45: Dependability and Adaptivity in Cactus, Self , and iMobile ...](https://reader033.fdocuments.us/reader033/viewer/2022050504/627194c1cd5edc5fd85cd3f4/html5/thumbnails/45.jpg)
45
Implementation
A prototype of CQoS has been completed usingCactus/J.
CQoS Interceptors have been implemented forCORBA and Java RMI.
� CORBA: Replace standard stub and skeleton.
� Java RMI: Replace stub, introduce proxyserver.
� The generation of CQoS Interceptors has beenautomated (so far for CORBA).
The CQoS Service components are independent ofCORBA/Java RMI - operate on both.
Similar architecture planned for iMobile.
![Page 46: Dependability and Adaptivity in Cactus, Self , and iMobile ...](https://reader033.fdocuments.us/reader033/viewer/2022050504/627194c1cd5edc5fd85cd3f4/html5/thumbnails/46.jpg)
46
Adaptivity in CactusEvent mechanism makes it easy to activate and
deactivate micro-protocols at runtime.
Ability to adapt is not enough:� Adaptation policy� Inter-component and inter-host coordination
Solution: Cholla coordination architecture� Composable adaptation logic for composable
software
![Page 47: Dependability and Adaptivity in Cactus, Self , and iMobile ...](https://reader033.fdocuments.us/reader033/viewer/2022050504/627194c1cd5edc5fd85cd3f4/html5/thumbnails/47.jpg)
47
NetworkDevice
IP
TransportProtocol
Video Sender
NetworkDevice
IP
TransportProtocol
Video Display
NetworkCongestion
CPUAvailability
Power Availability
Patrick Bridges, Univ. of Arizona
![Page 48: Dependability and Adaptivity in Cactus, Self , and iMobile ...](https://reader033.fdocuments.us/reader033/viewer/2022050504/627194c1cd5edc5fd85cd3f4/html5/thumbnails/48.jpg)
48
NetworkDevice
IP
TransportProtocol
Video Sender
NetworkCongestion
CPUAvailability
Adaptation
Controller
NetworkDevice
IP
TransportProtocol
Video Display
Power Availability
Adaptation
Controller
Patrick Bridges, Univ. of Arizona
![Page 49: Dependability and Adaptivity in Cactus, Self , and iMobile ...](https://reader033.fdocuments.us/reader033/viewer/2022050504/627194c1cd5edc5fd85cd3f4/html5/thumbnails/49.jpg)
49
Adaptation ControllersGoal:
Compose and coordinate multiple adaptivecomponents using composable controllers:"Adaptive components controlled by adaptation
policies"Want to compose and coordinate fine-grained
policies into a controller."Choose appropriate policies based upon:
"User preferences (e.g. change framerateor picture quality)
"Application demands (e.g. bandwidth or jitter sensitivity)"System requirements (e.g. wireless vs. wired network)
Patrick Bridges, Univ. of Arizona
![Page 50: Dependability and Adaptivity in Cactus, Self , and iMobile ...](https://reader033.fdocuments.us/reader033/viewer/2022050504/627194c1cd5edc5fd85cd3f4/html5/thumbnails/50.jpg)
50
Expressing adaptation policies:"Rule-based approach to constructing
controllers"A set of rules defines a particular behavior"Sets of rules are composed into a controller
that describe the policy
Coordination:"Express explicit coordination policies as
separate rulesets that govern theinteractions between other policies
"Allow implicit coordination by exposingstate of one component to othercomponents
Patrick Bridges, Univ. of Arizona
![Page 51: Dependability and Adaptivity in Cactus, Self , and iMobile ...](https://reader033.fdocuments.us/reader033/viewer/2022050504/627194c1cd5edc5fd85cd3f4/html5/thumbnails/51.jpg)
51
Ada
ptat
ion
Con
trol
ler
Multimedia CODEC
IP
CT
P
encoding parameters
Positive ACK
WindowedFlowControl
ForwardErrorCorr
RoundTripTimeEst
cong. window
num. drops,num. timeouts
N, K
round-trip time
. . .
Queuequeue length
ChollaC
ontrol
Patrick Bridges, Univ. of Arizona
![Page 52: Dependability and Adaptivity in Cactus, Self , and iMobile ...](https://reader033.fdocuments.us/reader033/viewer/2022050504/627194c1cd5edc5fd85cd3f4/html5/thumbnails/52.jpg)
52
CTP
Proxy
Network Proxy Example
Sender
CTP
CT
P Cong.
Control
Adaptation
Controller
CT
P FlowC
ontrol
Proxy ContentRecoding
Display
CTP
Patrick Bridges, Univ. of Arizona
![Page 53: Dependability and Adaptivity in Cactus, Self , and iMobile ...](https://reader033.fdocuments.us/reader033/viewer/2022050504/627194c1cd5edc5fd85cd3f4/html5/thumbnails/53.jpg)
53
Inter-host coordinationIssues:
� Agreement on global state and need to adapt
� Synchronization of adaptation steps without
violating the service properties
Work in progress:
� Libraries of reusable adaptation protocols that
preserve different sets of service properties.
� GAP: Graceful Adaptation Protocol (ICDCS 01)
![Page 54: Dependability and Adaptivity in Cactus, Self , and iMobile ...](https://reader033.fdocuments.us/reader033/viewer/2022050504/627194c1cd5edc5fd85cd3f4/html5/thumbnails/54.jpg)
54
ConclusionsDependability:
� Middleware must be designed carefully if it isto increase the application dependability
Adaptivity:� Mechanisms are often relatively easy� Policy and coordination issues often difficult� Adaptation coordination architecture
![Page 55: Dependability and Adaptivity in Cactus, Self , and iMobile ...](https://reader033.fdocuments.us/reader033/viewer/2022050504/627194c1cd5edc5fd85cd3f4/html5/thumbnails/55.jpg)
55
For more informationiMobile: http://www.research.att.com/sw/tools/amn/
� Y.-F. Chen, H. Huang, R. Jana, T. Jim, M. Hiltunen, R.Muthumanickam, S. John, S. Jora, and B. Wei, �iMobile EE � AnEnterprise Mobile Services Platform�. To appear in ACM Journalon Wireless Networks, 2003.
Self*:� K. Fetzer and K. Hogstedt, �Self*: A Data-Flow Oriented
Component Framework for Pervasive Dependability�, To appearin WORDS 2003, January 2003.
Cactus: http://www.cs.arizona.edu/cactus/CQoS:
� J. He, M. Hiltunen, M. Rajagopalan, and R. Schlichting, �ProvidingQoS Customization in Distributed Object Systems�, Middleware2001, pages 351-372, November 2001.
� Extended version to appear in SPE, 2003.Cholla:
� P. Bridges, �Composing and Coordinating Adaptations in Cholla�,PhD Dissertation, University of Arizona, Department ofComputer Science, Tucson, AZ, Dec 2002.