- 1 -
CDN网络中的内容分发策略研究及仿真分析
唐红喜,宋茂强,赵方
北京邮电大学软件学院,北京(100876)
摘 要:CDN 是现有网络基础设施之上新建的一个重叠网,构筑一个地理位置分布的内容
分发网络,对信息流进行优化,从而提高网络的使用效率。它能将信息资源推向网络边缘,
使得网络用户可以从“最近最好”的服务器上快速访问到所需的内容,从而大大提高终端用户
的访问速度。本文简要讲述了在 CDN网络中的内容分发的原理,从基于内容访问度和负载
均衡的角度出发,研究将信息资源推向网络边缘的内容分发策略问题,提出了两种主要的分
发策略思想及算法,并给出了仿真分析。
关键词:CDN;内容管理模块;边缘缓存;访问度
中图分类号:TP 文献标识码:A
0. 引言
随着 Internet[1]的快速成长,网络内容和网络用户急剧增加,尤其是数据量很大的流媒
体内容及动态内容的增加,导致网络负载不断加重。CDN 是在现有网络基础设施之上
新建一重叠网,构筑一个地理位置分布的内容分发网络,对信息流进行优化。它利用缓存、
复制、负载均衡和客户请求重定向等,将信息资源推向网络边缘,使得用户可以从“最近最
好”的服务器上快速访问到所需的内容,从而大大提高终端用户的访问速度,减轻网络负载。
在将这些信息资源推向网络边缘时,应当依据一定的策略来决定哪些内容应该分发,以及应
该将这些内容分发到哪些边缘缓存服务器上。由于网络内容都是最终提供给终端用户访问
的,内容的好坏和受欢迎程度的高低都直接由用户访问速度来决定,所以最主要的策略就是
从基于内容访问度和负载均衡的角度出发,对于每一个边缘缓存服务器上的内容,根据其访
问度的大小,与预定的门限值进行比较,访问度 VD满足一定的条件就将内容分发到离用户
“最近最好”的服务器上。
1. CDN网络内容分发原理
在 CDN (Content Delivery Network) [2]网络中,边缘缓存服务器 Edge Cache是核心组件。
它将用户请求的内容保存在离用户近的地方,从而缩短了访问延时,同时减轻网络的负
载流量。Edge Cache还具有自动更新和预取内容的功能,它知道哪些内容是更新的或过时的,
哪些内容是最受欢迎的,并采取适当的措施更新内容。它还可以根据用户的访问习惯等
信息预测用户将要访问的内容,所以它必须记录下它所包含的所有内容的用户访问信息。而
内容管理服务器 ContentManager 是 CDN 网络中的内容管理组件,主要是管理和分配 Edge
Cache上的内容,它要监控所有边缘缓存服务器 Edge Cache上的内容访问情况,并定时运行
内容分发策略,把满足分发条件的 Edge Cache上的内容分发到离用户最近最好的地方。
CDN网络的内容分发原理示意图如下图 1所示:
- 2 -
图 1 CDN网络的内容分发原理示意图
在图 1中,网络用户 User可以访问边缘缓存服务器 Edge Cache1, Edge Cache2。。。
Edge CacheN上的内容,经过一定长的时间段 T后,ContentManager上的内容分发策略[3]开
始运行。它首先读取 Edge Cache1上内容 C1的访问信息,当内容 C1的访问度 VD较大时,
表明 C1 的受欢迎程度较高,同时 C1 所在的 Edge Cache1 的负载量也较重,此时
ContentManager 就把 EdgeCache1 上内容 C1 的一份拷贝分发到离访问用户最近最好的边缘
缓存服务器 EdgeCache2上。相反的,当内容 C1的访问度 VD较小时,表明 C1的受欢迎程
度较低,此时不宜进行分发,以免增加额外的网络传输负担。依此类推,内容分发策略要读
取每一个 Edge Cache上的每一个内容的访问信息,并由策略条件判断是否进行分发。所以
实际上,策略运行起来,是要将网络中所有边缘缓存服务器的所有内容的访问信息遍历一次。
策略运行时的分发过程示意图如下图 2所示:
图 2 策略运行时的分发过程示意图
2. 分发策略研究
设在 CDN网络中,有 N个边缘缓存服务器,分别为 Edge Cache1, Edge Cache2。。。Edge
CacheN, 每个边缘缓存服务器上有 N(i),i=1,。。。。。。,N个内容,且均不相同。那么对于
每一个 Edge Cache上的每一个内容 C,在时间间隔 T内只有当其访问度 VD满足一定的门
限条件时才进行分发。而访问度 VD的定义不同,可对应于不同的策略。以下详细讨论了两
种主要的策略,并给出了实现算法的复杂度:
基于内容绝对访问量 V的策略一:VD = V
V的定义是:访问该内容的用户数。如果对于 Edge Cache1上的内容 C1,在当前的时
间间隔 T中有 V1个用户访问它(假设不计用户重复访问次数),那么内容 C1的绝对访问量
V=V1,此时 C1的访问度 VD为
- 3 -
VD=V=V1
设定绝对访问量门限值为M,M的定义为判断是否分发内容的绝对访问量临界值。当绝
对访问量 V大于此临界值时,表明内容 C1受欢迎程度高,有必要将其分发到离访问用
户“最近最好”的服务器上,反之则不然。所以只有当 V>M 的时候,才对 C1 进行分发;当
V<=M时,则不对 C1进行分发。
从本算法的复杂度来看,由于对于内容 C1只需要进行一次计算,即比较访问度与门限
值的大小,而策略运行时是要将所有 Edge Cache上的内容都遍历一次,故此算法的复杂度
即是内容的总数∑N(i), i=1,。。。。,N。本算法的流程图如下图 3所示:
图 3 策略一算法流程
选取合适的门限值M成为影响本策略运行效率的关键。由于此时M反映的是绝对访问
量临界值,而且设定的启动策略时间间隔 T不同,会得到不同的绝对访问量,故 M的选取
与时间间隔 T的大小有关。T越大,则在 T时间内对内容的绝对访问量 V也越大,门限值
M也要设的大一些;T越小,M也对应小一些。但应注意的是,如果M设的过大,会使一
些用户喜爱的内容得不到分发;M 设的过小,会导致分发的内容激增而增加网络负担。所
以在实践中应根据网络的状态和用户的访问情况动态调整门限值,一般将 M 设为内容绝对
访问量的平均值比较合适,这样使得大约 50%的内容得到分发。
基于内容相对访问量 V△ 的策略二:VD= V△
△V的定义是:相邻两次绝对访问量之差即内容访问增量。如果对 Edge Cache1上的
内容 C1,在当前的时间间隔 T中有 V1个用户访问它(假设不计用户重复访问次数),
而在前一个相同的时间间隔 T中有 V0个用户访问它,那么该内容访问增量 V=V1△ -V0,此
时内容 C1的访问度 VD为:
VD= V=V1△ -V0
设定相对访问门限值为 M△ , M△ 的定义是判断是否分发内容的相对访问量临界值。当
访问增量 V△ 大于零时,表明内容 C1受欢迎程度有所提高,而当 V△ 大于△M时,进
一步表明内容 C1提高的程度很大,故可以提前将其分发到离访问用户“最近最好”的服务器
上。本策略要求 Edge Cache不仅记录下当前时间间隔 T内的绝对访问量 V1,还有保留前一
时间间隔 T内所记录的绝对访问量 V0,这样才能够计算出 V△ 的值, V=V1△ -V0。所以当
V> M△ △ 的时候,才对 C1进行分发; V<= M△ △ 时,则不对 C1进行分发。
- 4 -
从本算法的复杂性来看,由于内容 C1 需要进行两次计算,即首先求得 V△ ,然后比较
相对访问度与门限值的大小,所以与策略一相比,每一步都要多进行一次运算,故其算法的
复杂度应为策略一的二倍,即∑N(i)*2, i=1,。。。。。,N。本算法的流程图如图 4所示:
图 4 策略二算法流程
本策略在设定门限值 M△ 的大小时,其基本原理和方法与前述的策略一大致上相同,
但从根本上有所不同的是, M△ 反映的是相对访问量临界值,而且与绝对访问量门限 M相
比, M△ 是在相同的时间间隔 T内的相对变化数值。所以在时间中,当 CDN网络在相邻的
时间间隔 T 内用户对内容的访问率变化范围很小时,采用策略一较为合理;反之,当用户
访问率变化范围较大时,采用本策略更合理。
仿真试验结果
在 CDN网络仿真软件 SIMULATE程序中,首先设置网络仿真环境如下,边缘缓存服务
器 Edge Cache的个数 N=10,每个 Edge Cache上的内容个数 N(1)=N(2)=…=N(10)=5,
策略运行时间间隔 T=10 分钟,用户访问率变化范围设为 0,在此仿真环境下分别对上述两
种分发策略做了测试试验,研究结果表明,最佳的门限值分别为M=49, M=5.△ 然后调整时
间间隔 T=20分钟,并在新的仿真环境下重新做测试试验,此时最佳的门限值分别为M=106,
M=5△ 。最后保持 T=20分钟不变,用户访问率变化范围设为 50%,即使得在相邻的时
间间隔 T内用户对内容的访问率变化很大,此时最佳门限值分别为M=105, M=9△ 。
3. 结束语
本文对 CDN网络中的内容分发策略进行了初步的研究,并提出了两种主要的基于内容
访
问度的分发策略思想。策略一是基于内容绝对访问量的大小,它直接体现了内容的受欢
迎程度;策略二则是基于内容的相对访问量的大小,它反映了内容受欢迎程度的变化程度和
趋势。由于网络内容最终是提供给终端用户访问的,内容的好坏以及受欢迎程度的高低主要
取决于内容访问度的大小。所以在研究决定是否进行内容分发的策略中,基于内容访问度的
思想无疑是最合理也是最贴近实际用户需求的。通过进行仿真测试试验,结果表明当 CDN
网络在相邻的时间间隔 T内用户对内容的访问率变化范围很小时,应采用策略一较为合理;
反之,当用户访问率变化范围较大时,应采用策略二更为合理。
- 5 -
参考文献
[1].谢希仁,计算机网络[M].大连,大连理工大学出版社,2000.
[2].CDN网络路由技术手册[OL].
[3].马季春,杨巧霞.内容分发网络技术浅析[J].计算机与通信,2003年 3月,第三期.
Content delivery tactics research and simulation analysis of
CDN
Tang Hongxi, Song Maoqiang, Zhao Fang
Department of Software, Beijing University of Posts and Telecommunications, Beijing (100876)
Abstract
CDN is a overlapped network built on the current network infrastructure, it constructs a content
delivery network distributed in the geographic areas, so to optimize the information flow and enhance
the network efficiency. It can push the information resources to the edge of the network, so make it
possible for network users to access required contents rapidly from “closest and best” server, therefore
enhance access speed of the terminal users greatly. In this paper, the content delivery principle of CDN
is introduced, from the view of content access degree and load balance ,make a research in the content
delivery tactics problem of pushing the information resources to the network edges, then put forward
two main content delivery tactics and algorithms and give the simulation analysis.
Keywords: CDN; content management module; edge cache; access degree
作者简介:
唐红喜(1980-),男,河南许昌人,在读硕士研究生,主要研究方向:通信软件,CDN 网
络;
宋茂强(1957-),男,教授,主要研究方向:通信软件,CDN网络,分布式计算。