磁环的BT开发
自称“全球最大电信分享网站”的海盗湾是一个致力于存储、分类和搜索电信资源的网站,它还运行着全球最大的BTTracker服务器。2008年6月5438+065438+10月15日,海盗湾宣称其规模已经达到2500万独立同行。注意不是种子。Peer可以看作是参与海盗湾“分享计划”的实际用户(电脑)数量。截至2009年2月,海盗湾的注册用户数已经达到400万。但是好像名声不太好。洛杉矶时报称其为世界上最大的非法下载助手(帮凶?)一。海盗湾于5438年6月+2004年10月正式成立,不仅有辉煌的“成就”,也充满了烦恼。根据记录,针对海盗湾的案件多达34起,其中涉及音乐行业的案件有21起,涉及电影行业的案件有9起,涉及游戏行业的案件有4起。2009年成为斗争最激烈的一年。2009年4月7日,瑞典斯德哥尔摩法院以侵犯版权为由,判处海盗湾四名创始人1年监禁,并罚款约3000万瑞典克朗。之后发生的事情让人觉得BT的“期限”终于到了。117年10月17日,海盗湾决定永久关闭他们的追踪器服务器。12年6月初,全球第二大BT服务网站Mininova删除了网站大部分非法文件的BT追踪器。米尼诺娃表示,为了避免支付罚款,他们别无选择,只能删除所有侵权文件的BT Tracker。有人说一个时代已经结束,美国电影协会(美国电影协会)和RIAA(美国唱片业协会)成了这场斗争的赢家。表面上看,是真的。在这场斗争中,美国电影协会和RIAA想要“摆脱”的是BT追踪器服务器,他们已经做到了。
也许一个时代结束了,但是BT时代真的结束了吗?答案是否定的,美国电影协会和RIAA“移除”了BT Tracker服务器,堵住了当前BT工作模式的“命门”。然而,随着新技术的引入,BT追踪器对于BT共享来说已经变得不重要甚至多余。事情的发展结果有时就像是开了一个玩笑,而这一次这个玩笑是开在美国电影协会和RIAA身上的。为什么会这样?要理解这一点,首先要梳理一下BT共享的实现。
用户如何通过BT下载文件?基本流程应该是这样的:首先找到Torrent文件,其次用BT下载客户端软件打开文件。第三,对于用户来说,只需要花时间去等待。至于客户端软件,它会根据Torrent文件中的URL自动连接到Tracker服务器,从它那里接收正在下载文件的其他人的URL列表。接下来,软件会逐一联系列表上的网站,并从中获取文件碎片,直到整个下载完成。从整个过程中不难看出,BT Tracker服务器是一个中心节点,任何客户端都可以在这里找到一个“同伴”——只要其他人都在下载或共享同一个文件。因此,美国电影协会和RIAA盯上了BT Tracker,因为要消灭所有的Torrent文件几乎是不可能的,但通过一些“努力”消灭BT Tracker服务器是完全可能的。官司打赢了,一个时代结束了。我们不妨称之为BT1.0时代。BT1.0时代的致命缺点是它有一个中心节点,即BTTracker服务器。但是,败诉并不意味着整个BT时代的终结。一个新的时代已经悄然开始,我们可以称之为BT2.0时代。
在BT2.0时代,Magnet(意译:磁铁)成为BT未来的发展方向。磁铁真的能拯救BT吗?经过笔者亲身试用,支持磁铁URI后,海盗湾仿佛脱胎换骨,下载速度不是越来越慢了。反而速度表现令人满意。关键是,Magnet不需要跟踪服务器或种子文件。它只需要一串字符来下载文件。海盗湾的LOGO,未来BT的“图腾”,海盗湾上的BT资源已经加入了磁铁的下载模式——摘自海盗湾题为《世界上最稳定的跟踪》的博文。文中提到:“随着DHT+ PEX技术的不断成熟,寻找对等点和协调通信变得容易,Tracker服务器变得不再重要。文章还说,服务器现在被放在一个博物馆里。看来关闭追踪者服务器是有计划的事情。一切都在控制之中?Tracker server和BT Seed即将退役,取而代之的是DHT+ PEX网络和Magnet Link。DHT网络是分布式的,不存在“不插电”的问题,磁铁链接也只是一串字符,不再需要Torrent文件。
这里有三个关键词:DHT、PEX和Magnet Link,这是未来BT的核心。先说说它们能实现什么功能。
DHT:2002年,纽约大学的两位教授Petar Maymounkov和David Mazières发表了一篇论文,提出了一种真正去中心化的“点对点”下载模型,他们称之为Kademlia方法。2005年,BT软件开始引入这项技术,在BT中称为DHT(分布式哈希表)。DHT是一种分布式存储方法。DHT的功能是找到正在下载(上传)与本机相同文件的对等机。当然,这个过程不依赖于Tracker服务器。DHT网络中的每个客户端负责小范围的路由和存储一小部分数据,从而实现整个DHT网络的寻址和存储。这种信息获取方式保证了全网没有单一中心。即使一个节点离线,它仍然可以通过其他节点获取文件,因此不需要Tracker服务器告诉您其他节点的位置。
PEX:对等交换的简称,我们可以理解为“节点信息交换”。虽然DHT解决了分散化的问题,但是PEX对于在没有“中心协调器”的情况下实现高效寻址是必要的。PEX提供的功能有点类似于以前的跟踪服务器,但它们的工作方式非常不同。我们可以举个例子来说明这一点。小昭在A班,她不认识B班的小何,也不认识C班的小温,但小昭认识B班的小王,小王可能也认识C班的小温,或者小王只认识B班的小何,但小何认识C班的小温,小温认识他所有的同学。因此,无论如何,小昭都可以“无限地”扩展他的网络。
磁铁链接:有网友称之为磁链。DHT+ PEX解决了BT“寻址”的问题,但是如何告诉BT客户端要找的是另外一个问题。Torrent文件中包含的内容是用户真正想要下载的文件的特征信息,或者称之为“电子指纹”。BT客户端知道要找什么,怎么找,所以实现了P2P模式下的下载和上传。在过去,BT客户通过Torrent文件了解他们正在寻找什么。现在,文件的“电子指纹”不是存储在Torrent中,而是存储在Magnetlinks中。磁铁:?XT = URN:BTIH:CBCDEFGHIJKMnOPQrStuvWXYZ 12345678以上是我打算下载的一个文件,微软iSCSI启动器。按照之前的方法,我们需要先下载它的Torrent文件,再下载文件本身。然而,在新的模式下,我们不需要下载种子文件,只需要知道它的磁铁URI,一个资源位置信息,其他一无所知。只要告诉下载软件这个地址,软件就会自动开始下载。我们来分解一下这个地址:磁铁:协议名称。XT:exact topic的缩写,代表资源锚点。BTIH(BitTorrent Info Hash)表示哈希方法的名称,这里也可以使用SHA1和MD5。这个值是文件的标识符,是必不可少的。dn:display name的缩写,代表显示给用户的文件名。这是一种选择。tr:tracker的缩写,表示tracker服务器的地址。这是一个选项,在本例中没有出现。为了简化上面的例子,只需要磁铁:?XT = urn:btih:dbdefghijklmnopsrstuvwxyz 12345678就够了,如果加上dn(显示名称)会更方便使用。MagnetLink的好处不用多说,至少包括两点:网络的可靠性大大增强;没有被“拔掉”的风险。因为没有所谓的中心节点,复习会变得更加困难,“单点不及格”的问题也就不存在了。另外,MagnetURI只是一个字符串,非常容易传播,根本无法禁止。因此,磁铁URI取代追踪器模式将是大势所趋,迟早会成为主流的BT下载模式。
细心的网友可能在DHT+PEX+磁铁链接模式中看到了一个问题————BT客户端是如何“迈出第一步”的,套用介绍PEX时用过的例子,就是小昭是如何“加入”A类的?这确实是个问题。为了解决这个问题,我们仍然需要一个boots trap节点,但是这个服务器的作用与Tracker的作用不同。它只负责接纳小昭进入A班,当小昭“追上”A班的学生时,这个服务器用处不大。Boots trap节点可以由不同的BT客户端厂商独立运营,也可以由几家公司联合使用。简而言之,就是去中心化。只要在客户端软件中内置一个表单,客户端就会有很多入口可供选择。说了这么多,磁铁的性能如何?不管是骡子还是马,总要拉出来遛遛。于是笔者找到了已经支持Magnet的BT客户端μTorrent。μTorrent是众多BT客户端中的一个。在安装过程中,我们可以看到它已经支持磁铁URIs。μTorrent下载BT资源的速度是144.4KB/s/s,我们下载的资源来自海盗湾,所以对面的资源都是国外的。如果Magnet完全“本地化”,用户数量达到一定规模,其性能应该完全可以媲美传统的BT下载方式。看到这里,相信你已经明白为什么海盗湾乖乖的关闭了他们的BT追踪器服务器了。看来美国电影协会和RIAA这次对海盗湾第一轮赢了,但接下来如何处理DHT+PEX+磁铁链接模式应该是个头疼的问题。在电影《捉迷藏》中,警察和“海盗”打游击战。海盗湾的BTTracker服务器也曾经有过类似的经历——从一个国家搬到另一个国家,躲在不同的IDC里,但是版权组织始终坚持下来,最后成功了。后来,在同一时间,我们碰巧听到了三个声音。版权组织说我们赢了。海盗湾说,我们不和你玩;围观群众说,BT还好。那两个家伙这些年都在干什么?网民放弃追踪器模式转而使用磁铁几乎没有成本。他们只需要升级目前的BT软件,甚至操作习惯都不会改变,因为你不需要换其他BT软件。在中国,bitspirit和Bitcomet已经开始支持Magnet。所以,你可能已经进入了BT2.0时代,只是你还不知道而已。“我们不提供实体下载资源,所有资源都是网友自发上传的……”相信你会经常听到类似的借口。这句话从技术角度看似乎很有道理,没有漏洞,但感觉有些诡辩。事物是不断发展的,这就导致了监管的缺失。当监管手段越来越完善的时候,事情又可能向前发展,导致监管手段再次落后。新的BT共享方式“分解”了传统Tracker服务器提供的功能。所有的BT用户都成为追踪者服务器的一部分,核心消失。在这种情况下,版权组织应该把反盗版的大棒挥向谁?