• 沒有找到結果。

以P2P 為基礎的動態搜尋Proxy Server 機制

N/A
N/A
Protected

Academic year: 2021

Share "以P2P 為基礎的動態搜尋Proxy Server 機制"

Copied!
10
0
0

加載中.... (立即查看全文)

全文

(1)以 P2P 為基礎的動態搜尋 Proxy Server 機制* 李敬江. 林志麟. 元智大學資訊管理研究所. 元智大學資訊管理研究所. [email protected]. [email protected] 有一些組織,將一些非法資訊或是具有不願社會大. 摘要. 眾所閱讀的資訊封鎖,使得使用者無法藉由一般的 瀏覽器瀏覽及搜尋被封鎖的網站,即使網址已知也. 網際網路的快速發展帶動了資訊的分享及快. 無法連結上,而導致網路上言論與著作的不自由。. 速傳遞,然而某些組織因考量有些資訊可能被其造. 故如何將被封鎖的網站內容,藉由軟體的適當設計. 成傷害,進而對部分網路位址採取封鎖的機制,以. 以突破此限制,使得資訊可以自由的取得及分享,. 管制並阻擋資訊的傳播及分享。為了解決網址被封. 便成了一個重要的課題。. 鎖的問題,本研究以 P2P 的架構為基礎開發特殊的 瀏覽器(JXTA Browser)及代理人程式(JXTA Proxy. 提升網路運作效率的技術很多,其中藉由軟體. Agent) 。在 JXTA Browser 方面提供動態搜尋 Proxy. 提升網路傳輸效率的方法以使用代理伺服器. Server 的機制,透過 P2P 的傳遞方式,試圖搜尋可. (Proxy Server)居多。代理伺服器可以利用其內. 用的 Proxy Server,並與所尋得的 Proxy Server 連. 建的快取(cache)機制,有效降低不必要的網路. 線呈現網頁內容。在 JXTA Proxy Agent 方面以附加. 傳送時間,達到提升傳輸效率的目的。瀏覽器設定. 功能的方式整合 Proxy Server,並設定其 IP、埠號. 代理伺服器的位址與連結埠後,若正在使用的代理. (port)等資訊,使 Proxy Server 具備 P2P 的功能。. 伺服器位址被封鎖住,則無法提供連結欲連線的網. 當 JXTA Browser 發出請求時,將會接受來自 JXTA. 站,而必須尋找另一個可用的代理伺服器,並再以. Proxy Agent 的 Proxy Server 資訊;若 Proxy Server. 手動方式完成其連線及取得網站資訊的工作。此. IP 被封鎖無法連線時,JXTA Browser 將會自動設. 外,所要連線的網路位址若被封鎖,也會造成無法. 定下一個可用的 Proxy Server,以順利連線到被封. 連線的情形發生。. 鎖的網址。此外,本文針對 2 台 Proxy Server 模擬 四種情境,分別測試不同的傳遞時間,以分析及探. 本文提出以動態方式搜尋代理伺服器的觀. 討實驗結果。. 念,解決上述所衍生的問題。運用以 P2P 的技術及. 關鍵詞:P2P,Proxy,JXTA. 架構為基礎,設計自製的瀏覽器提供動態搜尋與設 定代理伺服器的機制。並在未被封鎖的既有代理伺. 1. 導論. 服器之下,運用內建的快取機制加速網頁執行的速 度。代理伺服器透過附加功能的方式整合並執行所. 隨著網際網路的蓬勃發展及全球網路使用人 口急速成長,資訊傳播及呈現方式已轉移到網站,. 開發的代理人程式,以利使用者連上被遭封鎖的網 站並擷取內容。. 例如目前流行的 BLOG[2]日誌網站形式,可供資 訊的分享及傳遞。然而,資訊傳遞方便迅速,機密. 本文架構如下:第二節探討相關文獻,包括代. 訊息亦可輕易地藉由網際網路的傳遞而外洩。因此. 理伺服器軟體的介紹、P2P 相關的重要技術、JXTA. 1 *本研究由國科會計劃贊助 計劃編號 NSC 93-2213-E-155-053.

