自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

關(guān)于eMule協(xié)議地址問題的討論

網(wǎng)絡(luò) 網(wǎng)絡(luò)管理
文中我們對于eMule協(xié)議的地址問題進(jìn)行了詳細(xì)介紹。讓我們一下來看看具體的內(nèi)容吧。希望對大家有所幫助。

eMule協(xié)議的有關(guān)內(nèi)容我們講述了不少。這里我們主要講解一下它的ID的有關(guān)問題。我們知道,對于下載協(xié)議來說,這個地址問題是非常關(guān)鍵的。所以這里我們來詳細(xì)討論一下。

客戶ID

客戶ID是服務(wù)器在它們連接握手時提供的一個4字節(jié)標(biāo)識符。客戶ID只在客戶-服務(wù)器TCP連 接的生命期中有效,盡管萬一客戶端有一個高ID,所有的服務(wù)器都會分配它同樣的ID直到IP 地址改變。客戶端ID分為低ID和高ID。當(dāng)一個客戶端不能接收一個輸入連接時,eMule服務(wù)器將特有地分配給客戶端一個低ID。擁有一個低ID會限制客戶端對eMule網(wǎng)絡(luò)的使用,和可 能導(dǎo)致服務(wù)器拒絕一個客戶端連接。高ID的計(jì)算是以客戶端IP地址為基礎(chǔ)的,如下所述。從eMule協(xié)議觀點(diǎn)描述了客戶ID的分配和重要性。允許其它客戶端自由地連接到其本機(jī)上 的eMule的TCP端口(默認(rèn)端口號是4662)的客戶端會分配給一個高ID。有高ID的客戶端沒 限制使用eMule網(wǎng)絡(luò)。當(dāng)服務(wù)器無法打開一個TCP連接到客戶端的eMule端口時,會分配一個 低ID給該客戶端。這主要發(fā)生在機(jī)器上裝有防火墻的客戶端,阻止了輸入連接。當(dāng)出現(xiàn)下 面情況時,客戶端也會接收到一個低ID:l當(dāng)客戶端通過NAT或代理服務(wù)器連接,l當(dāng)服務(wù)器繁忙(導(dǎo)致服務(wù)器重連接計(jì)時器超時) 高ID用下面的方法計(jì)算:假設(shè)主機(jī)IP是X.Y.Z.W,ID就是X+2^8*Y+2^16*Z+2^24*W。低ID總是小于16777216(0x1000000),關(guān)于它是怎樣計(jì)算的,我找不到任何線索,在不同的服務(wù)中得到不同的低ID。

低ID客戶端沒有其他客戶端可以連接到的公網(wǎng)IP,這樣所有的交流必須通過eMule服務(wù)器完 成。這增加了服務(wù)器計(jì)算能力的負(fù)擔(dān),并且導(dǎo)致服務(wù)器勉強(qiáng)接收低ID客戶端。這也意味著 低ID客戶端不能連接到不在同一個服務(wù)器上的其他低ID客戶端,因?yàn)閑Mule協(xié)議不支持在服務(wù)器間管道連接。為了支持低ID客戶端,引入了回調(diào)機(jī)制。使用這機(jī)制,高ID客戶端請求(通過eMule服務(wù)器 ) 低ID客戶端連接它來交換文件。

用戶ID

eMule支持信用系統(tǒng)來鼓勵用戶共享文件。用戶上傳越多的文件給其他客戶端,它接收的信 用越多,它在它們的等待隊(duì)列中前進(jìn)得越快。用戶ID是128位(16字節(jié))、連接隨機(jī)數(shù)字創(chuàng)建的GUID,第6和第15字節(jié)不是隨機(jī)產(chǎn)生的,它 們的值分別是14和111。在整個客戶端和指定的服務(wù)器會話中,客戶ID是有效的,然而用戶 ID(也叫用戶哈希)是唯一的并且跨越會話時用來識別客戶端(用戶ID識別工作站)。用戶 ID在信用系統(tǒng)中扮演重要角色,這為“黑客”假冒其他用戶來獲得他們信用賦予的優(yōu)先權(quán)提供 了動機(jī)。Emule提供加密方案設(shè)計(jì)來阻止欺騙和冒名頂替。這個實(shí)施是簡單的應(yīng)答交換,依 靠RSA公有/私有鑰匙加密。

