具体实施方式
在典型的IPTV体系结构10中,如图1示出的,几个用户12连接到数字用户线接入复用器(DSLAM)14(例如,比例为192∶1)。该DSLAM 14连接到中心局CO 16(例如,比例为100∶1)。几个CO16连接到中间局(IO)18并最终连接到视频总部(VHO)19(例如,比例为6∶1)。VHO 19在例如内容数据库22中存储视频点播(VoD)内容的标题。1吉比特以太网(GE)连接23将DSLAM 14连接到CO 16,而10GE连接24和25分别将CO 16连接到IO 18和将IO 18连接到VHO 19。
为了减少单播VoD业务对IPTV网络10的成本影响,部分视频内容可以存储在靠近用户的高速缓存中。在各种实施方式中,可以在DSLAM、CO或者IO的一些或全部中提供高速缓存。在一个实施方式中,以可以存储有限量例如最多3000万亿字节(TB)的数据的高速缓存模块15的形式提供高速缓存。另外,每个高速缓存模块能够支持有限量的业务,例如最多20Gbs。高速缓存模块是很方便的,因为它们可以被提供为在相应的网络设备中使用一个槽。
在一个实施方式中,在一层的所有位置,例如DSLAM、CO或IO提供高速缓存。即,将在网络的每个DSLAM 14、或者每个CO 16、或者每个IO 18中提供高速缓存。
每个高速缓存的效率(effectiveness)可以被描述为可以从高速缓存提供服务的视频内容请求的百分比。高速缓存效率是IPTV网络经济的关键驱动力。
高速缓存效率依赖于几个因素,包括在高速缓存中存储的标题的数量(其是高速缓存存储器和视频大小的函数)和在高速缓存中存储的标题的流行度,其可以用流行度分布来描述。
高速缓存效率随着高速缓存存储器增大而增大,但是成本也随之增大。视频内容的传输成本与在网络上的所有高速缓存的组合成本互为折中。高速缓存效率还是流行度曲线的函数。流行度分布20的例子在图2中示出。流行度分布曲线20用Zipf或普适化的Zipf函数来表示:
Zipf=1/xa
随着流行度曲线变平,高速缓存效率降低。
为了找到高速缓存存储器的最优位置和大小,提供优化模型和工具。给定典型的metro拓扑、视频内容流行度曲线、成本和业务量假设等,该工具选择最优高速缓存大小及其网络位置。在一个实施方式中,该工具还基于高速缓存的效率、其位置等优化整个网络成本。高速缓存效率是存储器和流行度曲线的函数,增大的存储器带来增大的功效(和高速缓存成本),但是降低了传输成本。因此可以使用优化工具来选择用于高速缓存的最优存储器以降低总网络成本。
总网络成本的一个元素是传输带宽成本。传输带宽成本是每用户带宽和用户数量的函数。进行高速缓存利用高速缓存效率降低上游带宽,如上所述,高速缓存效率是存储器和流行度分布的函数。图3中图形化地描述传输带宽成本问题。Td代表到DSLAM节点(d)31的传输成本,且Td依赖于用户(sub)数量和每用户带宽(BW)。Td因此可以表示为:
Td=用户数量×带宽/用户
Tco是到中心局32的传输成本,且表示为:
Tco=d数量×Td
TIO是到中间局33的传输成本,且表示为:
TIO=IO数量×Tco
VHO业务量是网络上来自VHO 34的所有VHO业务的传输成本,且表示为:
VHO业务量=∑TI0
所需的传输带宽可以用于限定诸如DSLAM、CO和IO的设备的大小并确定在网络中所需的这些元件的每一种的数量。
图4示出用于优化工具的输入参数的参数表40。还提供了用于参数表40的样本数据。例如,参数表允许用户输入主要参数,例如每活跃用户的平均业务量41,和每DSLAM的活跃用户的数量42。可以提供网络配置参数,诸如DSLAM数量43、CO数量44和IO数量45。可以提供高速缓存模块参数,例如,每高速缓存模块的存储器46,最大高速缓存业务量47,以及高速缓存模块的成本48。还可以输入流行度曲线参数49。也可以规定其他网络设备成本51,诸如交换机、路由器和其他硬件组件。
可以将参数表40结合到更广泛的优化工具中供在网络成本计算中使用。
在图5中示出了用于确定网络成本的流程图50。网络成本表示为:
网络成本510=设备成本+传输成本。
设备成本是所有DSLAM、CO、IO和VHO以及VoD服务器和高速缓存的成本。设备成本可以通过考虑限定每个DSLAM、CO和IO的尺寸来缩减(break down)。DSLAM尺寸限定(步骤501)需要如下成本考虑:
a每DSLAM的总高速缓存存储器=每单元高速缓存存储器×每DSLAM的高速缓存单元数量;
b高速缓存中的内容单元数量=每DSLAM的总高速缓存存储器/每内容单元的平均存储器要求;
c高速缓存效率(即,高速缓存所服务的请求的数量)=CDF-1(高速缓存中的内容单元的数量),其中CDF是流行度分布的累积密度函数;
d总高速缓存吞吐量=高速缓存单元的数量×每单元的高速缓存吞吐量;
e来自连接到DSLAM的所有用户的总业务需求(DSLAM业务量)=每DSLAM的用户数量×每用户的平均业务量;
f每DSLAM的CO至DSLAM业务量=DSLAM业务量-min(总高速缓存吞吐量,高速缓存效率×DSLAM业务量);
gGE连接数量/DSLAM=[每DSLAM的CO至DSLAM业务量/1Gbs];以及
h每DSLAM的LT数量=[每DSLAM的用户数量/24];
CO尺寸限定(步骤502)需要:
a每CO的面向DSLAM的GE连接数量=每DSLAM的GE连接数量×每CO的DSLAM数量;
b来自连接到CO的所有DSLAM的总业务需求(CO业务量)=每DSLAM的CO至DSLAM业务量×每CO的DSLAM的数量;
c平均GE利用率=CO业务量/每CO的面向DSLAM的GE连接数量;
d计算每以太网服务交换机(例如Alcatel Lucent生产的7450以太网服务交换机)的面向DSLAM的GE端口的最大数量(n)以使得[n/每MDA的GE端口数量]+[每7450的IO至CO业务量/10Gbs]≤10-2×每7450的高速缓存单元数量,其中:
i每7450的IO至CO业务量=每7450的CO至DSLAM业务量-min(总高速缓存吞吐量,高速缓存效率×每7450的CO至DSLAM业务量);以及
ii每7450的CO至DSLAM业务量=n×平均GE利用率;
e每CO的7450数量=[每CO的面向DSLAM的GE连接数量/n];
f每7450的面向IO的10GE端口数量=[每7450的IO至CO业务量/10Gbs];
g计算每CO的GE MDA、10GE MDA和IOM的总数量。
IO尺寸限定(步骤503)需要:
a每IO的面向CO的10GE连接数量=每CO的10GE连接数量×每IO的CO数量;
b来自连接到IO的所有CO的总业务需求(IO业务量)=每CO的IO至CO业务量×每IO的CO的数量;
c平均10GE利用率=IO业务量/每IO的面向CO的10GE连接数量;
d计算每服务路由器(例如,Alcatel Lucent的7750服务路由器)的面向CO的10GE端口的最大数量(m),以使得[m/每MDA的10GE端口数量]+[每7750的VHO至IO业务量/10Gbs]≤20-2×每7750的高速缓存单元数量,其中
i每7750的VHO至IO业务量=每7750的IO至CO业务量-min(总高速缓存吞吐量,高速缓存效率×每7750的IO至CO业务量);以及
ii每7750的IO至CO业务量=m×平均10GE利用率;
e每IO的7750数量=[每IO的面向CO的10GE连接数量/m];
f每7750的面向VHO的10GE端口数量=[每7750的VHO至IO业务量/10Gbs];
g计算每IO的10GE MDA和IOM的总数量。
VHO尺寸限定(步骤504)需要:
a每VHO的面向IO的10GE连接数量=每IO的10GE VHO-IO连接数量×每VHO的IO数量;
b来自连接到VHO的所有IO的总业务需求(VHO业务量)=每CO的IO至CO业务量×每IO的CO数量;
c平均10GE利用率=VHO业务量/每VHO的面向IO的10GE连接数量;
d计算VHO中每7750(服务路由器)的面向IO的10GE端口的最大数量(k),以使得[k/每MDA的10GE端口数量]+[每7750的VHO至IO业务量/10Gbs]≤20,其中:
i.VHO中每7750的VHO至IO业务量=k×平均10GE利用率;
e每VHO的7750数量=[每VHO的面向IO的10GE连接数量/k];
f VHO中每7750的面向VoD服务器的10GE端口数量=[每7750的VHO至IO业务量/10Gbs];
g计算每VHO的10GE MDA和IOM的总数量。
设备成本也将包括高速缓存成本,其等于高速缓存的一般成本加上存储器成本。网络的传输成本将是网络节点之间所有GE连接506和10GE连接505的成本。
不同的视频服务(例如Vod、NPVR、ICC等)具有不同的高速缓存效率(或命中率)以及不同的标题大小。要解决的问题是有限的资源即高速缓存存储器如何能够在不同的服务之间分区以便提高进行高速缓存的总成本效率。
在几个单播视频服务之间优化高速缓存存储器分区的问题可以被认为是类似于“背包问题”的约束优化问题,并且可以通过例如线性整数编程的方法求解。然而,给定上述变量的数量,找到一个解将花费相当多的计算时间。因此,在本发明的一个实施方式中,通过定义一个特殊度量“高速缓存能力”来加速找到最优解的进程,以简化计算问题。高速缓存能力因子考虑到高速缓存效率、每服务的总业务量和一个标题的大小。本方法使用高速缓存能力因子和迭代过程来找到(针对每个服务)被高速缓存的标题的最优数量,该数量将使满足高速缓存存储器的约束和吞吐量限制的总高速缓存命中率最大化。
高速缓存效率函数(或命中率函数)依赖于业务量的统计特征(标题的长期或短期流行度)和用以更新高速缓存内容的高速缓存算法的效率。不同的服务具有不同的高速缓存效率函数。目标是使满足对可用高速缓存存储器的限制M和对高速缓存业务吞吐量的限制T的高速缓存效率最大化。在一个实施方式中高速缓存效率定义为以业务量来加权的总高速缓存命中率。在一个备选的实施方式中可以以使得所使用的高速缓存存储器最小化的方式来对高速缓存效率进行加权。
可以将该问题表示为约束优化问题,即:
满足:
和
N是服务的总数量;
Ti是针对服务i的业务量,i=1,2,...,N;
Fi(n)是针对服务i的作为被高速缓存的标题的数量n的函数的高速缓存效率,i=1,2,...,N;
Mi是针对服务i的高速缓存存储器,i=1,2,...,N;
Si是针对服务i的每标题大小,i=1,2,...,N。
高速缓存效率Fi(n)是在第i个服务的n个项目(标题)可以被高速缓存的情况下可以从高速缓存提供服务的该服务i的业务量的比例。
该问题可以被公式化为线性整数问题并通过LP求解器来求解。该问题的连续公式化类似于上面的公式:
满足:
和
并且可以使用Lagrange乘法器方法来求解。Lagrange乘法器方法用于找到满足一个或多个约束的几个变量的函数的极值,并且是非线性约束优化的基本工具。Lagrange乘法器计算约束函数的静态点。极值出现在这些点处,或者在边界上,或者在函数不可微分的点处。将Lagrange乘法器方法应用于该问题:
或者
其中i=1,2,...,N。
这些等式描述约束函数的静态点。在静态点中,或者在边界上(例如其中Mi=0或者Mi=M)可以获得最优解。
下面将“高速缓存能力”函数定义为:
其量化针对第i(i=1,2,...,N)个服务而使用的存储器(m)的每单元进行高速缓存的益处。
为了说明如何能够使用高速缓存能力函数来找到该问题的最优解,可以考虑仅具有两个服务的简化例子。如果在同一图表上(图6)绘制函数f1和f2,则对于与高速缓存能力曲线f1和f2相交的每个水平的线H(水平线),可以估计用于服务的高速缓存存储器的量和相应的业务吞吐量。当水平线H下移时,所使用的高速缓存存储器的量以及业务吞吐量都增大。当达到存储器或业务量的限制时(不管谁先达到),都可获得最优解。根据情况,当水平线与(a)一条曲线相交(水平线H1)或(b)两条曲线相交(水平线H2)可以获得最优解。在情况(a)中应当仅为一个服务(f1)分配高速缓存存储器;在情况(b)中服务f1和f2二者应当共享高速缓存中的高速缓存存储器m1和m2。
一旦使用高速缓存能力函数和高速缓存效率函数确定了高速缓存存储器,就可以将高速缓存分配插入到网络成本计算中以便确定总网络成本。此外,可以在上述基础上计算高速缓存能力函数和高速缓存效率函数,以便确保以专用于每个服务的高速缓存存储器来适当地对高速缓存进行分区,以便优化高速缓存性能。
在一个实施方式中,可以在如图7所示的一个或多个处理器上实现优化工具。第一处理器71可以是与系统存储器72相关联地操作的系统处理器,系统存储器存储诸如用于计算高速缓存能力函数和/或高速缓存效率函数的软件的指令集。系统处理器71可以从第二处理器73接收参数信息,第二处理器例如是也与存储器76相关联地操作的用户处理器。存储器76可以存储当执行时允许用户处理器73从用户接收输入参数等的指令集。可以在系统处理器71或者用户处理器73上执行关于高速缓存能力函数和/或高速缓存效率函数的计算。例如,来自用户的输入参数可以从用户处理器73传递到系统处理器71,以使得系统处理器71能够执行指令以执行计算。备选地,系统处理器可以从存储器72将公式和其他需要的代码传递到用户处理器73,它们与输入参数组合在一起,允许处理器73计算高速缓存能力函数和/或高速缓存效率函数。可以理解,可以提供更多的处理器和存储器,并且可以在任意适当的处理器上执行关于高速缓存函数的计算。在一个实施方式中,可以在网络节点中提供至少一个处理器,其可以与网络节点的高速缓存相关联地操作,以便使得通过上述的高速缓存函数计算,高速缓存分区可以维持在最优状态。
虽然已经在附图中示出了并在前文中描述了本发明的实施方式,但是应当理解,本发明不限于所公开的实施方式,而是能够进行很多重新配置、修改和替换,而不会偏离如权利要求中阐述和定义的本发明的精神。例如,可以通过块、模块、处理器或者存储器的一个或多个来完全和/或部分地执行本发明的能力。另外,这些能力可以以当前的方式执行或者以分散的方式执行,以及在任意能够提供和/或接收信息的设备上或经由这些设备来执行。另外,虽然以特定方式示出,但是在不偏离本发明的范围的情况下,可以重新布置各种模块和块。另外,虽然以特定方式示出,但是可以与本发明相关地使用更多或更少的模块和连接,以便完成本发明,为本发明提供更多已知功能,和/或使本发明更有效。另外,在各模块之间发送的信息可以经由数据网络、因特网、网际协议网络、无线资源和有线资源中的至少一种并经由多种协议来发送。