文件共享
網路上共享自己的計算機文件
文件共享是指主動地在網路上共享自己的計算機文件。一般文件共享使用P2P模式,文件本身存在用戶本人的個人電腦上。大多數參加文件共享的人也同時下載其他用戶提供的共享文件。有時這兩個行動是連在一起的。
網路給我們帶來了許多方便,我們可以用文件共享輕輕鬆鬆的與其他人分享文件,文件共享是指主動地在網路上(網際網路或小的網路)共享自己的計算機文件。
多年來,文件共享(file sharing)是主機和多用戶計算機系統的一個特點。隨著網際網路的發展,被稱為文件傳輸協議(FTP)的文件轉移系統被廣泛地應用。FTP能被用於訪問(讀取及可能寫入)共享文件,該文件是從FTP伺服器站點分享來的,通過用戶特別設置的密碼來獲得其訪問權。許多FTP站點使用公眾密碼(它發生在匿名時)來提供公眾文件分享,或至少可以通過下載文件的方式來瀏覽或複製。大多數網站開發者使用FTP來上載新的或修改的Web文件到Web伺服器,甚至萬維網自身能夠被當作大型文件共享,在這個文件共享中網頁或文件經常被下載或複製給Web用戶。
Napster是第一個大型的,為許多人使用的文件共享工具,它本來是一個中央集中的工具,它只共享MP3文件,音樂工業在對它進行法律控告后成功地將它關閉了。Napster有一個中心的、在它上面報道的用戶的MP3文件的目錄,它還包括IRC似的聊天室和即時通訊功能。幾乎所有新的大的文件共享服務在設計上都以它為榜樣。
在Napster陷入困境前文件共享的社群就已經建立了一個新的選擇:OpenNap。它是對Napster的協議進行反向工程后發表的一個開放源代碼的伺服器,是Napster的一個選擇。這些網路在Napster倒閉后依然存在,許多新的使用這種協議的客戶程序出現了。
此後,一個叫做Gnutella的分散的網路出現了。這個服務完全是開放源代碼的,它允許用戶尋找任何文件形式,用戶不僅可以在網路上找到MP3文件。它是吸取了Napster這樣的中央集中制的服務的經驗后發展出來的,專門為了對付這樣的服務的弱點。其目的是在個別連接被中斷後依然保證整個網路的運行。
今天Napster和Gnutella依然在文件共享中占支配作用,它們定義了文件共享的兩個極端。從2003年9月開始美國唱片工業協會控告了一系列文件共享服務和用戶。今天,Gnutella依然是一個自由的和開放的協議,而Napster則是一個重建的商業性的網上音樂服務,它與其它商業性服務如iTunes是競爭對手。
大多數文件共享系統位於這兩個極端之間。
今天在不同的操作系統上有許多不同的檔案共享程序,它們各有不同的功能。一般商業性的文件共享程序也分傳廣告或帶有間諜軟體。
文件共享有多個重要的問題,其中兩個最重要,第一個問題是中央集中制還是分網路結構用戶的隱私權和匿名性。後者在版權擁有者對一些文件共享用戶起訴后成為了一個重要問題。第二個問題是使用所謂的“間諜軟體”收集和出賣用戶數據。早年的客戶端程序只接受一種協議,因此一個客戶端程序要麼只接受Napster要麼只接受Gnutella。當時有一種在客戶端建立一個使用多種協議的軟體的運動。這個運動最主要的目的是一個用戶沒有必要使用不同的程序來做同一件事。有時有的人共享的文件非常受人歡迎,這樣許多人會想從他那裡獲得這個文件,這有可能導致這個人的系統無法滿足所有的需要。分散制是減輕這個問題的一個辦法,尤其是假如有許多人在共享這個文件的話,那麼這個文件可以從不同的地方來獲取。分散制也被用來解決對中央集中制的威脅,這個威脅即可以來自法律控告,也可能來自敵對的用戶。一個分散的網路無法被整個地攻擊,攻擊者只能對其個別成員進行攻擊,而整個網路的剩餘部分依然工作。為了防止有人只收藏別人提供的文件而不肯共享它們,後來有的系統引入了交換和評分的功能。在這樣的系統中,一個用戶只在他能夠期望獲得報酬的情況下才共享。KaZaA使用一種非常簡單的評分系統。客戶端程序計算用戶的優先權並告訴提供文件的一段該用戶的優先權是多少。但這個系統被發明后不久就有人改變了客戶端程序使得客戶端用戶總是擁有最高的優先權。另一個使用評分系統的客戶端程序是eMule。eMule的客戶端程序適用多重來源文件傳輸協定,它監視用戶向另一個用戶下載或上傳多少文件。有時這個評分系統似乎不影響下載的速度。假如用戶有一個空閑的上傳隧道的話,那麼它接受對方,向對方上傳8MB數據,然後將對方放到它的排隊的最後。假如對方的評分為x2的話,那麼對方比起評分為x1的用戶只要等半數的時間就又排到了,用戶再上傳8MB數據。假如雙方互相傳送數據的話,那麼它們相互之間的評分就會不斷上升,傳遞的速度也提高。BitTorrent協議也有非常好的評分系統。假如一個用戶只下載而不上傳的話,那麼他的下載速度就非常低。今天的系統在上傳和下載的功能上和在防止侵犯法律方面的功能上都比較有效。
高速網際網路終端普及后匿名的文件共享系統(如Gnutella和Napster)深受歡迎,此外比較小而質量依然相當高的聲音文件格式如MP3也為文件共享的成功提供了一定的幫助。雖然文件共享本身是一種合法的技術,但有些人(實際上大多數使用文件共享的用戶)用此下載受版權保護的文件。這導致了一些版權擁有者對文件共享的反攻。就文件共享的法律後果問題有很大的爭議。尤其是假如共享文件的人來自法律不同的國家的話,這個問題會很複雜。比如在有些國家一定程度的加密演演算法只有在獲得國家特別允許后才能被個人使用或擁有,而在其它國家裡這個限制可能不存在。假如有人從一個允許使用這樣的演演算法的國家裡取得了這樣的演演算法的源代碼呢?2000年代初整個文件共享社群不斷受衝擊。美國唱片工業協會和一些唱片公司企圖關閉越來越多的文件共享。但他們的努力不很成功,因為不斷有新的系統出現取代被關閉的系統,而且許多這些新的系統沒有中心伺服器,因此使用法庭的方法無法關閉它們,其它的一些系統則逃避到法律無法攻擊它們的國家。
文件共享中,比較適合企業使用的軟體叫 FreeEIM,FreeEIM 文件共享不同於傳統的C/S 模式(Client/Server 結構)的軟體,它採用最新的LanIPB 技術,程序可自動查找並獲取其他用戶的信息,同時顯示到‘在線用戶’列表中,因此無需配置伺服器來支持,使軟體的運用更簡便。 FreeEIM 文件共享在使用過程中,數據輸入之後,程序會先進行加密壓縮,再進行傳輸。對方收到消息后,程序會進行解密解壓,才能獲取信息。另外,FreeEIM 與外部網際網路徹底隔離,任何數據都無法通過FreeEIM 傳輸到區域網以外的電腦上。使用過程中,無需擔心信息的泄漏,或竊取,具有高度的信息保密性。
文件共享有許多不同的協議,以下列舉的是最常用和最重要的。
AresAres
是一個類似Gnutella的很普及的網路,其標準(和最普及的)Ares Galaxy客戶端於2005年3月是美國P2P客戶端中第六常用的。大多數使用Ares的是想要接觸盡量多的網路而沒有找到更好的協議的人。
BitTorrentBitTorrent
協議是唯一廣泛被用在公司分配系統中的檔案共享協議,它的下載速度一般比較高,原因是每個“洪流”為每個文件或文件組存儲著其用戶的信息:相對於其它協議其協議本身比較小,缺點是它沒有尋找功能。此外它不很靈活,另外精確地說它不完全是一個P2P協議。2004年初有人發現BitTorrent比任何其它網際網路檔案共享協議所攜帶的信息都多。許多人相信這至今未變。
Direct ConnectDirect Connect
是一種常用於小的網路和大學內部網路中的協議,它尤其適用於這些小網路環境中。DC++是其最常見的客戶端程序。
eDonkey、Overnet和Kad Network
eDonkey 2000和eMule是eDonkey網路最普及的P2P客戶端程序。它被用來傳送大量數據,其傳送數目僅少於BitTorrent。它比BitTorrent最大的優點是其客戶端程序有一個尋找引擎。用它用戶可以找到許多文件,比起BitTorrent來它的傳送速度較慢。Overnet的設計目的是取代eDonkey,許多eDonkey用戶端程序同時使用Overnet,Overnet沒有中心伺服器,但其用戶數量少於eDonkey。Kad Network很類似Overnet,幾乎只有eDonkey的用戶使用它,但它的普及性也很低。
FastTrack
FastTrack的第一個客戶端程序是KaZaA,它的協議與Gnutella2很相似。從2002年到2003年它是最大的用戶網,但2005年它退到了第三名。這個衰退的原因是因為這個網路無法對付眾多用戶同時使用,而且許多版權擁有者在網上放入了許多垃圾文件來阻止受版權保護的歌曲的交換。KaZaA的用戶端軟體在用戶電腦上設置一個間諜軟體,法庭判決這個間諜軟體違反了版權,因此不得再繼續使用和分發。iMesh也主要使用FastTrack為其協議,此外開放源代碼的GiFT也可以用來連入FastTrack網路。
Gnutella和Gnutella2
當Napster陷入法律困境時,Nullsoft的賈斯廷·弗蘭克爾發展了Gnutella,Gnutella是第一個真正的非中心的客戶端。此後這個協議獲得了很大的發展。Gnutella對文件共享有深刻的影響。Gnutella2本來是對Gnutella的一個改進和擴展,它的發展人是Shareaza的創始人邁克爾·斯多克斯。它提供了一個擴展的數據包格式、基於UDP的搜索演演算法和許多其它擴展比如數據包壓縮等等。今天現代的Gnutella客戶端程序都支持這些功能。
OpenNap
(前身為Napster)OpenNap是對原來的Napster客戶端程序改變後來的,Napster客戶端程序是第一個普及率高的P2P文件共享程序。今天依然有人在發展它,WinMX等程序使用它。
WinNYWinNY
是WinNY客戶端程序使用的協議的非正式名稱,它在日本(2005年)很普及,但在亞洲外很少被使用。
WPNPWPNP
是WinMX最主要的協議。從2001年到2002年這個網路提供最好的搜索不明的英語材料的結果,但它最主要被用來搜索亞洲語言的材料。
1.全時網路會議軟體:全時網路會議MeetMe Plus(簡稱MMP)是第三代商務協作通信服務。中國第一個面世的融合通信會議服務,絕對具有跨時代意義的網路會議產品。隨時隨地召開MeetMe plus會議,其他與會者無需離開電腦桌,直接通過PC加入會議就可以實現跨越地域的協作交流,隨時隨地盡享MeetMe plus的全新會議體驗。
2.Netmeeting:Netmeeting是個方便不用安裝的共享小工具,並不是軟體本身不必安裝,而是該軟體是微軟公司進行捆綁銷售的產品,一般在系統安裝時就會自動被安裝。其工作原理主要是依據IP進行設定和共享,尤其適合區域網用戶。
3.QQ遠程協助:QQ的遠程協助得益於QQ軟體的廣泛使用,是QQ軟體的附帶服務之一,只要裝有QQ的用戶即可通過QQ實現桌面共享,該軟體要在網際網路的基礎上進行工作。
雖然文件同步和共享軟體和電腦備份很容易讓人混淆成同一件事,但它們確實存在很多差異。事實上,文件同步和共享軟體一般不以電腦備份機制運作,而是作為啟用備份過程的工具。當然,用戶很可能在離線工作時製造數據。這個數據最初可能存儲在本地,但當下次用戶連接時就會同步到伺服器。一旦數據同步,它就可以連同其他文件數據一起備份。