国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 學院 > 開發設計 > 正文

設計不受傳統網絡限制的 P2P 系統

2019-11-18 10:46:04
字體:
來源:轉載
供稿:網友

  隨著移動計算的普及和嵌入式可聯網微處理器的無處不在的應用,TCP/ip 終于顯露出它已經顯得過時。設計 Jxta 的初衷就是要突破當今基于 TCP/IP 的網絡的限制,從而擴展因特網所能觸及的范圍。在 developerWorks 的討論 Jxta 的系列的這最后一篇文章中,Sing Li 舉例說明了體現這種擴展的系統,并解決了一個實際問題。您將看到 Jxta 不受客戶機/服務器網絡的典型約束的限制。請單擊本文頂部或底部的討論,在討論論壇與作者及其他讀者共享關于本文的心得。
  
  到本系列文章的這里為止,我們仔細考察了 Jxta,一個 java 參考實現的新 P2P 平臺,是如何工作的。在第一部分中,我們了解了 Jxta 的互操作特征。Jxta 被定義為一組互操作協議,可以跨硬件平臺、操作系統和編程語言實現。我們也討論了 Jxta 的操作模型和包括對等機、對等組、服務和管道在內的許多重要概念。在第二部分中,我們的著眼點是建立和運行 Jxta。我們探討了一個 Jxta 應用程序 — Jxta shell — 并經歷了創建管道并從一個對等機發送消息到另一個對等機的情形。在我們編寫 Jxta shell 擴展時,我們第一次獲得了用 Jxta API 編程的經驗。迄今為止,我們討論 Jxta 的方式都是從下到上的。對于像我們這樣具有系統編程和網絡工程背景的人來說,這是再自然不過的。
  
  在本系列的這第三篇也即最后一篇文章中,我們要把事情顛倒過來。從那些從事應用級設計和體系結構的人的角度來說,本文是自上而下看待 Jxta 的。我們從一個特定的示例問題開始,對這個問題進行分析并設計出一個解決方案,從而展示 Jxta 是如何自然地解決該問題的。
  
  隨著本文的進行,我們討論 Jxta 如何通過并列(juxtaposition)改變聯網的前景展望,我們還提供一個 Jxta 服務和客戶機的設計和代碼。
  
  解決一個分布式數據收集問題
  設想一下我們需要創建一個大規模的氣象數據收集和分析系統。在這個系統中,我們有數百個氣象數據收集點;每個收集點配備一個微型氣象站,這些氣象站將當前溫度(和其它大氣狀態)提供給一組數據集中器。收集器遍布世界各地;這些收集器并不是都直接連接到因特網,任何時候都可能有新的數據收集器連接上來或脫開連接。在這個項目中,參與進來的收集器的確切數量經常在變化;數據分析和處理基于區域平均值。
  
  開始時只有 10 個集中器。每個集中器監視來自許多個收集器的數據,這些數據被實時提供給關系數據庫。隨后,來自關系數據庫的數據被提供給運行氣象分析和猜測的仿真模型的超級計算機并由它處理。集中器的數量和位置會發生變化,但它們的行為則大多更穩定。一旦安裝后,集中器就會保持運轉,除非碰到系統失效。
  
  我們必須解決的問題:我們的系統如何能夠持續運轉,并能考慮到在幾乎不影響整體性能的條件下,答應動態添加或除去收集器和集中器。
  
  初始分析:特定網絡的復雜性
  系統中的某些收集器可直接訪問因特網;其它的通過無線電傳輸技術進行連接,它們處在惡劣的外部環境中。事實上,在這些基于無線電的收集器中,許多都被設計成了節能的,以延長電池壽命;收集器的有效范圍僅夠與下一個最近的收集器或基站聯系。這些收集器中許多都不支持 TCP/IP,而是使用基本的分組無線技術。一些更獨立的收集器僅僅靠其太陽能電池板獲得能量,并使用衛星傳輸進行通信。還有另外一些收集器則連接到標準蜂窩電話上,用 SMS(short message service,短消息服務)消息傳遞來發送消息。
  
  在項目的整個生命周期中,可用的收集器的數量會發生變化;在項目開始時,我們無法猜測將會構建到未來收集器中的連接類型,也無法猜測收集器將使用的技術。例如,在項目的某個階段,在一個超級計算機群集內使用軟件仿真來仿真數量巨大的收集器。我們的解決方案必須能適應所有收集器,不管是真正的還是仿真的,現在的還是將來的。
  
  解決方案:并列(Juxtaposition)
  圖 1 顯示用來解決這個問題的高層次設計。
  
  圖 1. 解決數據收集問題
  
 設計不受傳統網絡限制的 P2P 系統(圖一)

  請注重,并列 P2P 網絡用來適應網絡的多種不同情況,而集中器提供 P2P 網絡和傳統的客戶機/服務器網絡之間的連接,數據庫服務器和超級計算機駐留在客戶機/服務器網絡。集中器充當兩個網絡之間的網橋 — 每個集中器在 P2P 網絡上具有動態特性,在客戶機/服務器網絡具有靜態特性。
  
  這個體系結構反映了 Jxta 對傳統系統的補充作用和提供并行于這些傳統系統的增值的能力 — 通過并列(juxtaposition),Jxta 的名稱就源于這個詞語。
  
  我們不想深入討論這里的客戶機/服務器網絡的細節,因為其中并沒有什么獨特之處;我們甚至可以使用 VPN 技術在因特網上運行它。有趣的部分在 P2P 網絡。圖 2 顯示了它的組成,它可隨將來的變化而變化。請注重其中用到的多種不同技術。
  
  圖 2. 數據收集器網絡的組成
  
 設計不受傳統網絡限制的 P2P 系統(圖二)

  在實現這個 P2P 網絡時,我們可以利用 Jxta,從而獲得以下優點:
  
  輕易地添加或除去新的收集器或集中器,這得益于 Jxta 的統一分散尋址
  
  設計簡單性,這得益于 Jxta 的網絡虛擬化
  
  持續運轉,這得益于 Jxta 支持故障彈性
  
  免維護運轉,這得益于 Jxta 支持動態自我組織網絡
  
  支持跨越許多硬件平臺和編程語言的多種不同實現,支持所用的各種不同通信協議讓我們來更具體地研究一下其中幾個益處,并看看 Jxta 如何為體系結構的各個方面作出獨特的貢獻。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 潍坊市| 尼勒克县| 白朗县| 石家庄市| 乡宁县| 临邑县| 天镇县| 株洲县| 景泰县| 蓝山县| 平昌县| 久治县| 玉龙| 定襄县| 盈江县| 西盟| 阳信县| 敦煌市| 玛纳斯县| 凭祥市| 龙游县| 大悟县| 大名县| 德兴市| 鲁甸县| 门头沟区| 长兴县| 荆州市| 平武县| 达尔| 睢宁县| 东山县| 陈巴尔虎旗| 秦皇岛市| 广河县| 紫金县| 甘德县| 方城县| 罗田县| 海盐县| 邯郸县|