流量统计方法及装置制造方法

文档序号:7803565阅读:171来源:国知局
流量统计方法及装置制造方法
【专利摘要】本发明提供一种流量统计方法及装置,其中,所述方法包括:解析待处理的网络流,获取第一计数值c和第一分组字节数l;根据预设的第一字节数表,获取所述第一分组字节数l对应的的值;若所述第一计数值c大于等于所述的值,则确定第一中间值pA和第二中间值pB的大小;若第一中间值pA大于等于所述第二中间值pB,则将所述第一计数值c增加1,获得累计所述网络流的第二计数值c'。上述方法能够实现在高速网络中快速准确的统计各设备的网络流量。
【专利说明】流量统计方法及装置
【技术领域】
[0001]本发明涉及计算机技术,尤其涉及一种流量统计方法及装置。
【背景技术】
[0002]目前,互联网中网络测量对于互联网的计费、规划和安全等都非常重要,可保证互联网的有序发展。基于网络流的测量是网络测量中的一种重要技术。
[0003]网络流为在两个设备之间的具有一定共同特征(如相同五元组)的单向或双向的一系列数据包。基于网络流的被动测量(passive traffic measurement)是网络流测量的一个分支。
[0004]现有技术中,可在互联网的任一设备中设置流量测量装置实现对网路流的测量。业内人士提出了非线性采样流量统计算法对网络流的大小(即网络流的分组个数)和容量(即网络流的字节数)进行测量。
[0005]非线性采样流量统计算法是一种用于流长度统计的概率计数算法。该算法分为两个部分:计数器更新部分和反向估计部分。
[0006]然而,在计数器更新部分需要采用高精度的浮点运算方式,在低速网络中采用浮点运算还能够得到有效的测量结果,但是在高速网络中采用浮点运算需要较长的时间,且无法得到有效的测量结果,导致对网络流的估计不准确。

【发明内容】

