熱點推薦:
您现在的位置: 電腦知識網 >> 編程 >> Java編程 >> Java高級技術 >> 正文

JXTA概念介紹(翻譯)

2013-11-23 19:53:49  來源: Java高級技術 

  . JXTA定義
  JXTA是深入的特別的為了實現pear to pear網絡計算而設計的一組(種)協議使用JXTA協議pears能夠自己組織和配置自己的pear groups而脫離現在的互聯網並且不需要實現集中管理的架構(集中管理架構流行於現在很多pp軟件)
  
  . JXTA 概念
  Pear同位體
  一個可以進行虛擬通信的點可以是一台電腦一個電話pda等一台設備也可以有多個pear(雖然這是個不好的設計但是對於debuging來說很有用)
  每一個同位體能夠和一些服務聯系在一起比如路由網關rendezvous等等這些服務提供了一些比如搜索和通訊的服務
  不是說所有的同位體都要實現這些服務但是有一部分實現這些服務確保整個網格的運行還是有必要的
  比較通常的來講一個設備上一般只有一個pear比如進行分布搜索內容共享帶寬共享等這樣是有好處的然而並不排除一個設備上多個pear因為pear是一個個分開的實體多個pear並沒什麼問題只是會多消耗一些資源有幾種情況我們可以使用一個multipear的設備
  . 提供proxy服務
  . 與已經存在的服務器建立接口
  但是這個已經不必要了可以由其他方法實現比如基於pp的分布式系統所以我們盡量不要建立multi-sever的設備違背true pp的思想
  
  Pear Group同位體組
  一個Pear Group是提供一個通用服務的同位體的集合
  由於安全以及隱私等方面的原因可以組成一個pear group這個pear group是實現了安全和加密等類似於一個VPN
  
  Endpoint端點
  端點是JXTA的基本的尋址形式一個端點是某個同位體實現了某種協議的地址一個同位體可以實現多種協議所以也就可能擁有多個端點
  最簡單的端點的例子就是ip地址和port
  
  Pipe管道
  管道在JXTA中是最基本的概念是對等點之間的數據傳輸的主要方式對等管道協議(PBP)明確規范了對等管道的綁定解析響應
  有兩種形式
  . 點對點形式
  . 廣播形式
  
  Endpoint and Pipes:端點和管道
  一個同位體可能含有多個端點-因為實現了多種協議比如我們可以用tcp進行連接也可以用http進行連接-當有firewall的時候
  如果覺得一個pear實現多種協議很麻煩也可以只用一種協議http
  
  Advertisement:廣告
  一個廣告是一個XML結構的文檔用來命名描述和公布現有的資源如同位體同位體組管道或服務各種廣告的格式請參考JXTA規范
  大概說明
  廣告的格式是utf編碼的為了更有效的利用資源所以並沒有利用unicode編碼因為unicode是位而utf
  
  Message消息
  有兩種形式的消息
  . Xml格式的
  . 二進制格式的之所以有這個格式的是因為這個速度比較快雖然message是二進制的但是傳輸消息的協議仍然是xml格式的
  
  Identifiers標志
  
  Rendezvous Pear:
  從其他同位體進行查詢操作的同位體Rendezvous Pear也可以委派查詢操作給其他的pear-當然也必須是一個Rendezvous PearRendezvous Pear其實可以說是在一個對等網絡環境中代替原來的非完全對等環境中的集中服務器的東西
  Rendezvous Pear還能夠傳遞檢索也能夠傳遞發現(discovery)給其他的Rendezvous Pear
  
  Router Pear路由同位體
  實現端點協議的同位體和路由器功能類似
  
  Gateway Pear網關同位體
  通訊的中間體作為傳遞消息的中間體和Rendezvous Pear不同現在支持的網關協議有tcp和http(都是通過管道來組織)
  
  . 同位體和組(peer and group)
  為什麼使用組?
  安全隱私更加高效的數據共享
  
  . 廣告(Advertisements)
  同位組廣告
  定義這個同位組的識別標志和服務
  Name
  DESC
  GID(Peer group id)
  MSID
  SVC(Service)-list of the service denoted by MCID and Parmeters
  
  Peer Advertisements
  同位體廣告
  Name
  DESC
  PID(Peergroup id)
  Debug Flag(Dbg)optional tag for debugging
  Service(SVC)
  
  模塊Modules
  模塊是定義了一個同位體或者一個同位體組所提供的服務
  
  模塊類廣告Module Class Advertisement
  定義了一種行為
  格式:
  MCID(Module class id)Module唯一的識別標志
  Name模塊名稱用來進行search和識別不保證唯一
  DESC(Descripition)描述:供搜索和識別用
  
  模塊規范描述廣告-Module Specification Advertisement
  比較詳細的描述模塊的規范定義
  Module Spec ID(MSID)定義一個模塊-和MCID有和區別?
  Compatibility(COMP)兼容性定義代碼的兼容性跨語言和跨平台
  Name
  Desc
  Sprcification URI document.定義URI
  Vers-the version
  Parm-定義參數-供Implementation使用
  ProxyModuleSpecID of a proxy if one exists
  AuthenticatorModuleSpecID of an authenticator module if required
  
  模塊執行廣告
  Name
  DESC
  MSID
  COMP
  PURI(Package URI)Download the special code
  Codea reference codefor a java modulethis is a classname
  Prov(Provider)
  
  管道廣告-Pipe Advertisements
  Name
  ID
  TYPERelated to a protocol unicasttypeunicastsecuretypepropagatetype
  
  端點路由信息Endpoint Router Messages
  查詢和回應消息以發現Router分查詢和回應兩類Messages
  
  消息Messages
  分為XML message和Binary Message
  
  管道綁定協議Pipe Binding Protocol
  要建立管道一個peer必須憲發布一個管道廣告表示自己在request接收方會回應並同時發布廣告
  Request Adv
  MsgtypeQuery or Respond
  PopeIdPipe id being resolved
  Typethe type of pope resolution requested
  Cachedcache裡是否有答案
  Peer指定鏈接的peer
  Response Adv
  Msgtype
  Pipeid
  Type
  Found
  
  Resolver-解釋器
  用來發現來自對等組內其它對等機的廣告有助於發現對等機對等組管道和服務
  解釋器的ResolverQuery message的schema
  credential信任證書 of the peer sending the query
  HandlerName
  QueryID
  Query
  
  Rendezvous Protocol:
  描述了消息是怎麼在組裡面廣播的
  使用端點協議來定位同位體和路由以及傳輸
  使用Rendezvous Protocol來傳輸消息
  Rendezvous ADV:
  Name
  Rdvgroupidpeergroup uuid
  Rdvpeeridpeer id of the Rendezvous peer
From:http://tw.wingwit.com/Article/program/Java/gj/201311/27635.html
    推薦文章
    Copyright © 2005-2013 電腦知識網 Computer Knowledge   All rights reserved.