吸血驢
此條目可能包含原創研究。 (2018年11月20日) |
吸血驢,又稱吸血騾,通常指在連接eDonkey網絡的文件共享客戶端軟件之中,只下載資源數據不上傳或上傳下載比例很小的,或者有其他不良行為的軟件。「吸血驢」一詞的討論範圍有時候也可以是其他P2P網絡。
吸血驢的出現通常是由於一些商業公司或程式設計師對開源的eD2k軟件進行二次開發修改成為新的客戶端(例如修改eMule成為其Mod)時,減少其上傳下載比例或做出其他一些不良行為。吸血驢被認為違背了網絡資源共享道德與精神,也損害了P2P網絡的秩序與其他P2P用戶的利益。但至今依然有一定數量的用戶。
討論範圍
編輯中文中由於有「驢」字,「吸血驢」通常的討論範圍是可以連接eDonkey網絡(又稱eD2k網絡,或電驢網絡)的客戶端軟件(即eD2k軟件或電驢軟件、eDonkey軟件)。「吸血騾」按字面意思,討論範圍應該是eMule(電騾)的Mods,但大多數時候不限於此,也可以討論其他eD2k軟件,因此可認為和「吸血驢」討論範圍相同。
少部分時候,也將「吸血驢」一詞拿來稱呼BitTorrent等P2P網絡中的吸血者,但一般使用「吸血軟件」一詞指代。
英文的Leech或Leecher指吸血的P2P客戶端軟件,也可泛指有「吸血」行為的任何軟件,參見英文詞條 Leech_(computing)。英文的Leecher-Mods一般只討論eMule Mods,但也有人將其他eD2k軟件中的吸血者稱為Leecher-Mods。
定義
編輯討論「吸血驢」,並不是狹義地僅指其只下載資源數據不上傳,或上傳下載比例很小。一般來說[1],有任何不良行為、有損其他客戶端或伺服器的eD2k軟件、不利於eD2k網絡公平性的行為都可稱為「吸血驢」。這些不良行為通常可能包括[2][3][4]:
- 只下載不上傳或上傳下載比例很小;
- 只上傳自己可以交換到對方下載的最小數據量。即Credit Shaping,相當於用軟件實現「下了就跑」;
- 每次啟動時或正常工作時變換自己的UserHash(用戶哈希值)和安全認證,讓其他客戶端誤認為此客戶端是新手;
- 假冒不同的IP+端口下同一個文件;
- 過於頻繁地向其他客戶端或伺服器端發送請求,稱攻擊性客戶端;
- 使用虛假的ModString,或盜用其他客戶端的ModString或者用戶名、UserHash等(有可能能躲過某些客戶端反吸血功能的偵測。盜用用戶名則向連接客戶顯示與該客戶一模一樣的用戶名,這可以從社區加分客戶端獲得上傳加分);
- 故意傳播壞文件段或是假冒成熱門檔案,騙取上傳;
- 偽造隊列排名,嚴重影響公平;
- 濫用社區加分。社區加分就是某客戶端軟件為自己的軟件用戶或某些特定人群加分,其他客戶端將受到歧視,有損公平性。其吸血的程度可視社區加分的程度而定,有時稱社區吸血,這個軟件使用者所構成的網絡也被稱為私有網絡;
- 不能主動生成eD2k連結,只能被動地接收eD2k連結。有用戶認為這是「消極共享」的行為,不利於網絡公平性。
- 作為GNU GPL軟件的修改衍生版本卻未開源,或作出了其他違反GPL協議的行為。違反GPL的軟件稱GPL-Breaker。
- 作為eMule Mods卻沒有自己的ModString,稱Ghost Mod,有可能會被官方eMule屏蔽。[5]
後果
編輯eDonkey網絡上大多數客戶端擁有排隊機制。這種機制可以保證,分享給某客戶端的資源數據更多者,就能從某客戶端那裏獲得更優先的下載權。這也保持了eDonkey網絡資源的長期有效性。吸血驢在下載過程中或結束後不給其他人提供上傳或上傳較少,或做出其他一些不良行為,因而被認為破壞了這種排隊機制,是潛在的對P2P網絡資源共享道德與精神的摒棄,損害了P2P網絡的秩序與其他P2P用戶的利益,並可能將導致P2P網絡效率下降,甚至崩潰。
處理
編輯eMule官方、eMule Mods和其他的一些eD2k軟件都或多或少地有對某些吸血驢有處理辦法,比如對侵略性客戶端的自我保護機制等。而專門的偵測方式則有IPFilter(IP過濾)、Xtreme等多個Mods的DLP、MorphXT的反吸血功能、MagicAngel的Argos、客戶端分析系統(Client Analyzer)等。
eMule官方
編輯官方eMule有IP位址過濾(IPFilter)、垃圾信息和攻擊型客戶端偵測過濾功能。另外也有一些內置的偵測功能[5]。但並沒有非常精確或者可及時更新的對吸血驢的偵測方式。
eMule官方對於其Mod有要求[4],以下三條是不被官方允許的:
- 手動或者無提示的影響上傳/下載;
- 偽裝自己以欺騙其他用戶或者偽裝為「良好行為」;
- 增加伺服器的負擔或者過於頻繁地向伺服器發送信息,破壞干擾伺服器運作。
由此可見,eMule官方明確反對攻擊性客戶端和有偽裝行為的客戶端。同時,也禁止允許用戶手動屏蔽其他客戶端的Mod。但對於像DLP等根據指定列表進行偵測而非手動的反吸血屏蔽,eMule官方並未反對,也未表示支持。
其他要求還包括:必須提供當前版本文件的更新日誌與下載地址;必須開源;eMule中註明「Mod不能修改」的代碼部分不可修改。
DLP
編輯反吸血驢功能之中使用最廣的是Xman於2005年為Xtreme Mod開發出的DLP(全稱:Dynamic Leecher Protection,中文:動態反吸血驢保護),用於輔助eMule檢測並屏蔽吸血驢,從Xtreme4.5版開始使用,Xtreme的DLP庫也被認為是官方DLP庫,至今一直在更新。目前支持DLP且默認使用官方DLP庫的有Xtreme、MagicAngel、ScarAngel、Mephisto、X-Ray、StulleMule、NeoMule(非完全)、CN、Dreamule等Mod。VeryCD公司的VeryCD Mod和EasyMule支持DLP但默認使用了自己的DLP庫,放行了被很多用戶認為是吸血驢的迅雷,卻多次錯誤地屏蔽了Xtreme等Mod,因而VeryCD的做法招來了許多爭議[6][7]。
其他
編輯BitTorrent協議方面,由於迅雷有「插隊」、「高速下載」模式、計劃關機等可能非公平的功能,對BitTorrent協議也可以設置限時分享,有不少用戶懷疑迅雷不會上傳回饋或者極少回饋於BitTorrent協議軟件。因而迅雷被BitComet等軟件的一些用戶所屏蔽。而BitComet的「長效種子」等特性也被視為有變相吸血之嫌。前段時間迅雷的新版本「迷你迅雷」可以吸血,並且官方並沒有發現這個新吸血驢,但現在已經有新的MOD指明迷你迅雷是一個吸血驢。
WinMX方面,日本網友寫了一個名為「MX Monitor」的程序,來自動與其他網友交換文件、禁封不發文件者等。
其他像Gnutella2網絡上也存在有吸血的現象和對抗措施。
參見條目
編輯參考資料與註釋
編輯- ^ Xtreme的動態反吸血驢保護偵測的是所有有不良行為的客戶端。很多中外的討論區,在討論Leecher/吸血驢時,也是討論的所有有不良行為之eD2k軟件,甚至包括違反GPL的軟件。只是有時可能會在判定「不良」的程度和處理方案上有異議。
- ^ 什么是吸血,如何定义吸血行为,如何对抗吸血行为. killsophia. 2009-05-17 [2009-09-26]. (原始內容存檔於2010-09-13).
- ^ German:Leecher-Mod. wiki.emule-web.de. [2009-09-26]. (原始內容存檔於2009-05-31) (德語).
- ^ 4.0 4.1 《官方提出的对所有eMule Mod的要求》中文翻译. 古典. [2009-09-26]. (原始內容存檔於2010-10-30).
- ^ 5.0 5.1 ModString是顯示於eMule主版本號之後的、Mod的版本名稱及其版本號,通常顯示在中括號「[]」內,大部分eMule都顯示ModString,eMule之中,只有官方eMule才沒有ModString,因此非官方eMule Mods沒有ModString將被視為冒充官方的行為,稱之為Ghost Mod。2007年初,VeryCD Mod就曾因被判定為非官方eMule又無ModString的Ghost Mod,而被官方eMule內置的偵測功能自動屏蔽,見:Verycd Mod Is Leecher, Or Not?. [2009-09-28]. (原始內容存檔於2019-12-06). 引用錯誤:帶有name屬性「offghost」的
<ref>
標籤用不同內容定義了多次 - ^ VC的DLP对迅雷放行引发论坛骚乱. hupisha. [2009-09-26]. (原始內容存檔於2009-12-10).
- ^ 竞争对手or关系暧昧? VeryCD与迅雷其实是好哥们. 立牌坊的假驢. [2009-09-26]. (原始內容存檔於2009-12-13).