电竞比分网-中国电竞赛事及体育赛事平台

分享

emule應(yīng)用及原理

 冰刀雪劍 2007-07-15
來到vc也有很長(zhǎng)時(shí)間了,從不再潛水到現(xiàn)在有一個(gè)月的時(shí)間了,在作為技術(shù)區(qū)版主的一個(gè)月期間,我認(rèn)真留意了好多朋友提出的問題,發(fā)現(xiàn)不僅是我們剛接觸emule的朋友,就算是一些玩了幾個(gè)月的朋友,對(duì)于一些emule的問題也是模棱兩可,存在不少誤解之處,另外也確實(shí)有好多問題,本區(qū)和技術(shù)區(qū)的貼子從來沒有對(duì)此進(jìn)行過說明,再此,我就結(jié)合這些問題集中寫一些解釋,試著回答一些,希望能夠解決眾多朋友的不明之處,當(dāng)然有錯(cuò)的地方,也請(qǐng)您不吝指教。

1)P2P到底是什么?

Peer-to-peer的縮寫,指的是點(diǎn)對(duì)點(diǎn)的意思,最早是在美國(guó)由 18歲的Shawn Fanning開發(fā)出一個(gè)叫Napster的軟件時(shí),引入得概念 ,它不僅僅是一種軟件架構(gòu),也是一種社會(huì)模式的體現(xiàn),網(wǎng)絡(luò)上流行的P2P軟件的架構(gòu)手段主要有兩種:集中式和分布式。
集中式:便是利用服務(wù)器作為媒介使各個(gè)分散的節(jié)點(diǎn)(用戶)能互相聯(lián)系,生成各種服務(wù)響應(yīng)。
分布式:每個(gè)節(jié)點(diǎn)即做服務(wù)器又做客戶端,這種方式非常靈活,一個(gè)孤立的節(jié)點(diǎn)只要連上另一個(gè)節(jié)點(diǎn)便可以進(jìn)行傳輸。
Napster可以說是第一代p2p軟件。后來由于Napster陷入訴訟危機(jī)(相關(guān)版權(quán)問題),便出現(xiàn)了Gnutella,它吸取了Napster的失敗教訓(xùn),將P2P的理念更推進(jìn)一步:它不存在中樞目錄服務(wù)器,用戶只要安裝了該軟件,立即變成一臺(tái)能夠提供完整目錄和文件服務(wù)的服務(wù)器,并會(huì)自動(dòng)搜尋其它同類服務(wù)器,從而聯(lián)成一臺(tái)由無數(shù)PC組成的網(wǎng)絡(luò)超級(jí)服務(wù)器。傳統(tǒng)網(wǎng)絡(luò)的Server和Client在它的面前被重新定義。Gnutella作為第二代p2p軟件,他們可以說是最早的p2p技術(shù)。然后FastTrack (即Kazaa 的底層技術(shù))迅速掘起取代其地位。成為p2p老大。

2)emule到底是什么?

隨著二代技術(shù)的普及,又一個(gè)的問題誕生了,自私的人們?cè)诶肞2P軟件的時(shí)候大多只愿“獲取”,而不愿“共享”,P2P的發(fā)展遇到了意識(shí)的發(fā)展瓶頸。不過,一頭“騾”很快改變了游戲規(guī)則,它就是后來鼎鼎大名的 eDonkey。這標(biāo)志著第三代p2p技術(shù)的興起,eDonkey采用了以“分散式雜湊表”(distributed hash tables )為訴求的Neonet技術(shù),改變了P2P網(wǎng)絡(luò)上的搜索方式,理論上可以更有效率的搜索更多的電腦,以及更容易找出少見的文件。這種技術(shù)已經(jīng)使eDonkey基本快要追上了P2P服務(wù)龍頭業(yè)界的另一個(gè)老大Kazaa了. eDonkey由Jed McCaleb在2000年創(chuàng)立。他最重要的是可以同時(shí)從許多人那里下載同一個(gè)文件,并且采用了“多源文件傳輸協(xié)議”(MFTP,the Multisource FileTransfer Protocol)。電騾的索引服務(wù)器并不集中在一起的,而是各人私有的,遍布全世界,每一個(gè)人都可以運(yùn)行電騾服務(wù)器,同時(shí)共享的文件索引為被稱為“ed2k-quicklink”的連接,文件前綴“ED2K://”。同時(shí),在協(xié)議中,定義了一系列傳輸、壓縮和打包的標(biāo)準(zhǔn),甚至還定義了一套積分的標(biāo)準(zhǔn),你上傳的數(shù)據(jù)量越大,積分越高,下載的速度也越快。而且每個(gè)文件都有有md5-hash的超級(jí)鏈接標(biāo)示,這使得該文件獨(dú)一無二,并且在整個(gè)網(wǎng)絡(luò)上都可以追蹤得到。EDonkey可以通過檢索分段從多個(gè)用戶那里下載文件,最終將下載的文件片斷拼成整個(gè)文件。而且,只要你得到了一個(gè)文件片斷,系統(tǒng)就會(huì)把這個(gè)片斷共享給大家,盡管通過選項(xiàng)的設(shè)置你可以對(duì)上傳速度做一些控制,但你無法關(guān)閉它。

在eDonkey出現(xiàn)后,其改良品種eMule(電騾)也出現(xiàn)了??梢哉femule是eDonkey的升級(jí)版,是eDonkey的一個(gè)Mod,就象osp就是quake3的mod一樣,它的獨(dú)到之處在于開源,它的基本原理和運(yùn)作方式,也都是基于eDonkey, eMule基于eDonkey網(wǎng)絡(luò)協(xié)議,因此能夠直接登錄eDonkey的各類服務(wù)器。eMule同時(shí)也提供了很多eDonkey所沒有的功能,比如可以自動(dòng)搜索網(wǎng)絡(luò)中的服務(wù)器、保留搜索結(jié)果、與連接用戶交換服務(wù)器地址和文件、優(yōu)先下載便于預(yù)覽的文件頭尾部分等等,這些都使得eMule使用起來更加便利,也讓它得到了電騾的美譽(yù)。

總之,他們繼承了第二代P2P無中心、純分布式系統(tǒng)的特點(diǎn),但他們它不再是簡(jiǎn)單的點(diǎn)到點(diǎn)通信,而是更高效、更復(fù)雜的網(wǎng)絡(luò)通信;再加上eDonkey和eMule引入的強(qiáng)制共享機(jī)制,在一定程度上避免了前幾代P2P純個(gè)人服務(wù)器管理帶來的隨意性和低效率。

3)emule的下載原理?

當(dāng)你在搜索列表中選取了你要的文件并開始下載后,emule會(huì)記錄下這個(gè)文件的大小,文件名以及另一個(gè)叫做hash的特殊值。會(huì)向所有添加的服務(wù)器發(fā)出請(qǐng)求,要求得到有相同hash值的文件。而服務(wù)器則返回持有這個(gè)文件的用戶信息。這樣我們的客戶端就可以直接的和擁有那個(gè)文件的用戶溝通,看看是不是可以從他那里下載所需的文件。它最棒的部分就在于:你不是只在一個(gè)用戶那里下載文件,而是同時(shí)從許多個(gè)用戶那里下載文件。如果另一個(gè)用戶僅僅只有你要的文件的一個(gè)小小片斷,他也會(huì)自動(dòng)地把這個(gè)片斷分享個(gè)大家,而你就可以從這個(gè)用戶的機(jī)器上下載這個(gè)片斷。當(dāng)然你也是一樣。只要你得到了一個(gè)文件片斷,系統(tǒng)就會(huì)把這個(gè)片斷共享給大家。在查找到下載源(其他客戶端)后,下載就是客戶端和客戶端通過點(diǎn)對(duì)點(diǎn)(P2P)進(jìn)行直接對(duì)話了。期間沒有數(shù)據(jù)流通過服務(wù)器。

4)emule是如何工作的?

emule建立于多點(diǎn)文件傳輸協(xié)議之上。一個(gè)emule網(wǎng)絡(luò)由服務(wù)器端和客戶端兩部分組成。服務(wù)器端是客戶端連接的、為了搜索和查找可以下載用戶的橋梁。服務(wù)器列表像電話本一樣排列,客戶通過瀏覽它而獲取他需要的文件所有者的客戶端信息。在download過程中,沒有下載文件通過服務(wù)器端。

5)emule是如何搜索的?

