计网学习笔记九.P2P

目录

原理与文件分发

BitTorrent

索引技术

集中式索引

洪泛式查询: Query flooding

层次式覆盖网络

案例应用:Skype


原理与文件分发

 

 

问题 : 从一个服务器向N个节点分发一个文件需要多长时间?

如果CS架构,把文件(F大小)上传到服务器时间d1,服务器向N个客户端下载(速度u)需要N*F/u,这是串行的,时间随客户端数量线性增长。

如果P2P架构,把文件(F大小)上传到服务器时间d1,服务器向N个客户端下载(速度u)需要N*F/u,但客户端相互之间可以分发,是并行的,速度肯定要快,不会随客户端数量线性增长。

分发文件计算公式

cs结构的时间,跟时间复杂度一样,只看影响时间的最大因素,所以再两者找出最大时间,而不是相加。

这个有疑问?P2P,这思路应该是想,一个客户端下载了文件,剩下的客户端互相下载,时间近似可看为NF/(us+u1+u2+...ui),近似认为客户端之间同时并发传输文件,那为什么不是NF/(us+d1+d2+...di),为什么要用传输速度

 

BitTorrent

每个用户会积累一些chunk块, 每个用户都得有点文件,让其他用户下载。

chunk轮询附近用户节点的chunk列表,优先下载稀缺资源,以防止拥有稀缺资源用户退出。同时他也会将本节点的chunk不断轮询的往其他节点发送,轮询下载和发送,相当于一直占用带宽。

很明显BitTorrent这种方式节省了应用server的带宽,但耗费了用户的带宽,所以有些公司禁用BitTorrent。

索引技术

索引找到节点所在ip端口,比如qq一会电脑登录一会qq登录,要告诉server客户端的位置,server索引负责确定client位置。

集中式索引

server统一维护索引

洪泛式查询: Query flooding

假设一个节点和三个节点保持tcp连接,此节点想找一个文件,就向三个节点发消息, 这三个节点再向他们所连接的节点 发送消息,一直发下去直到找到文件,原路返回。

这样过于占用网络。

层次式覆盖网络

客户机和一个超级节点维护连接,某些超级节点在互相之间维护。跟路由器维护路由下的局域网一样。

案例应用:Skype

  • 0
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值