BitTorrent概述

BitTorrent是流行的分布式文件系统。基本上,BT中文件的共享过程如图4所示,可以按以下五个步骤描述:

1 Peer A与Web服务器交互并下载.torrent文件。
2 Peer A和其在*.torrent文件中找到的追踪者互动,并请求一组在Torrent网络中的对等方。
3 追踪者发送一组有具体数量的在Torrent网络中的对等方。
4 Peer A随机从名单中选择一部分参与者节点作为其邻居节点并建立与它们的联系
5 Peer A可以利用swarming技术和其邻居交换文件片段的数据。

在这里插入图片描述

在BitTorrent中,在分发每个文件时,会建立一个名为Torrent的覆盖网络。Torrent是由网络中的节点组成的,可以分为两种类型:seed和leecher。

Seed是具有文件完整副本的客户节点,leecher是下载文件的客户节点。除了seed和leecher之外,还需要Web服务器和跟踪器。如果一个节点想加入Torrent,它可以从Web服务器获取.torrent文件。这个文件包含文件的信息,包括名称、长度,哈希摘要和跟踪器的URL。追踪器是一个特殊的节点,它用来存储网络中其他活跃节点的元数据。一个节点可以和追踪器交互,然后获得网络中其他节点的ip和port数对的信息,然后可以随机的选择列表中的20-40个节点作为其邻居。

在BT中,swarming(一个文件交换技术)用来将文件分割成固定大小的片段,每段通常大小为256KB。当某一个片段被完全下载后,节点将该片段的SHA1哈希值与.torrent文件中的值进行对比。如果匹配,节点将对它的邻居们宣称这个完整片段的可用性,以便后续的文件交换和下载。

本文翻译自
[1]. Engineering; Studies from Sun Yat-sen University Further Understanding of Engineering (When Blockchain Meets Distributed File Systems: an Overview, Challenges, and Open Issues)[J]. Journal of Engineering,2020.

猜你喜欢

转载自blog.csdn.net/weixin_40986490/article/details/115005830
今日推荐