(2) 技術;第三節提出本研究的系統架構與方法,其系. 調機構的研究報告[1]預測,目前 P2P 雖然在企業. 統架構分為客戶端及代理伺服器部分;第四節運用. 市場上還不常見,但到了 2007 年預計將有 620 萬. 所開發的軟體模擬及分析實驗之數據。最後第五節. 企業用戶會使用具有 P2P 網路功能的企業級解決. 根據本研究結果提出結論及未來可延伸之研究方. 方案。因此可以預見未來許多的應用將以 P2P 架構. 向。. 為基礎,開發及提供多樣化的各項服務。P2P 架構 [6][11][12][14][16][18]並非集中式結構,而是點對. 2. 文獻探討. 點的傳輸服務,使電腦同時擔任伺服器與使用者的. 本節介紹 Proxy 的概念及其軟體,並說明本研. 角色。透過電腦間的直接連線,不需經過任何伺服. 究應用的相關技術與文獻。Proxy 的概念為當某一. 器的中介處理,因此可以提昇網路效率,透過此種. 瀏覽器透過 Proxy Server 瀏覽過某個網站上的網. 模式提供端點與端點的連線,達到更方便、快捷以. 頁後,該網站資料就複製一份到 Proxy Server 的. 及主動的與其他電腦端直接進行資源分享和訊息. Cache 中,當其他使用者需要瀏覽相同的網站時,. 的交換。. 可以直接從 Cache 中讀取網頁資料。故 Proxy Server 可以節省頻寬,及加快 Client 端讀取資料的. 目前有許多重要的 P2P 技術如 JINI[8][9]、. 速度。目前的 Proxy Server 種類繁多,以 HTTP. JXTA[4][5][10][13][17]等。JINI 提供服務與裝置相. Proxy. Server. 為 例 有. 互溝通的標準,以簡單的架構使服務可以很容易在. Brandgang[3] 、. 網路內傳遞,由那些對服務有興趣的程式,自動建. MultiProxy[15]、Squid[19]等軟體。. 立跨平台的溝通管道。JXTA 取自 Juxtapose 的簡 寫,是一套開放原始碼版本的 P2P 網路平台,可讓 Brandgang 軟體主要以 Java 語言開發,透過瀏. 相同網路上的任何裝置,如手機、PDA、PC、伺. 覽器設定代理伺服器的方式連線,但是其效能不高. 服器等作資料的交換與聯繫。JINI 與 JXTA 最大的. 且無提供代理伺服器認證安全上的機制。. 不同點在於 JINI 主要在區域網路內運作,雖然 JINI. MultiProxy 軟體可以設定多個 Proxy Server 的位址. 可跨 LAN 通訊,但是需要透過網路上特殊的服務. 及連接埠於設定檔中,載入 MultiProxy 後將會自動. 才行;而 JXTA 可以跨網域運作,主要為網際網路. 偵測目前所擁有的 Proxy Server 的連線狀態,但是. 而設計,其程式和網路界限的關聯性非常低。二者. 當清單中的所有 Proxy Server 無法提供瀏覽器適當. 差異請參表 2-1。. 的網站連線時,需要以手動方式重新載入其他 Proxy Server 的清單。經過幾次測試後,才能讓使. 表 2-1、JXTA 與 JINI 的差異. 用者可以順利連線到所要求的網站。Squid 軟體為. JXTA. JINI. 目標. 支援任何裝置的點 對點開發. 提供服務和裝置相 互通訊的標準. 協定的要求;對於使用者的請求採取 non-blocking. 技術. XML 技術. RMI 技術. 的處理方式及支援 SSL 安全機制,但是若代理伺. 運行 範圍. 區域網路、網際網 路. 區域網路. 服器的網路位址被封鎖則無法提供網頁的擷取及 下載。. 功用. 非特定區域的軟體 服務間之溝通. 特定網域內的服務 (如印表機). 目前最多人使用的 Proxy Server,於 Unix、Linux 平台上執行,可處理 HTTP、FTP、Gopher 等通訊. 以目前研究的相關文獻發現代理伺服器皆無 本研究以 JXTA 技術實作 P2P 動態搜尋 Proxy. 提供動態搜尋 Proxy Server 的機制,且運行模式大. Server 的機制,以下說明 JXTA 之基本概念:. 多以主從式架構為主。然而根據 Frost& Sullivan 市 2.

