点对点P2P技术详解,VeryCD到底是电驴还是电骡?

作者:冯涛  永久链接:

昨天晚上王贺推荐了一个美剧《外包服务》(Outsourced),在VeryCD下载的时候,王贺问我电驴的工作原理到底是什么?P2P就是point-to-point点对点吗?

其实自己接触P2P的时间很久了,包括BT(BitTorrent)和Emule和后来的VeryCD电驴,不下几十次思考过这个问题,但是实际上自己从来没有真正理解。

今天从头再把P2P这个知识点捋顺一下。

一、什么是P2P技术?它就是点对点吗?

一般报章都称P2P是点对点技术,但其实是错的,实为解作群对群(Peer-to-Peer)。在虚拟私人网络VPN (Virtual Private Network)中,也有P2P这个名称,它才是真正解作点对点(Point-to-Point)。peer-to-peer, 简称P2P,又称对等互联网络技术。这类网络可以用于多种用途,各种文件共享软件已经得到了广泛的使用,P2P技术也被使用在类似VoIP等实时媒体业务的数据通信中。

读到这里,就碰到很多技术名词,如果不是IT技术感兴趣的人,基本上没兴趣再了解更多了。

二、基本网络拓扑图

Server-based-network P2P-network

上图左,是基于中心服务器的对等网络系统,也就是FTP和http下载的模式,大多现在网站就是这个模式。
上图右,无中心服务器的对等网络系统,也就是P2P的基本概念,这个图在大脑中留下印象就便于理解了。

三、依中央化程度分类

纯P2P,例如Gnutella,了解Gnutella的人没几个,不要试图了解最好。
    * 节点同时作为客户端和服务器端。
    * 没有中心服务器。
    * 没有中心路由器。

杂P2P,例如最原始的Napster。 
    * 有一个中心服务器保存节点的信息并对请求这些信息的要求做出响应。
    * 节点负责发布这些信息,让中心服务器知道它们想共享什么文件,让需要它的节点下载其可共享的资源。
    * 路由终端使用地址,通过被一组索引引用来取得绝对地址。

混合P2P,例如如Skype,看,真在VoIP上应用着呢。
    * 同时含有纯P2P和杂P2P的特点。

四、依网络拓扑结构

结构P2P: 
    * 点对点之间互有连结信息,彼此形成特定规则拓扑结构。
    * 需要请求某资源时,依该拓扑结构规则查找,若存在则一定找得到。

无结构P2P: 
    * 点对点之间互有连结信息,彼此形成无规则网状拓扑结构。
    * 需要请求某资源点时,以广播方式查找,通常会设TTL,即使存在也不一定找得到。

松散结构P2P: 
    * 点对点之间互有连结信息,彼此形成无规则网状拓扑结构。
    * 需要请求某资源时,依现有信息推测查找,介于结构P2P和无结构P2P之间。

上面四大点,前两点好理解得很,后面的三四点,基本上就是云里雾里了。有网络基础和服务器基础的人,也只能粗略了解其概括而无法了解它的技术细节。

五、法律争议

这里存在一个理论上毫不矛盾的关系,P2P技术本身是合法的,但是用侵犯版权的方式来传播的个人对它的滥用很明显是非法的。大多数在P2P网络上共享的文件是版权流行音乐和电影,包括各种格式MP3、MPEG、RMVB等,在多数司法范围中,共享这些复本是非法的。

在美国:
对P2P技术限制的法律也是不健全的,所以,美国唱片协会和美国电影协会正花费大量的钱来试着游说立法者来创建新的法律。

在日本:
根据日本现行著作权法,日本境内一切免费提供商业软件或其他数据下载的网站均属非法,BT系列软件和eMule均被禁止。

在中国:
大家都知道的BT都被干掉了,但是eMule在中国还活着,VeryCD或者电驴基本上是emule的代名词。同是P2P技术,为什么一个可以活?一个不可以活?我个人认为中国BT资源站就像野草一样,实在太多,无法一个一个管制,只能一把火全部烧光,而emule只有VeryCD一家。在中国的有关部门的一些做法,请不要参考现行法律。

六、关于eMule不得不说几句

eMule是开源免费的P2P文件共享软件,它基于eDonkey2000的eDonkey网络,遵循GNU通用公共许可证协议发布。eMule能够连接eDonkey和Kad两个网络,另外,eMule以zlib压缩格式传输数据以节约带宽。

看了以上简单介绍,真觉得eMule把P2P文件共享应用到极致了,所以说,官方eMule在SourceForge上的下载点击数已超过5亿不足为奇。

eMule官方按照基本的英语知识,将eDonkey翻译成“电驴”,将eMule翻译成“电骡”,这本身毫无疑义。但是VeryCD.com上海维西(VeryCD)公司基于eMule开发的eMule VeryCD Mod和easyMule都被叫做“电驴”,这是严重的概念混淆。另外VeryCD经常说自己是eMule的官方,混淆中国网民对这个软件的理解,这对开源软件非常不尊重。VeryCD公司于2005年在大陆尝试申请注册“电驴”、“eMule”等商标,但至今未通过商标局审批,

VeryCD版的eMule(easyMule)已经删减了从eD2k服务器和Kad网络搜索的功能,这意味着只能搜索VeryCD站内的资源了。即使我们搜索到eD2k和Kad网络内的资源,国内下载速度也慢如乌龟。但VeryCD的做法,始终违背了开源软件那种开放与自由的精神。

eMule官方网站www.emule-project.net

在eMule的官方网站主页上写道:“eMule是完全免费的,它也决不包含广告软件、间谍和流氓软件。我们之所以创造eMule是为了快乐和知识,而不是为了金钱。

5 Comments

  1. Heiwaer
    Posted November 15, 2010 at 11:32 am | Permalink | Reply

    我对VeryCD电驴比较了解,其实在很早的时候VC纠正过翻译错误,但后来发现大家都习惯叫电驴,改不过来了。
    申请商标这事貌似只有“电驴”这个词吧,而且没有申请下来。前面听VC人员解释,申请是防御性的,为的是不让别人给申请了到时自己想用就不行了。
    至于限制搜索功能,那是法律法规的问题,光怪VC不平等吧

    • Posted November 15, 2010 at 4:58 pm | Permalink | Reply

      很中肯的回复。
      但是VC应该坚持把名字叫做成电骡,而不能因为别人错了,就跟着错下去。

      • Heiwaer
        Posted November 16, 2010 at 10:59 am | Permalink | Reply

        听VC创始人说,当时他们使用脚本将网站上所有“电驴”改成“电骡”,但用户根本不买账,还是继续叫电驴,于是觉得此事意义不大(用户喜欢这样叫、eMule也是使用了eD2k协议),也就跟着用户叫了。

  2. Posted November 16, 2010 at 6:03 pm | Permalink | Reply

    整篇文章很中肯,完全开源只是个笑话。

  3. Posted December 6, 2010 at 2:05 pm | Permalink | Reply

    一直搞不清楚电驴与电骡的区别

Post a Comment

Your email is never shared. Required fields are marked *

*
*