Title: 整合開放性帳號及低成本,高可用性儲存設備P2P應用系統開發模式
A P2P Application Design Model Integrated with Open ID and Low-cost, High-Availability Storage
Authors: 陳育良
Chen, Yu-Liang
Yuan, Shyan-Ming
Keywords: 開放性帳號;網際網路服務;同儕網路;再生碼;OpenID;Internet Service;P2P;Regeneration Code
Issue Date: 2010
Abstract: 現今社會越來越多的服務是透過網際網路來提供,由於網際網路傳輸的終端與終端的特性(end-to-end characteristic),多數的網際網路服務是以客戶端/伺服器模式(client/server model)來進行實作,而其中大部份的服務都要求使用者必須註冊一組帳號與密碼,如此會造成兩種困擾:1.當使用者越來越多時客戶端/伺服器模式的服務效能及延展性會變差。2.使用者要為每一種網際網路服建立帳號及密碼會令使用者覺得厭煩。因此兩個解決此問題的技術被提出來,一個是解決客戶端/伺服器模式瓶頸的P2P架構,另一個是提供單一登入帳號的OpenID技術。雖然P2P提供分散式的服務以解決因使用者變多而引起的效能及延展性問題,但有關P2P的儲存方式的設計卻必須特別留意,P2P系統為了提高服務的可靠性,通常是以儲存複製的資料(replication)來因應,而此複製資料(replication)的個數則依每一個P2P系統所要求的忍受度(tolerance)來決定,P2P系統為維護複製資料(replication)的個數,每當帶有複製資料的節點離開或毀損時,系統必須嘗試在其他節點重建此複製資料,此重建過程往往會佔用相當的頻寬,因而影響服務效能。為了方便開發P2P的服務並避免使用者使用多組登入帳號及提升P2P服務的效能,本論文提出一個整合OpenID的P2P設計模式同時也針對資料重建的部份提出以再生編碼(regenerating code)結合快取的方式來改善重建資料的效能以提升網際網路的服務品質。我們在不用額外維護一份原始檔案的條件下,利用最近下載完的節點(peer)中的使用最近最少使用演算法的快取(LRU cache)中的資料來提高存取的效率以及降低編碼的成本,我們用模擬的方式,在不同快取大小以及不同節點可靠度(peer availability)之下,記錄最近存取檔案的節點的資訊。在實驗中,我們發現這些被記錄的節點在快取大小為64個檔案區塊(block)的條件下,有83%以上的比例可以改善存取效率和編碼成本。
More and more services are being offered over the Internet. Due to the end-to-end characteristic of the Internet, most Internet services are implemented in client/server model and many of them require users to register an account before using their services. But, this poses two issues: creating an account for every Internet service could become a nuisance for users and when the users of the services increase, the client/server model will suffer from the problems of low scalability and poor performance. Thus, two technologies have been proposed to handle the issues, that is, P2P architecture which deals with the bottleneck problems of the client/server model and OpenID which manages the account issue. Although P2P systems can provide distributed services to cope with the scalability and performance problems due to the increases of users, however, there are some issues about the design of P2P storage system. P2P systems commonly store replications which are dependant on the requirement of the systems in some peers to provide the availability of services. When a peer with a replication left or crashed, P2P systems will try to rebuild the replication on the new joined peer or other active peer to maintain the availability of services. The process to rebuild the replication consumes a great deal of bandwidth, hence impairs the effectiveness of services. Thus, in this thesis a P2P based implementation model integrated with OpenID is presented, which facilitates the deployment of P2P based applications over the Internet and enhance the user experience on P2P services, moreover, a low-cost, high-availability P2P storage scheme with regenerating code that combines caching methods is also designed to improve the performance of the rebuilt process. Based on regenerating code, we store the information for a peer that has recently accessed blocks and utilized the data in the peer’s LRU cache to increase access performance and reduce encoding cost. We carried out a series of experiments with different cache sizes under various levels of P2P availability. The results show that our scheme can outperform the traditional regenerating code system in terms of access performance, allowing access at least 83% of the time when cache size is 64 blocks, while also achieving a lower cost.
Appears in Collections:Thesis