(3) Peer:是一個虛擬的通訊點,相較其他 P2P. 告。當 Peer 需要使用公告時,該目錄即扮演快取. 不同地方在於 JXTA 的 Peer 並不表示一個使. 的角色,Peer 便不需至網路上搜尋公告。快取後的. 用者,因為使用者可有多個點在一個裝置上. 結果可以在 session 之間保存,若快取中無所需的. 運作,所以在 JXTA 中的 Peer 代表的是一個. 公告,則必須向其他 Peer 要求下載。. 抽象化的使用者。. 3. 系統架構. Peer Group:整合多個 Peer 的方法,制定所 要開放的特殊服務,公告於每一個群組成. 本文針對網址及 Proxy Server IP 被封鎖的問. 員,並可加入群組、退出群組及更新會員身. 題,提出以 P2P 的方法突破其被封鎖的網路位址。. 分的功能。加入群組的好處在於端點傳遞及. 經由公告探索的服務機制,搜尋提供可用 Proxy. 接收的訊息只侷限於群組中,使得非群組內. Server 的 Peer;傳遞請求的公告以取得 Proxy Server. 的點不會接收到該訊息,因而可以有效減輕. 的相關資訊,呈現被封鎖網址的網頁內容。本研究. 網路通訊的負擔,避免資源的浪費。此 Peer. 提出兩種系統流程,分述如下:. Group. 類 似 目 前. VPN(Virtual. Private. Network)[7]的構想。. 第一種流程在客戶端方面透過 JXTA Browser. JXTA Message:以訊息的形式提供應用程式. 自動尋找可用的 Proxy Servers 清單資訊,而代理. 間傳遞所需要的資訊,其內容採用標準化的. 伺服器方面則啟動 JXTA Proxy Agent Daemon 設定. 格式傳遞。. Proxy 的 IP、埠號等資訊,以等待接收 JXTA Browser. Peer Pipes:是 JXTA 基本且重要的角色,提. 的請求。當 JXTA Browser 搜尋到網路上的 JXTA. 供點對點之間的虛擬通道,透過管道隱藏點. Proxy Agent 後進行點對點的通訊,回傳及自動設. 對點之間實際連線的複雜性。. 定可用 Proxy Server 的資訊與呈現適當的網頁。然. Advertisement : 一 種 描 述 JXTA 訊 息. 而若目前使用的 Proxy Server 無法提供網頁的正常. (Message)、Peer、Peer Group 或是 Service. 連線及瀏覽時,將會從 Proxy Servers 清單資訊中,. 的文件,可以協助交換 JXTA 網路上可用資. 挑選下一個可用的 Proxy 作為設定使用,其 JXTA. 源的相關資訊,其內容以 XML 標準的資料. Browser 之系統流程如圖 3-1。 Request. 格式設計公告的內容。. JXTA Browser. Gateway Peer:僅提供點與點之間轉傳訊息的. 自動尋找. JXTA Protocol. Proxy. Response. Servers. Found. JXTA Proxy Agent. Proxy Server Found JXTA Proxy Agent. 服務,不負責處理 Peer 查詢的請求。. Save Proxy Info. Found. Rendezvous Peer:提供 Gateway Peer 的功能. Proxy Server. Proxy Server 清單. 與處理 Peer 間查詢的請求。Rendezvous Peer. proxy.hinet.net:80. JXTA Proxy Agent. www.yzu.edu.tw:8080. 也可以是查詢的中繼點,與其他 Rendezvous. Proxy Server. Peer 交換 Advertisement 以進行更近一步的查. 圖 3-1 JXTA Browser 之系統流程圖. 詢處理。. 而第二種流程在客戶端方面採用一般的. 此外,在 JXTA 網路中,當 Peer 開始執行時,. Browser,手動設定 JXTA Proxy Server 所在的網址. 將會建立一個 cm(cache management)目錄,此目. 及連結埠。JXTA Proxy Server 提供 Proxy Caching. 錄將會儲存由本機建立與網路上取得的所有公. 的機制,當接收到 Browser 的網頁需求時,查看此 3.

