基于代理的分布式应用发展的技术设计论文.docx
《基于代理的分布式应用发展的技术设计论文.docx》由会员分享,可在线阅读,更多相关《基于代理的分布式应用发展的技术设计论文.docx(13页珍藏版)》请在冰豆网上搜索。
基于代理的分布式应用发展的技术设计论文
外文文献及译文
文献、资料题目:
Technologiesforthe
DevelopmentofAgent-basedDistributedApplications
文献、资料来源:
期刊
文献、资料发表(出版)日期:
2008.3.12
外文文献:
TechnologiesfortheDevelopmentofAgent-basedDistributedApplications
Mobileagentcomputingisanextensionoftheearlierideaof"processmigration."Mobileagenttechnologyoffersseveralpotentialbenefitsoverconventionalclient-servercomputingthatcouldhelpimproveclassicdistributedsystemsdesigns,whichareusuallybasedonthewell-knownremoteprocedurecall(RPC)oritsobject-orientedequivalent,remotemethodinvocation(RMI).
Mobilesoftwareagentsenableashiftinthecommunicationsparadigmofdistributedsystemsfromwhatiscalled"datashipping"to"functionshipping."KeytothisshiftisthehigherlevelofabstractionthatamobilesoftwareagentcanprovidecomparedtoaRPCoraRMIcallbecauseitscodeisautonomous.Thisautonomyshouldtheoreticallyreducenetworkloadandcommunicationoverheadindistributedapplicationsaswellasfacilitatethedevelopmentofapplicationsforpotentiallyunreliable,networkedcomputingenvironments.
Furthermore,andperhapsevenmoreimportantly,awidespreadagent-enabledinfrastructureprovidesacommonplatformfordistributedapplicationsofarbitrarypurpose.ConsiderthePostScriptexamplegivenbyChess,Harrison,andKershenbaumtoillustratetheadvantagesastandardizedmobileagentexecutionenvironmentoffers.PostScriptdocumentsareprogramsexecutedbyaPostScriptinterpreterandsenttoprintserversthatonlyacceptpassiveinputtext,e.g.,MicrosoftWordfiles.Thedrawbackofthelattermethodisobvious:
foreverynewdocumentformat,allprintserversintheworldwouldhavetobeupdated.Theexampleiseasilytransferredtomobileagentcomputing:
mobileagentsasageneral-purposecomputingplatformdonotrequireanyspecificfunctionstobeimplementedintheservers,suchasfull-textretrievalmethodsordatabaseinterfaces.
DistributedapplicationsbasedonRPC-liketechniquesmightnotbeeasytoadapttolarge-scale,heterogeneous,andpotentiallyunreliableenvironments,liketheInternet,becauseimplementationofRPC-stylesemanticsreliesonrelativelystaticandreliablesystemstructures.Combiningmobileagenttechnologywithwell-establishedmechanismsmightpotentiallyleadtosystemsmuchbettersuitedtotheneedsofInternet-likecomputingenvironments.
Tobeabletoclearlydistinguishwhatinthiscontextisreferredtoas"conventional"client-servertechnologyfrommobileagenttechnology,sometermsneedfirstbedefined.
Agent
AsdefinedbytheObjectManagementGroup(OMG),anorganizationthatdevelopsstandardsforcomponent-basedsoftwaresystems,anagent"isacomputerprogramthatactsautonomouslyonbehalfofapersonororganization."
MobileAgent
Amobileagentisanobjectthatis"notboundtothesystemwhereitbeginsexecution.Ithastheuniqueabilitytotransportitselffromonesystemwithinanetworktoanother."
Place
Aplaceis"acontextwhereanagentcanexecute.".Furthermore,thetermsagentplatformandagentsystemwillbeusedsynonymouslyaccordingtotheOMGdefinition:
"Anagentsystemisaplatformthatcancreate,interpret,execute,transfer,andterminateagents.Likeanagent,anagentsystemisassociatedwithanauthoritythatidentifiesthepersonororganizationforwhomtheagentsystemacts."
Becausemobileagenttechnologyisageneral-purposecomputingplatform,ithasbeencalleda"solutioninsearchofaproblem."Inthefollowing,wewillexaminetheadvantagesthatsuchaplatformoffersfordistributedandparallelcomputingandtheproblemsthatpreventitswidespreadsuccess.Subsequently,abriefoverviewofstate-of-the-artagentsystemsisprovided,togetherwithanexaminationofhowthesesystemsaddressthecontinuingchallengesofmobileagentcomputing.
Mobileagentsasadesignparadigmfordistributedsystems
Theconceptoftransmittingexecutableprogramsbetweenpotentiallyheterogeneousexecutionenvironmentsintroducesanewparadigmfortheimplementationofdistributedapplicationsforlarge-scale,potentiallyunreliable,networkedenvironments.Intraditionalclient-serversystemsthatuseonlyRPC,thedatatobemanipulated,suchastext,relationaldata,andimages,ismovedbetweenproceduresalreadyresidingontheclientandtheserver.Agent-basedcomputing,however,facilitatesthetransportationoftheprocedureitself(thatis,thealgorithmtobeapplied)totheclientbymeansofamobileagent,whichcanleadtolesstraffic.
Alsointeresting,isthepossibilityofimplementingdynamicapplicationprogramminginterfaces(API)overagentsthroughtheuseofanagentcommunicationlanguage;suchalanguagehasbeenproposedbytheFoundationforIntelligentPhysicalAgents(FIPA).Suchcapabilitywouldallowpossibleintroductionandremovalofservicesthatneednotbefullyspecifiedaprioriineithertheclientortheserver.
Characteristicsofmobileagentsystems
Whatattributesuniquelydistinguishthemobileagentideafromotherdistributedcomputingconcepts?
Thereisnoagreedupondefinitiontodate;however,therearekeycharacteristicsofmobileagentsystemsthatfacilitateadvantagesinthedevelopmentofdistributedsystems.
Mobility
Mobility—themostimportantattributeofmobileagents—describestheabilitytomovefromoneexecutionenvironmenttoanother.Forexample,themobilityconceptenablescodetomovetothelocationwherethedataithastoworkwitharelocated,thustakingadvantageoflocalinteraction.Inthefollowing,theterm"mobility"willbeusedtorefertoamobileagent'sabilitytorelocateitselftoanotherplace.
Autonomy
Autonomymeansthatmobileagentscaninawayact"autonomously,"i.e.,performactionsbasedontheirownsituativeassessmentofcircumstances.Forexample,amobileagentdecidesonitsownwhenandwheretomove,whereasintraditionalsystemssuchdecisionsaretakenbyacentral(server)component.Hence,theautonomypropertypotentiallyenablesmobileagentstodealindependentlywithsituationslikeunavailableserversandotherresources.
Persistence
Theconceptofpersistenceistightlycoupledtomobility.Whenanagentmovesfromoneplacetoanother,itpreservesitsinternalstateanddata.Inparticular,itretainsanycomputingresultsobtainedduringexecutionintheexecutionenvironmentitistransportedfrom.
Advantagesofmobileagentsovertraditionalclient-serverdesigns
Thissectiondiscussesseveralrelativeadvantagesofmobileagentsystemsoverconventionalclient-serverdesignprinciples.Noneoftheseadvantagesareuniquelyavailablethroughmobileagenttechnology;instead,thestrengthofmobileagentsystemsemergesfromtheaggregateoftheadvantages.Thiscombinationfacilitatesseveralimprovements,suchasthefollowing:
Mobileagentsprovideageneral-purpose,openframeworkforthedevelopmentofdistributed,networkedsystems,i.e.,auniversalcomputingplatform.
New,derivativenetworkservicescouldbebasedonmobileagenttechnologythatextendorevenreplaceexistingservices.
Becausemobileagentsarepowerfultoolsforend-users,theymayappealstronglytothem.TheInternetcommunityisaverylargepossibletargetaudience.
Theaforementionedadvantagesincludehighbandwidthremoteinteraction,supportfordisconnectedoperation,supportforweakclients,semanticrouting,scalability,reducedoverheadforsecuretransactions,andcomparativelyrobustremoteinteractions.
Highbandwidthremoteinteraction
Ifthereisalargeamountofremotelystoreddatatobeprocessed,itcanbeconsiderablycheapertobringtheprocessingmethodtothelocationwherethedataisstored("functionshipping"),thantotransferthedatatotheclient("datashipping").Functionshippingcanbeaccomplishedbymeansofamobileagent.Onemightarguethatthesamecanbeachievedthroughstoredproceduresorsimilarmechanisms;whilethisiscertainlycorrect,thepowerofthemobileagentapproachishighlightedwhenproperprocessingmethodsarenotknowninadvancebutaredata-dependent.Rothermelmentionsanalysisofhugeamountsofmeteorologicaldataandreal-timeanalysisofstockpricesasexamples.
Supportfordisconnectedoperationandweakclients
Mobileagentsimprovethesupportformobilecomputing,i.e.,mobiledevicesthatareonlyintermittentlyconnected.Mobiledevices,suchaspersonaldigitalassistants(PDAs),webpads,andmobilephones,arenotgeneral-purposecomputingdevicesinthesenseofpersonalcomputers,butexhibittwokeycharacteristicsrelevantinthisdiscussion.
Non-persistentand/orlow-bandwidthconnectiontothenetwork.
Limitedstorageandprocessingcapacity.
Ausermightchoosetoputtogetheraquery(a"task"fortheagent),connecttothenetwork,launchtheagentwiththerespectivetask,disconnectfromthenetwork,andatalatertimeretrievetheagentalongwiththeresultsithascollected.Thisisbeneficialnotonlywhenconsideringdevicesthatareoccasionallydisconnectedbutalsowhenlookingatdevices,likecellphones,thatmightbeconnectedpersistently,butonlywithaverylowbandwidth.
Semanticrouting
Interactionsinclient-serverapplicationstypicallyrequiredetailedknowledgeaboutlocations,functions,andprotocolsonboththeserverandtheclientside.Oneofthepromisesofmobileagentcomputingisthattheclient(andtheuser)canberelievedofagreatportionofthatburdenthroughtheconceptofsemanticrouting.Theideaisthatthe"intention,"i.e.,thetasktobeperformed,bytheagentshouldbeformulatedinanabstrac