每一個(gè)客戶端連接到一個(gè)服務(wù)器作為他的主服務(wù)器。在連接時(shí),由客戶端告訴主服務(wù)器他share了那些文件,以及IP地址等其他信息。所以每一個(gè)服務(wù)器會(huì)記錄所有登陸到他服務(wù)器上的以上信息。在本服務(wù)器搜索時(shí),它會(huì)通過匹配記錄的已知以上信息把查找結(jié)果反饋給搜索的客戶端列表。當(dāng)你使用擴(kuò)展搜索(extend search)時(shí),你的搜索請(qǐng)求和應(yīng)答結(jié)果通過發(fā)送限制帶寬的UDP包連接到客戶端本身的服務(wù)器列表(server.met)對(duì)應(yīng)的某一個(gè)ip地址的服務(wù)器。

6)emule是如何下載的?

當(dāng)客戶端選擇了一個(gè)文件下載時(shí),它首先收集一個(gè)擁有該文檔的客戶端的列表。它會(huì)先行查詢主服務(wù)器所有登陸用戶他們是否擁有該文件。然后再連接和查選其他服務(wù)器的登陸用戶所擁有該文件的客戶端列表。一旦它找到擁有該文件的其他客戶端,它將請(qǐng)求每個(gè)客戶端發(fā)送這個(gè)文件的不同片。直至最后文件由這個(gè)不同的片組裝成一個(gè)完整的文件。 在進(jìn)行pause/resume的時(shí)候,我們選擇的下載列表已經(jīng)獲取,它pause的僅僅是客戶端和客戶端之間的TCP連接然后恢復(fù)TCP連接。這個(gè)過程只有再resume時(shí)通過客戶端向服務(wù)器端發(fā)送22個(gè)字節(jié)后即可。占用的僅僅是22個(gè)字節(jié)的網(wǎng)絡(luò)流量。在pause是甚至不通過你登陸的服務(wù)器進(jìn)行,也無須你登陸的主服務(wù)器進(jìn)行任何干預(yù)和操作。所以說,它并未占用主服務(wù)什么資源,只是在你已經(jīng)和主服務(wù)器連接的通道上發(fā)送22個(gè)字節(jié)而已。

7)emule有什么優(yōu)點(diǎn)?

不需要服務(wù)器來存放共享文件,節(jié)省了服務(wù)器架設(shè)、海量硬盤、網(wǎng)絡(luò)帶寬。 每個(gè)用戶端節(jié)點(diǎn)都同時(shí)是文件下載者和提供者。實(shí)際上,在你正在下載但還沒當(dāng)完整個(gè)文件時(shí),你已經(jīng)可以把你已下載的部分共享給別人了! 因?yàn)閑mule同時(shí)從很多文件提供者那里下載所需的文件最后再拼成整個(gè)文件的。加入的人越多,下載速度越快,資源越豐富。 共享方便,每個(gè)人在自已的emule里指定一個(gè)share目錄就可以把自己的文件共享給網(wǎng)絡(luò)中的其它人了。不必再辛苦地上傳到服務(wù)器上了。

以上就是關(guān)于emule的一些基礎(chǔ)知識(shí),希望大家看完之后,能對(duì)emule的原理,有一個(gè)本質(zhì)的認(rèn)識(shí)。
下面我再來說說一些很困擾,很迷惑人的問題。

1)id問題

朋友們最關(guān)心的就是這個(gè)問題,id是什么?id其實(shí)沒有什么用,id就是在emule傳輸里面,作為地址作用的一個(gè)東西,起到尋址和定址作用,它直接和我們ip掛鉤,是由emule根據(jù)我們的ip地址,通過算法得到的一組數(shù)字。所以adsl用戶經(jīng)常會(huì)說,為什么我的id變了?當(dāng)然要變,因?yàn)槟忝看紊暇W(wǎng)撥號(hào)所取得的ip地址都不相同,所以id當(dāng)然也要隨之變化,一句話;ip不變id就不變,ip變了id就變化。
關(guān)于高id和低id,目前好多朋友也存在一個(gè)誤區(qū),認(rèn)為同一個(gè)ip地址,只能而且最多只能擁有一個(gè)高id,其實(shí)這是不對(duì)的。一個(gè)公網(wǎng)ip地址,可以同時(shí)取得2個(gè)以上的高id,這一點(diǎn)我要在這里強(qiáng)調(diào)一下,比如,adsl用戶,如果你本身是高id,那么你可以同時(shí)打開第二個(gè)emule兩個(gè)同時(shí)運(yùn)行,但是彼此的emule端口一定不要相同,這樣你會(huì)發(fā)現(xiàn)兩個(gè)都是高id,同一個(gè)ip地址。同樣對(duì)于端口映射,同一個(gè)ip地址,也可以同時(shí)取得兩個(gè)以上高id,同樣端口不要相同。
對(duì)于低id用戶,還存在一個(gè)誤區(qū),那就是認(rèn)為只要映射了,就能變成高id,這一點(diǎn)我要說明一下,什么叫高id,它是一個(gè)9位以上的id數(shù)字,它代表了你的ip地址是公網(wǎng)獨(dú)立的ip,也就是說只有前提你能夠擁有公網(wǎng)獨(dú)立的ip地址,你才能獲得高id,端口映射的原理是把你的內(nèi)網(wǎng)地址和端口,通過地址轉(zhuǎn)換投影到公網(wǎng)干線上,使你作為一個(gè)公網(wǎng)節(jié)點(diǎn),從而變成高id。那么這里就存在一個(gè)網(wǎng)絡(luò)拓?fù)涞膯栴},有些低id用戶,不是處在公網(wǎng)干線的一級(jí)子網(wǎng)內(nèi),而是子網(wǎng)的下一級(jí)子網(wǎng),甚至下好幾級(jí)子網(wǎng),拓?fù)涞慕Y(jié)構(gòu)是層層拓?fù)?,那么這部分用戶,無論如何也無法獲得高id,因?yàn)槟阕隽擞成渲徊贿^是成了上一級(jí)子網(wǎng)的節(jié)點(diǎn),但是仍然還是內(nèi)網(wǎng),只不過映射了一層,你上面還有好幾層,所以要正確看待映射的問題。目前,國(guó)內(nèi)除了電信和網(wǎng)通,有好多二級(jí)運(yùn)營(yíng)商玩的就是這個(gè)路子,他們或者層層拓?fù)洌蛘咧槐A舨糠止W(wǎng)ip地址,作為機(jī)動(dòng)分配,這樣你運(yùn)氣好一撥號(hào)能得到一個(gè)公網(wǎng)ip,你運(yùn)氣不好就是內(nèi)網(wǎng),沒有辦法。



3)kad問題

好多朋友對(duì)這個(gè)東西始終不太明白,我說一下,kad和我們目前的ed2k不一樣,我們目前的ed2k要通過服務(wù)器進(jìn)行中轉(zhuǎn),我們都要連到服務(wù)上才能進(jìn)行傳輸,而kad則是無服務(wù)器工作模式,它的傳輸可以獨(dú)立進(jìn)行,完全不需要服務(wù)器參與,我們只需要打開kad就可以不再需要服務(wù)器了,所以說kad是屬于試驗(yàn)階段,應(yīng)該說他的前景最為光明,應(yīng)該是p2p的未來,所以建議朋友們多多打開,對(duì)于找源很有幫助,特別是對(duì)于低id而言,vkad就是vnn+kad的模式。

4)服務(wù)器問題

這個(gè)問題論壇已經(jīng)說了很多了,我主要說一些大家容易誤會(huì)的地方,好多朋友經(jīng)常問到,怎么我的服務(wù)器少了,或者是消失了,或者開機(jī)提示列表文件丟失,這里大家要注意在emule>選項(xiàng)>服務(wù)器設(shè)置里面 啟用智能lowid檢測(cè)這一項(xiàng)最好不要選 啟動(dòng)自動(dòng)更新服務(wù)器列表也不要選 把連接到其它服務(wù)器時(shí)自動(dòng)更新選上,這樣你可以在服務(wù)器切換的時(shí)候,自動(dòng)更新服務(wù)器列表 而不用添加什么列表的url網(wǎng)址之類的東西,另外對(duì)于常用的服務(wù)器,最好把他的狀態(tài)選擇為靜態(tài)服務(wù)器,這樣他就不會(huì)消失了,其實(shí)我們服務(wù)器列表有300多個(gè)服務(wù)器,能夠用上的就那么幾個(gè),大家可以把他們?cè)O(shè)置成高級(jí),靜態(tài),另外還要說一點(diǎn),選擇服務(wù)器的時(shí)候選擇ping值小的 人數(shù)多的 文件多的 這個(gè)文件數(shù)什么意思,是連接到這個(gè)服務(wù)器的所有用戶的共享文件總數(shù),要注意服務(wù)器上沒有任何文件,另外大家注意一下服務(wù)器列表里面,每個(gè)服務(wù)器還有:軟性文件限制 硬性文件限制, 這個(gè)是什么意思?他代表了服務(wù)器接受你的共享文件 任務(wù)列表文件的大小限制,如果你要是超過了這個(gè)限制,就會(huì)被服務(wù)器拒絕,舉個(gè)例子,如果這個(gè)值顯示的是1k,那么你的共享文件數(shù)最好少于1000個(gè),目前來看大部分都是1k。

