基于流量趋势的网络流量预测方法

文档序号:9711357阅读:3506来源:国知局
基于流量趋势的网络流量预测方法
【技术领域】
[0001] 本发明涉及计算机网络领域,具体涉及一种基于流量趋势的网络流量预测方法。
【背景技术】
[0002] 网络流量预测在网络控制和管理中具有很重要的意义,对网络流量的长时预测有 利于网络流量规划,并更好的应对可能的网络问题,而网络流量的短时预测则有利于实时 动态规划各类网络资源,如带宽和路由等。
[0003] 近年来网络本身的快速发展,网络用户的爆炸式增长,网络应用种类的不断丰富 使得网络本身的复杂度大大增加,网络流量的特性也发生巨大变化。传统的网络流量预测 模型,如ARIMA,SARIMA,马尔科夫模型等基于网络流量的短时相关性提出的模型并不能精 确描述当前网络流量特性,流量预测效果不佳。
[0004] 将分形的思想引入各类基于ARMA的模型后可以有效的描述网络流量在各时间尺 度下的相关性,进而成功进行流量预测。但基于分形的模型复杂度太高,计算量大,很难应 用于实际。
[0005] 人工神经网络在信号处理、模式识别等领域的应用和发展获得了引人注目的成 果。由于其能够通过学习达到目标,ANN在处理非线性过程具有极大的优势。在处理网络流 量预测中通过训练集对网络流量的特征进行学习,与传统的预测方法相比,基于ANN方法的 预测不需要预先确定样本数据的数学模型,仅通过学习样本数据即可以进行相当精确的预 测,因此具有许多优越性,因而被广泛应用于网络流量预测中,特别是短时的流量预测中。 常用的方法有BP模型,FNT模型以及各类结合遗传算法,基因算法等优化算法改进的ANN模 型等。然而基于ANN的预测模型在进行流量预测时要求大量的样本进行训练以得到最优化 的参数和结构,大大增加了预测的成本和复杂度。因此在实时的预测中,基于ANN的预测模 型具有很大的局限性。

【发明内容】