(4) 表 3-1、兩種架構的優缺點 JXTA Browser 方式. JXTA Proxy Server 方式. 優 執行 JXTA Browser 後,即可直接連線,不需自行 使用一般的 Browser 並設定 Proxy IP、連結埠即可 運作。 點 設定 Proxy Server 的 IP。 分散式架構。. 集中式及分散式架構的結合。. 當無法連線時,會自動啟動搜尋可用 Proxy Servers 當無法連線時,會自動搜尋可用的 JXTA Proxy 的機制。 Server。 具有 Proxy Servers 的清單庫,作為備用 Proxy 兼具快取機制及 P2P 功能的 Proxy Server。 Server。 缺 需要額外執行 JXTA Browser 軟體。 網頁內容的擷取及傳輸速度較慢。 點 若無法在所提供的 Proxy Servers 清單中協助連線 JXTA Proxy Server 的網路位址及埠號有可能被封 到某網頁時,需等待搜尋以取得新的 Proxy Servers 鎖,而無法提供服務。 清單。 需設定代理伺服器端的 Proxy Server 組態設定檔。需要實際開發 Proxy Server,實作上較不易。. 一網址是否可以連線,若可以則回傳網頁內容,並. 構下,不需額外開發 Proxy Server,只需將 JXTA. 將其內容複製一份到 Cache 中;當無法處理請求. Proxy Agent 以 附 加 的 方 式 結 合 既 有 的 Proxy. 時,則自動搜尋其他可用的 JXTA Proxy Server 尋. Server,並設定 Proxy Server 的 IP、埠號等資訊於. 求協助,以進行點對點的通訊及要求傳遞網頁內容. 組態設定檔案中即可。此外,藉由 Proxy Server 本. 於原本的 JXTA Proxy Server,其 JXTA Proxy Server. 身所提供的快取機制可以加快 client 端讀取網頁的. 之系統流程如圖 3-2。. 速度,在系統開發難易度及效率方面皆能有所兼 顧。 JX TA. R eq u e st. P ro xy. H T T P P ro to c o l. S erver. B ro w se r. 以下詳細介紹以 JXTA Browser 流程架構為基. R esp onse. R eq uest. 礎的實作方法,如圖 3-3 所示,本系統架構分為二. R e sp o n se. 部分:客戶端部分與代理伺服器部分。在客戶端方. 尋 找 JX TA C ache. N o C ache. P ro x y. J X T A P ro to c o l. 面建立 Search Proxy Peer 傳遞與接收訊息公告,而. S erv er. Found. 代理伺服器方面建立 Proxy Peer 提供 Proxy Server. L o c a l F ile s G e tt i n g W e b s i t e. 資訊的服務,茲分述如下。. a n d s a v in g F ile s. 客戶端部分. 圖 3-2 JXTA Proxy Server 之系統流程圖. 代理伺服器部分. 根據上述所提的兩種流程方式,各有其優缺點 如表 3-1 所列。採用 JXTA Proxy Server 流程必須 深入研究一般 Proxy Server 所提供的功能及內部實 際建置的運行步驟,且需要配合相關的協定以利正. Client JXTA Browser(Search Proxy Peer) Proxy Server Information Message. Peer Pipes. Peer Groups. Proxy Server Information Message JXTA Proxy Agent(Proxy Peer). 常的運作,故實作上的困難較高。因此本研究只對 JXTA Browser 系統流程做進一步的研發。在此架. 圖 3-3 系統架構圖. 4.