其實(shí)對(duì)于服務(wù)器端,有好多愿意研究的朋友,很感興趣。其實(shí)他就是edonkey的服務(wù)器,二者目前列表都一樣,所以大家想要自己架設(shè)em服務(wù)器,可以上edonkey網(wǎng)站,下載服務(wù)器端的程序,我看了一下這個(gè)程序不大,而且也很簡(jiǎn)單,有興趣的朋友們可以自己分析一下。

5)web服務(wù)器問題

大家都看了在emule>服務(wù)器>我的信息 最下面總是有一個(gè)web服務(wù)器的東西,這個(gè)是什么?我說一下 通常情況下我們這個(gè)禁用是正常的,Web服務(wù)器的作用是提供了遠(yuǎn)程訪問eMule的功能,我們可以先在emule端配置一些相關(guān)參數(shù),然后可以實(shí)現(xiàn)遠(yuǎn)程利用ie來對(duì)emule進(jìn)行控制,當(dāng)然了需要我們emule端要有獨(dú)立的訪問地址,遠(yuǎn)程控制emule可以實(shí)現(xiàn)emule的大部分功能,但是不是全部功能,還是有一些限制。另外對(duì)于emule端的web設(shè)置,懂行的朋友還可以自己進(jìn)行編程,很有交互性,一般來講,我們什么時(shí)候能夠用上它呢?比如我們?cè)诠鹃_了emule,但是還想下班后繼續(xù)在家里操作公司的emule,那么我們就可以使用這個(gè)功能,如此還有許多場(chǎng)合和環(huán)境特別利于web功能的使用,但是要注意隨之帶來的有關(guān)網(wǎng)絡(luò)安全性問題也很重要。對(duì)于這個(gè)功能的使用,要是詳細(xì)寫出來的話,要很長(zhǎng)需要專門的一個(gè)主題說明,由于篇幅限制,我在這里先簡(jiǎn)單說一下,如果朋友們都比較感興趣,我考慮單獨(dú)寫一個(gè)主題詳細(xì)說明具體設(shè)置和用法。不再贅述。

6)emule日志問題

其實(shí)這個(gè)問題沒什么好說的,日志就是記載了emule的運(yùn)行記錄,我要強(qiáng)調(diào)的是好多朋友不懂得利用它,其實(shí)大部分emule遇到問題的時(shí)候,我們?nèi)绻屑?xì)注意日志記錄,都會(huì)自己找到問題原因所在,如果你不懂你可以把它復(fù)制下來,發(fā)到網(wǎng)上,希望各位朋友以后多多注意emule的日志記錄,遇到問題,多半能都自己解決。

7)任務(wù)下載問題

對(duì)于這個(gè)問題,我想說得是大家要學(xué)會(huì)使用給任務(wù)分優(yōu)先級(jí)來控制下載順序,經(jīng)常有許多朋友抱怨,為什么任務(wù)結(jié)束一個(gè),開始下一個(gè)的時(shí)候是隨機(jī)開始,怎么能實(shí)現(xiàn)自動(dòng)控制?這里我們就可以手動(dòng)設(shè)置任務(wù)列表里面任務(wù)的優(yōu)先級(jí),右鍵就可以看到,把不同任務(wù)的優(yōu)先級(jí)設(shè)置成高 中 低 這樣emule在完成一個(gè)的時(shí)候自然按照優(yōu)先級(jí)去選擇下一個(gè)該是誰,而不會(huì)隨機(jī)開始了,另外在選項(xiàng)里面也可以設(shè)置一下,新建任務(wù)為停止模式,或者自動(dòng)開始下一個(gè)停止文件。

8)搜索問題

其實(shí)要是大家都學(xué)會(huì)了利用該功能,就會(huì)找到好多意想不到的東西,好多朋友平時(shí)很少用這個(gè)功能,其實(shí)p2p引以為自豪的就是他的搜索功能,建議大家以后多多自己搜索,搜索的時(shí)候要注意,每頁都有200條的限制,所以要想看更多的可以點(diǎn)擊旁邊的“更多”,這樣可以顯示下一個(gè)200條,可不要以為就只有第一頁的200條記錄??!對(duì)于搜索顏色問題我說明一下:
紅色:代表你的任務(wù)列表里面已經(jīng)有的文件 或者 你已經(jīng)下載完成正在共享的文件
藍(lán)色:普及程度較高源比較多的文件
黑色:你從來都沒有下載過的文件

9)共享文件問題

這個(gè)我說明一個(gè)問題,emule 里面規(guī)定共享的單個(gè)文件,注意是“單個(gè)”文件不可以超過4g,如果超過了,則不可以進(jìn)行hash,所以大家注意一下。

10)emule消息問題

經(jīng)常有朋友會(huì)受到Y(jié)ou Was Banned!!! Banreason: You use a Leecher Mod
或者Defcon Old Leecherdetection之類的消息,這是什么意思?
有些朋友以為是有人要聊天,發(fā)送過來的消息,其實(shí)誤會(huì)了,這是自動(dòng)發(fā)送的信息,它的意思是你用的版本是吸血的版本。你已經(jīng)被ban。對(duì)于這個(gè)消息,大家可以不用理會(huì),用emule消息過濾,把它過濾掉就可以了,為什么會(huì)如此呢?這個(gè)要是說起來也話長(zhǎng)了,頗有點(diǎn)傳奇色彩。我簡(jiǎn)單說說,部分mod版本呢,由于加分設(shè)置不同,逐漸分成不同的派別,這樣逐漸形成了一些小圈子,后來搞出來一個(gè)所謂吸血的東西,只下載不上傳,或是該版本群體上傳遠(yuǎn)遠(yuǎn)小于下載,等等這里面有好多淵源,后來官方公開封禁了一些,再后來自然被封的不服,然后就是妖魔和反妖魔大家互相封禁,互相職責(zé),后來斗爭(zhēng)擴(kuò)大化,導(dǎo)致其他版本也跟著遭殃,我們就是屬于被誤傷的,現(xiàn)在這種爭(zhēng)斗仍然在繼續(xù),而且波及越來越廣,這就是我對(duì)這個(gè)消息的原因的簡(jiǎn)單解釋,好多內(nèi)幕的東西,說起來挺多,不多說了。

11)代理問題

這里我要說明一點(diǎn),好多朋友使用代理運(yùn)行emule,比如一些公司內(nèi)網(wǎng)的朋友,你們?cè)趯ふ掖淼臅r(shí)候,盡量使用sock5的代理,當(dāng)然sock4和http也可以,但是要注意好多http代理本身不支持udp協(xié)議,所以導(dǎo)致了emule無法運(yùn)行,大家要注意,選擇支持udp協(xié)議的代理。而且多找?guī)讉€(gè),留作備用。

12)統(tǒng)計(jì)信息問題

這個(gè)問題,我要說兩點(diǎn)
(1)上傳:下載比例問題 之前好多朋友對(duì)這個(gè)有很多誤會(huì),這里我要說明這個(gè)比例大于1說明你的貢獻(xiàn)大于索取,等于1,說明你的貢獻(xiàn)和索取一致。小于1,則說明了你是一個(gè)索取的人,對(duì)p2p的貢獻(xiàn)為負(fù)。大家一定要注意誰比誰,哪個(gè)是分母,哪個(gè)是分子,那么這有什么用呢?要注意p2p是一個(gè)講究奉獻(xiàn),講究積分的東西,你的上傳多,你的下載快,這個(gè)比例也說明了使用者素質(zhì)問題,另外對(duì)于這個(gè)比例,我們也有一些獎(jiǎng)懲措施,比如 上傳:下載大于2,也就是說明了你的上傳量是下載量的2倍,這個(gè)時(shí)候你在排隊(duì)的時(shí)候,就可以享受優(yōu)先排隊(duì)待遇,這個(gè)比值越大越好,不存在什么限制,越大說明你的上傳量越多,說明你的積分越多,你的貢獻(xiàn)越多,當(dāng)然你排隊(duì)的時(shí)間就越少。如果這個(gè)比值小于1,而且越來越小,那么同樣你的速度也會(huì)越來越慢,這個(gè)你怨不了誰。
(2)速度大小的問題 好多朋友往往只關(guān)注了那個(gè)最大速度,但是實(shí)際上那個(gè)數(shù)值沒有什么意義,他只是一個(gè)曲線峰值,往往一閃即逝,或者最多持續(xù)幾秒,我們要關(guān)注的是我們的平均速度,這個(gè)二元值包含了時(shí)間的因素,所以他才能說明我們emule的整體速度大小。

