Page 348 - 《软件学报》2021年第9期
P. 348
2972 Journal of Software 软件学报 Vol.32, No.9, September 2021
∑ hop + hop
AverageHops = interest data (5)
2| Num total |
其中,hop interest 表示 Interest 请求所用跳数,hop data 表示 Data 返回所用跳数,Num total 指总请求数.
3.3 实验结果
3.3.1 缓存内容分布
前文分析已知:在缓存空间一定的情况下,能够在本地域内缓存的内容数量越多,缓存内容的热度越高,越
能高效响应用户的不同请求.本节分析了不同缓存策略下缓存内容的分布状态,内容总数为 1 000 000.根据 Zipf
分布定律,我们将热度排名为 1~1 000 的内容用黑色表示,代表最热门内容;排名在 1 000~10 000 的内容用灰色
表示,代表次热门内容;其他内容用白色表示,代表非热门内容.图 3 在真实拓扑上绘制了各个节点在不同缓存方
案下缓存内容分布状况.
(a) Prob(0.05) (b) OH (c) CSTC
Fig.3 Distribution of cache
图 3 缓存内容分布
从图 3(a)可以看出:Prob(0.05)策略下,各节点缺乏合理协作机制,最热门的内容在各节点上形成了大量冗
余,缓存空间被最热门的一小部分内容大量占据,次热门缓存数量极少,缓存多样性较差,缓存空间利用率较低.
这也印证了前文所述的 On-path 所存在的各种问题.图 3(b)展示了 OH 策略下各节点缓存状态,与 Prob(0.05)不
同的是:在该策略下,虽然有效避免了缓存冗余,缓存的多样性得到了极大的提升,但缓存的内容大多为非热门
内容,缓存内容的效用较差.
与前两种缓存机制相比,CSTC 缓存效果最为理想.如图 3(c)所示,各个节点对最热门内容产生适度冗余,在
次热门内容上缓存种类较多,有效避免了非热门内容对缓存空间的过量占据.这主要是因为 RawCache 的内容
热度感知保证了 HashCache 中缓存内容的热度,通过基于哈希的请求重定向,使得这些次热门内容的请求被汇
聚并稳定缓存到特定节点.
3.3.2 缓存大小的影响
缓存大小决定了缓存内容的多少,是影响缓存性能的重要因素之一.本节分析了不同缓存空间大小对缓存
性能的影响.我们设置的缓存空间大小变动范围为 500~7000,其他实验参数保持不变,观察请求命中率与平均传
输跳数的变化.
从图 4(a)可以看出,请求命中率随着缓存空间的增大而增大.CSTC 与 OH 两种策略在命中率上要显著高于
另外 4 种基于 On-path 的缓存策略,这得益于哈希映射机制有效降低了缓存冗余,提高了本地域内的缓存多样
性,从而使得更多的用户请求能在本地域内得到响应.从图中可以发现:CSTC 即使内容多样性不如 OH,但命中
率却大于 OH.这主要是因为 CSTC 基于热度感知使得缓存下的内容热度较高,能够在适当的位置被稳定缓存;
而 OH 虽然可能缓存下更多内容,但由于没有热度感知,使得缓存下的很多是非热度内容,这些内容将在缓存中
频繁进出,浪费缓存空间.同时我们发现:当缓存空间较小时,CSTC 的优势更为明显.这是因为缓存空间变大以
后,即使 OH 缺乏合理热度感知机制,也能将大多数热门内容缓存下来,从而缩小了与 CSTC 的命中率差距.另外,
ProbCache 与 Prob(0.05)两种缓存策略在命中率上基本一致,都高于 LCE,BidCache 的命中率略高于 ProbCache.
这是由于 BideCache 不仅考虑与用户的距离,还考虑当前节点的中心度等,只有综合分数最高的节点才能够缓