文件ID

文件ID用來惟一的標(biāo)識網(wǎng)絡(luò)中的文件和文件損壞偵測和修復(fù)。注意,eMule協(xié)議不依靠文件名來 惟一標(biāo)識和編目文件,通過哈希文件內(nèi)容計(jì)算出的GUID標(biāo)識文件。有兩種類型文件ID-一種 主要用來產(chǎn)生惟一的文件ID,另一種是用來損壞偵測和修復(fù)。

文件哈希

文件是用由客戶端和基于文件內(nèi)容計(jì)算出來的128位GUID哈希來標(biāo)識的。GUID是應(yīng)用MD4 算法到文件數(shù)據(jù)中計(jì)算而來。當(dāng)計(jì)算文件ID時,文件被分成每段9.28MB長的部分。每部分 單獨(dú)計(jì)算出一個GUID,然后所有的哈希組合成一個惟一的文件ID。當(dāng)下載的客戶端完成一 個文件部分下載時,它計(jì)算這部分哈希,然后和發(fā)送過來的這部分哈希對比,如果這部分發(fā) 現(xiàn)損壞了,客戶端嘗試通過逐漸替換這部分中的位(每個180kb)來修復(fù)損壞部分,直到哈 希計(jì)算OK。

根哈希

用SHA1算法來為每部分計(jì)算根哈希,基于每塊180kb大小。它提供了更高等級的可靠性和可 修復(fù)性,更多信息可在eMule官方網(wǎng)站得到。

eMule協(xié)議擴(kuò)展

盡管eMule完全兼容eDonkey,它還是實(shí)行了幾種擴(kuò)展,允許eMule兩個客戶端為用戶提供另 外的功能。擴(kuò)展只要集中在客戶端與客戶端的交流,特別是在安全和UDP使用領(lǐng)域上。在本 文檔中,所有信息流圖標(biāo)明的信息,是eMule擴(kuò)展部分的,用灰色表示。

軟件和硬件限制

在活動用戶數(shù)量的服務(wù)器配置中有兩種限制-軟件和硬件。硬件限制遠(yuǎn)大于軟件限制。當(dāng)活 動用戶的數(shù)量達(dá)到軟件限制時,服務(wù)器停止接收新的低ID客戶連接。當(dāng)用戶數(shù)量達(dá)到硬件 限制時,服務(wù)器滿了,不再接收任何客戶端連接。

責(zé)任編輯:佟健 來源: IT專家網(wǎng)
相關(guān)推薦

2010-06-23 15:08:18

2010-06-23 15:43:08

2010-07-02 12:02:11

eMule協(xié)議

2010-06-23 15:19:35

eMule協(xié)議

2010-06-28 21:33:17

eMule協(xié)議

2010-06-23 14:20:06

eMule協(xié)議

2010-06-23 14:55:04

eMule協(xié)議

2010-06-23 14:32:20

eMule協(xié)議

2011-07-04 16:40:39

QT 串口 QML

2014-05-29 10:54:20

C++構(gòu)造函數(shù)

2010-05-26 13:57:22

IPv6協(xié)議

2009-08-27 16:30:10

interface繼承

2013-05-20 15:45:12

CSS

2010-09-28 15:42:36

DHCP服務(wù)故障排除

2011-05-19 15:51:54

測試專家

2011-11-02 09:04:15

Node.js

2010-06-09 16:57:14

路由選擇協(xié)議

2010-09-28 15:52:08

Cisco路由器DHC

2013-02-28 15:11:56

GitGitHub

2009-10-16 16:11:04

6類布線系統(tǒng)
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號