• <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>

            rockbeast

            常用鏈接

            統計

            DirectX

            P2P

            最新評論

            最近在看eMule的協議,覺得不錯,翻譯了一些!下面帖出來開始部分(止于1.2.1),很亂在不斷整理中

            1 介紹

            1.1 目的和范圍

              eMule是一個基于eDonkey協議的流行文件共享應用程序。這份文檔描述eMule的網絡行為方式,以及為了更好理解這份協議的一些基本術語。同時,文檔也對eMule網絡協議做了全面的說明,其中還包含一個詳述消息格式的附言部分。這份文檔信息基于一個開源客戶端軟件eMule【2】。接下來的一些介紹是為讀者能更好的去閱讀和理解這份文檔的一些一般性的背景知識。關于eMule的更進一步的信息可以在【3】中找到。

            1.2 概述

              eMule網絡由幾百個eMule服務器和數百萬個eMule客戶端組成【1】??蛻魹榱说玫骄W絡服務需要連接一個服務器;只要客戶端在系統中,服務器連接就一直保持打開狀態。服務器提供中心索引服務功能(象在Napster中一樣),不和別的服務器通信。

              每個eMule客戶端在本地系統中預先配置好一個服務器列表和一個共享文件列表。一個客戶端使用單一TCP連接連接到eMule服務器來登入eMule網絡,去獲得文件和可連接的客戶端信息。eMule同時也使用數百個到別的客戶端的TCP連接去下載和上傳文件。每個eMule客戶端他的每個共享文件維護一個上載隊列。下載客戶加入隊列,進入隊列底部,逐步上移直到隊列的頂部開始下載文件。一個客戶可能從幾個不同的客戶端下載同一個文件,從每一個客戶端上面得到不同的片斷(fragments)。客戶也可能上載文件數據塊(chunks),即使這個文件還沒有下載完成。最后,eMule還擴展了eDonkey協議,允許客戶之間交換服務器、別的客戶和文件信息。這里值得注意的是,客戶跟服務器的通信是基于TCP的。

              服務器啟用一個內部數據庫來保存客戶和文件信息。eMule服務器不保存任何文件,它扮演中心索引的角色,保存文件位置信息。服務器的一個額外橋接功能,同時也引來無數抗議的一個功能就是穿越防火墻,使得躲在防火墻后不能夠接受引入連接的客戶得到解放。橋接功能極大的增加了服務器的負擔。eMule啟用UDP加強客戶性能來應對服務器和別的客戶端的連接??蛻艚邮蘸桶l送UDP消息不是強制性的,如果防火墻阻止客戶發送和接收UDP消息,這不會妨礙正常運轉。

            1.2.1 客戶到服務器的連接

              在啟動的時候,客戶使用TCP連接到單個eMule服務器。服務器提供客戶一個客戶ID(1.3節),這個ID只是在客戶服務器連接生命期有效(這里有一點需要注意:如果客戶擁有一個High  ID,那么只要他的IP地址不發生改變,客戶就會從所以的服務器上得到同一個ID)。緊接著連接的建立,客戶端會發送他的共享文件列表給服務器。服務器把這個列表信息保存他他的內部數據庫中,通常數據庫中存有數十萬個可獲得的文件和活動客戶信息。同時,eMule客戶端也發送他的下載列表,包含他希望去下載的文件。第2節會提供客戶和服務器TCP信息交換的詳細描述。

              連接建立后,eMule服務器發送給客戶一個別的客戶的列表,列表中的客戶可以為當前客戶提供文件下載源(這些客戶理所當然就被稱為“sources”)。緊跟其后,客戶開始和別的客戶建立連接,1.2.2節對此有詳細描述。

              值得注意的是:客戶服務器的TCP連接在整個客戶會話階段都保持開的狀態。初始握手之后,客戶服務器事件主要由用戶活動觸發:有時候,客戶發出文件查找請求,請求被查找結果作為答復;文件查找之后通常緊跟著一個特定文件源的查找,這個查詢以源列表(IP和port)作為答復,發出請求的客戶可以從源端下載特定文件。

              客戶使用UDP和別的服務器(未建立TCP連接的服務器)通信。這種通信增強文件和源查找,保證客戶端服務器列表中所有的服務器是當前有效的。關于客戶服務器UDP連接的細節可以在第三章中找到。

             

            posted on 2005-12-07 07:57 rock beast 閱讀(918) 評論(7)  編輯 收藏 引用

            評論

            # re: 最近在看eMule的協議,覺得不錯,翻譯了一些!下面帖出來開始部分(止于1.2.1),很亂在不斷整理中 2006-02-15 17:37 helloworld

            謝謝您的翻譯。  回復  更多評論   

            # re: 最近在看eMule的協議,覺得不錯,翻譯了一些!下面帖出來開始部分(止于1.2.1),很亂在不斷整理中 2006-03-02 13:45 QST

            1、搜索文件是在整個emule網絡搜索還是在我登陸上的emule服務器搜索的?
            2、在同一個服務器登陸的用戶是否能更快的得到其他用戶的文件?  回復  更多評論   

            # re: 最近在看eMule的協議,覺得不錯,翻譯了一些!下面帖出來開始部分(止于1.2.1),很亂在不斷整理中 2006-03-02 16:30 游自在

            8錯8錯!!有點兒意思!  回復  更多評論   

            # re: 最近在看eMule的協議,覺得不錯,翻譯了一些!下面帖出來開始部分(止于1.2.1),很亂在不斷整理中 2006-03-12 14:43 yang22222222222222222222222222

            3x your translon!  回復  更多評論   

            # re: 最近在看eMule的協議,覺得不錯,翻譯了一些!下面帖出來開始部分(止于1.2.1),很亂在不斷整理中 2006-03-15 18:49 Tauruser

            請問哪里有原本的e-Mule協議呢?我想看一下完整的英文版。  回復  更多評論   

            # to 樓上 2006-03-15 21:17 dhong

            http://prdownloads.sourceforge.net/emule/protocol_guide.pdf?download  回復  更多評論   

            # 根本沒有必要翻譯這種東西 2006-03-19 16:46 無名氏

            普通的emule用戶不會看這種東西吧?

            做開發的不能閱讀英文資料,還能做開發嗎?  回復  更多評論   

            久久午夜伦鲁片免费无码| 91久久精品视频| 99热成人精品免费久久| 久久精品极品盛宴观看| 99久久er这里只有精品18| 一97日本道伊人久久综合影院| 久久99精品久久久久久动态图| 人妻中文久久久久| 久久99国产精品久久久| 东方aⅴ免费观看久久av| 久久91这里精品国产2020| 精品国产一区二区三区久久久狼| 亚洲国产精品无码久久久久久曰| 久久精品人人做人人爽电影| 国产毛片欧美毛片久久久| 久久九九久精品国产| 99久久伊人精品综合观看| 99久久99这里只有免费费精品| 777午夜精品久久av蜜臀| 久久精品成人影院| 99久久精品费精品国产| 久久国产精品成人影院| 久久人人爽人人爽人人av东京热| 久久精品免费网站网| 97久久天天综合色天天综合色hd| 久久精品中文字幕一区| 久久无码AV一区二区三区| 亚洲?V乱码久久精品蜜桃| 久久99精品国产99久久6| 中文字幕久久欲求不满| 日本免费久久久久久久网站| 精品国产一区二区三区久久| MM131亚洲国产美女久久| 国内精品久久久久影院一蜜桃| 久久亚洲春色中文字幕久久久| 伊人久久综合无码成人网 | 久久精品国产亚洲麻豆| 69国产成人综合久久精品| 久久精品国产亚洲AV麻豆网站| 亚洲精品美女久久777777| 久久天天躁狠狠躁夜夜avapp|