(5) 3.1. 客 戶 端 部 分 ( Client JXTA Browser). Proxy Server Information Message:主要負責. 客戶端部分提供動態搜尋可用代理伺. 公告內容,是以 XML 標準的資料格式包裝. 服器的機制,將取得的代理伺服器之相關資. 公告中的訊息內容。由於公告被尋得時,將. 訊儲存,並自動為 Browser 設定可用的代理. 會被存放於本地端的 cm 資料夾中,故日後. 伺服器,以利使用者可以連上被封鎖的網. 需要再一次搜尋公告時,將可以減少搜尋公. 站,其流程如下:. 告的時間。依公告處理的內容可以分為群組. 1.. 描述 Search Proxy Peer 與 Proxy Peer 所需的. 及管道公告,群組公告負責尋找名稱為. 當瀏覽器接受到網址時,將會嘗試是否. ProxyNet 的公告,透過此公告允許 Search. 經由 HTTP 協定可以正常連線,若無法. Proxy Peer 端點加入到 ProxyNet 群組。管道. 連線則透過 JXTA 提供服務。 2.. 公告負責描述與 Proxy Peer 間往返通訊的內. 尋找網路上的 ProxyNet 群組,依據公. 容 , 透 過 識 別 Request 、 PROXY_HOST 、. 告的探索機制查看 Search Proxy Peer 是. PROXY_IP、PROXY_PORT 等標籤名稱以取. 否已經尋得該群組並加入,若尚未尋得. 得對應的值。. 則發佈公告及加入該群組。 3.. 4.. 5.. JXTA Peer Pipes Communication:建立及處理. 建立 Search Proxy Peer 的管道公告,設. Search Proxy Peer 與 Proxy Peer 間的輸出入管. 定管道的名稱、識別碼及類型為. 道。客戶端分別建立輸出、輸入二個單向管. unicase,表示此點的唯一性,並透過此. 道,輸出管道負責建立 Search Proxy Peer 的. 公告通知同一群組中有新的 Peer 加入。. 管道公告,定義端點的名稱與傳遞的內容,. 透過管道公告尋找群組中提供 JXTA. 以傳送請求之訊息於 Proxy Peer。輸入管道負. Proxy Agent 服務的 Peer,和這些 Peer. 責解譯含有 Proxy Server 資訊的公告內容,. 聯繫並建立輸出的管道,請求 Proxy. 儲存 Proxy Server 的資訊以減少日後搜尋的. Server 的資訊。. 時間。. 儲存從 Proxy Peer 取得的 Proxy Server. JXTA Dynamic Search Proxy Agent:Client. 資訊,嘗試網頁是否可以連線。. Java Swing Browser 搜 尋 網 路 上 名 為 ProxyNET 群組的公告,若公告存在本機則表. 客戶端部分由「Proxy Server Information. 示已經加入該群組,反之則發送遠端探索的. Message」 、 「JXTA Peer Pipes Communication」. 公告。在加入群組後,建立管道公告通知群. 及「JXTA Dynamic Search Proxy Agent」構成. 組中的端點,尋找可用的 Proxy Peer。透過. 如圖 3-4,其功能分述如下:. JXTA Peer Pipes Communication 建立溝通的 虛擬通道,將 Proxy Server 資訊傳回並儲存, Proxy Server Information Message. JXTA Peer Pipes Communication. JXTA. 以利 Client Java Swing Browser 設定 Proxy. Dynamic Search Proxy Agent. Server 資訊並嘗試連結網頁。. 連結網頁時,有兩種情況需要考量﹔其一為請. Client Java Swing Browser. 求的網頁是否真正存在,其二為所儲存的 Proxy Server 皆無法提供連線。為考量上述情況,在此提. 圖 3-4 客戶端部分架構圖 5.

(6) 供搜尋 Proxy Server 的次數限制;當在三次搜尋期 Proxy Server Information Message. 間所尋得的 Proxy Server 皆無法提供網頁的正常連. JXTA Proxy Agent. 線及顯示時,瀏覽器將會呈現無法連線的資訊;這 種方式可以減少等待網頁連線的時間及提供有限. JXTA Peer Pipes Communication. 的探索服務機制。 Online Proxy Server. 3.2. 代理伺服器部分(JXTA With 圖 3-5 代理伺服器部分架構圖. Proxy Server) 代理伺服器部分主要整合非封鎖區域內的既 有代理伺服器,設定 Proxy Server 的組態設定檔. JXTA Proxy Agent:根據 Online Proxy Server. 案,包含 Proxy Host、Proxy IP 及 Proxy Port。當. 的資訊設定完成 Proxy Server 組態設定檔案. Proxy Port 無指定時,以 3128 為預設值,設定完成. 後,载入相關的 Proxy Server 參數。搜尋本. 後即啟動 JXTA Proxy Agent,提供接收與傳遞. 機端及遠端的公告查看是否存在 ProxyNet 群. Proxy Server 資訊的代理人服務,其流程如下:. 組,若無則自動建立 ProxyNet。經由 JXTA Peer Pipes Communication 建立溝通的輸出入 管道,以傾聽管道的方式等待請求。當接受. 當 JXTA Proxy Agent 啟動時,根據公告的探. 1.. 到 Client Java Swing Browser 要求時,建立及. 索查看網路上是否存在 ProxyNet 群組,若存. 傳遞具有 Proxy Host、Proxy IP 及 Proxy Port. 在則加入,反之則建立及加入新的 ProxyNet. 標籤內容的管道公告。. 群組。 建立 Proxy Peer 管道公告的步驟與客戶端部. 2.. 由於在點對點網路上的延遲時間可能比傳統. 分大致相同,不同者在於管道名稱以組態設. 網路長很多,故在此採用三次探索公告的方式及設. 定檔案中的 Proxy Host 命名。. 定訊息回傳的有限時間,等待公告取得後再進行下 經由管道公告建立輸入管道,等待 Search. 3.. 一步驟。當某個點在有限時間內無回應時,則繼續. Proxy Peer 的請求。 4.. 發佈新的公告探索新的點,若在有限次數內還是無. 當 Proxy Peer 接受到請求時,建立輸出管道. 回應則表示此點不存在。下一節將透過實驗進一步. 並傳遞 Proxy Server 的資訊於 Search Proxy. 分析此一架構之效能。. Peer。. 4. 系統實驗 代理伺服器部分由「Proxy Server Information Message」、「JXTA Peer Pipes Communication」及. 本實驗模擬四種情境,並分別對「尋找及加入. 「JXTA Proxy Agent」構成,如圖 3-5。由於 Proxy. ProxyNet 群組」、 「搜尋 JXTA Proxy Agent Peer」、. Server Information Message 及 JXTA Peer Pipes. 「Proxy Server Information Message 的請求與接. Communication 的處理流程與客戶端大致相同,相. 收」 、 「顯示網頁」四個階段,測試其時間與分析實. 異之處在於輸入與輸出管道接受資訊的不同,故不. 驗結果。. 再詳加描述。而 JXTA Proxy Agent 的功能描述如 下: 6.

