帳號:
密碼:
最新動態
產業快訊
CTIMES / 文章 /
從技術層面到新開放價值的P2P改變過程
 

【作者: 吳明蔚】   2003年09月25日 星期四

瀏覽人次:【2808】

前幾年的網路泡沫化,許多人對B2B、B2C及C2C已經夠感冒了,這幾年竟又崛起所謂的P2P(Peer-to-Peer)。到了1999年時,Shawn Fanning突發奇想地撰寫一套Napster軟體來使同儕間能共享MP3檔案。當時的設計其實還是在主從式架構底下,不過因為資料量在真正傳遞時,是直接由分享雙方對傳的,所以開始有了P2P的味道。就像知名開放源碼大老Eric S. Raymond(ESR)說過:「每件出色的軟體都來自開發者個人的特殊需要(譬如搔癢)」。儘管這個突發奇想出身平凡,卻有驚人魅力吸引著學界與業界,以至於這幾年相繼出現許多P2P的新興領域與市場,而P2P能成功的道理在於滿足新世代網際網路使用者所喜愛的兩大需求:分享與開放。


P2P的架構

從P這個字母就佔了整個術語的2/3來看,Peer是P2P技術中很重要的元件。既然P2P所強調的觀念就是分享與開放,在整個P2P網路中,只要任意兩方能夠直接進行連線,滿足彼此的需求,則這兩方即符合P2P的要求,所以並不能因為網路上某個節點所具備的能力和其他人有所差異(譬如有一台集中式索引伺服器或一台代理伺服器),即判定此網路不符合P2P的精神,換句話說,只要使用者彼此之間能做到P2P連線,就可以算是P2P網路。


目前大部分的P2P軟體是架構在TCP/IP協定之下,所應用的領域以MP3檔案的分享最為人知。以開山始祖Napster為例(國內EZPeer及Kuro亦採用此架構),Napster所採用的是集中式架構(圖一),既有一個集中式伺服器做為索引目錄的建立,因此整個網路的資源消耗較低、速度較快和延展性較高,而缺點是可靠性較低(單點故障)以及維護成本高昂。而後來的仿效者如Gnutella及E-Donkey改採用分散式架構(圖二),沒有集中式的伺服器,相對地網路的延展性變低,容易造成壅塞,而優點則是可靠性高和建置成本極低。假如讀者想問哪一種P2P的架構較好?當我們以教堂與市集來形容專屬軟體與開放源碼之間的角色定位時,集中式P2P與分散式P2P正有著這樣的味道。


Napster的架構:

  • 1. 連線:安裝Napster軟體後,做為Napster P2P網路的Peer(Client端),然後連上事先設定的伺服器,接著Napster Client端會將使用者端的相關資料以及分享檔案列表傳送給Server端。


  • 2. 搜尋:當你想搜尋檔案時, Napster會將查詢的要求傳送給Server,然後Server會尋找本身資料庫的檔案列表,並將結果傳回去。


  • 3. 下載:收到Server的結果後,你可以選擇想下載的檔案,並直接連線至對方(Peer),進行P2P的傳送,而無須透過Server的轉送,一旦檔案傳送完畢時,Server可進行稽核動作。



《圖一  Napster的架構及運作方式》
《圖一 Napster的架構及運作方式》

Gnutella的架構:

  • 1. 連線:安裝Gnutella軟體,做為Gnutella P2P網路的Peer端(既是Server也是Client),並沒有任何事先設定的伺服器來做連結,因此Gnutella對網路可以說是一無所知,所以Gnutella需要知道至少一台Peer的IP位址和Port,以做為第一個連線(起始點),接下來有三件事會發生:你宣布你的存在、他會告知其他Peer,以及每個Peer回訊息給你,之後Gnutella就會和其他Peer交換資訊,以瞭解整個Gnutella P2P網路。


  • 2. 搜尋:當你想搜尋檔案時,Gnutella會將查詢要求傳送給有直接與你連線的Peers,而這些Peers會繼續將你的要求傳送給有直接與其他使用者連線的Peers,然後反覆下去。在這散佈過程的每一台Peer也都會尋找本身的檔案列表,並將結果傳回去,假如找不到符合結果,那麼就無須回報。


  • 3. 下載:陸續收到Peers的結果後,你可以選擇想下載的檔案,並直接連線至對方(Peer),進行P2P的傳送,不用再透過網路上其他的Peers介入。假如連線失敗,則很有可能是對方有設防火牆,這時Gnutella會重新發送一個下載要求(Push下載),並以Step 2的方式散佈這項要求,對方(擁有你想下載的檔案)會嘗試從他那邊直接連線回來,然後進行P2P傳送。