13)積分問題

積分不是你對(duì)所有人的積分,只是在你機(jī)器下載的人他們的EM對(duì)你的積分,比如你開放的帶寬大,小A在你那里下的很舒服,你就在小A那里的分?jǐn)?shù)高。同樣,小A那里也有一群人在下他的資料其中也有你,由于你開放的帶寬多小A在你那里下的多,你在小A那里的積分就高,你就比其他在小A那里下載東西的人有優(yōu)先下載小A資料的權(quán)限(小A可以設(shè)置高、普通這些的,設(shè)置高的時(shí)候就只有積分高的人優(yōu)先下了)。
自己是無法看自己的積分的,因?yàn)檫@個(gè)積分不是永恒的,只是暫時(shí)針對(duì)一個(gè)文件的。

14)好友通道問題

我說明一點(diǎn),加為好友開通通道,起到的作用只是,可以縮短你的排隊(duì)時(shí)間,使你的信用積分突然變大,此外沒有任何作用,他和速度沒有本質(zhì)的聯(lián)系。

15)tag問題

好多朋友到現(xiàn)在也不明白為什么要有個(gè)[chn]有個(gè)[VeryCD],這個(gè)有什么用,其實(shí)這個(gè)名稱是任意的,甚至重名都沒有問題,因?yàn)閜2p世界里面判斷你的標(biāo)志是userhash,而不是用戶名,用戶名你隨便改,一天一個(gè)新名字也不會(huì)影響你的積分,tag的作用是為了讓一些服務(wù)器判斷,從而可以連接該服務(wù)器,有的服務(wù)器就是規(guī)定了如果你不加[*****]就是不讓你連接,所以就加上他連接方便點(diǎn),另外有的mod可以實(shí)現(xiàn)對(duì)有相關(guān)[****]進(jìn)行加分,比如我們vc版本對(duì)有[chn]的朋友就有固定的加分設(shè)置,它可以使所有有這個(gè)[chn]的朋友積分比沒有這個(gè)的人多,從而達(dá)到中國(guó)人優(yōu)先下載優(yōu)先上傳的問題,當(dāng)然了這個(gè)問題,現(xiàn)在在世界范圍內(nèi),仍是一個(gè)爭(zhēng)論的話題,到底是否應(yīng)該加分,大家也是眾說紛紜。其實(shí),懂行的朋友可以自己設(shè)置加分,可以隨心所欲給任何[*****]加分減分,也可以給任意userhash加分減分,以達(dá)到優(yōu)先上傳優(yōu)先下載的目的,甚至可以達(dá)到任意ban人的目的。當(dāng)然了,這個(gè)問題不合適公開討論,有違背p2p的根本,這里點(diǎn)到為止。

16)對(duì)于如何隱藏emule頭像的問題

對(duì)于一些在公司工作的朋友,這一直是一個(gè)困擾很久的問題,如何還能下載,還不讓老板發(fā)現(xiàn)。這里我說兩個(gè)解決方案
(1)使用第三方軟件解決 可以使用SysTrayX軟件,這個(gè)軟件,國(guó)內(nèi)大型軟件站都有下載,它是一個(gè)管理系統(tǒng)托盤的軟件,非常簡(jiǎn)單,具體使用方法,大家一看就明白了,他可以做到隱藏emule頭像的問題,
(2)使用系統(tǒng)服務(wù)解決 我們知道在2000以上系統(tǒng)中都有srvany服務(wù),借助這個(gè)服務(wù),也可以實(shí)現(xiàn)隱藏頭像 不借助第三方軟件 同樣server系統(tǒng)可以用終端服務(wù)來實(shí)現(xiàn)隱藏頭像,另外還可以借助instsrv服務(wù)來實(shí)現(xiàn)隱藏頭像,原理和前面一樣,其實(shí)就是一個(gè)東西,這種方法原理,常見于一些黑客網(wǎng)站,其實(shí)有些木馬軟件,或者后臺(tái)軟件,就是用的這個(gè)方案。大家有興趣可以上一些黑客網(wǎng)站研究研究。

17)關(guān)于emule和bt的相關(guān)問題

好多朋友都在使用bt的同時(shí),也在使用emule,我這里說一點(diǎn),對(duì)于bt文件,如果我們下到了一半,沒有種了,或者非常慢,我們可以把它導(dǎo)入emule下載,用dmTorrent2Par和Jcd2Met或者 Edonkeydoctor或者M(jìn)etFileRegenerator,都可以實(shí)現(xiàn)該功能,很簡(jiǎn)單,另外emule的文件同樣也可以導(dǎo)入bt進(jìn)行下載,二者可以相互轉(zhuǎn)換。為什么要說這一點(diǎn)呢,是要提醒大家,其實(shí)有好多emule的輔助工具,都可以幫我們更好的使用emule,它不是孤立的,只不過國(guó)內(nèi)興起的比較晚,目前來看,只要edonkey能用的相關(guān)軟件,emule都能使用。比如,關(guān)于重建met的edonkeydoctor軟件,就可以使一些下載了很多的錯(cuò)誤文件,直接進(jìn)行修復(fù)而不是像以前那樣把辛苦下到的刪掉。是我們遇到問題需要關(guān)閉的時(shí)候,不用再擔(dān)心要?jiǎng)h除文件了。

林林總總。寫了好多,但是發(fā)現(xiàn)其實(shí)關(guān)于每個(gè)問題說明,都還只是停留在蜻蜓點(diǎn)水的層面,由于篇幅所限,不能深入寫下去,如果要是寫多了,朋友們多沒有耐心看,所以對(duì)于每個(gè)問題,我就先寫這么多,如果大家對(duì)于其中的某個(gè)問題,特別有興趣,我考慮可以逐個(gè)展開,以獨(dú)立主題的方式,詳細(xì)介紹,這里先寫這么多,可能這樣,也不一定有朋友能都看完??傊@是我作為版主一個(gè)多月來,對(duì)于大家集中問題的一個(gè)搜集和解答,希望會(huì)對(duì)大家有所 幫助,同樣,我們論壇里面藏龍臥虎,我深知還有不少朋友也都很有心得,潛于當(dāng)中,我的水平有限,好多問題考慮的也不周到,這里肯定還有不少錯(cuò)誤的地方,請(qǐng)大家指出,我本身也是一個(gè)外行,希望各位能夠不吝賜教,我深感榮幸!在這里先行感謝了!

Ps:文中部分資料來源于網(wǎng)上,恕不列出轉(zhuǎn)引出處,請(qǐng)?jiān)髡咭娬彛?/span>
★貳℡叁★
第三篇:到底什么是hash?


從emule誕生到現(xiàn)在也已經(jīng)有了兩年左右時(shí)間了,隨著emule的普及,喜歡他的人也越來越多,但是由于emule對(duì)技術(shù)相應(yīng)有一個(gè)門檻,不像bt那么容易上手,所以很多朋友很長(zhǎng)時(shí)間以來一直都有這樣或那樣的疑問,今天是周末我也獻(xiàn)獻(xiàn)丑,寫一篇關(guān)于hash的文章。

大家天天都在使用emule,hash這個(gè)詞是在emule里面出現(xiàn)頻率最高的,那么到底什么是hash呢?

讓我們先來了解一些基本知識(shí),作作預(yù)熱只有這樣才能更好的了解hash。

Hash,一般翻譯做“散列”,也有直接音譯為"哈希"的,就是把任意長(zhǎng)度的輸入(又叫做預(yù)映射, pre-image),通過散列算法,變換成固定長(zhǎng)度的輸出,該輸出就是散列值。這種轉(zhuǎn)換是一種壓縮映射,也就是,散列值的空間通常遠(yuǎn)小于輸入的空間,不同的輸入可能會(huì)散列成相同的輸出,而不可能從散列值來唯一的確定輸入值。