(7) 4.1.. 實驗設計. 4.2. 實驗結果. 代理伺服器端部分提供二個具有 JXTA Proxy. 實驗一:在 Proxy Server1、Proxy Server2 二者皆存. Agent 服 務 的 端 點 , 分 為 Proxy Server1 位 於. 在的情況下進行,各階段測試的時間如表 4-2。. proxy.mis.yzu.edu.tw:3128;Proxy Server2 位於 proxy.yzu.edu.tw:8080,而客戶端執行 Client JXTA. 瀏覽器接收到網址時,透過 HTTP 協定即可直. Browser。根據提供 JXTA Proxy Server 服務的點之. 接連線並顯示網頁;其花費的時間為 0.187 秒,因. 存在與否分為四種模擬情形,並以 HTTP 直接連線. 無使用 JXTA 服務,故階段一至階段三的時間皆為. 的方式為比較基準點,其實驗設計如表 4-1。. 0 秒。在透過 JXTA 服務尋找可用的 Proxy Peer 方 面,由於本機端的公告尚未存有 ProxyNet 群組的. 表 4-1、實驗設計. 資訊,故需要遠端探索群組公告,因此在階段一「尋. 情境模擬. 找及加入 ProxyNet 群組」花費 2.47 秒的時間。當. 基準點 直接透過 HTTP 方式連線及呈現網頁. 加入群組之後便搜尋可用的 JXTA Proxy Agent. 實驗一 Proxy Server1 Alive / Proxy Server2 Alive。. Peer 及進行連線溝通,分別花費 0.298 與 0.485 秒,. 實驗二 Proxy Server1 Alive / Proxy Server2 Died。. 著的差異,但是經由 JXTA 搜尋服務所耗費的總測. 顯示網頁則與透過 HTTP 協定連線的時間並無顯. 試時間卻比透過 HTTP 協定超過 3.285 秒。. 實驗三 Proxy Server1 Died / Proxy Server2 Alive。. 表 4-2、Proxy Server1、Proxy Server2 皆存在. 實驗四 Proxy Server1 Died / Proxy Server2 Died。. 之各階段測試時間 階段一 階段二 階段三 階段四 總時間 透過 HTTP 0 0 0 0.187 0.187 透過 JXTA(一) 2.47 0.298 0.485 0.219 3.472. 在 P2P 網路中主要透過集結點協助遠距離的 探索,但是集結點通常都會存在於不同的網域或子 網路內,故須在每個 Peer 的 JXTA PlatformConfig 設定檔視窗中,設定相同的 Rendezvous Seed Peer (如圖 4-1) ,以確保每個 Peer 都可以透過相同的. 實驗二:為 Proxy Server1 存在,而 Proxy Server2. Rendezvous Peer,看到彼此存在的 Peer 或群組。. 不存在的情況下進行實驗,其實驗結果如表 4-3。. 在本地端的公告發現有存在二個 Proxy Peer, 故與找到的 Proxy Peer 進行連線,但是由於 Proxy Server2 實際上並不存在,因此在階段二搜尋 JXTA Proxy Agent Peer 方面耗費 30.313 秒的時間。當找 到可用的 Proxy Server1 時,則在進行點對點的溝 通連線及顯示網頁所耗費的時間並無顯著的差 異,但因搜尋 JXTA Proxy Agent Peer 階段額外耗 圖 4-1 設定 Rendezvous Seed Peer. 時,故總測試時間需要 33.063 秒。. 7.