《圖二 Gnutella的架構及運作方式》
《圖二 Gnutella的架構及運作方式》

總觀之前對MP3檔案共享技術的探討,我們以(圖三)做為共享示意圖,並製作出包括MP3檔案的共享技術、傳統主從式架構及一般搜尋引擎的比較表(表一),做一個整體性的歸納。在(圖三)中,我們假設第三者作為平台提供者的C點,資料需求者為A點,資料供應者為B點。在(表一)中,淺綠色的部分代表著國內MP3檔案共享平台Kuro所採取的類似搜尋引擎及Napster將資料搜尋的做法,並集中由特定索引伺服器來處理。淺藍色的部分標示出EZPeer及Kuro採用真正P2P的作法,並將實際的資料傳輸轉嫁給使用者自行處理。


《圖三  檔案共享示意圖》
《圖三 檔案共享示意圖》
表一 MP3檔案共享技術、傳統主從架構及一般搜尋引擎的比較圖
  一般網站 一般搜尋引擎 Napster Gnutella
索引存放點 C點(網站) C點(搜尋引擎) C點(Napster) 每個peer
資料存放點 C點 B點 B點 B點
C1用途 網頁存取 網頁搜尋 檔案搜尋 檔案搜尋
C2用途 不存在 事先快取 事先快取 檔案搜尋
    (存入索引伺服器) (存入索引伺服器)  
C3用途 不存在 網頁存取 檔案傳輸 檔案傳輸
A/B點身份 不清楚 不清楚 略知 略知
  (僅知IP) (僅知IP) (知IP及帳號) (知IP及帳號)
發佈即時性 快速 普通 快速 快速
    (多半要等C點去掃) (B點主動告知) (B點主動告知)
(資源如何發佈) (C點=B點)      
搜尋即時性 即時 事先快取 事先快取 即時
    (資料可能已過期) (資料可能已過期) (搜尋B點)
(資源如何發現) (C點=B點)      
主要資料類型 網頁文件 網頁文件 MP3音樂 MP3音樂/多媒體

P2P軟體與技術的應用熱潮

再怎麼樣響亮的專有名詞,若沒有發展出殺手級的應用,也只能說叫好不叫座,不過從這幾年P2P在諸多領域蓬勃發展的情勢來看,軟體界大老已紛紛開始提出結合P2P觀念的完整Web Services解決方案,例如微軟的HailStorm/.Net平台、Sun的JXTA/Sun One架構及IBM的Encina/WebSphere,所以P2P除了在檔案分享上出盡鋒頭外,在其他領域亦都有許多的表現。以下將介紹一些P2P應用的領域:


電玩與訊息網路

  • 1. CenterSpan(www.centerspan.com)專注在P2P聲音文字訊息的傳送,適合在多人電玩環境的應用。


  • 2. Jabber(www.jabber.com)是使用XML提供的P2P即時訊息系統,能夠更有效整合ICQ、AOL及MSN等即時訊息軟體。



分散計算

  • 1. Applied MetaComputing(www.appliedmeta.com)的產品Legion提供企業做跨平台的P2P資源管理工具及P2P知識管理應用軟體,讓網路內的資源,緊密的整合,且在網路安全、功能及彈性上都有兼顧。


  • 2. Datasynapse(www.datasynapse.com)提供財務公司P2P的網路,最終的目標是全球性的財務網路。


  • 3. Entropia(www.entropia.com)致力在計算能力分享的軟體設計,結合上萬台電腦的空閒時刻,進行分散式計算,免費協助解決一些人類的共同問題,例如搶救愛滋病患者、藥物搜尋與運算、醫學影像處理等等。當然,該公司會利用某些百分比的計算能力發展成營利用途。