[0006] 为了克服上述现有技术中存在的缺陷,本发明提供一种基于流量趋势的网络流量 预测方法。
[0007] 为了实现上述目的,本发明提供了一种基于流量趋势的网络流量预测方法,按照 以下步骤进行:
[0008] SI:设当前时刻为c,当前时刻c所在的时间周期为i,提取当前时间周期i之前的η 个时间周期下的网络流量趋势,以及当前时间周期i中从第1个时刻到时刻c的网络流量趋 势,所述η为正整数;
[0009] S2:根据提取的当前时刻c的前kl个时刻的网络流量趋势,预测当前时刻c的未来k 个时刻的网络流量趋势,所述kl、k均为正整数;
[0010] S3:计算提取的kl个时刻的网络流量值与其网络流量趋势之间的误差,预测当前 时刻c的未来k个时刻的网络流量误差;
[0011] S4:根据步骤S2中预测的网络流量趋势和S3中预测的网络流量误差,预测当前时 亥IJc的未来k个时刻的网络流量预测值;
[0012] S5:令c = c+k,如果c大于或等于时间周期i的结束时刻,则程序结束;否则返回步 骤S2。
[0013] 本发明通过提取的网络流量趋势保持了网络流量的周期性特征和各时间周期下 流量的局部结构特征,便于更精确的对未来时刻的网络流量趋势进行预测。
[0014] 在本发明的一种优选实施方式中,所述网络流量趋势的提取方法为:
[0015] Sl 1:已知网络流量序列S,包含S个时刻下的网络流量值序列,令一个时间周期包 含J个时刻,将网络流量序列S以时间周期为列重组为流量矩阵TR,共有[S/J]行时间周期 列,[]为舍弃余数的整数,其中每一列记录一个时间周期内J个时刻的流量值;
[0016] S12:计算流量趋势矩阵TT,公式为:
[0018] 其中I为单位矩阵,二阶差分矩阵DeRaOx^Dij=I,Di, i+1 = -2,Di,i+2=l,R为实 数,L = diag(sum(simC)),矩阵simC表示流量趋势矩阵TT中每个时间周期间流量的相似性, sum()对矩阵的行求和,得到向量;diag()对向量进行对角化,得到新矩阵中每个对角线上 的元素都是向量中的值,?为克罗内克尔积;vec()用于将矩阵转化为向量;λ1,λ2为参数, 依次表示流量的平滑性和局部相似性在趋势提取中所占的比例,取值范围为[0,1 ]。
[0019] 本步骤提取的网络流量趋势可以重复应用于后续步骤中若干k个时刻流量的预 测,大大减少了流量误差预测和流量估计所需要的训练样本数,节省了训练时间;并且提取 的网络流量趋势不仅突出了流量在各时间周期下的周期特征,也保持了流量的局部结构特 征。
[0020] 在本发明的一种优选实施方式中,所述网络流量趋势的预测方法为:
[0021] S21:根据已经提取的当前时间周期i的前η个时间周期的网络流量趋势计算当前 时间周期的平均流量趋势arjti,计算公式为:
[0022] ar_tti= (0n>l<tti-n+0n-l*tti-n+l+02*tti-2+01*tti-l)/(θη+θη-1+. . .+Θ2+Θ1),
[0023]其中tti-n、tti-n+i、···、tti-2、tti-1依次表示为当前时间周期i的前η个时间周期下的 第i-n个网络流量趋势、第i-η+Ι个网络流量趋势、…、第i-2个网络流量趋势第i-Ι个网络流 量趋势;θ1,θ2, . . .,0n-:L,0n分别表示相应时间周期在平均流量趋势计算中占有的权值;
[0024] S 2 2:令时刻c = mk+k 1,计算时刻(mk+1)到时刻(mk+k 1)的网络流量趋势与平均流 量趋势之间的网络流量趋势误差,公式为:
[0025] [re_tt(i,mk+i),re_tt(i,mk+2),· · ·,re_tt(i,mk+ki)] ' =
[0026] ( [ 11 (i, mk+l) , 11 (i, mk+2) , . . . , 11 (i, mk+kl) ] - [ clT_t t (i, mk+1) , ar_t t (i , mk+2) , . . . , ?Τ_ 11(i,mk+kl)] ) · /
[0027] [ar_tt(i,mk+l) , ar_tt(i,mk+2) , · · · , mk+kl)]
[0028] [re_tt(i,mk+1),re_tt(i,mk+2), ,re_tt(i,mk+kl)] '表示网络流量趋势误差;
[0029] [1:1:(1,1111<+1),1:1:(1,1111<+2),...,1:1:(1,1111^1)]'依次表示为时亥1](11^+1)到时亥1](11^+1^1)的网 络流量趋势;
[0030] [ar_tt(i,mk+i),ar_tt(i,mk+2),…,ar_tt(i,mk+ki)] '依次表示为时刻(mk+1)到时刻 (mk+kl)的平均流量趋势;
[0031]其中m表示循环的次数,所述!11 = 0、1、2-、1+1,所述1+1为最大循环次数,1的取值 为:
[0033] ./表示两个等长向量之间对应位置上的元素相除;
[0034] S23:根据S22所得的网络流量趋势误差,利用神经网络模型,预测c时刻的未来k个 时刻的网络流量趋势和平均流量趋势之间的误差,得到未来k个时刻的网络流量趋势误差, 艮P [ΡΓ-ΓΘ-tt (i,mk+kl+l),ΡΓ-ΓΘ-tt (i,mk+kl+2),· · ·,ΡΓ-ΓΘ-tt(i,mk+kl+k)],
[0035] S24:再根据预测的k个时刻的网络流量趋势误差和平均流量趋势计算未来k个时 刻的网络流量趋势,公式为:
[0036] [pr-tt(i,mk+kl+l),ΡΓ-tt (i,mk+kl+2),· · ·,ΡΓ-tt(i,mk+kl+k)]-
[0037] (E+[pr-re-tt(i,mk+ki+i),pr-re-tt(i,mk+ki+2),· · ·,pr-re-tt(i,mk+ki+k)] ')·*
[0038] [ar_tt(i,mk+ki+i) ,&r_tt(i,mk+kl+2) , · · · , &r_tt(i,mk+kl+k)]
[0039] 其中E是所有元素均为I的列向量,.*表示两个等长向量之间对应位置上的元素相 乘。
[0040] 在本发明的一种更加优选实施方式中,在步骤S21中η取4,Q1 = I, θ2 =1,Θ3 = 0.5, 04=0.5,其公式为:
[0041 ] ar_tti= (0 · 5*tti-4+0 · 5*tti-3
当前第1页1 2 3 4 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1