(8) 第一階段所發生的情形如同實驗三,於第二、. 表 4-3、Proxy Server1 存在,Proxy Server2 不存在. 三次耗費的時間皆比第一次減少約 7 秒。由於所提. 之各階段測試時間. 供的二個 Proxy Peer 皆不存在,因此在第二階段所. 階段一 階段二 階段三 階段四 總時間. 耗費的時間約為實驗三之第二階段的 2 倍,即為. 透過 HTTP. 0. 0. 0. 0.187. 0.187. 透過 JXTA(一). 2. 30.313. 0.375. 0.375. 33.063. 60 秒。因找不到提供 Proxy Server 服務的 Proxy Peer,故在第三階段及第四階段的測試時間皆為空 值。在總測試時間方面,耗費約 61 秒。. 實驗三:為 Proxy Server1 不存在,而 Proxy Server2. 表 4-5、Proxy Server1、Proxy Server2 皆不存在之. 存在,但是其無法提供正常服務的情況下進行實. 各階段測試時間. 驗,其實驗結果如表 4-4。. 階段一 階段二 階段三 階段四 總時間. 因尋找及加入 ProxyNet 的群組在第一次搜尋 時,已經將群組公告存於本機端,故第二次及第三 次的搜尋時間皆比第一次少於 1.9 秒。此外亦同實 驗二,由於 Proxy Server1 並不存在,故階段二搜 尋 JXTA Proxy Agent Peer 需要耗費較多的時間。 經過三次搜尋可用的 Proxy Peer 後,因 Proxy Server2 仍然無法提供正常的 Proxy Server 服務,故. 透過 HTTP. 0. 0. 透過 JXTA( 一). 0.704. 60.843. 61.547. 透過 JXTA( 二). 0.016. 60.14. 60.156. 透過 JXTA( 三). 0.031. 60.36. 60.391. 0. 0.187. 0.187. 在階段四顯示網頁的測試時間皆為空值,三次的總 測試平均時間為 31.203 秒。. 4.3. 實驗結論 由實驗一可知當搜尋的 Proxy Peer 皆存在. 表 4-4、Proxy Server1 不存在,Proxy Server2 存在. 時,除了第一階段尋找、加入 ProxyNet 群組的時. 之各階段測試時間. 間花費較多外,其餘階段皆只花費不到 0.5 秒的時. 階段一 階段二 階段三 階段四 總時間 透過 HTTP 透過 JXTA( 一) 透過 JXTA( 二) 透過 JXTA( 三). 0. 0. 0. 0.187. 間即可完成。從實驗三、四的結果分析可得知,在 階段一中當 ProxyNet 群組已經被找到並加入時,. 0.187. 可以有效改善日後搜尋群組的時間。 1.985. 30.281. 0.25. 32.516 在實驗二至四的分析結果中發現總測試時間 主要被搜尋 JXTA Proxy Agent Peer 階段所影響,. 0.046. 30.5. 0.172. 30.718. 以致於間接影響到點對點的通訊及顯示網頁的測 試時間。原因在於當某個 Proxy Peer 暫時離線時,. 0.062. 30.125. 0.188. 由於公告本身內建的有效時間尚未到期,無法立即. 30.375. 更新公告而導致舊有的公告依然存在,但是 Peer 卻不存在的情況發生。針對上述的情形本系統建立 實驗四:為 Proxy Server1、Proxy Server2 皆不存在 的情況下進行實驗,其實驗結果如表 4-5。. 錯誤後重試的機制,透過週期性嘗試三次的方式探 索公告與尋找公告中的 Proxy Peer,因此造成總測. 8.

