ebook img

Performance scalability of the JXTA P2P framework PDF

25 Pages·2017·0.53 MB·English
by  
Save to my drive
Quick download
Download
Most books are stored in the elastic cloud where traffic is expensive. For this reason, we have a limit on daily download.

Preview Performance scalability of the JXTA P2P framework

Performance scalability of the JXTA P2P framework Gabriel Antoniu, Loïc Cudennec, Mike Duigou, Mathieu Jan To cite this version: Gabriel Antoniu, Loïc Cudennec, Mike Duigou, Mathieu Jan. Performance scalability of the JXTA P2P framework. [Research Report] RR-6064, 2006, pp.24. ￿inria-00119916v3￿ HAL Id: inria-00119916 https://hal.inria.fr/inria-00119916v3 Submitted on 14 Dec 2006 (v3), last revised 20 Dec 2007 (v5) HAL is a multi-disciplinary open access L’archive ouverte pluridisciplinaire HAL, est archive for the deposit and dissemination of sci- destinée au dépôt et à la diffusion de documents entific research documents, whether they are pub- scientifiques de niveau recherche, publiés ou non, lished or not. The documents may come from émanant des établissements d’enseignement et de teaching and research institutions in France or recherche français ou étrangers, des laboratoires abroad, or from public or private research centers. publics ou privés. INSTITUTNATIONALDERECHERCHEENINFORMATIQUEETENAUTOMATIQUE Performance scalability of the JXTA P2P framework GabrielAntoniu,Loic Cudennec,MikeDuigou,MathieuJan N° 1 December2006 ThèmeNUM (cid:13) G N apport E + R F (cid:13)de recherche(cid:13) 64-- 0 6 R- R A/ RI N I N R S I 9 9 3 6 9- 4 2 0 N S S I Performance scalability of the JXTA P2P framework GabrielAntoniu(cid:3),LoicCudennec(cid:3),MikeDuigouy,MathieuJan(cid:3) ThèmeNUM—Systèmesnumériques ProjetsParis Rapportderecherche n°1—December2006—21pages Abstract: Features of the P2P model, such as scalability and volatility tolerance, have motivated its use in distributed systems. Several genericP2P librarieshave been proposed forbuilding distributed applications. However, veryfew experimentalevaluationsof these frameworks have been conducted, especially at large scales. Such experimental analyses are important, since they can help system designers to optimize P2P protocols and better understand the benefits of the P2P model. This is particularly important when the P2P model is applied to special use cases, such as grid computing. This paper focuses on the scalability of two main protocols proposed by the JXTA P2P platform. First, we provide a detailed description of the underlying mechanisms used by JXTA to manage its overlay andpropagatemessagesoverit:therendezvousprotocol. Second,wedescribethediscovery protocol used to find resources inside a JXTA network. We then report a detailed, large- scale, multi-site experimental evaluation of these protocols, using the nine clusters of the FrenchGrid’5000testbed. Key-words: peer-to-peer, largescale,experimentation,peerview, discovery This workhas beensupportedby aSun Microsystems-INRIA scientific collaborationcontract (2005- 2008)andbytheRegionalCouncilofBrittany,France. (cid:3)IRISA/INRIA,CampusdeBeaulieu,35042Rennes,{Gabriel.Antoniu}{Loic.Cudennec}{Mathieu.Jan}@irisa.fr yProjectJXTA,SunMicrosystems,SantaClara,CA,U.S.A,{Mike.Duigou}@sun.com UnitéderechercheINRIARennes IRISA,CampusuniversitairedeBeaulieu,35042RennesCedex(France) Téléphone:+33299847100—Télécopie:+33299847171 Evaluation du passage à l’échelle de la plate-forme P2P JXTA Résumé : Les propriétés du modèle pair-à-pair (P2P), comme le passage à l’échelle et la tolérance à la volatilité, ont largement motivé son utilisation dans les systèmes distribués. Plusieurs librairies P2P génériques ont été proposées pour construire des applications dis- tribuées. Cependant, très peu d’évaluations expérimentales de ces infrastructures ont été conduites à large échelle. Ce type d’expérimentation est pourtant important pour aider les concepteurs de systèmes P2P à optimiser leurs protocoles et ainsi mieux appréhender les bénéfices du modèle P2P. Ceci est particulièrement vrai dans le cas d’utilisation du mo- dèleP2Pdanslecontexteducalculsurgrille. Cepapiers’intéresseàl’aptitudedupassage à l’échelle de deux protocoles proposés par la plate-forme P2P JXTA. Dans un premier temps, nous proposons une description détaillée des mécanismes utilisés par JXTA pour constituer son réseau logique et y propager des messages : le protocole de rendez-vous. Dans un second temps, nous décrivons le protocole de découverte des ressources. Enfin, nous présentons une évaluation expérimentale détaillée à grande échelle de ces protocoles enutilisantlesneufsitesdelagrilleexpérimentalefrançaiseGrid’5000. Mots-clés: pair-à-pair, largeéchelle,expérimentation,vuelocale,découverte PerformancescalabilityoftheJXTA P2Pframework 3 1 Introduction Programming distributed applications has always been a difficult task. This difficulty is further increased when systems target a large scale (i.e. millions of users). While trying to address this problem, the Peer-to-Peer (P2P) approach is receiving a growing interest thanks to its properties, primarily scalability and volatility tolerance. Consequently, by usingaP2Pmodel,applicationscanhopetoofferhigherscalabilityandavailabilitydespite dynamic changes in the underlying physical infrastructure. The P2P model was initially usedforlarge-scaleapplicationsoverInternet(suchasfilesharing,instantmessaging,etc.), but has also been found attractive in the field of distributed scientific simulation on grid infrastructures. As an example, it can typically be used in connection with grid resource managementmiddleware[9,23]. Recently, a number of P2P libraries (e.g. Bamboo [28], FreePastry [29], JXTA [27], etc.) providingbasicsupportforP2Pinteraction(forexamplediscoverymechanisms)have been made available. Such libraries are intended to serve as generic building blocks for higher-level P2P services and applications. Among these P2P libraries, the JXTA frame- workisemergingasadefactostandardforbuildingservicesorapplicationsintheindustrial world[30]. Itisalsousedinvariousresearchprojects,[1,2,21]tociteafew(see[31]fora moredetailedlist). However, before using such generic layers, it is important to analyze their suitability with respect to the requirements of the target P2P service or application. Most published papers introducing these libraries give the cost of basic operations (e.g. routing and dis- covery) through complexity analyses and simulations. These theoretical evaluations are certainly necessary, but they clearly are only a preliminary step. To fully understand the behavior of the proposed P2P libraries, experimental evaluations on existing distributed testbedsareunavoidable. Suchpracticalevaluationsmakeitpossibletobettertunethepro- posedalgorithms,dependingforinstanceonthetestbedscaleorontheunderlyingnetwork topologytargetedbyapplications. Forinstance,thecurrentconvergence ofgridcomputing andP2Pcomputing[10]callforpreciserequirementsandguaranteestobedefinedforP2P algorithms. This makes it possible to better understand the benefits of the P2P model in suchparticularusecases. In this work, we focus on the performance of the JXTA protocols. JXTA is an open- sourceinitiative, sparkedbySunMicrosystems. Itwasfoundedinordertodevelopasetof standardopenprotocolsforP2Pnetworkapplications.Tothebestofourknowledge,itisthe most advanced framework currently available for building services and applications based ontheP2Pmodel. Inits2.0version,JXTA consistsofaspecificationofsixlanguage-and platform-independent, XML-based protocols [32] that provide basic services common to mostP2Papplications,suchaspeer grouporganization, resourcediscovery, andinter-peer RR n°1 4 G.Antoniu&L.Cudennec&M.Duigou&M.Jan communication. A more detailed overview of JXTA can be found in [27]. In this paper, wefocusontheperformanceanalysisoftheso-calledLoosely-ConsistentDistributedHash Table (LC-DHT) [26] at a large scale. This mechanism has been introduced in JXTA 2.0 forresourcediscovery. InordertoevaluatethecostofthisLC-DHT,webenchmarkthediscoveryprotocolfrom anapplicationpointofview. However,wealsoevaluatetheunderlyingalgorithmsusedby the LC-DHT, i.e. the rendezvous protocol, used to organize the JXTA overlay and propa- gate queries. We perform multi-site tests over the Grid’5000 testbed [6], an experimental gridplatform consistingof 9 sitesgeographicallydistributed in France. Grid’5000aimsat gatheringatotalof5,000CPUsinthenearfuture. Wevaryparametersofthesealgorithms: the overlay size and some parameters controlling the algorithm behavior. We also experi- menttwooverlaytopologies: chainsandtrees. ThesemetricsareappliedontheCreference implementationoftheJXTA specifications,knownas JXTA-C [25]. Theremainderofthepaperisorganizedasfollows. Section2introducesrelatedwork: wediscusssomeexistingperformanceevaluationsofDHTsaswellasof JXTA. Section3 provides an overview of JXTA protocols stack, with a focus on protocols involved in the managementoftheLC-DHTevaluatedinourexperiments. Section4presentsanddiscusses scalabilityexperimentsfortherendezvous protocolandforthediscoveryprotocol. Finally, Section5concludesthepaperandsuggestsdirectionsforfurtherresearch. 2 Related work PapersintroducingDHTssuchasPastry[19],have evaluatedbenefitsofthisapproach,but mainlythroughtheoreticalanalysesandsimulations.Themostcommonusedmetrictoeval- uateDHTisthenumberofhopsrequiredtolookforaresourceinagivenoverlay. Because of theuseof simulations,past evaluationsusuallyassumeastaticnetwork. Morerecently, the impact of realistic conditions, such as for instance churns, on the performance of the look up operation have the subject of many papers [16,18,22]. Such work are sometimes based on theoretical analyses [17], but more usually on laws modeling the session length of a peer [16,18] as well as on traces of existing deployed systems [22]. However, note thattraces aresubjectto inaccuracies: onlya subsetof thenetwork has beenexploredina time-constrainedperiod and lookup patterns might therefore not be representative. Large- scale experimental evaluations of DHTs in controlled environments are therefore required tocompareanyproposedimprovementsinafairmanneraswellasto reportperformances of DHTs using traditional network metrics, such as latency, bandwidth, etc. To the best of our knowledge, only [8] provides such experimental evaluations, using 425 peers over INRIA PerformancescalabilityoftheJXTA P2Pframework 5 150 nodes of the PlanetLab[7] testbedand takes into account underlying network charac- teristicsintheusedmetrics. IntheJXTAfield,variousimplementationsoftheJXTAspecificationhavebeenevalu- ated[11,12,20]andcomparedtoothersystems[5,14](especiallyasregardsJXTA-J2SE). Howevermostoftheseevaluationswereperformedatapplication-level, withoutanyanaly- sisoftheinternalbehaviorofJXTA’sprotocols. Suchananalysishasrecentlybeenprovided fortheperformanceofJXTA’scommunicationlayers[3,4]. Thegoalofthispaperistobring asimilarcontribution byanalyzingandevaluatingJXTA’sLC-DHT mechanism,onwhich reliesJXTA’sprotocolsforresourcepublishinganddiscovery. TheLC-DHThasbeenintroducedin JXTA-J2SE andJXTA-C startingfromversions 2.0 and 2.2 respectively. The approach has been compared to a classical DHT-based ap- proachin[24],bymodifyingJXTA’sdiscoveryprotocol. However,noperformanceevalua- tionwasreported. In[13]authorscomparetheLC-DHTapproachtoacentralizedorflood- ing approach (which was the strategy used by JXTA 1.0), with respect to memory usage, reliabilityandqueryresponsetimefordifferentconfigurationsofa JXTA virtualnetwork. BenchmarkswereperformedagainstJXTA-J2SE.However,nobenchmarkshavebeenper- formedatalarge-scale, as theexperimentalconfigurationsusedupto32peersonly, based onaLC-DHTdistributedon4peers. Oneofthemaingoalsofthispaperispreciselytotest thescalabilityoftheLC-DHTapproach,usingmuchlargerconfigurations. 3 Description of JXTA 3.1 Generaloverview JXTA relies on a set of basic concepts: a “peer” is an entity able to communicate by ex- changingmessages;a“peergroup”(alsocalledanoverlayintheremainderofthispaper)is asetofpeerswithacommoninterest,andprovidingcommonservices;an“advertisement” isanXMLdocumentdescribingaresource. JXTAspecifiesasetoflanguage-andplatform- independent XML-based protocols [32]. These protocols are used inside each peer group toprovidearichsetofbuildingblocks(calledservices)forthemanagementofpeer-to-peer systems: resourcediscovery, overlayself-configuration,peer-to-peercommunication,etc. Figure 1 shows the stack of protocols defined by JXTA. Above the physical transport protocols,theendpointroutingprotocol(ERP)isusedtofindavailableroutesfromasource peerto adestinationpeer. Therendezvousprotocol is responsibleformessagedistribution and topologymanagement. On top of the rendezvous protocol, JXTA uses a standardized query/responseprotocol: theresolverprotocol. Itprovidesageneric,topology-independent query/response interface which other higher-level services may use to invoke various P2P RR n°1 6 G.Antoniu&L.Cudennec&M.Duigou&M.Jan Peer discovery protocol Peer discovery protocol Peer resolver protocol Peer resolver protocol Rendezvous protocol Rendezvous protocol Endpoint routing protocol Endpoint routing protocol Physical transport protocol Physical transport protocol TCP, HTTP, etc Figure1: Partialviewof JXTA protocolstackasdefinedbythespecification. operations. Forinstance,thediscovery protocoldefinesonesuchservice,whichprovidesa specificAPIforpublishinganddiscovery,whichisimplementedusingtheresolverprotocol. The discovery protocol is used to publish and to find available resources within a JXTA overlay. It relieson theuse of resource advertisements, whoselife duration cancontrolled viathediscoveryAPI.Discoveryresourceannouncementsandqueriesareforwardedbythe underlyingresolver protocoltotheappropriaterendezvous peers. In this paper, we focus on the rendezvous protocol and on the discovery protocol. Be- fore introducing in more details these two protocols, let us stress that, for each protocol, JXTA onlydefinesthesyntaxforqueriesandresponses;itdoesnotspecifythebehaviorof algorithmsusedbyimplementationswillingtobecompliantwiththeprotocolspecification. For instance, various message routing approaches can be used by JXTA implementations, makingJXTA theperfectframeworkfortestingtopology-basedroutingalgorithms. More- over, the specification does not define the structure of a JXTA-based overlay. In current implementations(JXTA-CorJXTA-J2SE),aJXTAoverlayisastructurednetworkbased ontheuseofmainlytwopeertypes: super-peers, commonlyrendezvouspeers,andregular peers,called edge peers. Eachedgepeer is attached to a rendezvous peer. Queriesand re- sponsesareforwardedamongthesuper-peersusingaLoosely-ConsistentDistributedHash Table (LC-DHT), whose behavior is detailed in Section 3.3. However, note that alternate implementationsofJXTA mayprovidedifferenttypesofoverlays. Let S be a JXTA overlay, composed of r rendezvous peers and e edge peers. If ren- dezvouspeersarenotedR ,andedgepeersarenotedE ,thenSisdefinedasfollows: i j S = fR ;i = 1::rg[fE ;j = 1::eg (1) i j INRIA PerformancescalabilityoftheJXTA P2Pframework 7 3.2 Thepeerview protocol: managingtheoverlay As stated by the JXTA specifications, the rendezvous protocol is divided into three sub- protocols: 1. thepeerview protocol, usedbyrendezvous peerstoorganizethemselves bysynchro- nizingtheirviewsofeachother; 2. the rendezvous lease protocol, used by edge peers to subscribe to the reception of messagespropagatedbytherendezvous peers; 3. therendezvouspropagationprotocol,whichenablespeerstomanagethepropagation ofindividualmessageswithinagroup. Inthispaper,wefocusonthefirstprotocol: thepeerviewprotocol. Thisprotocolallows rendezvous peerstoworktogetherto formaso-calledglobalpeerview: anorderedlist(by peer ID) of peers currently acting as rendezvous peers within a given group. This list is usedforroutemessageswithinthatgroup. Eachrendezvous peermaintainsalocalversion of the list which representsits view of the global peerview. Let g be the size of the global peerview foragivenpeergroupS,andl thesizeoflocalpeerview ofrendezvous peerR . i i LetPV bethelocalpeerviewofrendezvous peerR andTthesetofvaluesthatcantake Ri i thetimeduringagivenexecutionofaJXTAapplication. Thegoalofthepeerviewprotocol is to form and keep the individual local peerviews consistent across all rendezvous peers participatinginagivengroup. Thiscanbetranslatedinthefollowingproperty: 9t1 2 T;8t2 2 T;t2 > t1;8Ri 2S :li = g (2) WeshallseeinSection3.3thatthisconsistencyisrequiredforanoptimalquerypropagation overaJXTA overlay. Toachievethisgoal,rendezvouspeersperiodicallyprobeothermembersofthepeerview. Algorithm 1 shows the main steps of this process used by JXTA-C for this purpose. The algorithmis run byevery rendezvous peer of S. The elapsedtimebetween two iterations of the algorithm is controlled by the PEERVIEW_INTERVALconstant (set by default to 30 seconds). Note that the algorithm used by JXTA-J2SE is slightly different, but the variation in behavior does not appear to be significant. Apart from the peer running the algorithm,twootherpeersaremainlyinvolved: 1)therendezvous peerwhosepeerIDim- mediately preceeds the local peer ID in the sorted list of peer IDs, noted as lower_rdv in the algorithm and 2) the rendezvous peer whose peer ID immediately follows the local peer ID in the same list, noted as upper_rdv in the algorithm. Theses two rendezvous peers, if present (peers at each end of the sorted list will have only one peer to probe), are RR n°1

Description:
scalability of two main protocols proposed by the JXTA P2P platform. papers introducing these libraries give the cost of basic operations (e.g. routing .. these classical DHTs showed that their maintenance mechanisms are unable
See more

The list of books you might like

Most books are stored in the elastic cloud where traffic is expensive. For this reason, we have a limit on daily download.