簡(jiǎn)單的說就是一種將任意長(zhǎng)度的消息壓縮到某一固定長(zhǎng)度的消息摘要的函數(shù)。

HASH主要用于信息安全領(lǐng)域中加密算法,他把一些不同長(zhǎng)度的信息轉(zhuǎn)化成雜亂的128位的編碼里,叫做HASH值. 也可以說,hash就是找到一種數(shù)據(jù)內(nèi)容和數(shù)據(jù)存放地址之間的映射關(guān)系

了解了hash基本定義,就不能不提到一些著名的hash算法,MD5 和 SHA1 可以說是目前應(yīng)用最廣泛的Hash算法,而它們都是以 MD4 為基礎(chǔ)設(shè)計(jì)的。那么他們都是什么意思呢?
這里簡(jiǎn)單說一下:

1) MD4
MD4(RFC 1320)是 MIT 的 Ronald L. Rivest 在 1990 年設(shè)計(jì)的,MD 是 Message Digest 的縮寫。它適用在32位字長(zhǎng)的處理器上用高速軟件實(shí)現(xiàn)--它是基于 32 位操作數(shù)的位操作來實(shí)現(xiàn)的。

2) MD5
MD5(RFC 1321)是 Rivest 于1991年對(duì)MD4的改進(jìn)版本。它對(duì)輸入仍以512位分組,其輸出是4個(gè)32位字的級(jí)聯(lián),與 MD4 相同。MD5比MD4來得復(fù)雜,并且速度較之要慢一點(diǎn),但更安全,在抗分析和抗差分方面表現(xiàn)更好

3) SHA1 及其他
SHA1是由NIST NSA設(shè)計(jì)為同DSA一起使用的,它對(duì)長(zhǎng)度小于264的輸入,產(chǎn)生長(zhǎng)度為160bit的散列值,因此抗窮舉(brute-force)性更好。SHA-1 設(shè)計(jì)時(shí)基于和MD4相同原理,并且模仿了該算法。

那么這些Hash算法到底有什么用呢?
Hash算法在信息安全方面的應(yīng)用主要體現(xiàn)在以下的3個(gè)方面:

1) 文件校驗(yàn)
我們比較熟悉的校驗(yàn)算法有奇偶校驗(yàn)和CRC校驗(yàn),這2種校驗(yàn)并沒有抗數(shù)據(jù)篡改的能力,它們一定程度上能檢測(cè)并糾正數(shù)據(jù)傳輸中的信道誤碼,但卻不能防止對(duì)數(shù)據(jù)的惡意破壞。
MD5 Hash算法的"數(shù)字指紋"特性,使它成為目前應(yīng)用最廣泛的一種文件完整性校驗(yàn)和(Checksum)算法,不少Unix系統(tǒng)有提供計(jì)算md5 checksum的命令。
2) 數(shù)字簽名
Hash 算法也是現(xiàn)代密碼體系中的一個(gè)重要組成部分。由于非對(duì)稱算法的運(yùn)算速度較慢,所以在數(shù)字簽名協(xié)議中,單向散列函數(shù)扮演了一個(gè)重要的角色。 對(duì) Hash 值,又稱"數(shù)字摘要"進(jìn)行數(shù)字簽名,在統(tǒng)計(jì)上可以認(rèn)為與對(duì)文件本身進(jìn)行數(shù)字簽名是等效的。而且這樣的協(xié)議還有其他的優(yōu)點(diǎn)。
3) 鑒權(quán)協(xié)議
如下的鑒權(quán)協(xié)議又被稱作"挑戰(zhàn)--認(rèn)證模式:在傳輸信道是可被偵聽,但不可被篡改的情況下,這是一種簡(jiǎn)單而安全的方法。

以上就是一些關(guān)于hash以及其相關(guān)的一些基本預(yù)備知識(shí)。那么在emule里面他具體起到什么作用呢?

什么是文件的hash值呢?

大家都知道emule是基于P2P (Peer-to-peer的縮寫,指的是點(diǎn)對(duì)點(diǎn)的意思的軟件), 它采用了“多源文件傳輸協(xié)議”(MFTP,the Multisource FileTransfer Protocol)。在協(xié)議中,定義了一系列傳輸、壓縮和打包還有積分的標(biāo)準(zhǔn),emule 對(duì)于每個(gè)文件都有md5-hash的算法設(shè)置,這使得該文件獨(dú)一無二,并且在整個(gè)網(wǎng)絡(luò)上都可以追蹤得到。

MD5-Hash-文件的數(shù)字文摘通過Hash函數(shù)計(jì)算得到。不管文件長(zhǎng)度如何,它的Hash函數(shù)計(jì)算結(jié)果是一個(gè)固定長(zhǎng)度的數(shù)字。與加密算法不同,這一個(gè)Hash算法是一個(gè)不可逆的單向函數(shù)。采用安全性高的Hash算法,如MD5、SHA時(shí),兩個(gè)不同的文件幾乎不可能得到相同的Hash結(jié)果。因此,一旦文件被修改,就可檢測(cè)出來。

當(dāng)我們的文件放到emule里面進(jìn)行共享發(fā)布的時(shí)候,emule會(huì)根據(jù)hash算法自動(dòng)生成這個(gè)文件的hash值,他就是這個(gè)文件唯一的身份標(biāo)志,它包含了這個(gè)文件的基本信息,然后把它提交到所連接的服務(wù)器。當(dāng)有他人想對(duì)這個(gè)文件提出下載請(qǐng)求的時(shí)候, 這個(gè)hash值可以讓他人知道他正在下載的文件是不是就是他所想要的。尤其是在文件的其他屬性被更改之后(如名稱等)這個(gè)值就更顯得重要。而且服務(wù)器還提供了,這個(gè)文件當(dāng)前所在的用戶的地址,端口等信息,這樣emule就知道到哪里去下載了.

一般來講我們要搜索一個(gè)文件,emule在得到了這個(gè)信息后,會(huì)向被添加的服務(wù)器發(fā)出請(qǐng)求,要求得到有相同hash值的文件。而服務(wù)器則返回持有這個(gè)文件的用戶信息。這樣我們的客戶端就可以直接的和擁有那個(gè)文件的用戶溝通,看看是不是可以從他那里下載所需的文件。

對(duì)于emule中文件的hash值是固定的,也是唯一的,它就相當(dāng)于這個(gè)文件的信息摘要,無論這個(gè)文件在誰的機(jī)器上,他的hash值都是不變的,無論過了多長(zhǎng)時(shí)間,這個(gè)值始終如一,當(dāng)我們?cè)谶M(jìn)行文件的下載上傳過程中,emule都是通過這個(gè)值來確定文件。

那么什么是userhash呢?

道理同上,當(dāng)我們?cè)诘谝淮问褂胑mule的時(shí)候,emule會(huì)自動(dòng)生成一個(gè)值,這個(gè)值也是唯一的,它是我們?cè)趀mule世界里面的標(biāo)志,只要你不卸載,不刪除config,你的userhash值也就永遠(yuǎn)不變,積分制度就是通過這個(gè)值在起作用,emule里面的積分保存,身份識(shí)別,都是使用這個(gè)值,而和你的id和你的用戶名無關(guān),你隨便怎么改這些東西,你的userhash值都是不變的,這也充分保證了公平性。其實(shí)他也是一個(gè)信息摘要,只不過保存的不是文件信息,而是我們每個(gè)人的信息。

那么什么是hash文件呢?

我們經(jīng)常在emule日至里面看到,emule正在hash文件,這里就是利用了hash算法的文件校驗(yàn)性這個(gè)功能了,文章前面已經(jīng)說了一些這些功能,其實(shí)這部分是一個(gè)非常復(fù)雜的過程,目前在ftp,bt等軟件里面都是用的這個(gè)基本原理,emule里面是采用文件分塊傳輸,這樣傳輸?shù)拿恳粔K都要進(jìn)行對(duì)比校驗(yàn),如果錯(cuò)誤則要進(jìn)行重新下載,這期間這些相關(guān)信息寫入met文件,直到整個(gè)任務(wù)完成,這個(gè)時(shí)候part文件進(jìn)行重新命名,然后使用move命令,把它傳送到incoming文件里面,然后met文件自動(dòng)刪除,所以我們有的時(shí)候會(huì)遇到hash文件失敗,就是指的是met里面的信息出了錯(cuò)誤不能夠和part文件匹配,另外有的時(shí)候開機(jī)也要瘋狂hash,有兩種情況一種是你在第一次使用,這個(gè)時(shí)候要hash提取所有文件信息,還有一種情況就是上一次你非法關(guān)機(jī),那么這個(gè)時(shí)候就是要進(jìn)行排錯(cuò)校驗(yàn)了。