管理與合作

  • 1. 惠普(Hewlett-Packard)計畫將推行已一年多的e-speak產品提供P2P上的應用。


  • 2. 由Lotus Note創始人Ray Ozzie所創辦的Groove Networks(www.groove.net)投入開發採購、批發、貨品管理及客服等應用軟體。


  • 3. 英代爾(Intel)也著眼於企業級的P2P應用軟體,並成立了一個Peer-to-Peer Working Group。


  • 4. NextPage(www.nextpage.com)讓企業內部的檔案伺服器能以P2P的模式工作。


  • 5. Quiq(www.quiq.com)鎖定在的前一千大企業(Fortune 1000)並提供虛擬P2P的社群環境。



Peers代理人與分散式搜尋引擎

  • 從西門子出來的WebV2(www.webv2.com)著眼於提供企業的Supply chain,提供P2P的應用軟體讓不同廠商之間溝通和搜尋資料。



超級分散式

  • 1. vTrails(www.vtrails.com)發展出Full Duplex Packet Cascading (FDPC),可以有效地減少網站面臨壅塞流量。FDPC將陸續連線進來的使用者,先取一部份做第一層(tier),剩下的使用者將繼續分成許多層(tiers)。上一層使用者所下載的資料,會直接變成下一層使用者下載資料的來源,端看最小hop數目以及是否在同一地理區域,以此類推。換句話說,FDPC將網站壅塞點,分散至一連串的使用者層(tiers)之間作為P2P的下載,而在每一台vTrails伺服器,會記錄地理位置圖,以瞭解其使用者的位置及IP位址。


  • 2. 2AM也有類似的技術,即StreamingPeer。



P2P之新社群經驗與開放價值

儘管過去的主從架構亦能提供使用者之間互動的平台,但仍不敷使用。筆者認為P2P除了能讓使用者之間能做更直接密切的溝通之外,P2P的社群經驗是與Open Source開放源碼運動契合的,所推動的「開放價值」精神更是一致。


P2P的使用者一直很強調分享,包括:


  • 1. 資料與資訊的分享(MP3、影片、文件)。


  • 2. 知識的分享(群組合作、即時訊息以及視訊會議)。


  • 3. IT設備的分享(CPU時間、記憶體以及儲存空間)。



因為分享而獲得更多,因為開放而擁有更多,以至於筆者歸納P2P與Open Source兩者間具有的三個開放價值:


開拓思維與眼界(Open your mind and vision)

敞開心胸與他人分享,你會訝異到別人的獨到見解,並得以豐富自己的思維與心靈,而另一方面透過無國界密切地分享交流,可以讓自己增進眼界,進而培養自身的判斷力與領悟性。


避免再製與閒置(Avoid re-invent and idle)

程式設計師可以有效地透過分享原始碼來持續激發創意,延續軟體的生命;系統管理者以及一般使用者亦可透過分享來提升資源利用率,同時我們也可避免同樣的事物再製兩次。ESR說我們應該認為別人的時間是很寶貴,同樣的問題不應該花時間解決兩次。


團體合作(Teamwork)

切勿劃地自限,唯有共同合作才會有更大的競爭力,並能教學相長地學到更多東西。Linux之父Linus Torvalds曾說過一句有意思的話:「只有糊塗的人用磁帶機來備份資料,明眼人會直接上傳他重要的東西,然後讓全世界來拷貝。」您覺得呢?


P2P的未來發展與衝擊

P2P接下來會怎麼走?

細看P2P的網路架構,其實就是將點對點(Point-to-Point)的層次,從主從式架構(Client-and-Server)連結進一步成為Peer之間的連結。然而,觀念雖然簡單,戲法人人會變,但巧妙卻是各有不同。筆者認為P2P在接下來幾年,會在使用者族群繼續蓬勃發展,因為畢竟Peer的概念是比較貼近用戶端,而另一方面企業用戶則會因為Peer觀念,從而發展出更符合他們需求的完整解決方案,像Web Services即是一例。


