P2P文件分发
学习原则: 无实践不学习理论。 P2P文件分发根本没见过,就先不学。 概念介绍 对等方:成对间歇连接的主机 洪流(torrent):参与一个特定文件分发的所有对等方的集合 追踪器(tracker):每个洪流具有一个基础设施结点 邻近对等方:成功创建一个TCP连接的对等方 P2P体系结构的拓展性 客户端-服务器体系结构与P2P体系结构比较,得出如下结论: 客户端-服务器体系下,分发时间随着对等方数量线性增加 P2P体系下,分发时间呈线性增长而趋向一个常数,若F表示分发的文件比特数量,u表示所有对等方具有的相同上传速率,则这个常数为F/u。 最为流行的P2P协议是BitTorrent,迅雷的种子下载就属此列。 BitTorrent 当一个对等方加入某洪流时,它向追踪器注册自己,并周期性地通知追踪器它仍在该洪流中。 工作过程 假设有一个新的对等方Alice加入一个洪流 追踪器随机地从参与对等方的集合中选择对等方的一个子集(比如50个)并将这50个对等方的IP地址发送给Alice,Alice拥有了一个IP地址的列表 Alice与列表上的所有对等方创建TCP连接,成为邻近对等方 Alice周期性的询问每个邻近对等方他们所具有的块列表。 对当前自身没有的块信息,Alice发送请求获取(最稀缺的块,优先级最高请求) 向哪些向她请求的块的邻居发送邻居没有的而自己有的块信息