關(guān)于hash的算法研究,一直是信息科學(xué)里面的一個(gè)前沿,尤其在網(wǎng)絡(luò)技術(shù)普及的今天,他的重要性越來越突出,其實(shí)我們每天在網(wǎng)上進(jìn)行的信息交流安全驗(yàn)證,我們?cè)谑褂玫牟僮飨到y(tǒng)密鑰原理,里面都有它的身影,特別對(duì)于那些研究信息安全有興趣的朋友,這更是一個(gè)打開信息世界的鑰匙,他在hack世界里面也是一個(gè)研究的焦點(diǎn).我是一個(gè)門外漢,利用這個(gè)周末找了一些資料,胡亂寫了一點(diǎn)關(guān)于hash的文章,也有不少是我自己的分析,這期間肯定還有不對(duì)的地方,還請(qǐng)朋友們多多指出錯(cuò)誤,我拋磚引玉希望大家批評(píng)指導(dǎo)。

Ps:文章中部分資料來源于網(wǎng)上,這里就不一一列舉出處了,如有冒犯,請(qǐng)?jiān)髡咴?由于本文寫的有些亂七八糟,希望大家看完后,多多提出毛病,我也好修改修改.寫的不好讓大家見笑了!
★貳℡叁★
第四篇:如何配置emule的web服務(wù)器功能!


關(guān)于emule里面web服務(wù)器的配置,我今天詳細(xì)介紹一下,希望朋友們?cè)诳幢酒?,先看一下我的這一篇文章
[注意]關(guān)于emule一些讓人糊涂問題的總結(jié)! 地址如下http://bbs.VeryCD.com/forum/t/114499.shtml
里面有對(duì)web服務(wù)器功能的簡(jiǎn)要介紹,希望朋友們先了解一下,關(guān)于web的特征和具體作用,在這里我就不多說了。

但是先聲明一下,這個(gè)功能一般對(duì)于希望遠(yuǎn)程控制emule的朋友適用,對(duì)于一般的用戶,可以不用打開,希望朋友們要注意一下。另外,對(duì)于一些對(duì)該功能感興趣的朋友,也可以體驗(yàn)一下該功能。

在介紹web功能之前,讓我們先來看看他的界面,如下:

user posted image

我們都知道,emule中的Web服務(wù)器給我們提供了,可以遠(yuǎn)程控制eMule的功能途徑,借由此我們可以實(shí)現(xiàn)通過ie瀏覽器,異地操作emule,達(dá)到如服務(wù)器般的使用效果。下面介紹一下,上圖功能面板中的,各項(xiàng)參數(shù)的具體含義:

(1)模板
它提供了Web工作界面所需要的一個(gè)現(xiàn)成的模版 eMule.tmpl .模版功能就如同office里面的一樣,提供了一些格式和素材,我們可以直接套用編輯。而不需要自己?jiǎn)为?dú)設(shè)計(jì),eMule.tmpl 模版包含了,現(xiàn)成的配置Web 界面的布局及設(shè)計(jì). 我們可以看一下我們的emule安裝文件路徑里面有沒有這個(gè)文件,如果沒有的話,那么我們需要到http://www./ 也就是emule的官方網(wǎng)站去下載該文件模版,(目前有的mod直接提供了該文件)。另外,對(duì)于web控制界面的編輯,emule提供了一種交互的功能,就是我們可以自己編輯該控制界面,所以對(duì)于有興趣的朋友不妨自己試試,對(duì)于我們編輯需要的用到圖片資源,我們可以把他放在 eMule安裝文件夾里面的 Webserver 文件夾內(nèi)。下圖是用官方版本繁體版本做好后web控制界面的效果:

user posted image

怎么樣不錯(cuò)吧!web遠(yuǎn)程界面功能提供了eMule 幾乎全部的功能. 我們通過對(duì)他的所有操作,都將會(huì)直接在我們遠(yuǎn)程控制的電腦上的eMule做出相應(yīng)相應(yīng)執(zhí)行.

常規(guī) 部分介紹:

(2)啟用
該選項(xiàng)用來啟用 Web 界面. 我們?cè)谇懊纥c(diǎn)選,打上對(duì)號(hào)就代表已經(jīng)啟用了web功能,然后我們把emule重新啟動(dòng)一下,該功能就生效了,并會(huì)打開一個(gè)Web 界面. 如果我們發(fā)現(xiàn)系統(tǒng)提示無效的 eMule.tmpl 錯(cuò)誤訊息,例如:無法載入模版 無法打開文件 \...\eMule.tmpl之類的提示.那么就說明我們目前還不能啟用Web界面功能,我們就要仔細(xì)檢查一下我們網(wǎng)絡(luò)連接和配置了.

(3)Gzip 壓縮
該功能用來實(shí)現(xiàn)壓縮web界面所使用的寬帶.使我們的帶寬得到更為有效的應(yīng)用.

(4)端口
這里設(shè)置Web 界面所要使用的端口. Emule默認(rèn)設(shè)置是4711口,我們通常不需要改變它,但要注意設(shè)置完該端口后,也要在防火墻相應(yīng)把該端口打開. Emule 通過這個(gè)端口來進(jìn)行web功能操作. 我們也可以自己改成我們合適的端口,隨便,沒有什么特殊要求.總之,安全即可!我們要注意,如果電腦處于內(nèi)網(wǎng)或是防火墻內(nèi),我們需要設(shè)置端口轉(zhuǎn)發(fā)。

(5)模板
前面已經(jīng)說過了,通常情況下模版文件 *.tmpl 是在 eMule 的安裝文件夾里面.通過這里面設(shè)置,我們可以改變?cè)撐募陌惭b路徑.

(6)管理員
我們可以自己設(shè)定一個(gè)執(zhí)行Web 界面功能的密碼.通過這個(gè)密碼,可以保證我們對(duì)emule 遠(yuǎn)程操作功能的唯一特權(quán),以防止別人在遠(yuǎn)程操作emule,甚至改變我們的emule設(shè)置,所以這個(gè)密碼也很重要,啟到作用就如同我們登陸系統(tǒng)時(shí),需要輸入密碼作用一樣,可以防止別人使用.密碼會(huì)顯示成6個(gè)*****.emule不存在預(yù)設(shè)密碼,這個(gè)自己設(shè)定!

客人 部分介紹

(7) 啟用
可以設(shè)定不同于管理員權(quán)限的用戶,來操作eMule 的遠(yuǎn)程控制,客人只能查看emule設(shè)定值和任務(wù)列表等. 他沒有權(quán)力更改任何設(shè)置. 如果我們自己使用,不需要客人登陸,那么這個(gè)選項(xiàng)可以停用.

(8)密碼
可以設(shè)定一個(gè)客人密碼來限制客人的存取界面. 同樣也沒有預(yù)設(shè)密碼.自己設(shè)定.

注意:
在我們使用 Microsofts Internet Explorer 更換 Web 界面選擇清單的時(shí)候,有的時(shí)候總是會(huì)彈出一個(gè)下載的窗口.那么怎么辦呢? 我們可以這樣做來阻止這個(gè)窗口彈出:
在 ie的工具選項(xiàng)->高級(jí)->選中使用HTTP 1.1和通過代理連接使用HTTP 1.1

(9)MobileMule
MubileMule功能提供了,可以由任何支持java的手機(jī)來移動(dòng)遠(yuǎn)程控制emule的功能,和ie遠(yuǎn)程控制一樣,只不過換到了手機(jī)上.對(duì)于這個(gè)功能的詳細(xì)使用,大家可以更多登陸 MobileMule的網(wǎng)頁 http://mobil./.來詳細(xì)查看.

(10)啟用 MobileMule
該功能允許支持java功能的手機(jī)控制eMule.

(11)密碼
同樣,可以設(shè)定手機(jī)登陸控制的密碼.也沒有初始設(shè)定,自己設(shè)定。

(12)端口
可以設(shè)定 MobileMule的工作端口.對(duì)于端口,我們要注意,如果電腦處于內(nèi)網(wǎng)或是防火墻內(nèi),我們需要設(shè)置端口轉(zhuǎn)發(fā)。

