1 / 26

JXTA Project JXTA 2.0 Super-Peer Virtual Network

JXTA Project JXTA 2.0 Super-Peer Virtual Network. Presented by Chin-Yi Tsai. P2P. Peer-to-Peer Computing 運算風格 使網路更具對稱性 P2P example Gnutella ( 分散式 ) Napster ( 集中式 ) P2P Application Consumer file sharing: Gnutella , FastTrack , Napster

zlhna
Télécharger la présentation

JXTA Project JXTA 2.0 Super-Peer Virtual Network

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. JXTAProject JXTA 2.0 Super-Peer Virtual Network Presented by Chin-Yi Tsai

  2. P2P • Peer-to-Peer Computing • 運算風格 • 使網路更具對稱性 • P2P example • Gnutella (分散式) • Napster (集中式) • P2P Application • Consumer file sharing: Gnutella, FastTrack, Napster • Distributed resource sharing: SET@Home, Avaki, Entropia • Content distributed networks: OpenColaBlueFalconNetwork, Konitiki • P2P communications: AOL instant Messenger, Yahoo! Messenger, ICQ, Jabber, MSN Messenger • Collaboration application: Hive, Groove, myJXTA

  3. JXTA • Projext JXTA was initiated to standardize a common set of protocols for building P2P application. • JXTA目標 • 作業系統獨立性 (Windows and UNIX) • 語言的獨立性 (C or Java Programming Language) • 提供P2P應用程式可用的服務及基礎架構 (RMI and WSDL) • Software Architecture

  4. JXTA (cont’d) • Peer • Peer Group • Endpoint • 溝通基本定址方法,實作通訊協定 • Pipe • Advertisement • Rendezvous Peer • 處理其他查詢要求的點 • relay • Router Peer • 支援endpoint protocol的peer • Gateway Peer • 中繼點 • 轉傳訊息而已

  5. Advertisements • Module Class Advertisement • 定義module的行為 • Module Specification Advertisement • 定義module規格,定義實作資訊 • Module Implementation Advertisement • 特殊language的reference,可用此來執行程式碼 • Pipe Advertisement • PeerGroup Advertisement • Peer Advertisement • Endpoint Advertisement

  6. JXTA Communication Protocol • Peer Discovery Protocol (PDP) • Peer Resolver Protocol (PRP) • Peer Information Protocol (PIP) • Peer Membership Protocol (PMP) • Pipe Binding Protocol (PBP) • Rendezvous Protocol (RVP) • Peer Endpoint Protocol (PEP)

  7. Peer Discovery Protocol • 允許Peer去探索其它點的advertisement (peer, peergroup, service, pipe) • Peer Resolver Protocol • 允許peer傳送search query給其他點 • Request/Response • Used by Peer Discovery Protocol

  8. Peer Information Protocol • 允許peer了解其他peer的state information • Like ping • Peer Membership Protocol • 允許peer加入或退出peergroup • 識別及授權

  9. Pipe Binding Protocol • 可定址的訊息傳送 • Virtual communication channel • Rendezvous Protocol • 負責在JXTA group內傳播訊息 • 讓group內的peer可以傳送及接收訊息,並且可以控制訊息的傳播方式 • Peer Endpoint Protocol • 用來建立連線徑,以傳送訊息至其它點 • 路由

  10. API Module net.jxta.platform Service net.jxta.Service RendezvousService ResolverService EndpointService PeerInfoService PipeService DiscoveryService MembershipService

  11. Super-Peer Virtual Network • The Project JXTA protocols establish a virtual network overlay on top of the Internet, allowing peers to directly interact and self-organize independently of their network connectivity and domain topology. • To discover and interact with each other in an ad hoc and decentralized manner.

  12. Super-Peer Virtual Network (cont’d) • The JXTA 2.0 release is making a stronger differentiation in the way super-peers as relay and rendezvous behave and interact with edge peers. • The JXTA 2.0 implementation build upon 5 virtual network abstraction in JXTA 1.0. • JXTA IDs • 128-bits random UUID • Advertisements • All network resources in JXTA network, such as peers, peergroup, pipes, and services are represented by advertisements. • XML documents

  13. Virtual network abstraction • Uniform peer addressing • Peer ID, and its associated peer endpoint • Peergroup • Dynamically self-organize into protected domain called peergroup • Advertisement • XML document • Publish and discover • Resolver • Universal binding mechanism • Peer name -> DNS • All binding operations are implemented as discovery or search of one or more XML documents • Project JXTA does not specify how the search of advertisement is performed • Pipe • Virtual communication channel • Point-to-point pipe • Propagate pipe

  14. Rendezvous Super-Peers • The core resolver infrastructure provides the ability to send and propagate queries, and receive responses. • The Projext JXTA provides a default resolver policy based on Rendezvous super-peers.

  15. Rendezvous just maintain an index of advertisements published by their edge peers. • Scalable • Reduce the problem of caching out-of-data advertisement • Edge peer maintain special relationship with their rendezvous peers. • The Shared Resource Distributed Index (SRDI) service is used by edge peers to index their advertisements on rendezvous. • Only rendezvous peers are involved in the propagation of advertisement queries.

  16. A loosely-Consistent Rendezvous Network • Rendezvous super-peers organize themselves into a loosely-coupled network.

  17. Edge Peer Rendezvous Connection • Local cache for any rendezvous advertisement • IP multicast / peergroup pipe • Query one of the seeding rendezvous • Become a rendezvous

  18. Rendezvous Propagation

  19. Relay Super-Peers • The Projext JXTA network introduces the notation of super-peers called relay peers for bridging peers that do not have direct physical connectivity. • Relay peers provide the ability to spool messages for unreachable or temporarily unavailable edge peers. • Rely peers play the role of landmarks facilitating the routing of messages between far away, and non-reachable peers. • Relays only maintain states for their edge peers and agreed upon lease period.

  20. Message and Credentials • Message are the basic unit of data exchange between peers.

  21. PeerGroup • Main motivations for creating peergroups • To create secure domain for exchanging secure contents • To create a scoping environment • To create a monitoring environment

  22. Pipes • Pipes are virtual communication channels used to send and receive messages between services and applications. • Input pipe • Output pipe • The pipe binding consists of searching and connecting the two or more ends of a pipe.

  23. JXTA J2SE Reference Implementation

  24. Conclusion • To standardize a common set of protocols needed to build peer-to-peer applications. • Virtual network • Abstraction • Uniform peer ID addressing • Peergroups • Advertisement • Resolver • Pipes that provide a generic infrastructure to deploy P2P service and application.

  25. Various P2P system • DHT (Distributed Hash Table) • RDF / metadata and search problem • Network topology for super-peers when searching or querying • UML <-> Metadata(RDF, Ontology)

More Related