peer优选是否有效

peer优选的策略

在一个p2p系统中,我们总是希望下载方能够得到更好的peer以提高下载速度和成功率。基于这个出发点,有一种peer优选的策略:

1. 找出上传速度超强的peer,叫他超级peer。实际操作过程中,我们选择的peer必然是上传带宽不错,并且本地缓存资源多,总是被选中进行上传的。

2. 适当的让下载方更多的去连接这些上传能力超强的peer。

从微观上讲,下载方拿连上了超级peer,下载速度将更快。但从宏观的角度上看,如果超级的上传能力已经达到上限,那么这样的策略并不能加快下载速度。超级peer的上传能力是否已经达到上限,我的理解是,如果他能再快点,他为什么不再快点呢?我们选择超级peer的原则是基于该peer上传速度很快的结果,而不是他还有更多的上传能力。我们分情况来分析超级peer的上传问题:

1. 瓶颈在下载方。那么为这些下载方提供再好的超级peer于事无补。

2. 瓶颈在上传方。那么说明这些超级peer已经达到上限,让其承担更多的上传任务不现实。

3. 瓶颈在中间的链路上。这个可以分两种情况,一是瓶颈链路离上传方近,那么情况同2。另外一种情况是瓶颈链路离上传方远,那么对于单条链接来说,这种情况导致上传方的能力没有充分施展,但是我们的超级peer都是多线程多连接并发上传,中间路由器的瓶颈问题必然被消弱。

以上三种情况只有第3种的一部分可能还有一点榨取价值。所以,peer优选不是一个有较大空间的策略,微观上很直观的,宏观一看其实不是这样。对于超级peer,我们不需要去寻找他,我们找与不找,他就在那里,为上传做出贡献。就像我们可以找出大桃子来,但并不会增加桃子的产量一样。即便单独拿一部用户做ab测试,证明,使用超级peer下载的用户更快,这个结论也不适用于所有用户。


超级peer培养

我们对所有的peer按两个维度分类,上传能力和上传资源,上传能力是用户上传带宽的极限,上传资源是指上传方有较多的资源供下载方来下载,极端的例子是peer有超强的上传带宽,但是他本地没有可上传的资源。更多的上传资源本身也意味着他被选中的概率更大。

上图中的B区域,正是我们超级peer策略中的寻找出的超级peer,上文也说明再去压榨他们空间不大,也不道德。C和D区域也压榨不出东西来,但是A区域其实是可以考虑的。如果我们让A区域的用户都往B区域转移,那么肯定是能够提升p2p的上传能力。但是这个策略目前有以下几个问题:

1. A、B、C、D 四个区域的peer数并非均等。以往的数据表明B区域的peer数只有10%。对于A区域到底有多少用户还不知道,如果极少,那么就宣布这个思路失败。

2. 让A区域的用户拥有更多的上传资源意味着他要偷偷的下载一些对他来说的垃圾文件。



peer配对

这个思路来源于福真,这里以个人理解的方式描述一下。

上文中我们按两个维度来来划分peer,这个模型其实存在一个问题,就是上传能力实际不是一成不变的。极端一点的例子是,对于互联网,peer的上传能力可能是128k,但是在局域网内,他的上传能力是100M。不同的ip地址段之间也可能有这样的规律,是否相近的ip地址段连接更好?不同的地理位置,不同的网络管理员的设置偏好,不同的利益诉求等等,都可能会导致peer的上传能力的不一样。如果我们能找到合理的配对算法,那么可以提高上传能力,这是一个寻找增量的思路。

这个算法的基本思路是用一个矩阵来存储ip地址段与ip地址段的联通性。服务器根据ip地址段的联通性来为peer分配策略。ip地址段之间的联通性来自于对传输数据的分析,定期更新。






评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值