torrent种子搜索引擎 torrent种子怎么打开( 二 )


还是拿抄作业这个例子来说 , 学霸的第二个方案就是一个很典型的 P2P 模式 。他将自己的作业分成填空、选择、单选、多选等部分 , 然后分别送给 6 个人 , 这样当每个人都有自己的一部分副本后 , 就可以不用再找学霸本人要作业了 , 直接找其他拥有和自己副本不同的人索取然后互换资源即可 。
在互联网 , P2P 模式也有一个非常重要的 , 乃至影响了所有 LSP 的应用 , 即 BitTorrent , 也就是本文开篇所说的种子 。
BitTorrent 协议维基百科对 BitTorrent 的解释是:
BitTorrent 协议(简称 BT , 俗称比特洪流、BT 下载)是用在对等网络中文件分享的网络协议程序 。和点对点(point-to-point)的协议程序不同 , 它是用户群对用户群(peer-to-peer) 。
BitTorrent 协议是架构于 TCP/IP 协议之上的一个 P2P文件传输通信协议 , 处于 TCP/IP 结构的应用层 。
简而言之就是 BitTorrent 是一个用来传输文件的协议 , 和第二个抄作业案例的特性类似 , 该协议的特点是 , 用户越多 , 即下载同一文件的人越多 , 下载该文件的速度越快 。且下载后 , 继续维持上传的状态 , 就可以“分享” , 成为其用户端节点下载的种子文件(.torrent) , 同时上传及下载 。
在大多数人感觉中 BitTorrent 与 P2P 成了对等的一组概念 , 而它也的确将 P2P 技术发展到了近乎完美的地步 。
原理介绍完 BitTorrent 协议后 , 我们来说说他的原理吧 。
其实和学霸将作业分成选择题、填空题等给其他人抄的道理一样 , BitTorrent 协议也是将需要下载的文件虚拟分成大小相等的块 , 这些块的大小被要求成 2k 的整数次方(由于是虚拟分块 , 硬盘上并不产生各个块文件) , 并把每个块的索引信息和 Hash 验证码写入 .torrent 文件(即种子文件 , 也简称为“种子”)中 , 作为被下载文件的“索引” 。下载者要下载文件内容 , 需要先得到相应的 .torrent 文件 , 然后使用 BT 客户端软件进行下载 。
而.torrent 文件其本质就是一张信息清单 , 存储了一些信息 , 如下图所示 , 其中就包括了文件大小、哈希值、tracker 地址等信息 。
下载时 , BT 客户端首先解析 .torrent 文件得到 Tracker 地址 , 然后连接 Tracker 服务器 。Tracker 服务器回应下载者的请求 , 提供下载者其他下载者(包括发布者)的 IP 。或者 , BT 客户端也可解析 .torrent 文件得到 nodes 路由表 , 然后连接路由表中的有效节点 , 由网络节点提供下载者其他下载者的 IP 。
下载者再连接其他下载者 , 根据 .torrent 文件 , 两者分别对方告知自己已经有的块 , 然后交换对方没有的数据 。此时不需要其他服务器参或者其他网络节点的参与 , 分散了单个线路上的数据流量 , 因此减轻了服务器负担 。
下载者每得到一个块 , 需要算出下载块的 Hash 验证码与 .torrent 文件中的对比 , 如果一样则说明块正确 , 不一样则需要重新下载这个块 。
因此 , 下载的人越多 , 提供的带宽也越多 , 种子也会越来越多 , 下载速度就越快 。
如下图所示:
从 BT 客户端角度考虑 , 下载原理分为以下几步:
1.根据 BitTorrent 协议 , 文件发布者会根据要发布的文件生成提供一个 .torrent 文件 。客户端可从 Web 服务器上下载种子文件 , 并从中得到 Tracker 服务器 URL 。2.根据 Tracker URL 与 Tracker 服务器建立连接 , 并从服务器上得到 Peers 信息 。3.根据 Peers 信息与一个 Peer 建立连接 , 依据 Peer wire 协议完成握手 , 并从 Peer 端下载数据文件 。同时监听 Peer 的连接 , 并给 Peer 上传数据文件 。


以上关于本文的内容,仅作参考!温馨提示:如遇健康、疾病相关的问题,请您及时就医或请专业人士给予相关指导!

「四川龙网」www.sichuanlong.com小编还为您精选了以下内容,希望对您有所帮助: