• Aucun résultat trouvé

DRAAS: Dynamically Reconfigurable Architecture for Autonomic Services

N/A
N/A
Protected

Academic year: 2021

Partager "DRAAS: Dynamically Reconfigurable Architecture for Autonomic Services"

Copied!
27
0
0

Texte intégral

(1)

HAL Id: hal-00675439

https://hal.archives-ouvertes.fr/hal-00675439

Submitted on 1 Mar 2012

HAL is a multi-disciplinary open access archive for the deposit and dissemination of sci- entific research documents, whether they are pub- lished or not. The documents may come from teaching and research institutions in France or abroad, or from public or private research centers.

L’archive ouverte pluridisciplinaire HAL, est destinée au dépôt et à la diffusion de documents scientifiques de niveau recherche, publiés ou non, émanant des établissements d’enseignement et de recherche français ou étrangers, des laboratoires publics ou privés.

DRAAS: Dynamically Reconfigurable Architecture for Autonomic Services

Emna Mezghani, Riadh Ben Halima, Khalil Drira

To cite this version:

Emna Mezghani, Riadh Ben Halima, Khalil Drira. DRAAS: Dynamically Reconfigurable Architec-

ture for Autonomic Services. A. Bouguettaya and Q.Z. Sheng and F. Daniel (Eds). Web Services

Foundations, Springer, pp. 483-505, 2014, 978-1-4614-7517-0. �hal-00675439�

(2)

EmnaMezghani

1,2,3

,Riadh BenHalima

1,2,3

andKhalilDrira

1,2 1

CNRS,LAAS, 7avenueduolonelRohe, F-31400Toulouse,Frane

2

Univ deToulouse,LAAS,F-31400Toulouse,Frane

3

UniversityofSfax, ReDCAD,B.P.W,3038Sfax, Tunisia

{emna.mezghani,khalil.drira}laas.fr,riadh.benhalimaenis.rnu.tn

Abstrat. The development and the provisioning of autonomi net-

workedservies areessentialfor enterprisesand fatoriesof thefuture.

Endowingservieswithautonomipropertiesallows onetomaintainat

runtimetheQualityofServie(QoS)inluding dierentparametersre-

latedtoperformane,availabilityandreputationsuhasresponsetime

and suessful exeution rate. Handling the autonomi properties re-

quirestheabilitytodealwithpermanentrequirementevolvingandon-

straint hanges. For instane, managing QoS degradation requires the

apaity of identifying its possible or atual soures and the apaity

ofreongurationplanning and exeution. Dealingwiththese issuesis

espeiallyhallengingfor webserviessinetheautonomisolutionhas

tobeseamlessfortheservierequesters,ensuringthatWebServiesare

alwaysusableunderthedierentdeploymentonstraints.Toimplement

suh autonomi systems, the literature provides dierent approahes,

varyingfromthedesignto thefullimplementationofautonomiprimi-

tives.Inthishapter,wepresentDRAAS:aDynamiallyReongurable

ArhitetureforAutonomiServiesable toprovideautonomiproper-

tiesfor QoSmanagementinwebservie-baseddistributedappliations.

DRAAShasbeenimplementedandexperimentedsuessfullywithdif-

ferent use ases. It overs the whole yle of autonomi management

inludingmonitoringandanalysisofQoSparameters,planningandex-

eution.

1 Introdution

The importantdata ows, the frequent interativity,the inreasing number of

onneteddevies, andthe networkunpreditabilitymakeritialthemanage-

mentofthenewdistributedsoftwaresystems.Inonehand,althoughthereform

ofveriationandvalidation ofsoftwaremodelshasn't easedimproving,om-

ponentsof the systemsmaystill hide designfaults resulting in systemfailures

or ome aross deadlokthat freezes thesystem. In theother hand, user

sre-

quirementsareevolvingfollowingtheend-usertehnologiesevolutionas mobile

phone emergene (Multimedia mobile and group-enabled appliation). In the

sametime,systemsonstraintsarevariableasunstablebandwidthanddereas-

ing energy. As a result, autonomi omputing paradigm is ruial for urrent

(3)

Morespeially,self-ontrolsystemssuhaselevatorontrolsystemsorrit-

