标题：磁力链接
特点
众所周知，BT下载速度不够稳定，当断种时则无法完整下载。但是，这还不是最严重的。从去年年底开始，BT下载遭遇到了“更大的困难”——很多的BT服务器被关，不仅很多种子文件无法找到，BT Tracker服务器也断开解析工作，这就使得BT下载成为很大的难题。磁力链接很好地解决了这个问题。磁力链接的问世与大行其道，标志着BT 1.0时代已经过去，BT 2.0 时代已经到来。　　
深刻理解磁力链接
简单地说，磁力链接是一种特殊链接，但是它与传统基于文件的位置或名称的普通链接（如http://xxx）不一样，它只是通过不同文件内容的Hash结果生成一个纯文本的“数字指纹”，并用它来识别文件。它类似于生活消费品包装上常见的条码，不同的是这个“数字指纹”可以被任何人从任何文件上生成，这也就注定了磁力链接不需要任何“中心机构”的支持（例如：BT Tracker服务器），且识别准确度极高。因此任何人都可以生成一个Magnet 链接并确保通过该链接下载的文件准确无误。
更简单地说：类似【magnet:?xt=urn:sha1:YNCKHTQCWBTRNJIV4WNAE52SJUQCZO5C】这样以“magnet:?”开头的字符串，就是一条磁力链接，其在网页上的图标通常如图1所示，像一块磁铁，很容易辨别。[1]
角色
在传统的BT下载方式中让各个下载者之间相互联系，有2种途径：
1、通过连接BT种子中记录的BT Tracker服务器，获取下载者列表
2、利用BT种子中记录的“数字指纹”通过DHT网络进行搜索，获取下载者列表
（不过现实是，存活的BT Tracker服务器越来越少。而BT种子文件也需要服务器保存。）
我们假设“BT Tracker服务器连接不上了，BT种子文件服务器也被干掉了。。”
那么显而易见的是第1种途径完全走不通，第2种途径只能帮你“寻找”，却没办法知道你在寻找什么。
“磁力链接”的主要作用就是把“数字指纹”告诉DHT网络，你需要寻找什么。
下载
下载举例
举例来说，今天的热门下载文件是Inglourious.Basterds.DVDRip.XviD-iMBT.avi，按照以前的方式，我们需要 下载它的torrent文件，然后才能下载这部电影本身。但是，在新的模式下面，我们不需要下载torrent文件，我们只需要知道它的magnet URI，就可以了。只要把这个地址告诉下载软件，软件就会开始自动下载。这和emule下载非常相似，只需要一个资源定位信息，其他都不需要。
Inglourious.Basterds.DVDRip.XviD-iMBT.avi的magnet URI如下：
magnet:
?xt=urn:btih:60c423137f453492ca34c2d69f6f573408dca35a
&dn=Inglourious.Basterds.DVDRip.XviD-iMBT.avi
&tr=http%3A%2F%2Ftracker.publicbt.c*m%2Fannounce
分解一下这个网址：
magnet ：协议名。
xt ：exact topic的缩写，表示资源定位点。BTIH（BitTorrent Info Hash）表示哈希方法名，这里还可以使用SHA1和MD5。这个值是文件的标识符，是不可缺少的。
dn ：display name的缩写，表示向用户显示的文件名。这一项是选填的。
tr ：tracker的缩写，表示tracker服务器的地址。这一项也是选填的。
简单说，只要知道magnet:?xt=urn:btih:60c423137f453492ca34c2d69f6f573408dca35a这个地址，不用下载torrent文件，也不用再了解其他信息，就能开始BT下载这个文件了。[2]​
问题
前面我们说过，“磁力链接”是通过DHT网络来索引需要下载的文件的，因此在某些环境下可能出现“获取磁力链接信息”时间较长，或者获取失败的问题。由于目前相关问题经验的积累很少，因此除了重试还没有明确的解决办法。[1]​
BT历史
20世纪60年代，美国国防部高级研究计划署（ARPA）提出要研制一种崭新的、能够适应现代战争的、生存性很强的网络，目的是对付来自前苏联的核进攻威胁。翻看一下历史就能知道，苏联当时把全球第一颗人造卫星送上了太空，美国感觉到了压力，于是他们随后也搞出了另一个足以改变未来世界的东西——ARPANET，当今互联网的雏形。
ARPANET的宗旨之一是去中心化，原因很简单，存在中央节点无异于存在致命节点，单点失效，将导致整个网络功能失效。互联网上依靠中央节点才能正常工作的应用其实不在少数，比如我们再熟悉不过的BT。也许你会说：BT不是P2P下载吗？而P2P是没有中心节点的，我们所下载的文件实际上存放在每个网友的电脑中，像FTP这样的应用才是经典的中央节点应用——这话只说对了一半，BT是P2P应用没错，但如果说BT没有中心节点，不会出现“单点失效”，这种看法其实是错误的。仔细想一想，BT真的不需要中心节点吗？如果是，那为什么国内BT站点关闭后会给下载BT资源带来不便，甚至出现BT客户端无法工作的情况？答案只有一个，BT并非一个去中心化的应用。 
那BT的“命门”在哪呢？也许你听说过BT Traker服务器。而这个BT Traker服务器也就是目前我朝有司大力打击BT下载站的重要和主要罪证之一，因为这个服务器的存在，且不管技术手段如何，从表面特征上看来，这些网站如同直接提供视频内容一样。正是因为这个服务器的存在，成了这些BT站点供认不讳的证据。滔天罪恶，证据确凿：“你们提供中心下载的服务器，上面全是未经许可的视频内容”。[2]​
BT发展
海盗湾关闭跟踪服务器的消息BT Tracker服务器关闭将会产生怎样的后果？（海盗湾，英国电信江湖排名第一，Mininova排名第二）
海盗湾（The Pirate Bay），自称“世界上最大的电信分享网站“，是一个专门存储，分类及搜索电信资源的网站，同时它也运行着世界上最大的BTTracker服务器。2008年11月15日，海盗湾称其规模已经达到了2500万独立Peers，注意不是种子，Peer可以认为是参与海盗湾“分享计划”的实际用户（电脑）数量，截至2009年12月，海盗湾注册用户已经达到400万，尽管下载资源是不需要注册的。但它的名声似乎不是很好，洛杉矶时报（Los AngelesTimes）称其是世界上最大的非法下载辅助者（帮凶？）之一。海盗湾正式成立于2004年10月，除了拥有辉煌的“业绩”，同时也麻烦缠身。根据记录，控告海盗湾的案件有34起之多，其中涉及音乐行业的21起、电影行业9起、游戏行业4起。2009年成为斗争最激烈的一年，2009年4月17日，瑞典斯德哥尔摩的法院以侵犯版权罪判处海盗湾4名创始人各1年的监禁，并处以约3000万瑞典克朗的罚金。随后发生的事情更让人感觉BT的“大限”终于还是到了。11月17日，海盗湾决定永久关闭他们的Tracker服务器，12月初全球第二大BT服务网站Mininova删除了网站上大部分非法文件的BT Tracker。Mininova表示，为了避免支付罚款，除了删除所有侵权文件的BT Tracker之外，他们别无选择。有人比喻，一个时代结束了，MPAA（美国电影协会）和RIAA（美国唱片行业协会）成了这场斗争的赢家。表面上看确实如此，在这场斗争中MPAA和RIAA最想“除掉”的就是BT Tracker服务器，而且他们做到了。
也许一个时代结束了，但BT时代真的结束了吗？答案是否定的。MPAA和RIAA“除掉”了BT Tracker服务器，卡死了当前BT工作方式的“命门”，但随着新技术的引入，BT Tracker对于BT分享已经变得不再重要，甚至有些多余，事物的发展结果有时就像是开了一个玩笑，而这次的玩笑就开在了MPAA和RIAA身上。为什么会这样？想搞明白这些，我们必须先梳理一下BT分享的实现方式。
用户是怎样通过BT下载文件的？基本过程应该是这样：一、找到Torrent文件，二、使用BT下载客户端软件打开这个文件。三、对于用户来讲，只要花时间去等就可以了。而对于客户端软件来讲，它会根据Torrent文件中的网址自动连接Tracker服务器，从它那里接收到其他正在下载该文件的人的网址名单。下一步，软件就一一与名单上的网址取得联系，从它们那里获取文件的片段，直到整个下载完成。从整个过程不难看出，BT Tracker服务器是一个中央节点，任何客户端都可以在其上找到“同伴”——只要其他人也在下载或分享同一个文件。所以MPAA和RIAA盯上了BT Tracker，因为消灭所有Torrent文件几乎是不可能的，但通过一些“努力”，消灭BT Tracker服务器则完全有可能实现。官司赢了，一个时代结束了，我们不妨称其为是BT1.0时代，BT1.0时代致命的缺点是因为其存在中央节点，也就是BTTracker服务器。然而，官司输了，并不代表整个BT时代的终结，一个新的时代已经悄然开始，我们可以称其为BT2.0时代。
在BT2.0时代，Magnet（意译：磁铁、吸铁石）成为未来BT的发展方向，Magnet真的可以挽救BT吗？经笔者亲身试用，在支持Magnet URI之后，海盗湾似乎获得了新生，下载速度并非越来越慢，相反，速度表现让人满意。最关键的是，Magnet不需要Tracker服务器，也不需要Torrent文件，仅需要一串字符就可以进行文件下载。海盗湾LOGO与未来BT的“图腾”，海盗湾上的BT资源已经加入了Magnet下载方式Worlds most resilient tracking——节选自海盗湾博客博文的题目是“世界上最稳定的tracking”，文中提到：“随着DHT+ PEX技术的不断成熟，发现对端（Peer）并协调通信已经变得容易实现，而Tracker服务器变得不再重要，甚至显得有些多余，所以我们将关闭服务器。”文中还说服务器现在被安置在了一家博物馆中。看来，关闭Tracker服务器是计划之内的事情。一切尽在掌握？Tracker服务器和“BT种子”即将双双退役，取而代之的是DHT+ PEX网络和Magnet Link，DHT网络是分布式存在的，所以不存在“被拔线”的问题，而Magnet Link仅是一串字符，所以也不再需要Torrent文件。
这里出现了三个关键词：DHT、PEX和Magnet Link，这三点是未来BT的核心，下面我们就来说一说它们都可以实现怎样的功能。
DHT：2002年，纽约大学的两个教授Petar Maymounkov和David Mazières发表了一篇论文，提出了一种真正去中心化的“点对点”下载模型，他们将其称为Kademlia方法。2005年，BT软件开始引入这种技术，在BT中被称为DHT协议（Distributed HashTable，分布式哈希表）。DHT是一种分布式存储方法。DHT的作用是找到那些与本机正在下载（上传）相同文件的对端主机（Peer），当然，实现这一过程并不依赖Tracker服务器。在DHT网络中的每个客户端负责一个小范围的路由，并负责存储一小部分数据，从而实现整个DHT网络的寻址和存储。这种信息获取方式保证了整个网络没有单个的中心，即使一个节点下线，依然可以通过其他节点来获取文件，因此也就不需要Tracker服务器来告诉你，其他节点在什么地方。
PEX：是Peer Exchange的简写，我们可以将其理解为“节点信息交换”。虽然DHT解决了去中心化的问题，但要在没有“中心协调员”（Tracker）的情况下实现高效寻址，就要借助PEX。PEX所提供的功能有点类似于以前的Tracker服务器，但工作方式却非常不同，我们可以打个比方来说明。小赵在A班，她不认识B班的小何，也不认识C班的小温，但小赵认识同班的小王，而小王认识B班的小何，也可能还认识C班的小温，或者小王仅认识B班的小何，但小何认识C班的小温，而小温又认识同班的所有同学，结果就是小赵可以“无限”地延伸自己的关系网，不管怎样，总有一条沟通途径可以将这些同学联系在一起，待小赵“认识”了小温后，他们就可以直接沟通了，在P2P世界里，就是进行上传与下载。
Magnet links：有网友将其称为磁链。DHT+ PEX解决了BT“寻址”的问题，但是如何告诉BT客户端找（寻）什么又是另外一个问题。在Torrent文件中包含的内容就是用户真正要下载的文件的特征信息，或称为“电子指纹”，BT客户端知道了要找什么，也知道如何去找，于是P2P方式的下载、上传就实现了。以前BT客户端通过Torrent文件得知“要找什么”，现在，文件的“电子指纹”不再存放于Torrent中，而被放在了Magnetlinks中。 magnet:?xt=urn:btih:36684b463ca2aa2f9347b18e9f6b1a9090bdb073上面是笔者打算下载的一个文件，Microsoft iSCSI Initiator，按照以前的方式，我们需要下载它的Torrent文件，然后才能下载这个文件本身。但是，在新的模式下，我们不需要下载Torrent文件，只需知道它的Magnet URI，一个资源定位信息，其他都不需要。只要把这个地址告诉下载软件，软件就会开始自动下载。我们来分解一下这个地址：magnet：协议名。xt:exact topic的缩写，表示资源定位点。BTIH（BitTorrent Info Hash）表示哈希方法名，这里还可以使用SHA1和MD5。这个值是文件的标识符，是不可缺少的。dn：display name的缩写，表示向用户显示的文件名。这是一个可选项。tr：tracker的缩写，表示tracker服务器的地址。这是一个可选项，本例中并未出现。精简一下上例，仅需要magnet:?xt=urn:btih:36684b463ca2aa2f9347b18e9f6b1a9090bdb073就够用了，如果附加dn(displayname)，在使用上会更加方便一些。MagnetLink的好处就不用笔者多说了，至少包括两点：网络的可靠性得到了极大的增强；不存在“被拔线”的风险。由于不存在所谓的中央节点，审查将变得更加困难，“单点失效”的问题也就不存在了。此外，MagnetURI只是一个字符串，非常容易传播，根本无法禁止。因此，Magnet URI取代Tracker模式将是大势所趋，迟早会成为主流BT下载方式。　
细心的网友可能看出了DHT+PEX+Magnet Link模式中的一个问题——BT客户端的“第一步是如何迈出的”，套用在介绍PEX时使用的例子，那就是小赵是怎么“加入”A班的呢？这确实是个问题。解决这个问题依然需要一台服务器（boots trap node），不过这台服务器所起的作用与Tracker不同，它仅负责接纳小赵进入A班，当小赵与A班中的同学“搭上了话”，之后这台服务器就没有什么用处了。boots trap node可以是不同BT客户端厂商独立运营的，也可以是几家联合共用，总之，它是分散的，只要在客户端软件中内置一张表单，那客户端就将有非常多的入口可供选择。　说了这么多，到底Magnet这块“吸铁石”表现如何？是骡子是马总要拉出来溜溜。于是笔者找来了目前已经支持Magnet的BT客户端μTorrent。μTorrent 是众多BT客户端之一，在安装过程中我们可以看到，它已经支持Magnet URIs。μTorrent 下载BT资源，速度144.4KB/s 我们下载的资源来自海盗湾，所以对端资源都来自国外，如果有一天Magnet被彻底“本土化”，且用户量达到一定规模，其表现应该可以完全媲美传统的BT下载方式。看到这里相信您已经明白了，海盗湾为什么会乖乖地关掉他们的BT Tracker服务器，看来这次MPAA和RIAA与海盗湾斗法虽然胜了第一回合，但接下来要如何对付DHT+PEX+Magnet Link模式，这应该是个比较让人头疼的问题。 在《猫鼠游戏》这部电影中，警察与“盗版者”之间玩的是游击战。海盗湾的BTTracker服务器也曾有过类似的经历——在几个国家间迁来迁去，在不同的IDC中东躲西藏，但版权组织始终对其“不离不弃”，并最终得手。事后我们在同一时间，很巧合地听到了三种声音，版权组织说，我们赢了；海盗湾说，我们不跟你玩了；广大围观群众说，BT还好好的啊，这些年那两个家伙到底在搞什么？放弃Tracker模式，改用Magnet，对于网友来讲几乎没有任何成本，仅需将当前BT软件升级即可，甚至连操作习惯都不会发生任何变化，因为你无需换用其它BT软件，在国内，比特精灵、比特彗星都已经开始支持Magnet。所以，您可能已经进入了BT2.0时代，只是您自己还不知道。“我们并不提供实体下载资源，所有资源都是网友自发上传的……”相信您经常会听到类似的辩解，这句话看似有理，从技术角度讲也没有任何漏洞，但多少感觉属于狡辩。事物在不停发展，这就造成了监管上的缺失，待监管手段日趋完善时，事物可能又一次向前发展，导致监管手段再次落伍。新的BT分享方式将传统Tracker服务器所提供的功能进行了“分解”，所有BT用户成为Tracker服务器的一份子，核心消失了，在这种情况下，版权组织又该将反盗版的大棒挥向谁呢?[2]​