[0007]本发明提供一种流量统计方法及装置,用于实现在高速网络中快速准确的统计各设备的网络流量。
[0008]第一方面,本发明提供一种流量统计方法,包括:
[0009]解析待处理的网络流,获取第一计数值c和第一分组字节数I ;
[0010]根据预设的第一字节数表,获取所述第一分组字节数I对应的「k>g, η的值;
[0011]若所述第一计数值C大于等于所述/I的值,则确定第一中间值PA和第二中间值PB的大小;
[0012]若第一中间值pA大于等于所述第二中间值PB,则将所述第一计数值c增加1,获得累计所述网络流的第二计数值C,。
[0013]可选地,所述方法还包括:
[0014]若所述第一中间值pA小于所述第二中间值pB,则将所述第一计数值c作为累计所述网络流的第二计数值C’。
[0015]可选地,若所述第一计数值c大于等于所述「1g61]的值,则确定第一中间值PA和第二中间值PB的大小,包括:
[0016]根据下述的公式一和公式二分别确定第一中间值pA和第二中间值PB ;
[0017]pA = I 公式一;[0018]pB = [f (c+1) -f (c) ] Xm 公式二;
[0019]其中,I为第一分组字节数,f (C)为根据所述第一计数值C、从预设的第一计数值表中查找获取,f(c+l)为根据所述第一计数值c+1从预设的第一计数值表中查找获取,m为伪随机数,且m为32位的正数。
[0020]可选地,所述方法还包括:
[0021]若所述第一计数值c小于所述.ftogA Il的值,则确定第一中间值PA和第二中间值PB的大小;
[0022]所述确定第一中间值pA和第二中间值pB的大小,包括:
[0023]根据下述的公式三和公式四确定第一中间值pA和第二中间值PB ;
[0024]pA = 1+f (c) -f (logbz+ (e-8) logb2-l)公式三;
[0025]pB = [f (logbz+(e-8) logb2)-f (logbz+(e-8) logb2-l)] Xm 公式四;
[0026]其中,I为第一分组字节数,b = 1+1/256 ;
[0027]f(c)为根据所述第一计数值c从预设的第一计数值表中查找获取;
[0028]f (logbz+(e-8) logb2)为根据1gbZ+(e_8) logb2的值从预设的第一计数值表中查找获取;
[0029]为根据1gbZ+ (e-8) logb2_l的值从预设的第一计数值表中f (logbz+ (e_8)logb2-l)查找获取;
[0030]m为伪随机数,且m为32位的正数;
[0031]1gbZ的值为根据z值从预设的第一字节数表中查找获取;
[0032](e-8) logb2的值为根据e值从预设的第二字节数表查找获取;
[0033]z = 1+f (C)+1/(b-1)公式五;
[0034]若根据所述公式五获得的z值小于1024,则e为0,则将z值和e值分别作为最终使用的z值和e值;
[0035]若根据所述公式五获得的z值大于等于1024,则将所述z值转换为无符号二进制数,并对所述无符号二进制数进行右移的移位运算,直至移位运算后的无符号二进制数对应的z值小于1024,则将移位运算后的无符号二进制数对应的小于1024的z值作为最终使用的z值;以及
[0036]对所述无符号二进制数进行右移的移位运算时,所述无符号二进制数每进行右移的移位运算一次,所述e在起始值上增加I,所述e的起始值为0,直至移位运算后的无符号二进制数对应的z值小于1024时,得到的e值作为最终使用的e值;
[0037]相应地,若第一中间值pA大于等于所述第二中间值pB,则根据下述的公式六获得累计所述网络流的第二计数值C,,
[0038]c,= 1gbZ+(e-8) logb2 公式六。
[0039]可选地,所述方法还包括:
[0040]若所述第一中间值pA小于所述第二中间值PB,则根据下述的公式七,获得累计所述网络流的第二计数值C’,
[0041]c,= 1gbZ+(e-8) logb2-l 公式七。
[0042]可选地,所述方法还包括:
[0043]封装所述网络流的第二计数值C,,并将封装的第二计数值C,输出。[0044]可选地,所述预设的第一计数值表根据下述的公式八获取;
【权利要求】
1.一种流量统计方法,其特征在于,包括: 解析待处理的网络流,获取第一计数值C和第一分组字节数I ; 根据预设的第一字节数表,获取所述第一分组字节数I对应的flog,f|的值; 若所述第一计数值c大于等于所述「log^l的值,则确定第一中间值pA和第二中间值PB的大小; 若第一中间值PA大于等于所述第二中间值PB,则将所述第一计数值c增加I,获得累计所述网络流的第二计数值C,。
2.根据权利要求1所述的方法,其特征在于,所述方法还包括: 若所述第一中间值PA小于所述第二中间值pB,则将所述第一计数值c作为累计所述网络流的第二计数值C,。
3.根据权利要求1所述的方,其特征在于,若所述第一计数值c大于等于所述的值,则确定第一中间值PA和第二中间值pB的大小,包括: 根据下述的公式一和公式二分别确定第一中间值PA和第二中间值PB ; PA = I 公式一;
pB = [f (c +1) -f (c) ] Xm 公式二; 其中,I为第一分组字节数,f(c)为根据所述第一计数值C、从预设的第一计数值表中查找获取,f(c+l)为根据所述第一计数值c+1从预设的第一计数值表中查找获取,m为伪随机数,且m为32位的正数。
4.根据权利要求1所述的方法,其特征在于,所述方法还包括: 若所述第一计数值c小于所述的值,则确定第一中间值PA和第二中间值pB的大小; 所述确定第一中间值PA和第二中间值PB的大小,包括: 根据下述的公式三和公式四分别确定第一中间值PA和第二中间值PB ;
pA = 1+f (c) -f (logbz+ (e-8) logb2_l)公式三;
pB = [f(logbz+(e-8) logb2)-f (logbz+(e-8) logb2-l)] Xm 公式四; 其中,I为第一分组字节数,b = 1+1256 ; f (c)为根据所述第一计数值c从预设的第一计数值表中查找获取; f (logbz+(e-8) logb2)为根据logbz+(e_8) logb2的值从预设的第一计数值表中查找获取; f (logbz+(e-8) logb2-l)为根据logbz+(e_8) logb2_l的值从预设的第一计数值表中查找获取; m为伪随机数,且m为32位的正数; 1gbZ的值为根据z值从预设的第一字节数表中查找获取; (e-8) logb2的值为根据e值从预设的第二字节数表查找获取; z = 1+f (c)+l (b-1)公式五; 若根据所述公式五获得的z值小于1024,则e为0,则将z值和e值分别作为最终使用的z值和e值;若根据所述公式五获得的Z值大于等于1024,则将所述Z值转换为无符号二进制数,并对所述无符号二进制数进行右移的移位运算,直至移位运算后的无符号二进制数对应的z值小于1024,则将移位运算后的无符号二进制数对应的小于1024的z值作为最终使用的z值;以及 对所述无符号二进制数进行右移的移位运算时,所述无符号二进制数每进行右移的移位运算一次,所述e在起始值上增加1,所述e的起始值为0,直至移位运算后的无符号二进制数对应的z值小于1024时,得到的e值作为最终使用的e值; 相应地,若第一中间值PA大于等于所述第二中间值PB,则根据下述的公式六获得累计所述网络流的第二计数值c’, C,= logbz+(e-8) logb2 公式六。
5.根据权利要求4所述的方法,其特征在于,所述方法还包括: 若所述第一中间值PA小于所述第二中间值pB,则根据下述的公式七,获得累计所述网络流的第二计数值C,, c,= logbz+(e-8) logb2-l 公式七。
6.根据权利要求1至5任一所述的方法,其特征在于,所述方法还包括: 封装所述网络流的第二计数值C,,并将封装的第二计数值C’输出。
7.根据权利要求3或4所述的方法,其特征在于,所述预设的第一计数值表根据下述的公式八获取;