ial systemssuh as spaeraftnavigationalsystemsneed robustnessto detet

anomaliesandavoidthembyreonguringthesystemsatruntime[1℄.Forthese

reasons,researh ators areaeleratingthework onautonomisystems. Suh

systemsareapabletodetettheproblemsand ontinuetooperatebymanag-

ingmalfuntionswithouthumanintervention.Autonomiomputingtehnology

doesnotonlyreduepotentialatastrophierrors,in ritialsystemsforexam-

ple,but italsominimizesthehumanintervention.Itisapplied whenreliability

and QoSare required. An autonomi system inspets and hanges itsown ar-

hitetureandbehaviorwhentheevaluationindiatesthattheintendedQoSis

notahieved,orwhenabetterfuntionalityorperformaneisrequired.

The autonomi omputing arhiteture is omposed of four modules and

a knowledge omponent that onstitute a ontrol loop namely MAPE-K [2℄.

Monitoring whihmonitorsthedataexhangedbetweenthemanagedelements,

AnalysiswhihdetetspossibleQoSorperformanedegradations,Planning that

implementsalgorithms for seletingand shedulingappropriateelementaryre-

ongurationationsandExeution whihperformsthem.

1

D

A

F

W B

B B

2

I

a a

r ! r ra "# # o

t rs r$

M% Ͳb&%

M % % Ͳb&%

P'Ͳb&%

( ##s! r

Fig.1.Autonomiomputingsope

This autonomi omputing paradigm inludes the design and implementa-

tion of omputer systems, as shown in Figure 1. The rst step fouses on es-

tablishingadetailed designfromwhihresultsaframework oranarhiteture.

Frameworks present the skeleton of an appliation that an be ustomized by

thedeveloper.Wedistinguishtwotypesofframework[3,4℄:blakboxthatdoes

notneed adeep understanding of the framework's implementationin order to

useitandwhiteboxthatrequirestheinternalunderstandingof theframework

touseiteetively.Arhiteturesprovidehigh-levelabstrationofsystemom-

ponents, while enablingeasier understanding and interpretation. Furthermore,

(4)

step onentrateson implementing the arhiteture or the framework through

varioustehniques.Theimplementationmaybelassiedintothree ategories:

model-based,middleware-basedandplatform-based(seeFigure1).Model-based

solutions[57℄provideexpliitimplementationofallneessaryationsformoni-

toring,analysis,planningandexeution.Inthisategory(model-based),wefous

partiularly onarhiteturalapproahes.Monitoringandanalysis are madeby

testing iftherunning systemonformsto agiven arhitetural styleor model.

Middlewares,likeBionet[8℄,AgFlow[9℄, andOpenORB [10℄,support dynami

reonguration proess by oering primitives (like intereption) for all auto-

nomi omputing modules. Platforms [1113℄ provide developers with already

developedautonomi entities.

Inthispaper,weevaluateandlassifyasetofautonomisolutionsaording

to riteria suh as provided funtionalities, managed autonomi steps, applied

tehniques,programminglanguages,et.Weaimtoprovidefeatureswhihhelp

andguideuserstoseletasuitablesolutionforimplementingautonomiservies.

However,itisusuallydiultto selettheappropriateapproahtoimplement

an appliation. We think that this hoie depends on the size of the problem

to solve,the arhiteturetype(deentralized or entralized),the programming

language, the appliation area (Server or Client, et.), et. Then, wepropose

ourDRAASarhitetureimplementingtheautonomiomputingto ensurethe

dynamireongurationofwebservie-basedappliations.

Thispaperis organizedas follows.Setion 2givesanoverviewof theauto-

nomi omputing bakground. Setion 3 details dierentways to design auto-

nomisystem.Setion4desribesataxonomyofdynamireongurationimple-

mentation approahesfousing on the "model", "middleware" and "platform"

ategories.Setion5presentsourDRAASarhitetureillustratedbyausease.

Finally,setion6onludes thispaperandpresentsourfuture works.

2 Autonomi Computing Bakground

Autonomiomputing onstitutesanativeresearhareain omputersystems

[14℄. This paradigm, inspired from the human autonomi nervous system [2℄,

hasa mehanismthat an triggerhangesin theomputing systemstrutures

andbehaviorsinordertobypassororretthem.Furthermore,itisaolletion

of autonomi omponents that the overarhing goal is to manage themselves,

so that systems will be dynamially reongured at run time, with minimum

humanintervention.

2.1 Self-* Capabilities

Thepriniplesthatgovernallautonomiomputingsystems,aordingtoIBM,

havebeensummarizedineightaspets[15℄:

Self-Conguring:theabilityto dynamiallyongureomponentsfollowing

(5)

thedeployment,theinstallationofnewomponentsortheremovalofexisting

ones[1618℄.

Self-Healing: the ability of the system to pereive if it doesn't work or-

retly. It ensuresthe neessaryadjustmentsto restitute ittowardsitsnor-

malstate withouthumanintervention[19℄.By knowingabout thesystem,

itanalyzesinformation,detetssystemdegradationsandinitiatesorretive

ationswithoutdisruptingthesystemexeution.

Self-Optimizing:theabilityofthesystemto ontinuallyenhane itsperfor-

mane. It is a proative mehanism that detets performane degradation

andatsintelligentlysuhas inrealloatingresoureswithminimalhuman

intervention[16℄.

Self-Proteting:theabilityofthesystemtodetetandprotetitsresoures

frominternalandexternalattaksandmaintainitsseurity[2℄.

Self-Awareness: theabilityof the systemto knowitself and to be aware of

itsstateandbehaviors[15℄.

ContextAwareness:theabilityofthesystemtoknowitsexeutionenviron-

mentandbeabletoreattoitshanges[15℄.

Open:theabilityofthesystemtoworkinaheterogeneousworldandimple-

mentopenstandards. It should be portable arossmultiply hardware and

softwarearhitetures[15℄.

Antiipatory:theabilityofthesystemtoantiipateitsneedsandbehaviors

andtomanageitselfproatively[15℄.

2.2 Autonomi ComputingTehniques

Autonomi omputing is based on four main steps [2℄: Monitoring, Analysis,

Plan andExeution.

Monitoring tehniques Analysistehniques Plan&Exeution teh-

niques

Intereption[20,21℄ Arhitetural differ-

entiation[22,23℄

Substitution[24,10℄

Assertion[25,26℄ Behavioral differentia-

tion[27℄

Wrapping[28,29℄

AOP[3032℄ QoS-ontrat(SLA)[33℄ LoadBalaning[34℄

Refletion[10,35℄ QoS-aware (QoS his-

tori)[36,37℄

Rollbak[38℄

Redundany & Duplia-

tion[3941℄

Table 1.MAPE-klooptehniques.

Monitoring is usually dened as the at of listening, arrying out supervi-

sion on, and/or reording the ativity of a software entity for the purpose of

maintaining system reliability and QoS. Monitoring an be ensured using the

(6)

Intereption whih representsahook into exhangeddatabetween alient

andaserverallowingrequests/responsessupervision.

Assertion is aset ofode lines,introdued in aprogram,whih enablesto

ontrolandtoonstrainaprogram.

AOP(AspetOrientedProgramming)whihaimstoverifysystemproperties

andalsotoonguresope/onstraintsofeahfuntionanddisoverevena

tinyabnormalstate.

Reetion whih enablesto disoverand to operateon elds and methods

ofanobjetat runtime.

Analysisistheproessofdetetingpossibledegradationofthesystemthrough

theevaluationand theexaminationof monitoreddata. Analysisomparesur-

rent system behavior and arhiteture with a referene model. The following

tehniquesareusedbytheAnalysis (seetable1):

Arhitetural Dierentiation refers to ompare the obtained arhitetural

modeltothearhiteturalstyleofthesysteminordertodetetnon-ompliane.

Behavioral Dierentiation referstomapthebehaviorofanimplementation

tomodelbehavior.

QoS Contrat whih represents expliitly the system requirements under

ontratbetweenlientsandproviders.

QoSAware whih isbasedonthe historiofthe systemstate. Itompares

theurrentstatewithprevioussystemstates.

Plan&Exeution areomplementary.Infat,theplanpresentsasetofalgo-

rithmswhihrefertoonretereongurationationsenforedintheExeution

module. While,the Exeution refersto the at/theproessof repairing or the

onditionofbeingrepaired.Also,itmaybedenedashangesappliedtoasoft-

wareentity so that itreahesadesirablestate. Indistributed systems, several

tehniquesareusedto ahievetherepairproess(seetable 1):

Substitutionwhihreplaesasystemomponentbyanother.

Wrappingwhihsubstitutesasystemomponentbyanotherenvelopedwhih

presentsthesamebusinesslogi.

Load Balaning onsistsondistributing loadonavailableomponents.

Rollbak allowsthesystemtoomebaktothelaststablestate.

Redundanywhihrepeatsanationmorethanonetimeinordertoahieve

it.

Dupliation(repliation)whihinvolvesadditionofomponentsrepresenting

similarfuntionalities.

3 Autonomi Design and ImplementationApproahes

Software design is dened in IEEE610.12-90 as both "the proess of dening

thearhiteture,omponents,interfaes,and otherharateristisofasystem"

(7)

translation of requirementsinto anished system.The designof arhitetures

andframeworksisderivedfromthesystemspeiation.

From the implementation point of view, three main ategories of solutions

ouldbeused toimplementautonomi systems:themodel-basedategory,the

middleware-based ategory and the platform-based ategory. For the model-

basedimplementations[7,50℄,developersstartfromthesrathandshouldim-

plementallationsrelatedtoautonomiomputingmodules.Forthemiddleware-

basedimplementations[8,9,51℄,developersbuildtheirsolutionsbyadaptingba-

siprimitivestotheirappliationontext.TheprovidedAPIsinludeprimitives

formonitoring,analysis,planningandpossiblereongurationations.Theplat-

formategoryprovidesreusableomponentstoimplementautonomiomputing

strategies[1113℄.

Inthefollowing,wepresentindetailthedierentapproahesrelatedtothe

designandthethreeategoriesimplementingtheautonomiomputing.Wealso

study thedierentfatorsthat anguideto hooseaspeiedapproahrather

thananother.

3.1 Arhiteture design

Thearhiteturemodelsthestrutureofthesystem.Itprovidestheglobalper-

spetivesandahigh-levelabstrationenablingeasierunderstandingofsystems.

The work in [43℄ denes the arhitetural design as the high hierarhial

strutureofasystem.Itdesribestheoveralldesignofthesystemthat inludes

global ontrol struture, ommuniation protool, data aess,system ompo-

nentsandtheirbehaviors.

Theauthorsof [44℄ deneaderivativeofthearhiteture, namelydynami

arhiteture.Thistypeofarhitetureevolvesandhangesitselfduringruntime

asthesystemhanges.Itaimstodesignanautonomisysteminordertoensure

thedynamireongurationofsystem.

3.2 Framework design

Work in [45℄ denes a framework as a reusable design of all or partof asys-

temthat isrepresentedbyaset ofabstratlassesand thewaytheirinstanes

interat. Thesameauthor desribesthe framework in [46℄as aombination of

omponentsanddesignpattern.CEYLON[47℄,SAFDID[48℄andCatus[49℄are

examplesofframeworksimplementingautonomiomputinginordertodynam-

iallyreongurethesystem.Thepurposeofframeworksistoensurereusability

andextensibility,twomaintypesofframeworksaredistinguished[3℄:

White Box Framework: In a white box framework, we usually extend

behavior by reating sublasses, taking advantageof inheritane. A white

boxframeworkoftenomeswith soureode.

Blak Box Framework: In a blak box framework, the behavior is ex-

tendedbyomposingobjetstogether,anddelegatingbehaviorbetweenob-

jets.Wehavenoideaabouttehnialimplementationonlythefuntionality

(8)

Table2reapitulatesthedierenebetweenblakandwhiteframeworks.

WhiteBox Framework BlakBox Framework

Usesublassing UseCompositionanddelegation

Inheritane Polymorphism

Mustknowtheinternalstruture Mustknowinterfaes

Simpler,easiertodesign Complex,hardertodesign

Hardertoprogram Easiertoprogram

Table2.ComparisonbetweenWhiteandBlakBoxFrameworks

3.3 Model-basedimplementationapproahes

Model-basedsolutionsimplementallationsstartingfromthesrath.Noprim-

itives are oered. In this ategory, we fous partiularly on arhitetural ap-

proahesinwhihonstraintsanbeexpressedexpliitly.Managementmodules

are generally proposed to ensure the dynami reonguration proess. These

entitiesenablemonitoring,implementanalysisandplanning,andenforereon-

gurationations.

Thework desribed in [7℄ provides "Kinesthetis eXtreme" (KX),whih is

a generi framework for self-healing based on lightweight middleware. It is a

deentralized arhitetureusing event-basedsystem.It an beimplemented at

the middleware level or at the appliation level. The analysis is basedon spe-

i rules for error detetions. KX approah follows the funtional properties

of an appliation in order (i) to semantially analyze exhanged messages; it

playstheroleofproxyforapturingmessageontents(soureaddress,subjet,

message-ID)fordetetingSPAMmessages(ii)andtomonitorthebeginningand

theendofmethod allsin ordertodetetservieswhihrun inorretly.KXis

salableandanbeappliedtoaomposedsystem.However,ithaslimits:First,

thesenariosisimplementedwithmanually-writtenglueodeforattahingthe

external autonomi infrastrutureto the target system. Seond,the probe de-

ployment, the gauge derivation, and the onstrution of reonguration plans

areperformedmanually.

Rainbow[6,50℄ is aframeworkfor self-adaptivesystems.It isomposed of

two layers. First, the system layer, whih ollets information about the sys-

tem and enfores reonguration plans. Seond, the arhiteture layer, whih

reets the urrent arhiteture model, heks onstraint violations, and de-

termines the requiredadaptation. The arhiteture and systemlayers interat

throughatranslationinfrastruture.However,experimentalwork[52℄hasshown

thatthisexternalizedapproahforself-adaptationausesasigniantslowdown

ofthesystembehavior.Also,thisapproahsupposesthatthetargetsystemon-

tainshooks formonitoringand management.The reonguration planis built

manuallyandintegratedintheode.Noevaluationorvalidation ofthisplanis

(9)

Other model-based approahes use arhitetural styles designed to enable

autonomi omputing. In fat, an arhitetural stylerepresents aolletion of

designdeisionsthat havealreadybeenmade andan bereused.It onsistsin

afew keyfeatures andrules for ombiningthese features so that arhitetural

integrityispreserved.Fromthis ategory,weanmentionPrism[22,53℄whih

isanautonomiapproahbasedonomponentorientedarhitetures.Itisom-

posedof twolayers.Therstis theappliationlayerwhih inludes funtional

omponentsandexhanges messagesbetweenthem.The seondrepresentsthe

autonomilayer.Atthislayer,omponentsataseetors.Theyfailitatemon-

itoring,enating hanges, planning and deployment. These eetors areaware

of appliation-layer omponents and may initiate interations with them, but

notvieversa.Theproposed style,evenitisabstrat,seemsto beomplete as

it oversmostrequirementsfor autonomi system like adaptability, dynamis,

awarenessandrobustness.Itisoneofthefewapproaheswhihonsidersmobil-

ity. However,this framework doesnottarget asolutionforspei appliation

ontext, but itis ageneralapproahfor designingautonomisystems. Spei

funtionalities,likeoordinationandpoliiesarenotonsideredinthisapproah.

Theappliabilityofthestylehasbeendemonstrated.

Taylorandallpresentanarhiteturalapproahforautonomiomputing.In

[25℄,TaylorandOreizyproposeanapproahforself-adaptivearhiteture.This

approahisneitherimplementednorappliedtoaspeiappliationontext.It

fousesonsystemintegritywhihrequiresthemanagementofonsisteny,or-

retnessandoordinationofreongurationations.In[54℄,TaylorandDashofy

renethearhitetureproposedin [25℄.Theyexhibitastyle-basedapproahfor

autonomi systems.Theyprovideaninfrastrutureabletosupport thedesign,

validation andexeutionofreongurationplans.Thearhitetureisdesribed

using xADL 2.0 (XML-based Arhiteture DesriptionLanguage). The infras-

trutureis mainlydesignedforevent-basedsystems.However,thisarhiteture

isentralizedforsingleproesssystemsandnomehanismisonsideredforerror

detetions.

3.4 Middleware-based implementationapproahes

Themiddleware-basedapproahesprovideprimitiveshelping developerstoim-

plementautonomiomputingsystem.Inthefollowing,wepresentmiddleware-

basedimplementations.Detailsabouteahmiddlewarearepresentedintable3.

OpenORB middleware [10℄isbuiltonthebasisofreetivetehnology.Its

reetive arhiteture uses meta-objetprotools to perform integrations that

support dynami adaptation at runtime. The meta-models allow monitoring

and reongurationof misbehaviorsin order to preservethe arhiteturestyle.

Throughtheintereptionmeta-model,itanalyzesexhangedmessagesbetween

omponents and lient requests. The interfae meta-model provides aess to

theomponentimplementationwhilethearhiteturemeta-modelprovidesa-

ess to the objetgraph. Theillustration prototypedealswith the ontinuous

mediaowstransmissionqualitywhileintrospetingandreonguringavailable

(10)

demonstratesthat OpenORB providessuient support for small-salemulti-

mediaappliations.Toseuretheommuniationbetweenpeers,authorsof[10℄

saidthatitmaybedonewhileusingintereptors.

DynamiTAO [56℄isareetiveORB(anextensionoftheTAOORB).It

enablesdetetinghangesin environmentandreloadingnewomponentimple-

mentations whih maybebound to the systemat runtime. These features are

ahievedbytheuseofaolletionofentitiesknownasomponentongurators.

These onguratorsmaintain informationaboutthedependeniesbetweenthe

omponentstheymanage.TheDynamiCongurator inspetsomponentimple-

mentations (list_ategories,list_omponents,domain_omponent, impl_info,

omp_info, et.) andreonguressystemon they whileloadingor removing

implementationsstoredin aRepository. ThesalabilityofDynamiTAOisnot

improved.However,itisonlytestedwithasimpleexample(getHello()).TheDy-

namiTAOinfrastrutureinludes twomanagementseurity servies.Therst

isusedtorypt/deryptmessageontentsandtheseondauthentiatesommu-

niationpeerstoontrolaess.Theseuritystrategyanbeloadedandbound

dynamially to the system at runtime. This allowsthe use of a largerange of

seuritymodels.

Eternal[57℄isaomponent-basedmiddlewarewhihprovidesfaulttolerane

toCORBA-basedappliationsbyrepliatingomponents.Theautonomiom-

putingaspetisdevelopedasanexternallayerunderneaththeORBlayer.The

monitoring is based on the middleware intereption approah whih is trans-

parent to all ORB. Eternal intereptslient requests and transfersthem to a

repliationmangerintheaseofmisbehaviors.Asimpletestappliationisdone

in order to measure the performane of Eternal when a fail happen. It shows

thereoverytimerequiredfor reongurationwhile varyingthe sizeof theap-

pliationstateto transferarossthenetwork.Thedrawnurvepointsoutthat

thereoverytimeinreaseswhilethetransferreddatasizegoesup.Eternaluses

CORBAseurityservie(SeIOP)andintegratesSSLtoseureexhangedmes-

sages.Also,itimplementsarewallin ordertolterrequestsand aeptsonly

authentiatedlients.

Références

Documents relatifs

Given a hardware architecture, a task can be implemented in various ways char- acterised by various parameters of interest, such as the set of used reconfigurable tiles (rs), worst

1. The Travel Agent initiates the Business Activity with the Flight and Hotel participants by sending the Request messages. The Flight and Hotel Web services enroll in the

Dual Plan Scanpath, Local Context Memory and Central Context Repository form a complex memory hierarchy spe- cially designed to optimize preemption overhead.. The same memory scheme

From an operational point of view, reconfiguration solutions work by adapting coordinated architectural transformations between the different communication levels of an

OLLAF 1 , an original FGDRA core that we have designed and modelized using VHDL will be presented as well as a more general view of our approach of a FGDRA and its related OS kernel..

Second, we evaluate QoS non-functional requirements between all messages exchanged in the system, reducing dynamically the number of forced checkpoints diverse algorithms

PCS8: a solution that is similar to Scan solution but using 8 parallel scanpath as described in [1] to transfer the context, ICAP interface is still used for configuration

In this paper we propose to tackle the MAPE loop of autonomic computing in a distributed and efficient manner by using communication-induced checkpointing (CiC), attacking