我們?cè)谠O(shè)定Web 服務(wù)器的時(shí)候,首先先要在emule運(yùn)行端,也就是我們所要遠(yuǎn)程控制端,擁有一個(gè)確定的ip訪問地址或者域名,只有通過這個(gè)地址,我們才能在ie中輸入該地址,才能達(dá)到遠(yuǎn)程打開web控制界面,遠(yuǎn)程操作emule的目的。
只有通過該地址和端口,我們才能遠(yuǎn)程操作,我們遠(yuǎn)程操作的時(shí)候,需要在ie瀏覽器內(nèi),輸入該地址和端口,這個(gè)地址和一般的網(wǎng)頁地址一樣,比如:我們操作的時(shí)候輸入http://.:端口,x 表示要訪問的IP 位址,而端口默認(rèn)的話就是4711

那么,我們的isp要是改變了我們要訪問的遠(yuǎn)程ip地址怎么辦?或者我目前不知道我要訪問的遠(yuǎn)程ip地址怎么辦?
對(duì)于有以上問題的朋友,我們可以選擇上一些網(wǎng)站,注冊(cè)一個(gè)靜態(tài)主機(jī)域名,現(xiàn)在國(guó)內(nèi)有好多網(wǎng)站都提供免費(fèi)注冊(cè)域名的服務(wù),這樣我們就可以通過在ie里面直接輸入我們注冊(cè)的主機(jī)域名來遠(yuǎn)程訪問emule,不用害怕ip地址不知道了。

總之,web端的配置非常簡(jiǎn)單,而且有效,尤其是我們目前有些朋友在公司工作,而且公司又要求晚上可以不用關(guān)機(jī),那么我們可以在公司電腦上,白天運(yùn)行emule,晚上下班后在家里面的電腦上,依然可以遠(yuǎn)程控制emule的下載和長(zhǎng)傳,這樣第二天去上班,就會(huì)發(fā)現(xiàn)我們已經(jīng)下載了好多電影,反正公司的電腦開著也是開著,反正不用也是浪費(fèi),那么何樂而不為呢?
即可以給自己掙積分,也可以多下東西,多好!另外,對(duì)于一些7*24小時(shí)不關(guān)機(jī)的朋友,如果你出門了不在電腦前面,又害怕別人亂動(dòng)emule,使用這個(gè)功能也是一個(gè)不錯(cuò)的選擇啊,可以隨時(shí)查看我們的小騾工作情況,隨時(shí)與它交流,多好!

最后:使用該功能的朋友要注意一點(diǎn),就是密碼一定要設(shè)置好,而且端口一定要管理好,這一點(diǎn)尤為重要,以防出現(xiàn)網(wǎng)絡(luò)安全問題。不過,通常是不會(huì)有什么關(guān)系了,不過還是小心為妙!如果我們配置好了密碼,我們登陸的時(shí)候就會(huì)出現(xiàn)這個(gè)界面:

user posted image

好了,以上這些就是web服務(wù)器配置的詳細(xì)說明,里面有什么錯(cuò)誤,也請(qǐng)大家給與指出,文章大部分來自官方的說明解釋
我看英文說明,我的英文不太好,翻譯的也不好,文中有什么錯(cuò)誤,請(qǐng)大家指出,謝謝!文中圖片也是官方網(wǎng)站上所載。
小王
第四篇:到底什么是kad?

關(guān)于kad網(wǎng)絡(luò),這一個(gè)多月來我發(fā)現(xiàn)有好多剛剛接觸emule的朋友不太明白,總是搞不清楚這是個(gè)什么東西,雖然本區(qū)以前也曾經(jīng)有人寫過一些關(guān)于kad 的文章,但是可能新來的朋友不會(huì)去翻了,那么我就結(jié)合自己對(duì)kad的一點(diǎn)認(rèn)識(shí),來重新談一下kad吧?其中有好多不對(duì)的地方也請(qǐng)諸位朋友不要笑話我,請(qǐng)一一指出在。小王這里多謝了!

Kad是Kademlia的簡(jiǎn)稱,eMule的官方網(wǎng)站在2004年2月27日正式發(fā)布的 eMule v0.42b中,Kad開始正式內(nèi)嵌成為eMule的一個(gè)功能模塊,可以說從這個(gè)版本開始eMule便開始支持Kad網(wǎng)絡(luò)了。

Kad的出現(xiàn),結(jié)束了之前edonkey時(shí)代,在ed圈里只存在著ED2K一種網(wǎng)絡(luò)的模式,它通過新的協(xié)議開創(chuàng)并形成了自己的kad網(wǎng)絡(luò),使之和ED2K網(wǎng)絡(luò)并駕齊驅(qū),而且它還完全支持兩種網(wǎng)絡(luò),可以在兩種網(wǎng)絡(luò)之間通用。Kad同樣也屬于開源的自由軟件。它的程序和源代碼可以在官方網(wǎng)站http://www.上下載。

Kad網(wǎng)絡(luò)拓?fù)涞淖畲筇攸c(diǎn)在于它完全不需要服務(wù)器,我們都知道傳統(tǒng)的ed2k網(wǎng)絡(luò)需要服務(wù)器支持作為中轉(zhuǎn)和存儲(chǔ)hash列表信息,kad可以不通過服務(wù)器同樣完成ed2k網(wǎng)絡(luò)的一切功能,你唯一要做的就是連線上網(wǎng),然后打開kad。Kad需要UDP端口的支持,之后Emule會(huì)自動(dòng)按照客戶端的要求,來判斷它能否自由連線,然后同樣也會(huì)分配給你一個(gè)id,這個(gè)過程和我們ed2k的高id和低id檢查很像,不過這個(gè)id所代表的意義不同于ed2k網(wǎng)絡(luò),它代表一個(gè)是否“freely”的狀態(tài)。

Kad和ed2k網(wǎng)絡(luò)有著完全不同的觀念但是相同的目的: 都是搜索和尋找文件的源。 Kad網(wǎng)絡(luò)的主要的目標(biāo)是做到不需要服務(wù)器和改善可量測(cè)性。相對(duì)于傳統(tǒng)的ed2k服務(wù)器只能處理一定數(shù)量的使用者(我們?cè)诜?wù)器列表也都看到了,每個(gè)服務(wù)器都有最大人數(shù)限制),而且如果服務(wù)器比較大連接人數(shù)過多,還會(huì)嚴(yán)重的的拖垮網(wǎng)絡(luò)。而Kad能夠自我組織,并且自我調(diào)節(jié)最佳的使用者數(shù)量以及他們的連接效果。因此, 它更能使網(wǎng)絡(luò)的損失達(dá)到最小。由于具備了以上所敘述的功能,Kad也被稱之為Serverless network(無服務(wù)器網(wǎng)絡(luò))。雖然目前一直處于開發(fā)階段(alpha stage) 。但毫無疑問,它無可比擬的優(yōu)勢(shì),將會(huì)使它成為p2p的明天。

可能很多朋友會(huì)關(guān)注, kad網(wǎng)絡(luò)沒有高低id的計(jì)算原則,是否對(duì)于低id來言就暢通無阻了呢?

我們大家知道在ed2k網(wǎng)絡(luò)里面,我們的id是通過ip進(jìn)行如下的算法計(jì)算得出的
設(shè)我們的IP = A.B.C.D
那么我們的ID number= A + 256*B + 256*256*C + 256*256*256*D
low ID的產(chǎn)生是由于我們的ID計(jì)算結(jié)果小于16777216.
即 ID number= A + 256*B + 256*256*C + 256*256*256*D < 16777216

Kad的 id計(jì)算原則并不是象上面那樣,他更關(guān)注我們是否open和freely。
但是kad里面是如何計(jì)算我們的id呢?
事實(shí)上它的計(jì)算方法是這樣
ID number=256*256*256*A+256*256*B+256*C+D
所以kad其實(shí)也有高低id的分別。所以內(nèi)網(wǎng)用戶在使用的時(shí)候依舊無法達(dá)到內(nèi)網(wǎng)用戶完全穿透網(wǎng)絡(luò)的效果,而且目前來看,還存在著kad模塊引入,導(dǎo)致占用系統(tǒng)資源會(huì)變大以及會(huì)突然產(chǎn)生Memory Leak的問題,對(duì)于內(nèi)存的控制,目前emule做的效果還是不好。

