电脑装配网

BT种子和磁力链接是如何工作的

 人阅读 | 作者yiyi | 时间:2023-05-29 15:07

如果大家想要下载一个具有付费权限的文件,大家会怎么做呢?最简单的方法当然是找一个有资源的哥们儿,让他把这个文件分享给你。早期互联网大家就是这么共享文件的,但是这样也有很多问题,比如下载的人一多每个人分享到的下载带宽就变小了,下载速度就会变的很慢。更危险的是这个文件是版权资源,你的这个哥们儿本来就不应该分享给你。如果你的这个哥们儿被抓了,大家也都别下载了。

针对上面苍鹰提到的这些问题,美国软件工程师布莱姆·科恩(Bram Cohen)在2001年4月设计了BitTorrent 文件共享协议,BitTorrent 文件共享协议的原理是资源不再由一个人或一个中心服务器提供,而是由所有人提供给所有人,这样下载的人越多下载速度也就越快。这种模式也叫pear to pear,也就是我们现在常说的P2P下载。

BitTorrent的核心思想是把文件分割成很多个小块让下载者互相连接,苍鹰这里以一个117.3MB的文件为例,被分割成了895个128KB的文件块后,下载了第20块的用户A就可以和下载了第11块的用户B交换彼此下载好的部分,参与的人越多文件块互相交换的就越密集,下载速度也就越快。为了做到这一点,BitTorrent协议需要资源共享者生成一个包含下载信息的种子文件,这也就是现在大家常说的BT种子,文件格式为torrent。

这个种子文件包含文件的名称、大小、分块后每块文件的大小、哈希值以及tracker服务器的地址,tracker服务器在这里很重要,通过tracker服务器我们才能找到其他在线的下载者。当你用下载软件打开这个种子文件就会开始联系种子文件里内置的tracker服务器,服务器会记录下你的网络IP并把其他正在下载或下载完的人的网络IP返回给你,这样大家就可以愉快的组队下载文件了。但是如果没有找到正在下载的人或者资源发布者不在线,那么你就只能以0KB/s的下载速度等待了,不难发现tracker服务器是BitTorrent协议的弱点,如果tracker服务器被关闭或封禁就无法下载这个文件了。

为了摆脱对tracker服务器的依赖软件工程师对种子文件进行了改进,也就是今天最流行的下载方式磁力链接或磁力种子,通常是一串的神秘代码,前面的代码都是标准格式,最重要的是后面的40个十六进制的数字。任何文件丢进哈希算法都能得到一串40位十六进制的字符,大家可以把它当成一个文件ID。它能帮我们找到我们要下载的东西,磁力链接的本质是把所有下载的人都变成一个tracker服务器,每个人都拿着一份动态更新的地址和文件信息。

这些天才们的设计让我们拥有了一个无法被审查和追踪的去中心化网络,这催生了庞大的盗版软件产业,让很多内容有机会避开审查,因为网站可以被隔离、被拔线、被禁止访问,但种子文件不会,只要种子文件不死,那些不存在的音乐、图片和视频就还活在互联网上,没有任何人可以毁掉。


文章标签:

本文链接:『转载请注明出处』