8.一种流量统计装置,其特征在于,包括: 第一处理单元,用于解析待处理的网络流,获取第一计数值c和第一分组字节数I ; 第二处理单元,用于根据预设的第一字节数表,获取所述第一分组字节数I对应的「iog6r!的值; 判断单元,用于判断所述第一计数值C和所述的值的大小,在所述第一计数值c大于等于所述的值时,判断第一中间值pA和第二中间值PB的大小; 获取单元,用于在所述判断单元确定第一中间值PA大于等于所述第二中间值pB,则将所述第一计数值c增加1,获得累计所述网络流的第二计数值C,。
9.根据权利要求8所述的装置,其特征在于,所述获取单元,还用于 在所述判断单元确定第一中间值PA小于所述第二中间值pB,则将所述第一计数值c作为累计所述网络流的第二计数值C,。
10.根据权利要求8所述的装置,其特征在于,判断单元,具体用于 在确定所述第一计数值c大于等于所述「1gll ,1的值时,根据下述的公式一和公式二分别确定第一中间值PA和第二中间值pB ; PA = I公式一;
pB = [f (c+l)-f (c)] Xm 公式二;其中,I为第一分组字节数,f(c)为根据所述第一计数值C、从预设的第一计数值表中查找获取,f(c+l)为根据所述第一计数值c+1从预设的第一计数值表中查找获取,m为伪随机数,且m为32位的正数; 在确定所述第一计数值c小于所述「log, η的值时,根据下述的公式三和公式四分别确定第一中间值PA和第二中间值pB ;
pA = 1+f (c) -f (logbz+ (e-8) logb2_l)公式三;
pB = [f(logbz+(e-8) logb2)-f (logbz+(e-8) logb2-l)] Xm 公式四; 其中,I为第一分组字节数,b = 1+1/256 ; f (c)为根据所述第一计数值c从预设的第一计数值表中查找获取; f (logbz+(e-8) logb2)为根据logbz+(e_8) logb2的值从预设的第一计数值表中查找获取; f (logbz+(e-8) logb2-l)为根据logbz+(e_8) logb2_l的值从预设的第一计数值表中查找获取; m为伪随机数,且m为32位的正数; 1gbZ的值为根据z值从预设的第一字节数表中查找获取; (e-8) logb2的值为根据e值从预设的第二字节数表查找获取; z = 1+f (c)+1/(b-Ι)公式五; 若根据所述公式五获得的z值小于1024,则e为0,则将z值和e值分别作为最终使用的z值和e值; 若根据所述公式五获得的z值大于等于1024,则将所述z值转换为无符号二进制数,并对所述无符号二进制数进行右移的移位运算,直至移位运算后的无符号二进制数对应的z值小于1024,则将移位运算后的无符号二进制数对应的小于1024的z值作为最终使用的z值;以及 对所述无符号二进制数进行右移的移位运算时,所述无符号二进制数每进行右移的移位运算一次,所述e在起始值上增加1,所述e的起始值为0,直至移位运算后的无符号二进制数对应的z值小于1024时,得到的e值作为最终使用的e值; 相应地,所述获取单元,具体用于 在判断单元确定的所述第一中间值PA大于等于所述第二中间值pB时,则根据下述的公式六获得累计所述网络流的第二计数值C,, C,= logbz+(e-8) logb2 公式六; 在判断单元确定的所述第一中间值PA小于所述第二中间值PB时,则根据下述的公式七,获得累计所述网络流的第二计数值C,,c,= logbz+(e-8) logb2-l 公式七。
【文档编号】H04L12/26GK104009868SQ201410200744
【公开日】2014年8月27日 申请日期:2014年5月13日 优先权日:2014年5月13日
【发明者】黎阳, 武昊, 汪漪, 刘斌 申请人:清华大学
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1