Project JXTA 2.0 Super-Peer Virtual Network by ewghwehws

VIEWS: 9 PAGES: 26

									                   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
    • Distributed resource sharing: SET@Home, Avaki, Entropia
    • Content distributed networks: OpenColaBlue Falcon Network,
      Konitiki
    • P2P communications: AOL instant Messenger, Yahoo!
      Messenger, ICQ, Jabber, MSN Messenger
    • Collaboration application: Hive, Groove, myJXTA
                                                                   2
                             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




                                                                3
                        JXTA (cont’d)
   Peer

   Peer Group

   Endpoint
    • 溝通基本定址方法,實作通訊協定

   Pipe

   Advertisement

   Rendezvous Peer
    • 處理其他查詢要求的點
    • relay

   Router Peer
    • 支援endpoint protocol的peer

   Gateway Peer
    • 中繼點
    • 轉傳訊息而已
                                        4
                  Advertisements
   Module Class Advertisement
    • 定義module的行為

   Module Specification Advertisement
    • 定義module規格,定義實作資訊

   Module Implementation Advertisement
    • 特殊language的reference,可用此來執行程式碼

   Pipe Advertisement

   PeerGroup Advertisement

   Peer Advertisement

   Endpoint Advertisement                5
         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)




                                       6
   Peer Discovery Protocol
    • 允許Peer去探索其它點的advertisement (peer,
      peergroup, service, pipe)




   Peer Resolver Protocol
    • 允許peer傳送search query給其他點
    • Request/Response
    • Used by Peer Discovery Protocol




                                          7
   Peer Information Protocol
    • 允許peer了解其他peer的state information
    • Like ping




   Peer Membership Protocol
    • 允許peer加入或退出peergroup
    • 識別及授權




                                         8
   Pipe Binding Protocol
    • 可定址的訊息傳送
    • Virtual communication channel



   Rendezvous Protocol
    • 負責在JXTA group內傳播訊息
    • 讓group內的peer可以傳送及接收訊息,並且可以控制訊
      息的傳播方式


   Peer Endpoint Protocol
    • 用來建立連線徑,以傳送訊息至其它點
    • 路由

                                      9
                                       API
                                        Module
                                   net.jxta.platform




                                        Service
                                    net.jxta.Service
RendezvousService
                                                                     ResolverService




  EndpointService                                             PeerInfoService


                    PipeService                   DiscoveryService
                                  MembershipService
                                                                                 10
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)

                                            26

								
To top