Anefficientselectionalgorithmforbuildinga superpeeroverlay ErkkiHarjulaandMikaYlianttila Abstract SuperpeeroverlayprovidesanefficientwaytorunapplicationsbyexploringtheheterogeneityofnodesinaPeer ID: 394637
Download Pdf The PPT/PDF document "RESEARCHOpenAccess" is the property of its rightful owner. Permission is granted to download and print the materials on this web site for personal, non-commercial use only, and to display it on your personal computer provided you do not modify the materials and that you retain all copyright notices contained in the materials. By downloading content from our website, you accept the terms of this agreement.
RESEARCHOpenAccess Anefficientselectionalgorithmforbuildinga super-peeroverlay * ,ErkkiHarjulaandMikaYlianttila Abstract Super-peeroverlayprovidesanefficientwaytorunapplicationsbyexploringtheheterogeneityofnodesinaPeer- to-Peeroverlaynetwork.Identifyingnodeswithhighcapacityassuper-peersplaysanimportantroleinimproving theperformanceofP2Papplications,suchaslivestreaming.Inthispaper,wepresentasuper-peerselection algorithm(SPS)toselectsuper-peersforquicklybuildingasuper-peeroverlay.IntheSPS,eachpeerperiodically buildsitssetofsuper-peercandidatesthroughgossipcommunicationwithitsneighbors,inordertoselectsuper- peersandclientpeers.SimulationresultsdemonstratethattheSPSisefficientinselectingsuper-peers,andin quicklybuildingasuper-peeroverlay.TheproposedSPSalsopossessesgoodscalabilityandrobustnesstofailureof super-peers. Keywords: Peer-to-Peer,Super-peer,Overlay,Gossip 1.Introduction Peer-to-Peer(P2P)overlaytechnologieshavebeen widelyappliedforconstructinglarge-scalenetworkap- plicationsandservices( e.g. ,Skype[1],BitTorrent[2], Gnutella[3],andPPLive[4])becauseoftheirinherent decentralizationandredundantstructures[5,6].Alotof effortshavebeenmadeonP2Poverlayconstruction ( e.g., [7-12]).Super-peeroverlay( e.g., Kazaa[13])isan importanttypeofP2Poverlay.Inasuper-peeroverlay, therearetwotypesofpeers:clientpeersandsuper- peers.Eachclientpeershouldconnecttoasuper-peer inordertocommunicatewithotherpeersintheoverlay. Asuper-peeractsasthecentralizedserverforitsclient peersandconnectstoothersuper-peersinthesameway asinthepureP2Pnetwork[14].Clientpeerswithlow capacityareshieldedfrommassivequerytrafficby super-peers,whichimprovesthescalabilityofthesys- temandmakesitfeasibletoconnect e.g., mobiledevices toaP2Pnetwork.Inthepaper,thecapacityofapeer referstothecombinationofitsavailablecomputatio- nalresource,networkconnections,andlifespaninthe network. efficientlybyexploringtheheterogeneityofnodesinthe overlaynetwork.Forexample,infilesharingapplications ( e.g. ,Gnutella[3]),Skypevoicestreaming,andlivevideo streamingapplications[15],theperformanceofthese applicationsisimprovedthroughassigningnodeswith highnetworkbandwidth,longon-linetime,orhighpro- cessingcapabilityassuper-peers.Thus,super-peerse- lectioninagivenoverlayisanimportantissuewhen buildingasuper-peeroverlay.Ontheotherhand,par- ticularlyindynamicnetworkenvironment,itiscommon thatpeersjoinorleave( e.g. ,afailureofasuper-peer)a super-peeroverlay[9,16,17].Toachievearobustoverlay, itshouldalsobetakenintoaccounthowtohandlethe failureofpeersinthesuper-peeroverlayconstruction. Therefore,efficientsuper-peerselectionmethodinorder toquicklybuildarobustsuper-peeroverlayisanim- portantresearchissue. Manystudieshavebeenundertakenonbuildinga super-peeroverlay[7,8,10,12,14,18-22].Theprinciples andguidanceofdesigningasuper-peeroverlaywere addressedbyKirk[3]andYang etal. [14],butnoexperi- mentalresultswerereported.Someeffortsutilizednet- workproximityforbuildingasuper-peeroverlay, e.g. , [8,12,18,21].Clientpeersareconnectedwithsuper-peers basedontheirdistances.However,thesestudiesfocused onreducingcommunicationlatencybetweennodesby exploringnetworkproximityratherthantheefficiency ofquicklybuildingasuper-peeroverlaybyexploringthe *Correspondence: meirong.liu@ee.oulu.fi MediaTeamOuluresearchgroup,DepartmentofComputerScienceand Engineering,UniversityofOulu,Oulu,Finland ©2013Liuetal.;licenseeSpringer.ThisisanOpenAccessarticledistributedunderthetermsoftheCreativeCommons AttributionLicense(http://creativecommons.org/licenses/by/2.0),whichpermitsunrestricteduse,distribution,andreproduction inanymedium,providedtheoriginalworkisproperlycited. Liu etal.JournalofInternetServicesandApplications 2013, 4 :4 http://www.jisajournal.com/content/4/1/4 capacityofnodes.Super-peerselectionhastomakeatrade-offbetweenreducingcommunicationlatencyandselectingpowerfulsuper-peers.Otherstudiesinvesti-gatedthesemanticsimilarityofpeerswhenbuildingasuper-peeroverlay,,[7,10,23].Clientpeersthatsharethesameinterestareconnectedtosamesuper-peers.However,thesestudiesaimedtoimprovethesearcheffi-ciencyratherthantheefficiencyofquicklybuildingarobustsuper-peeroverlay.Inaddition,somesuper-peerscouldbeoverloadedbecauseofpopularcontent.Theconnectionsbetweensuper-peersandclientpeersinasuper-peeroverlaywerealsoinvestigated[19,22,24,25].However,thesestudiesassumedthatasuper-peerover-layalreadyexistsandfocusedonmanaginganexistingoverlayinsteadofbuildinganinitialsuper-peeroverlay.etal.[15]presentedaLabeledTreetobuildasuper-peeroverlay.However,theyaimedtoachievereli-ablehighspeedtransmissioninlivestreamratherthantheefficiencyofquicklybuildingasuper-peeroverlay.Intheirstudy,super-peersareselectedonlybasedontheonline-time,whichdidnottakeaccountofotherinfor-mationofnodes,e.g.,processingcapacity,bandwidth.Montresor[11]proposedagossipbasedalgorithmSG-1fortheefficiencyofquicklybuildingasuper-peerover-lay.InSG-1,peersdecidewhethertheyshouldtakearoleofasuper-peerbycomparingtheircapacitieswitharandomlysampledneighborpeer,whichissimplebuttakeslongtimetoselectneededsuper-peers.Asuper-peersearchesandaddsclientpeersonlyamongitsone-hopneighbors.Allthepeersintheoverlaytaketheroleofasuper-peerinthebeginningoftheoverlayconstruction.Inthispaper,wefocusonstudyingtheefficiencyofquicklybuildingarobustsuper-peeroverlaybytakingaccountofcapacityofnodes.Onlypeersthathavehighcapacity(comparedtoneighborpeers)areselectedassuper-peers.Thereasonforthisisthatpeerswithahighcapacitycancontributemoretoapplicationsandenableapplicationstorunmoreefficiently[3,15].Tothisend,wepresentanefficientsuper-peerselectionalgorithm(SPS)toselectpeerswithhighcapacityassuper-peersforquicklybuildingarobustsuper-peeroverlay.IntheSPSalgorithm,eachpeermaintainsasetofsuper-peercandidates.Peersdisseminatetheinformationofsuper-peercandidatesthroughagossipmethodNewscast[26],whichisefficientininformationdisseminationandenablespeerstocapturethedynamicityofaP2Poverlayaswell.Eachpeerperiodicallyrebuildsitssetofsuper-peercandidatesanddecideswhetherittakestheroleofasuper-peerbasedonitssetofsuper-peercandidates,whichdiffersfromthesuper-peerselectionmethodpresentedinSG-1[11].Afterthat,peersexecutethecorrespondingop-erationsaccordingtotheirroles:joiningasuper-peerorrecruitingclientpeers.IntheSPS,allthepeersactasacli-entpeerinthebeginningoftheoverlayconstruction.Overall,theproposedSPSalgorithmhasthefollowingcontributions:(1)TheSPSalgorithmintroducesasetofsuper-peercandidatesforeachpeertoselectsuper-peers,whichenablesthealgorithmtoselectpeerswithhighcapacityassuper-peersandconsequentlyreducesthetimeofsuper-peerselection.(2)TheSPSalgorithmemploysaconditionaltwo-topsearchmethodforsuper-peerstofindandaddclientpeers,whichreducesboththetimeforbuildinganoverlayandthecommunicationoverhead.(3)TheSPSalgorithmachievesacomparablerobustness,andbetterperformanceintermsofconvergencetime,scalability,comparedtorelatedworkSG-1[Thispaperextendsourpreviouswork[20].Inthispaper,weprovideamorein-depthdevelopmentandanalysisofourSPSalgorithm.Wealsocarryoutaddi-tionalexperimentstoevaluatetheperformanceofourSPSalgorithmcomparedtorelatedworkSG-1[11].Theremainderofthepaperisorganisedasfollows:inSection2,webrieflyexplainacommunicationmethod,calledNewscast,utilizedbytheSPS,andpresenttheSPSalgorithm.InSection3,weevaluateperformanceoftheSPSintermsofconvergencetime,communicationoverhead,scalability,androbustness.InSection4,weconcludethepaperwithfuturedirections.2.TheSPSalgorithmInthissection,wefirstgivethebackgroundofagossipbasedcommunicationmethodutilizedintheSPS(calledNewscast[26]),andthenpresentthedesignrationale.Afterthat,weprovidethegeneralideaoftheSPSalgo-rithm.Finally,wedepictthedetailsoftheSPSalgorithmforsuper-peeroverlayconstruction.Weconsiderasetofnodesconnectedthroughanexistingnetwork,andas-sumethateachnodestoresidentifiersofitsneighbors.Eachnodecandirectlyorindirectlycommunicatewithothernodesviaitsneighbors.Inthispaper,weconsideradynamicnetworkenvironmentandnodesmayjoinorleavetheoverlaynetworkatanytime.Anodesinforma-tion,suchasitsidentifier,availableresources,currentrole(clientpeerorsuper-peer),neighbors,andlife-spanareassumedtobedisseminatedthroughNewscast.ApeercancapturethedynamicityofthenetworkthroughmessageexchangeofNewscast.2.1.BackgroundofacommunicationmethodutilizedbytheSPSalgorithmInourwork,weuseNewscast[26](agossipprotocolthatmaintainsadynamicrandomtopology)forinformationetal.JournalofInternetServicesandApplications:4Page2of12http://www.jisajournal.com/content/4/1/4 disseminationbetweenpeers.NewscasthasbeenusedforP2Papplications,suchasbroadcast[24]andaggregation[26]foritseffectiveinformationdissemination.Further-more,Newscastisdesignedfordynamicenvironmentandenablespeerstocapturethedynamicityofanoverlay,e.g.,joiningofanewnodeorleavingofanode[26].ThegeneralideaofNewscastisasfollows:inNews-cast,eachnodemaintainsapartialviewthatiscon-stitutedofafixed-sizesetofpeerdescriptors.Apeerdescriptoriscomposedoftheinformationoftheaddressofanode,atimestampidentifyingwhenthedescriptoriscreated,andapplicationspecificinformation.Eachnodeperiodicallyexchangesandmergesitspartialviewwitharandomlyselectednodetogetanup-to-datepartialviewandabetterapproximationofthetargettopology.MoreinformationcanbefoundinJelasityetal.[26].2.2.DesignrationaleWebuildasuper-peeroverlayasanadditionaloverlayimposedontopofanexistingconnectedtopology(randomgraph),whichismaintainedbyNewscast.Inarandomgraph,peersarerandomlyconnectedwitheachother.TheneighborhoodofanodeintheSPSalgorithmissetasfollows:ifanodeisasuper-peer,itconnectstoarandomsampleofothersuper-peersandtothesetofclientpeersthataremanagedbythissuper-peer.Ifanodeisaclientpeer,itconnectstoonlyonesuper-peer.Theinitialroleofallthenodesisaclientpeer.TheSPSusesanodescapacityasacriterionforselectingasuper-peercandidateandasuper-peer.TheSPSselectsasfewsuper-peersaspossiblewhenbuildingasuper-peeroverlay,whichaimstomaximizethecontributionofnodeswithhighcapacity.InspiredbythemethodcalledVoRonoiRegionsformobilenetwork[27],theSPSselectssuper-peersfirstduringthesuper-peerover-layconstruction.Notethatthereasonforbuildingasuper-peeroverlayontopofaconnectedoverlayistoavoidadangerofdisconnectionifalargenumberofsuper-peersarefailed.TheSPSoverlayinteractswiththeNewscastoverlaytheconnectedoverlay)todisseminateinformationofthesetofsuper-peercandidatesutilizedbytheSPS.Specifically,whenanodedisseminatestheinformationofasetofsuper-peercandidates(whichcontainssam-plesofsuper-peercandidates),thisnodeneedstointer-actwithNewscastoverlaytogetarandompeerfromtheconnectedNewscastoverlay.Then,thisnodesendsitspartialviewtotherandomlyselectednodetoex-changeandupdatetheirdescriptors.Finally,thedescrip-torofthisnodecontainsnotonlyanidentifier,atimestamp,butalsoasetofsuper-peercandidates,whichinitsturnisusedbytheupperSPSoverlayforselectingsuper-peers.2.3.OverviewoftheSPSalgorithmThegeneralideaoftheSPSalgorithmforselectingsuper-peersandclientpeersisasfollows:allthenodesintheoverlayperiodicallyperformoperations(1)and(2)describedbelowuntilthesuper-peeroverlayisbuilt.(1)Anoderebuildsitssuper-peercandidatesCanSP)throughcommunicationwithitsneighborsfortheirsuper-peercandidates.Nodeswithhighercapacity(chosenfromretrievedsuper-peercandidates)arepromotedassuper-peercandidates,addedintoCanSP((2)Bycheckingwhetherthereisachangeintherebuilt)retrievedin(1)(,whethernewsuper-peercandidatesarerebuiltintoCanSP()ornot),willperformoneoftheoperations(a)or(b)givenbelow.(a)Iftherearenewsuper-peercandidatesaddedinCanSP(notifiesitsneighborsofthenewsuper-peercandidatesandhasitsroledeterminedagain.Specifically,ifisaclientpeerandbelongstoCanSP(changesitsroletobecomeasuper-peer.Ifisasuper-peerbutitdoesnotbelongtoCanSP(itsroletobecomeaclientpeerandtransfersitsclientpeers(ifany)toothersuper-peers.(b)IfCanSP()isnotchanged,proceedsasfollows:ifisasuper-peer,itsearchesandaddsclientpeersuntilisfullyloadedornomoreclientpeerscanbefound.IfisaclientpeerandbelongstoCanSP(changesitsroletobecomeasuper-peer.IfisaclientpeeranddoesnotbelongtoCanSP(),andhasnotjoinedasuper-peer,searchesandjoinsasuper-peer.Notethatinitiallyeachnodetakestheroleofacli-entpeerandsetsitssuper-peercandidatesCanSP()tobeitselfanditssuper-peertobenull.Then,eachnodestartstoperformtheSPSalgorithmdescribedabovetobuildasuper-peeroverlay.Thesuper-peercandidatesofeachnodearerebuiltperiodicallyandtheroleofeachnodecouldbechangeddynamicallyduringthesuper-peeroverlayconstruction.Whenanewnodejoinstheoverlay,itdeclaresitselfasaclientpeer,setsitssuper-peercandidatesCanSP()tobeitselfanditssuper-peertobenull.Then,thisnodeexecutestheSPSalgorithm.2.4.DetaileddescriptionoftheSPSBeforepresentingthedetailsoftheSPSalgorithm,thenotationsusedintheSPSaresummarizedasfollows:etal.JournalofInternetServicesandApplications:4Page3of12http://www.jisajournal.com/content/4/1/4 denotesanodeinan-nodeP2Poverlaynetwork.hasonlyoneoftheexclusiveroles:clientpeerorsuper-peer.hastwooptionalstates,State()={normal,failed}.Theformerdenotesispartoftheoverlaywithoutsufferingfromafailure,andthelatterdenotesthatisfailed.Eachclientpeermaintainsthreesetsofdata:itsneighbors,itssuper-peer,andasetofsuper-peercandidates.Eachsuper-peerinitsturnmaintainsthedataofitsneighbors,asetofsuper-peercandidates,andasetofclientpeers.(2)SP()denotesthesuper-peerofnode(3)C()representsthecapacityofnode.C()istheaggregationofthreeresourcemetrics:computationalresource(CPUcycles,storage),networkbandwidth,andlifespan.Itisrepresentedasfollows:ðÞ¼istheweightoftheresourcemetric,andisthevalueoftheresourcemetric.EachmetricofC)hasadifferentweight,whichcanbesetaccordingtospecificapplications.ThevalueofC()issetinthebe-ginningofbuildingasuper-peeroverlay.Forsimplicity,weomitcomputationdetailsofC()andassignthenumberofclientpeersthatcanmanagetoC(whichdoesnotaffectthepresentationoftheSPS.(4)CanSP()denotesthesetofsuper-peercandidates.Itisusedtojudgetheroleof.Nodeswithhighcapacityarepromotedassuper-peercandidates.Thenumberofsuper-peercandidatesincludedinCanSP()iscomputedas: overlaysizemaximumcapacity.Eachnodestorestheoverlaysizeandcomputesthenumberofsuper-peercandidateswhenbuildingasuper-peeroverlay.Itshouldbenotedthatinreallife,theoverlaysizeisretrievedbyutilizinganunderlyinggossipaggregationprotocoltocomputethenumberofnodesintheoverlay.(5)Ld()denotestheworkloadofnode,whichshowshowmanyclientpeersismanagedby.IftheworkloadLd()islowerthanC(issetasunder-loaded,otherwiseissetasfull-loaded.Figures1and2showthedetailedactionsofaclientpeerandasuper-peerthatarerunningtheSPSalgo-rithmforbuildingasuper-peeroverlay.Table1summa-rizesallthebasicoperationsusedinFigures1and2.AccordingtoFigure1,aclientpeerrunningtheSPSalgorithmactsasfollows:(1)inthecasewhenhasjoinedasuper-peerSP():ifSP()isfailed,callsasuper-peer-failurehandler,otherwisedoesnothing.(2)Inthecasewhenhasnotjoinedasuper-peer,(2.1)checkswhetherthereisamessageaboutafailedsuper-peer.Ifthereissuchamessage,removesthefailedsuper-peerfromCanSP().(2.2)checkswhetherthereisamessageaboutanewsetofsuper-peercandidates.Ifsuchamessageexits,updatesitsCanSP().(2.3)checkswhetherthesuper-peercandidatesofitsneigh-borshavehighercapacitythanitsCanSP().Ifthesuper-peercandidatesofsneighborshavehigherca-pacitythanCanSP(retrievesanewCanSP(basedonsuper-peercandidatesofitsneighborsandhasitsrolejudgedagainaccordingtothenewCanSP(Otherwise,searchesandjoinsasuper-peer.AsshowninFigure2,anunder-loadedsuper-peerrunningtheSPSalgorithmproceedsasfollows:(1)simi-lartotheoperationofaclientpeershowninFigure1,super-peercheckswhetherthereisamessageaboutanewsetofsuper-peercandidates.Ifsuchamessageexits,updatesitsCanSP().(2)Similartotheope-rationofaclientpeershowninFigure1again,super-alsocheckswhethersuper-peercandidatesofits Aclient peerOperation:SP(null State(SP())==failed SPFailureHandler(Do nothing and return.RemoveFailedSPIfExist(UpdSP=RetriveUpdateSPc(UpdateSPCandidates(UpdSPExistBiggerSPCandidate()==true CanSP()=RetriveNewSPCandidates(NotifyNewSPcandidates(CanSP(ChangeRole(CanSP(thenSearch&JoinUnderLoadedSP(ChangeRole( Figure1TheactionofaclientpeerrunningtheSPS.etal.JournalofInternetServicesandApplications:4Page4of12http://www.jisajournal.com/content/4/1/4 neighborshavehighercapacitythanitsCanSP().Ifthesuper-peercandidatesofsneighborshavehigherca-pacitythanCanSP(retrievesanewCanSP()andhasitsroledeterminedbasedonthenewCanSP().Ifcannotkeeptheroleofsuper-peer,transfersitsclientpeers(ifany)toothersuper-peersandchangesitsroletobeaclientpeer.Incontrast,ifsuper-peercandi-datesofsneighborsdonothavehighercapacitythan),theroleofisnotchanged.Then,searchesandaddsclientpeersuntilisfullyloadedornomoreclientpeerscanbefound.NotethattheoperationAddClientnodes()(showninFigure2)employsaconditionaltwo-hopsearchmethodforasuper-peertofindclientpeers.Thatis,increasessearchstepfromonehoptotwohopsintheconditionofaworstcase.Herein,theworstcaseisthatasuper-managessomeclientpeersandfindsthatallneighborsofhavejoinedsuper-peersafteritsearchesitsneighbors.Theworstcasewouldincreasetheconver-gencetimeofbuildingasuper-peeroverlaydramaticallyifonlyone-hopsearchmethodisused.Inthefaceoftheworstcasedescribedabove,ifchangesitsroletobeaclientpeerandsearchesasuper-peer,boththeconvergencetimeoftheSPSalgorithmandthenetworktrafficwouldincrease.Specifically,ononehand,needstotransferitsclientpeerstoothersuper-peers,whichwouldincreasethenetworktraffic.Ontheotherhand,afterchangesitsroletobeaclientpeer,needstoperformtheSPSalgorithmtofindasuper-peer,whichinitsturnwouldincreasethe Asuper-peeris under-loadedOperation:UpdSP=RetriveUpdateSPc(UpdateSPCandidates(UpdSPExistBiggerSPCandidate()==true CanSP()=RetriveNewSPCandidates(NotifyNewSPcandidates(CanSP(TransferClients(ChangeRole(AddClientnodes( Figure2Theactionofasuper-peerrunningtheSPS. Table1TheprimitiveoperationsusedintheSPSalgorithmOperationDescriptionAddClientnodes()Nodeaddsclientnodesuntilisfull-loadedornomoreclientnodescanbefound.Specifically,searchesitsneighborstofindandaddnodes.Afterthat,ifisstillunder-loaded,searchesitsneighborsneighborstofindandaddclientnodes.ChangeRole()Nodechangesitsrole.ExistBiggerSPCandidate(sendsmessagestoitsneighborstocheckwhetheritsneighborssuper-peercandidateshavehighercapacitythanCanSP().Ifthatisthecase,trueisreturned.Otherwise,falseisreturned.NotifyNewSPcandidates(notifiesitsneighborstoupdatetheirsetsofsuper-peercandidatestobeCanSP(RetriveUpdateSPc()Nodecheckswhetherthereisamessageaboutnewsuper-peercandidates.Ifsuchamessageexists,isreturned.Otherwise,nullisreturned.RetriveNewSPCandidates()Nodecomputesitsnewsetofsuper-peercandidatesCanSP()accordingtoitsretrievedsetofsuper-peercandidatesthroughcommunicationwithitsneighborsRemoveFailedSPIfExist().Nodecheckswhetherthereisamessageaboutsuper-peerfailure.Ifsuchamessageexists,thefailedsuper-peercontainedinthemessageisremovedfromthesuper-peercandidatesofSearch&JoinUnderLoadedSP()Nodesendsquerymessagestosuper-peerscontainedinitssuper-peercandidatestocheckthesenodesworkloads.Ifasuper-peerthatisunder-loadedisfound,joinsthissuper-peer.SPFailureHander()Whenthesuper-peerof))fails,removesSP()fromitssetofsuper-peercandidatesandemptiesitssuper-peer.alsonotifiesitsneighborsofthefailureofSP(TransferClients()Whenasuper-peerhastochangeitsroletobeaclientpeer,transfersitsclientpeers(ifany)tosuper-peersthatarerandomlyselectedfromitssetofCanSP(UpdateSPCandidates()Nodeupdatesitssetofsuper-peercandidatestobeUpdSP,whichisanordinarysettostoreupdatedsuper-peercandidates.etal.JournalofInternetServicesandApplications:4Page5of12http://www.jisajournal.com/content/4/1/4 convergencetimeoftheSPS.Incontrast,whenincreasesthesearchstepconditionallytotwohops,afasterconvergencetimeattheexpenseofnetworktrafficisachievedbytheSPS.Specifically,searchestheneighborsofitsneighborstofindmoreclientnodesinthefaceoftheworsecase,whichreducestheconver-gencetimeofbuildingasuper-peeroverlay.Ontheotherhand,onlyalittlemorecommunicationoverheadisgeneratedwhenincreasingthesearchstepconditio-nallytotwohops,becausesuper-peersthatperformthetwo-hopsearchtakeonlyaverysmallportionofthewholepeers.Moreimportantly,ourworkaimstoquicklybuildasuper-peeroverlay.Thus,weemployaconditionaltwo-hopsearchmethodforasuper-peertofindclientpeersinAddClientnodes(3.PerformanceevaluationInthissection,wedescribesimulationsconductedforevaluatingthefeasibilityandperformanceoftheSPSal-gorithm.First,weintroduceexperimentalsettings.Then,weevaluateperformanceoftheSPSfromfouraspects:convergencetime,communicationoverhead,scalability,androbustness,respectively.3.1.ExperimentalsetupWeusePeerSim[28]tocarryoutsimulations.InPeerSim,onesimulationroundmeansthatallthenodesfinishperformingdeployedprotocolsonce.Fourperformancemetricsareemphasizedintheexperiments:(1)con-vergencetimeoftheSPSandtheimpactofparameterse.g.,themaximumcapacityofsuper-peers)ontheSPSconvergencetime,comparedtorelatedworkSG-1[11];(2)communicationoverheadcomparedtoSG-1;(3)sca-labilityincomparisontoSG-1,and(4)theSPSsrobust-nesstofailureofsuper-peerscomparedtoSG-1.Theoverlaysizeforsimulationsissetas10unlessseparatelyspecified.Allthepeerstaketheroleofclientpeerinthebeginningofsimulations.Theinitialoverlaytopologyadoptedinthesimulationisarandomgraph,whereallthepeersarerandomlyconnectedwitheachother.TheinitialrandomgraphtopologyprovidesagoodchancetoverifytheefficiencyoftheSPSbecausetheinitialoverlayisfarfromtheconvergedsuper-peeroverlay.3.2.EvaluationoftheconvergencetimeInthissection,weevaluatehowfasttheSPScanconverge,andhowparametersaffecttheconvergencetimeoftheSPS.Twotypesofdistributionsfornodescapacityareeva-luated:theuniformdistributionandthepower-lawdistri-bution.SimulationresultsaredepictedinFigures3and4.Figure3showstheconvergenceoftheSPS,i.e.,variationofthenumberofclientpeersthathavejoinedsuper-peersasthesimulationgoeson.Itshouldbenotedthatsimulationsconvergeintheconditionthatnomoreclientpeerswilljoinasuper-peer.Specifically,whenthecapacityofpeersfollowstheuniformdistri-bution,ittakesabout7simulationroundsforalltheclientpeerstofinishselectingandjoiningsuper-peersbuildingasuper-peeroverlay).Whenthecapacityofpeersfollowsthepower-lawdistribution,ittakesabout4rounds.TheresultsshowthattheSPSperformswellwhenmeasuredwiththeconvergencetimeforbuildingasuper-peeroverlay.Atsimulationround4,clientpeersthathavejoinedsuper-peerinuniformdis-tributionarealmostthesameasthoseinpower-lawdistribution.However,inuniformdistribution,theSPSalgorithmcontinuesrunninguntilbysimulationround7becausetherearestillnodesthathavenotjoinedsuper-peersatsimulationround4.Thisresultshowsthatdifferentdistributionsofpeerscapacityleadtodif-ferentconvergencetimes(i.e.,differentnumbersofneededsimulationrounds).Inotherwords,distributionofpeershasanimpactontheconvergencetime(i.e.,simulationrounds)oftheSPSalgorithm[29].Thenumberofselectedsuper-peersinpower-lawdistribu-tionis370accordingtotheSPSalgorithm.Incontrast,thenumberofselectedsuper-peersinuniformdistribu-tionisonly201.Thereasonisthatinpower-lawdistri-bution,onlyasmallportionofpeershavearelativelyhighcapacity,andmoresuper-peersareselectedformanagingclient-peerswhenbuildingthesuper-peeroverlay.Theresultshowsthatthenumberofselectedsuper-peersisrelatedtothedistributionofpeerscapacity.Figure4showstheimpactofsuper-peersmaximumcapacityontheSPSsconvergencetimecomparedtoSG-1[11].Figure4adepictsthenumberofselectedsuper-peersinthetargetsuper-peeroverlayasmaximumcapacityofsuper-peersincreases.Figure4billustratesthenumberofneededsimulationroundsforconvergenceasmaximumcapacityofsuper-peersincreases.TheresultshowninFigure4aisasexpected:thelargerthemaximumcapacityofsuper-peers(i.e.,asuper-peercanmanagemoreclientpeersaccordingtothecapacitydefinedinSection2.2),thefewersuper-peersareselectedintheconvergedsuper-peeroverlay.AccordingtoFigure4b,whenthemaximumcapacityofsuper-peersincreases,moresimulationroundsareneededforconvergence.Specifically,theSPStakesafewmoresimulationroundstoconverge(from8to9rounds),butSG-1gainsanobviousincreaseinsimula-tionroundsforconvergence(from8to14rounds).ThisresultshowsthattheSPSislessaffectedbythevariationofsuper-peersmaximumcapacitycomparedtoSG-1.ThereasonfordifferentconvergencetimesbetweentheSPSandSG-1isthatdifferentsuper-peerselectionandsearchmethodsareusedintheSPSandSG-1.etal.JournalofInternetServicesandApplications:4Page6of12http://www.jisajournal.com/content/4/1/4 Specifically,whenthemaximumcapacityofsuper-peers increases( i.e., asuper-peercanmanagemoreclient peers),thenumberoftherequiredsuper-peersde- creases.IntheSPS,asetofsuper-peercandidatesis builtforselectingpeerswithveryhighcapacityassuper- peers,andaconditionaltwo-hopsearchmethodis employedforsuper-peerstoquicklyfindclientpeers. Evenwhenthenumberoftherequiredsuper-peersde- creases,mostofthesuper-peerscanstillbeselected throughsuper-peercandidatesduringthefirstfewsimu- lationrounds.Assoonassuper-peersareselected,client peerscanquicklyjoinasuper-peerandsuper-peerscan quicklyfindandaddclientpeerswithaconditionaltwo- hopsearchmethod(whichmakestheSPSconvergeeven faster).However,forSG-1,whenthenumberofthere- quiredsuper-peersdecreases,moresuper-peersneedto changetheirroletobeclientpeers,sincetheinitialrole ofallthepeersisasuper-peer.Moreover,super-peers onlycomparetheircapacitieswithoneoftheirneigh- borstodeterminetheirroleandsearchclientpeers amongitsone-hopneighbors.Thus,itrequiresmore simulationroundsofmessageexchangestofinish 0 1 2 3 4 5 6 7 8 9 0 0.5 1 1.5 2 2.5 3 3.5 4 4.5 5 5.5 6 6.5 7 7.5 8 8.5 9 9.5 10 10.5 11 x 10 4 Simulation Round Client peers that have joined super-peers Uniform Powerlaw Figure3 TheconvergenceoftheSPSduringthesimulation. 100 200 300 400 500 600 7 8 9 10 11 12 13 14 15 Maximum capacity of super-peers e c n e g r e v n o c r o f d e d e e n s d n u o r n o i t a l u m i S SPS SG-1 ab Figure4 (a)Selectedsuper-peerswithvariedmaximumcapacityofsuper-peers.(b)Theimpactofsuper-peers maximumcapacityon theconvergencetime. Liu etal.JournalofInternetServicesandApplications 2013, 4 :4Page7of12 http://www.jisajournal.com/content/4/1/4 selectingsuper-peers.Therefore,ittakeslongerforSG-1toconvergecomparedtotheSPSwhenthemaximumcapacityofsuper-peersincreases.3.3.EvaluationofthecommunicationoverheadInthissection,weevaluatethecommunicationoverhead,i.e.,thenumberofmessagesthataretransmittedbetweenpeersduringasuper-peeroverlayconstruction.Threetypesofcommunicationoverheadareevaluated:(1)thetotalnumberofprobespernodeforqueryabouttheloadofneighborsuper-peers,(2)thenumberofgossipmes-sagespernodeforbuildingsuper-peercandidates,and(3)thenumberofclientpeertransferspernode.Herein,thetermclientpeertransfermeansthatclientpeersaretrans-ferredtoothersuper-peerswhentheirsuper-peerschangetheirrolestobeaclientpeer.Forsimplicity,weusetheaveragevalueofthesethreetypesofcommunicationover-headforpresentingresults.Figure5showstheresultsandthecomparisonbetweentheSPSandSG-1.AccordingtoFigure5,onecanfindoutthat:(1)fortheSPSalgorithm,thenumberofprobesisindependentfromtheoverlaysizeandapproximatelyoneprobepernodeissentforqueryaboutworkloadofsuper-peer(asshowninFigure5a.(2)Takingaccountofthetotalcom-municationoverhead(thesumofthethreetypesofcommunicationoverhead),asshowninFigure5aandb,theSPSiscomparabletoSG-1.Specifically,thenumberofcommunicationmessagesgeneratedintheSPSforbuildingsuper-peercandidatespernodeisalittlebitlarge.However,thenumberofclientpeertransfersintheSPS(0.04onaverage)ismuchsmallerthanthatofSG-1(9.5onaverage).Inotherwords,maintainingthesetofsuper-peercandidatesintheSPSgeneratesmorecommunicationoverhead;neverthelessitmakesasignificantpositiveeffectonreducingthenum-berofclientpeertransfers(asshowninFigure5b).Thereasonforthemuchlowernumberofclienttrans-fersintheSPScomparedtoSG-1isasfollows:theSPSselectspeerswiththehighestcapacityamongitsneigh-borstobesuper-peercandidatesandthenpicksupsuper-peersfromthesuper-peercandidates.Thus,onlyasmallportionofsuper-peerschangetheirrolestobeaclientpeerandthenumberoftransferredclientpeers(becauseofrolechangeofthesesuper-peers)islow.However,inSG-1,onepeerexchangesgossipmessageswithrandomlyselectedneighborstodecidewhetheritkeepstheroleofsuper-peerorchangesitsroletobeaclientpeer.Thus,onepeercouldfrequentlychangeitsrolewhenitcomparesitscapacitywithdifferentneigh-bors.Consequently,clientpeersmanagedbythesesuper-peersgeneratealargenumberofclientpeertransfers.3.4.EvaluationofthescalabilityInthissection,weverifythescalabilityoftheSPSintermsofconvergencetime.Inotherwords,weexaminethevariationoftheSPSsconvergencetimewhilethenumberofpeersincreasesfrom1,000to100,000.Twotypesofdistributionsforpeerscapacityareexamined: 5601 10000100000 p eers in the overla y 1000100001000000 1.0 1.5 2.0 2.5 3.0 3.5 4.0 4.5 5.0 5.5 6.0 6.5 7.0 7.5 8.0 8.5 9.0 9.5 00.020.04 peer transfersSPS clientpeer transfersThe number of client peer transfers Figure5(a)Communicationoverheadofprobesandbuildingsuper-peercandidates.(b)Communicationoverheadofclientpeertransfers.etal.JournalofInternetServicesandApplications:4Page8of12http://www.jisajournal.com/content/4/1/4