在一般使用者的角度中,他們所關心的是P2P的分享(sharing)能力,整個設計理念應該是這個P2P軟體能分享什麼(what)以及如何分享(how),也就是說設計的P2P軟體要夠「好用」,而不只是一個不好玩,60分及格的玩具。接著筆者以功能導向的思考方式,來探討使用者所關心的議題。


  • 1. 全面性(All-in-one):在使用者端不應僅強調效能而忽略功能的多樣化,使用者要的是多機一體。


  • 2. 延展性(Scalability):網路架構能提供怎麼樣的存取速度?是否能很快的找到所想要的資源?是否能能負荷多人口的社群?


  • 3. 商業模式(Commercial business models):如何在開放平台計費而又不會令使用者感到討厭、甚至是察覺?因為一般人都不喜歡付費的感覺…。


  • 4. 互通性(Interoperability):異質的P2P軟體間是否有共通標準(standards)?異質P2P的社群又如何做到資源共享?


  • 5. 友善性(Interface I/O):簡單容易的使用者介面,而非繁瑣的專有名詞及凌亂的操作。


  • 6. 安全面(Security/Trust):金錢交易的安全性,以及資訊分享的正確性。


  • 7. 法律面:P2P網路強化了使用者與使用者之間的互通能力,但同時也容易涉及法律問題。一般而言,很難去正面地約束使用者行為。



後P2P時代?

現在IT硬體產業所處的是後PC時代,並面臨硬體產業將轉變成純製造業的時代,這是一個邁入微利的時代,也是市場版圖會出現大者恆大的時代。而軟體產業亦處於後Open Source時代的來臨,筆者認為改變最多的是軟體技術發展模式,由於現成軟體工具及套件原始碼更容易取得,傳統PC硬體產業的所謂「公版」開發模式亦會發生在眾多軟體開發廠商的身上。因此廠商的競爭力不再僅僅是比功能或比規格,而是在比「效能」和比「加值」上面。


在後PC與後Open Source的夾擊下,這也正是後P2P時代所處的局面,如何利用最小的資源帶來最大的利益,這將會成為後P2P時代的核心價值。


結論

從Napster的星星之火到今天琳瑯滿目的P2P軟體,我們可以發現到分享的東西並不侷限在MP3的音樂檔案裡。P2P的觀念與開放源碼是不謀而合,其開放價值能開拓全人類的思維與眼界,為了讓我們避免再置與閒置,我們透過團體合作來達到更大的目標與理想。筆者始終相信,開放的意義在於合作而非免費,所以越來越多的P2P使用者已開始如火如荼式地分享資源,並有越來越多的廠商積極地在整合資源,就讓我們拭目以待後P2P的時代吧!


(作者現為台灣大學電機研究所博士班學生:http://www.nctu.idv.tw)


相關文章
以馬達控制器ROS1驅動程式實現機器人作業系統
推動未來車用技術發展
節流:電源管理的便利效能
開源:再生能源與永續經營
從能源、電網到智慧電網
相關討論
  相關新聞
» 仁大資訊Booster5讓小店家也能做在地行銷
» 中國國家郵政局:春節京東物流量佔比最大
» 貿協攜eBay打造臺灣館助MIT產品跨境銷全球
» 京東攜手Intel建立數字化零售聯合實驗室
» 2017 Q1台資安設備成長5.5% IDC:政府、教育與銀行產業需求強勁


刊登廣告 新聞信箱 讀者信箱 著作權聲明 隱私權聲明 本站介紹

Copyright ©1999-2024 遠播資訊股份有限公司版權所有 Powered by O3  v3.20.2048.52.15.35.129
地址:台北數位產業園區(digiBlock Taipei) 103台北市大同區承德路三段287-2號A棟204室
電話 (02)2585-5526 #0 轉接至總機 /  E-Mail: webmaster@ctimes.com.tw