|
對(duì)等(P2P)網(wǎng)絡(luò)與傳統(tǒng)的客戶機(jī)/服務(wù)器或多層服務(wù)器網(wǎng)絡(luò)不同,對(duì)等網(wǎng)絡(luò)中的對(duì)等機(jī)是彼此直接通信的,而且無需依賴集中式服務(wù)器或資源就可以完成彼此之間的交互操作,實(shí)現(xiàn)信息共享。P2P體系結(jié)構(gòu)通過創(chuàng)建有潛力、非常高的可用性和容錯(cuò)能力的計(jì)算資源網(wǎng)絡(luò),使真正的分布式計(jì)算成為可能。本文在JXTA的基礎(chǔ)上,分析了P2P在協(xié)同軟件開發(fā)中的作用。 計(jì)算機(jī)技術(shù)的發(fā)展把人類社會(huì)帶入了信息化時(shí)代,隨著信息化進(jìn)程的深人,通信技術(shù)與計(jì)算機(jī)及其網(wǎng)絡(luò)技術(shù)的融合,產(chǎn)生了一個(gè)新的研究領(lǐng)域——計(jì)算機(jī)支持的協(xié)同工作CSCW(Computer Supported Cooperative Work),簡(jiǎn)稱計(jì)算機(jī)協(xié)同工作。作為一門學(xué)科,CSCW是1986年9月在美國(guó)德克薩斯州召開的第一屆CSCW國(guó)際會(huì)議上被確定下來的。那么,什么是CSCW呢?現(xiàn)在比較一致的觀點(diǎn)是:在計(jì)算機(jī)技術(shù)支持的環(huán)境中(即CS),一個(gè)群體協(xié)同工作完成一項(xiàng)共同的任務(wù)(即CW)。它的目標(biāo)是設(shè)計(jì)支持各種各樣的協(xié)同工作的應(yīng)用系統(tǒng)。開放系統(tǒng)互連環(huán)境、協(xié)同工作支撐平臺(tái)和工具、協(xié)同工作人機(jī)接口三方面稱為一個(gè)協(xié)同工作開發(fā)環(huán)境。其中協(xié)同工作支撐平臺(tái)和工具(也就是平常所說的協(xié)同軟件技術(shù))是由CSCW系統(tǒng)開發(fā)者根據(jù)需求確定協(xié)同工作模型和機(jī)制,選取或開發(fā)某些工具構(gòu)成協(xié)同工作的支撐平臺(tái),為各種CSCW應(yīng)用系統(tǒng)的開發(fā)提供一些通用的服務(wù),以使開發(fā)者將他們的主要工作放在滿足特定應(yīng)用系統(tǒng)的需求上,而不要把大量的精力花費(fèi)在那些具有共同特點(diǎn)、同時(shí)也是比較難以處理的問題上。這個(gè)問題已受到越來越多的重視,不同系統(tǒng),不同網(wǎng)絡(luò)環(huán)境下的協(xié)同需求越來越迫切,現(xiàn)在急需一種可靠,可擴(kuò)展,獨(dú)立于各種平臺(tái)和網(wǎng)絡(luò)環(huán)境的軟件技術(shù)來滿足這種要求。 1 分布式計(jì)算中的新形式:P2P 在過去許多年中,網(wǎng)絡(luò)應(yīng)用程序都構(gòu)建在一個(gè)分層結(jié)構(gòu)中,比如C/S結(jié)構(gòu)和B/S結(jié)構(gòu)。這樣的應(yīng)用必須在網(wǎng)絡(luò)內(nèi)設(shè)置一個(gè)服務(wù)器,信息或是先集中上傳到服務(wù)器保存,然后再分別下載(如網(wǎng)站)?;蚴切畔捶?wù)器上專有規(guī)則(軟件)處理后才可以在網(wǎng)絡(luò)上傳遞流動(dòng)(如郵件)。此方式要在互聯(lián)網(wǎng)上設(shè)置擁有強(qiáng)大處理能力和大帶寬的高性能計(jì)算機(jī),配合高檔的服務(wù)器軟件,再將大量的數(shù)據(jù)集中存放在上面,并且要安裝多樣化的服務(wù)軟件。而P2P根本的思想,同時(shí)也是它與C/S和B/S最根本的區(qū)別在于網(wǎng)絡(luò)中的節(jié)點(diǎn)在使用其他節(jié)點(diǎn)資源的同時(shí)又是資源或服務(wù)的提供者,兼具client和server的雙重身份。P2P技術(shù)的特征之一就是弱化了服務(wù)器的作用,甚至取消服務(wù)器,任意兩臺(tái)PC互為服務(wù)器,同時(shí)又是客戶機(jī),即對(duì)等。通過創(chuàng)建有潛力展示非常高的可用性和容錯(cuò)能力的計(jì)算資源網(wǎng)絡(luò),P2P體系結(jié)構(gòu)使真正的分布式計(jì)算成為可能。P2P的技術(shù)特性如下: (1)既是S又是C,如何表現(xiàn)取決于用戶的要求,網(wǎng)絡(luò)應(yīng)用由使用者自由驅(qū)動(dòng)。 (2)信息在網(wǎng)絡(luò)設(shè)備間直接流動(dòng),高速及時(shí),降低中轉(zhuǎn)服務(wù)成本。 (3)構(gòu)成網(wǎng)絡(luò)設(shè)備互動(dòng)的基礎(chǔ)和應(yīng)用。 (4)在使網(wǎng)絡(luò)信息分散化的同時(shí),相同特性的P2P設(shè)備可以構(gòu)成存在于互聯(lián)網(wǎng)這張大網(wǎng)中的子網(wǎng),使信息按新方式又一次集中。 如今P2P技術(shù)在企業(yè)協(xié)同、企業(yè)門戶、P2P群集和VPN、人機(jī)遠(yuǎn)程互動(dòng)和機(jī)機(jī)互動(dòng)、寬帶網(wǎng)及無線移動(dòng)網(wǎng)應(yīng)用等方面有著巨大的潛力。不難發(fā)現(xiàn),這些也是CSCW應(yīng)用的重要領(lǐng)域。所以研究P2P的實(shí)現(xiàn)技術(shù),對(duì)于開發(fā)高質(zhì)量的協(xié)同軟件來支持企業(yè)內(nèi)和企業(yè)間的協(xié)同工作具有重要意義。 2 Jxta使P2P能進(jìn)行交互式操作 傳統(tǒng)的P2P應(yīng)用程序都是由單獨(dú)的開發(fā)商開發(fā),使用了特定的平臺(tái)及其技術(shù),針對(duì)特殊的需要來建立的,比如現(xiàn)在非常出名的軟件Napster用來音樂文件交換、Gnutella用來普通文件交換。由于不同的網(wǎng)絡(luò)服務(wù)的特性和缺少一個(gè)共同的底層基礎(chǔ),每一個(gè)都使用不兼容的技術(shù)使它的用戶同別的P2P通信相隔離。開發(fā)商們?yōu)榱诵陆ㄒ粋€(gè)P2P應(yīng)用,不得不重復(fù)大量的工作。Jxta的出現(xiàn),就是為了解決P2P網(wǎng)絡(luò)間的交互式操作問題。Jxta是由SUN公司推出的一組開放的通用P2P協(xié)議,它允許任何接入網(wǎng)絡(luò)的設(shè)備作為對(duì)等點(diǎn)進(jìn)行通信和協(xié)同工作,如移動(dòng)電話、PDA、PC機(jī)、服務(wù)器等。JXTA技術(shù)使各家公司可以將精力集中在開發(fā)資源上,從而在相應(yīng)的領(lǐng)域?yàn)槠髽I(yè)和客戶創(chuàng)建并部署新的解決方案,而不是開發(fā)或重新開發(fā)P2P基礎(chǔ)設(shè)施。 2.1 Jxta的設(shè)計(jì)思想 Jxta的主要目標(biāo)是使用一組協(xié)議,每一個(gè)協(xié)議都可以很容易的實(shí)現(xiàn)和集成到P2P服務(wù)和應(yīng)用中,這樣,不同的P2P系統(tǒng)之間可以方便的互相通信,協(xié)同工作,向?qū)Ψ教峁┓?wù)。Jxta工程的組件是認(rèn)真設(shè)計(jì)分工的產(chǎn)物,它們?yōu)榉盒蚉2P網(wǎng)絡(luò)提供最小需求,去除了所有特定于策略的邏輯和組件。這樣,就僅剩下幾乎所有的應(yīng)用程序都能使用的構(gòu)件要素,不用考慮目標(biāo)用戶和特定實(shí)現(xiàn)。因?yàn)镴xta組件沒有強(qiáng)加一些不必要的策略,也沒有硬性規(guī)定特定的應(yīng)用操作模型,所以使得簡(jiǎn)單地構(gòu)造P2P應(yīng)用成為可能,也更方便。 2.2 Jxta的特性 (1)協(xié)同性。Jxta使得對(duì)等點(diǎn)能提供多種P2P服務(wù),用于對(duì)等點(diǎn)之間的相互通信。 (2)平臺(tái)獨(dú)立性。Jxta獨(dú)立于編程語言、傳輸協(xié)議和開發(fā)平臺(tái)。 (3)通用性。Jxta允許任何數(shù)字設(shè)備接入,而不僅僅局限于PC機(jī)或某一特定平臺(tái)。 Jxta的這些特性為P2P準(zhǔn)備了一個(gè)交互操作的基礎(chǔ)構(gòu)造。
信息發(fā)布:廣州名易軟件有限公司 http://m.jetlc.com
|