分层媒体的数据分配策略

摘自http://blog.csdn.net/blade_windbell/article/details/1645633

P2P分层流媒体中数据分配算法 (刘亚杰, 张鹤颖, 窦文华, 陈俊峰) 2007-6-9

这篇文章也是就多对一传输模式下的数据指派问题进行了研究。和pals的那篇文章一样,他也是针对层编码,不同的是pals中是针对报文进行调度,而这篇文章是针对数据层的调度。用作者的话说,一个是细粒度调度,一个是粗粒度调度。

文中分两种情形研究了数据分配的问题,一种是服务器不参与,另一种是服务器参与。对于前者,目标是尽可能使最多的数据层得到分配;对于后者,目标是在满足请求的前提下,使服务器资源占用最少。

对于服务器不参与的情形,作者提出了两种算法,第一个算法中,作者首先构造了一棵树,然后对这棵树进行搜索剪枝,最终得到分配最多数据层的一条路径。然后作者证明这个算法能得到最优解,但是复杂度太高,于是提出了第二个算法,启发式的近似算法:首先把所有层按层号从低到高排列,对于每层,先选出一个能服务它的集合,在从这个集合中选中上行带宽最小的,如果有多个,再从中选出缓存层数最少的。如果还有多个呢?作者就没说了,还有,为什么他是先选带宽最小的,再选层数最少的?而不是反过来呢。

对于服务器参与的情形,算法是这样的:把所有层按照码率从大到小排列,对于每层,先试着分配给那些peer,如果没有满足条件的,就分配给服务器。唉,这些算法,经俺一说,咋都这么简单呢?计算机果然是笨人就能胜任的东西。

综观全文,作者用了很多形式化描述,把两种情形都归越到了np难问题。这些做法很对软件学报的胃口。发现中国人总是喜欢往np上面靠,读英文文章时,一看np完全或者np难,翻到前面一看作者,十有八九都有中国人在里面。总的来说,这篇文章给人的感觉还是不错的。


你可能感兴趣的:(分层媒体的数据分配策略)