种子信息服务器,老司机揭秘:“种子”的前世今生

  • Post author:
  • Post category:其他


早些时期,文件下载一般都由专门的文件服务器作为下载源,统一对客户机提供下载服务。这种集中式下载方式存在着天然缺陷,当服务器宕机后,将会影响所有用户的下载;

另外,多客户同时进行下载,会因为服务器带宽有限,分配给每个客户机的网速很低,从而出现痛心疾首的状况。

867e35bb6f826ff8011dfa5c273b9a56.png

但随着互联网的迅速普及,文件数量和体积成指数增长,服务商已经无法承担无限扩增的服务器的成本,尤其对于一些媒体资源服务商,这种状况更加突出。

f07582b04afd7d79a5b53491be33c127.png

针对这些问题,美国工程师Bram Cohen在2001年发布了BitTorrent协议,资源不再由一个人或一个中心服务器提供,而是由所有人提供给所有人,下载的人越多,速度越快。这种模式也叫 peer-to-peer(用户群对用户群),也就是我们常说的P2P下载。

BitTorrent的核心思想是把文件分成很多个小块,让下载者互相连接。

以这个117.3MB的视频为例,被分成了895个128kB 的文件块后,下载了第306块的用户A就可以和下载了第11块的用户B交换彼此下载好的部分。参与的人越多,互相交换的就越密集,下载得越快。

为了做到这一点,BitTorrent协议需要资源共享者生成一个包含下载信息的种子文件,后缀是 .torrent,这就是我们常说的BT种子。

种子文件包含文件的名字、大小,分块后每块文件的大小、哈希值,以及Tracker服务器的地址。

当你用下载软件打开种子,就会开始联系种子文件里内置的Tracker服务器,告诉Tracker我要下载这个文件,服务器会记录下你的IP,并把其他正在下载或下载完成的人的IP返回给你,这样你们就可以愉快地组队下载了。

当然,如果没有找到正在下载的人,资源发布者也不在线,你就只能以0kb/s的速度等着了。

P2P下载方式以其诸多优势,碾压传统的集中式下载,迅速普及,先后出现多款P2P下载软件。随着用户量的激增,用户生态逐渐复杂,各类问题也相应出现。文件污染、版权问题、犯罪等问题,使得相关部门不得不对P2P网络下手,一些国家还逮捕了相关作者。

相关部门强制关闭了大量tracker服务器,导致很多资源都无法正常下载,P2P的下载方式也陷入了低谷。

为了摆脱对Tracker服务器的束缚,磁力链接(Magnet URI scheme)应运而生。

磁力链接是一种特殊链接,这种链接是通过不同文件内容的Hash结果生成一个纯文本的“数字指纹”,来识别文件的。但是它与传统基于文件的位置或名称的普通链接(如http://xxx)不一样,它只是通过不同文件内容的Hash结果生成一个纯文本的“数字指纹”,并用它来识别文件。而不是基于文件的位置或者名称。

磁力链使用很简单,直接将链接字符串复制到BT下载软件新建任务即可,比如迅雷、utorrent等工具,安装下载工具的,直接点击磁力链会自动识别下载种子地址来下载资源。

磁力链接是一种基于BT的另一种下载方式,不用解释太多,反正就是比Bt更方便了,以前还需要先下载Bt种子,然后打开种子才能下载,现在就一个磁力链接就解决了。

由于版权的问题,P2P网络从一开始就备受争议,版权组织和软件作者进行了一次次的交锋,从tracker服务器的关闭到磁力链接的诞生,这都是交锋后的产物。

但随着高速宽带的普及,浏览器等内置下载器的完善,版权保护越发正规、人们对版权更加重视,以及分享资源方式的改变,在线点播的普及,用户对于下载工具的需求逐步减少。这是大势所趋,而不会随个人主观意志而改变,“免费午餐”将会越来越少。