其實(shí)kad本身有一個(gè)nodes.dat文件,也叫做節(jié)點(diǎn)文件,這里面存放了我們?cè)贙ad網(wǎng)絡(luò)中的鄰居節(jié)點(diǎn),我們都是通過這些節(jié)點(diǎn)來進(jìn)入Kad網(wǎng)絡(luò)的。其實(shí)kad的網(wǎng)絡(luò)倒更像是overnet和Kazaa網(wǎng)絡(luò),有興趣的朋友大家可以對(duì)比看看。Kad網(wǎng)絡(luò)提供了幫助尋找節(jié)點(diǎn)以及記錄節(jié)點(diǎn)的機(jī)制。

下面我們來說說這個(gè)機(jī)制的原理:
Kad擁有一個(gè)160bit的ID,每一個(gè)節(jié)點(diǎn)送出的訊息都必須包含此ID。每一個(gè)節(jié)點(diǎn)都必須記錄一個(gè)資料來保存已經(jīng)存在的節(jié)點(diǎn),資料的格式是 (IP address, UDP port, Node ID),節(jié)點(diǎn)所必須負(fù)責(zé)的范圍是2的i次方及2的i+1次方,i的范圍是0 < i <160,這個(gè)結(jié)構(gòu)叫做k-bucket,該結(jié)構(gòu)會(huì)形成一個(gè)tree的形狀,每一次接收到新的信息時(shí),各個(gè)節(jié)點(diǎn)都必須更新k-bucket內(nèi)的資料,透過k-bucket結(jié)構(gòu)我們可以保證所有的節(jié)點(diǎn)狀態(tài)都是新的,而且一定會(huì)知道這個(gè)節(jié)點(diǎn)在哪里。

Kademlia網(wǎng)絡(luò)提供四種Potocol(RPC)
(1)PING 測(cè)試是否節(jié)點(diǎn)存在
(2)STORE存儲(chǔ)通知的資料
(3)FIND_NODE 通知其他節(jié)點(diǎn)幫助尋找node
(4)FIND_VALUE 通知其他節(jié)點(diǎn)幫助尋找Value
而當(dāng)每一個(gè)指令被接受到后,每一個(gè)節(jié)點(diǎn)都會(huì)到k-bucket上搜尋,通過這樣的結(jié)構(gòu),kad提供一個(gè)方便快速且可以被保證在logN次數(shù)下找到所需的節(jié)點(diǎn)。

通俗的來講就是在kad網(wǎng)絡(luò)中,我們每個(gè)emule用戶端只負(fù)責(zé)處理一小部分搜索和查找源的工作。分配這些工作的時(shí)候,通過我們每個(gè)用戶端的唯一的ID和搜索文件的hash值之間的匹配來決定。比如像我猜我猜我猜猜.rm這個(gè)文件由用戶小王來負(fù)責(zé)(通過該文件的hash值來決定),那么任何其他用戶在下載這個(gè)文件的時(shí)候都會(huì)告訴其他用戶,小王有這個(gè)文件,其他用戶去下載這個(gè)文件的時(shí)候也會(huì)詢問小王,小王也會(huì)告訴他們誰正在共享這個(gè)文件,這樣kad找源的工作就完成了。搜索時(shí)候的方法也差不多,只不過是每個(gè)人負(fù)責(zé)一個(gè)關(guān)鍵字。

整個(gè)過程有點(diǎn)像在照線索循序問路而找到正確方向,而不是路上隨便到處抓人在問路。而每個(gè)地方里的網(wǎng)絡(luò)相關(guān)信息,則會(huì)隨著電腦及文件的加入而持續(xù)更新。好處在于讓你可以搜索整個(gè)網(wǎng)絡(luò),而不只是在某一地區(qū)。目前來講,這個(gè)機(jī)制和算法是絕對(duì)領(lǐng)先而且非常優(yōu)秀的。

如何找到用戶小王則是通過將用戶id異或的方式,兩個(gè)id的二進(jìn)位異或值決定他們之間的邏輯距離,如1100距離1101要比距離1001近。那么當(dāng)一個(gè)用戶加入kad后,首先通過一個(gè)已知的用戶找到一批用戶的id和ip地址和端口。當(dāng)該用戶要尋找一個(gè)特定用戶A的時(shí)候,該用戶先詢問幾個(gè)已知的邏輯距離較A較近的用戶,如B用戶,C用戶,D用戶,B,C,D會(huì)告訴該用戶他們知道的更加近的用戶的id和ip地址和端口,同理類推,這個(gè)用戶最終就能找到A。所以尋找的次數(shù)會(huì)在logN數(shù)量級(jí),這里N代表詢問的人數(shù)。

其實(shí)也就是一種分散式雜湊的方法,基本上是對(duì)網(wǎng)絡(luò)上某一特定時(shí)刻的文件進(jìn)行快照(snapshot),然后將這些信息分散到整個(gè)網(wǎng)絡(luò)里。 為了找到特定的文件,搜索的要求先到達(dá)網(wǎng)絡(luò)上的任何一臺(tái)電腦上,然后這臺(tái)電腦就會(huì)再將它轉(zhuǎn)到另一臺(tái)有更多文件信息的電腦。第三臺(tái)電腦可能就擁有文件本身──或者也可能再繼續(xù)轉(zhuǎn)到其他有正確信息的電腦。采用這種方法,通常只需要跳轉(zhuǎn)兩到三次,便可以輕松查找到所需文件。

以上幾個(gè)部分,便是對(duì)于kad作用原理以及算法的分析,可能好多人看了之后頭大,那么我們普通用戶到底該注意些什么呢?

很簡(jiǎn)單,你要作的就是再使用emule的時(shí)候打開kad,你會(huì)發(fā)現(xiàn)有兩個(gè)明顯的特點(diǎn)
(1)你的下載速度會(huì)加快
(2)你的下載文件的源會(huì)增加
以上兩條對(duì)于lowid和經(jīng)常下載源在國(guó)外的文件用戶,效果就更為突出,特別對(duì)于在ed2k網(wǎng)絡(luò)中只有幾個(gè)源或者沒有源的文件,在kad網(wǎng)絡(luò)中,一般都能找到源,所以說你使用了emule下載文件,基本上不會(huì)出現(xiàn)沒有源的請(qǐng)況,無論多長(zhǎng)時(shí)間,差別只是源的多少個(gè)數(shù)問題,由于kad網(wǎng)絡(luò)都是自動(dòng)配置的,所以你絲毫不用分心,那么索性我們就打開它,何樂而不為呢?

另外對(duì)于我們搜索的時(shí)候,如果采用kad網(wǎng)絡(luò)搜索,多數(shù)情況下找到的文件源會(huì)遠(yuǎn)遠(yuǎn)多于ed2k的全局搜索,對(duì)于大家都是一個(gè)明智的選擇。

雖然,目前kad還處在試驗(yàn)階段,但是他的崛起是遲早的事情,我從kad一開始推出就一直在使用,開始的時(shí)候用的人不多,效果不明顯。但是目前來講,再我發(fā)帖前,我還做過測(cè)試現(xiàn)在kad的使用人數(shù)已經(jīng)突飛猛進(jìn),我隨便找了一期我猜我猜我猜猜來做測(cè)試,發(fā)現(xiàn)kad找到源的比例已經(jīng)占了總源比例的30%,甚至更多,時(shí)間越長(zhǎng)效果越明顯。所以,在這里呼吁大家都打開kad,讓我們的速度再邁上一個(gè)臺(tái)階.早日迎接kad天下的到來!


Ps:文中部分技術(shù)資料,來自于國(guó)外的網(wǎng)站,原文是英文的,我翻譯過來,然后引用,由于本人英文水平有限,出現(xiàn)的錯(cuò)誤請(qǐng)大家多多包涵!
另外,文中也引述參考了一些國(guó)內(nèi)外網(wǎng)站關(guān)于kad技術(shù)的文章,但是所引太雜,所以請(qǐng)恕這里不引出原文出處,請(qǐng)?jiān)缸髡咭娬彛?/span>

    本站是提供個(gè)人知識(shí)管理的網(wǎng)絡(luò)存儲(chǔ)空間,所有內(nèi)容均由用戶發(fā)布,不代表本站觀點(diǎn)。請(qǐng)注意甄別內(nèi)容中的聯(lián)系方式、誘導(dǎo)購(gòu)買等信息,謹(jǐn)防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請(qǐng)點(diǎn)擊一鍵舉報(bào)。
    轉(zhuǎn)藏 分享 獻(xiàn)花(0

    0條評(píng)論

    發(fā)表

    請(qǐng)遵守用戶 評(píng)論公約

    類似文章 更多