(9) 試時間較長的情況發生。. 6. 參考文獻. 5. 結論與未來展望 [1]. 通訊雜誌,”第 128 期 2005 年 7 月 號”,HTTP://www.cqinc.com.tw/grandsoft/cm/1. 本研究主要針對網路位址在被封鎖的情況 下,如何透過 JXTA Browser 動態選擇 Proxy Server. 28/abi.htm. 以達到解決網路位址被封鎖的問題。由實驗一的結. [2]. 果可以得知當取得的 Proxy Peer 存在且正常提供. Blogger HTTP://www.blogger.com/start, BlogMarks. 服務時,使用者將可得到最大的效益。當使用 JXTA [3]. Proxy Agent 服務的點愈多時,表示可以提供可用. Brandgang HTTP://www1.tip.nl/~t515027/brandgang/. Proxy 的機率將會愈大,故會減少網站連線的總時 [4]. 間。此外在具有 Proxy Server 環境下執行 JXTA. Daniel Brookshier, Darren Govoni, Navaneeth. Proxy Agent 時,需要於 JXTA Proxy Agent 中設定. Krishnan, Juan Carlos Soto, JXTA:JavaTM P2P. Proxy Server 的資訊,使得 Proxy Peer 可以被其它. Programming,Person Education Inc.2002.. 點探索與溝通。. [5]. Emir Halepovic, Ralph Deters, Building a P2P Forum System with JXTA, 2002 IEEE.. 關於藉由 JXTA 技術開發 P2P 相關應用之議 題,仍有許多的發展空間。目前也有不少學者朝此. [6]. Guntala HTTP://www.gnutella.com/. [7]. Internet.com,HTTP://www.webopedia.com/TE. 方向努力,如提出以 JXTA 技術擷取及傳遞遠端網. RM/V/VPN.html. 頁內容。在此提出幾點後續研究之方向:. 一.. 在 JXTA 瀏覽器方面可以採用 Plug-in 的方 式,將 JXTA Browser Agent 整合一般的瀏覽. [8]. Jini.org,HTTP://www.jini.org/. [9]. Jini Network Technology, HTTP://www.sun.com/software/jini/. 器,而不需要執行特製化的瀏覽器。透過整. [10] JXTA.org, HTTP://www.JXTA.org. 合功能完善的瀏覽器,可以讓使用者更方便 [11] Li Gong , “JXTA:A Network Programming. 操作及增加便利性,加上 Java 的跨平台特性. Environment” in Prco. IEEE Internet. 可以輕易的執行於任何平台上。. Computing , Volume: 5 Issue: 3 , Page(s): 88 二.. 本實驗環境僅針對同一網域進行測試,未來. -95, 2001.. 將可考量以不同網域測試其效能及耗費的時 [12] Limewire. HTTP://www.limwire.org. 間。 三.. [13] Li Gong, JXTA: A Network Programming. 由於本實驗對象僅包含 2 個 Proxy Peer、1 個. Environment, 2001.. Search Proxy Peer,故無法完全表達網路上多. [14] Matei, R.; Iamnitchi, A.; Foster, P., “Mapping. 個 Peer 的測試時間,未來可以考量模擬更多. the Gnutella Network” in Proc. Internet. 的 Peer 讓實驗結果更精準。. Computing, Volume: 6 Page(s): 50 -57, 2002.. 四. 後續研究可以發展真正的 P2P Proxy Server. [15] MultiProxy HTTP://www.multiproxy.org/. 軟體,以供實務上使用。. [16] Napster. Napster. HTTP://www.napster.com, Napster 9.

(10) [17] Nico Maibaum, Thomas Mundt, JXTA: A. [19] Squid HTTP://www.squid-cache.org/. Technology Facilitating Mobile Peer-To-Peer Networks", 2002. [18] REILILY. Hello JXTA! HTTP://www.onjava.com,Raffi Krikorian, 04/25/2001. 10.

(11)

數據

圖 3-1 JXTA Browser 之系統流程圖
表 3-1、兩種架構的優缺點
圖 3-5  代理伺服器部分架構圖
圖 4-1  設定 Rendezvous Seed Peer
+2

參考文獻

相關文件

單一菜色與地區搜尋 ( 兩種二選一 ) 交叉搜尋 (4 種可同時 )/QR 碼搜尋.

•  三分搜在有水平線的情況下,如果可以確定水平線的地方一定是 答案的話,才可以用三分搜找極值。..

每個 zone 交由一部 name server負責的作 法會有一個問題,萬一這個 name server 當 掉,可能造成 Internet上其它機器無法取得屬 於這個 zone 的資料(就是 domain name

請繪出交流三相感應電動機AC 220V 15HP,額定電流為40安,正逆轉兼Y-△啟動控制電路之主

媒體可以說是內容、資訊最大的生產者,但受制於 國際社交媒體及搜尋平台的經營手法,本地主流媒 體在發展網上業務時,面對不公平的競爭。 這些

一說到網路搜尋,我們就會想到 G oogle ,但其 實搜尋引擎不是 G oogle 發明的,早在 G oogle 出現 之前就已經有搜尋引擎的應用。那麼, G oogle

首先遊戲廠商將 Master Server 啟動。第一台 Local Game Server 啟動後,向 Master Server 登入,Master Server 會告知這台 Local Game Server