CN104734990A - 一种确定大流量报文类的方法及装置 - Google Patents
一种确定大流量报文类的方法及装置 Download PDFInfo
- Publication number
- CN104734990A CN104734990A CN201510120960.6A CN201510120960A CN104734990A CN 104734990 A CN104734990 A CN 104734990A CN 201510120960 A CN201510120960 A CN 201510120960A CN 104734990 A CN104734990 A CN 104734990A
- Authority
- CN
- China
- Prior art keywords
- message
- class
- large discharge
- compression
- message class
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Landscapes
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明提供了一种确定大流量报文类的方法及装置,用以实现为属于大流量报文类的报文配置内置缓存资源,避免报文拥塞,提高转发系统的转发性能。本发明方法包括:在预设时间间隔内,针对任一经过报文转发系统的报文执行以下步骤:利用预设的压缩函数对报文的特征域值进行压缩处理,得到报文的特征域值的压缩值;在已经进行过特征域值压缩处理的各报文中,统计具有压缩值的报文数量;在数量与预设时间间隔的商大于预设流量阈值时,确定报文所属的报文类为大流量报文类。
Description
技术领域
本发明涉及通信领域,尤其涉及一种确定大流量报文类的方法及装置。
背景技术
互联网中存在数量巨大的报文,这些报文具有不同的属性、流量和功能。互联网的转发系统需要为这些报文配置缓存资源。
转发系统中缓存资源分为以下两类:
一类为成本高、读写速度快、资源相对较少、接口简单的内置缓存资源;
另一类为成本低、读写速度慢、资源相对较多、接口复制的外置缓存资源。
目前,转发系统通常会为报文随机配置固定的缓存资源,在配置缓存资源过程中并没有考虑到报文具有的属性、功能等,例如报文的流量大小,若缓存资源配置不当容易造成报文堵塞等问题。
发明内容
本发明实施例提供一种确定大流量报文类的方法及装置,用以实现为属于大流量报文类的报文配置内置缓存资源,避免报文拥塞,提高转发系统的转发性能。
第一方面,本发明实施例提供了一种确定大流量报文类的方法,该方法包括:
在预设时间间隔内,针对任一经过报文转发系统的报文执行以下步骤:
利用预设的压缩函数对报文的特征域值进行压缩处理,得到报文的特征域值的压缩值;
在已经进行过特征域值压缩处理的各报文中,统计具有压缩值的报文数量;
在数量与预设时间间隔的商大于预设流量阈值时,确定报文所属的报文类为大流量报文类。
结合第一方面,在第一种实现方式中,压缩函数包括两个或两个以上压缩函数时,经过任一压缩函数对报文的特征域值进行压缩处理得到的压缩值的值域相同。
结合第一方面或第一方面的第一种实现方式,在第一方面的第二种实现方式中,压缩函数包括两个或两个以上压缩函数;
利用预设的压缩函数对报文的特征域值进行压缩处理,得到报文的特征域值的压缩值,包括:
分别利用每个压缩函数对报文的特征域值进行压缩处理,得到报文的特征域值的压缩值组,压缩值组包含依次与每个压缩函数对应的子压缩值;
在已经进行过特征域值压缩处理的各报文中,统计具有压缩值的报文数量,包括:
在已经进行过特征域值压缩处理的各报文中,统计经过相同压缩函数处理得到的具有相同子压缩值的报文数量;
在数量与预设时间间隔的商大于预设流量阈值时,确定报文所属的报文类为大流量报文类,包括:
在统计到的报文的任一子压缩值对应的报文数量与预设时间间隔的商均大于预设流量阈值时,确定报文所属的报文类为大流量报文类。
结合第一方面、第一方面的第一种至第二种实现方式,在第一方面的第三种实现方式中,将报文类确定为大流量报文类后,该方法还包括:
针对任一大流量报文类执行以下步骤:
统计预设时间间隔内,经过报文转发系统、且属于大流量报文类的报文数量;
在报文数量与预设时间间隔的商小于或等于预设流量阈值时,将大流量报文类更改确定为非大流量报文类。
结合第一方面、第一方面的第一种至第三种实现方式,在第一方面的第四种实现方式中,压缩函数包括以下至少一种:
循环冗余校验CRC算法、安全哈希算法SHA-1算法以及摘要MD5算法。
结合第一方面、第一方面的第一种至第四种实现方式,在第一方面的第五种实现方式中,在确定报文所属的报文类为大流量报文类之后,还包括:
为报文配置内置缓存资源。
第一方面中,通过在预设时间间隔内,针对任一经过报文转发系统的报文执行以下步骤:利用预设的压缩函数对报文的特征域值进行压缩处理,得到报文的特征域值的压缩值;在已经进行过特征域值压缩处理的各报文中,统计具有压缩值的报文数量;在数量与预设时间间隔的商大于预设流量阈值时,确定报文所属的报文类为大流量报文类。可以实现在海量报文中筛选出大流量报文类,进而实现为属于大流量报文类的报文配置内置缓存资源,实现缓存资源利用率最大化,同时有效避免报文拥塞,提高转发系统的转发性能。
通过第一方面中确定大流量报文类的方法,筛选出大流量报文类后,还可以对属于大流量报文类的报文做相应的优化动作,例如:对大流量报文进行转发管理,将大流量报文分散到不同的通路,降低大流量报文导致通路拥塞的风险;基于优先级,对大流量报文进行报文丢弃,限制大流量报文的流量,减少大流量导致的拥塞。
第二方面,本发明实施例提供了一种确定大流量报文类的装置,该装置在预设时间间隔内分别对任一经过报文转发系统的报文执行,该装置包括:
压缩处理单元,用于利用预设的压缩函数对报文的特征域值进行压缩处理,得到报文的特征域值的压缩值;
数量统计单元,用于在已经通过压缩处理单元进行过特征域值压缩处理的各报文中,统计具有压缩值的报文数量;
报文类确定单元,用于在数量统计单元统计得到的数量与预设时间间隔的商大于预设流量阈值时,确定报文所属的报文类为大流量报文类。
结合第二方面,在第一种实现方式中,压缩函数包括两个或两个以上压缩函数时,经过任一压缩函数对报文的特征域值进行压缩处理得到的压缩值的值域相同。
结合第二方面或第二方面的第一种实现方式,在第二方面的第二种实现方式中,压缩函数包括两个或两个以上压缩函数;
压缩处理单元具体用于:
分别利用每个压缩函数对报文的特征域值进行压缩处理,得到报文的特征域值的压缩值组,压缩值组包含依次与每个压缩函数对应的子压缩值;
数量统计单元具体用于:
在已经通过压缩处理单元进行过特征域值压缩处理的各报文中,统计经过相同压缩函数处理得到的具有相同子压缩值的报文数量;
报文类确定单元具体用于:
在压缩处理单元统计得到的报文的任一子压缩值对应的报文数量与预设时间间隔的商均大于预设流量阈值时,确定报文所属的报文类为大流量报文类。
结合第二方面、第二方面的第一种至第二种实现方式,在第二方面的第三种实现方式中,报文类确定单元确定报文所属的报文类为大流量报文类后,数量统计单元和报文类确定单元分别对任一大流量报文类执行:
数量统计单元,还用于:统计预设时间间隔内,经过报文转发系统、且属于大流量报文类的报文数量;
报文类确定单元,还用于:在数量统计单元统计的报文数量与预设时间间隔的商小于或等于预设流量阈值时,将大流量报文类更改确定为非大流量报文类。
结合第二方面、第二方面的第一种至第三种实现方式,在第二方面的第四种实现方式中,压缩函数包括以下至少一种:
循环冗余校验CRC算法、安全哈希算法SHA-1算法以及摘要MD5算法。
结合第二方面、第二方面的第一种至第四种实现方式,在第二方面的第五种实现方式中,报文类确定单元在确定报文所属的报文类为大流量报文类之后,还用于:
为报文配置内置缓存资源。
第二方面中,通过压缩处理单元、数量统计单元和报文类确定单元,具体的,压缩处理单元、数量统计单元和报文类确定单元在预设时间间隔内分别对任一经过报文转发系统的报文执行:压缩处理单元利用预设的压缩函数对报文的特征域值进行压缩处理,得到报文的特征域值的压缩值;数量统计单元在已经通过压缩处理单元进行过特征域值压缩处理的各报文中,统计具有压缩值的报文数量;报文类确定单元在数量统计单元统计得到的数量与预设时间间隔的商大于预设流量阈值时,确定报文所属的报文类为大流量报文类。可以实现在海量报文中筛选出大流量报文类,进而实现为属于大流量报文类的报文配置内置缓存资源,实现缓存资源利用率最大化,同时有效避免报文拥塞,提高转发系统的转发性能。
通过第二方面中压缩处理单元、数量统计单元和报文类确定单元筛选出大流量报文类后,还可以对属于大流量报文类的报文做相应的优化动作,例如:对大流量报文进行转发管理,将大流量报文分散到不同的通路,降低大流量报文导致通路拥塞的风险;基于优先级,对大流量报文进行报文丢弃,限制大流量报文的流量,减少大流量导致的拥塞。
附图说明
图1为本发明实施例提供的转发系统的报文处理过程示意图;
图2为本发明实施例提供的一种确定大流量报文类的方法流程示意图;
图3为本发明实施例提供的报文的特征域值、压缩函数、压缩值以及压缩值对应的报文的数量累计值之间的对应关系示意图;
图4为本发明实施例提供的一种确定大流量报文类的装置结构示意图;
图5为本发明实施例提供的一种确定大流量报文类的装置结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
本发明的技术方案适用于互联网中的转发系统。转发系统对需要进行转发处理的报文配置缓存资源(缓存资源也可称为存储单元),如图1所示的转发系统的报文处理示意图,转发系统获取报文A的匹配域信息,通过匹配报文的匹配域信息与存储单元的匹配域信息,确定存储单元的动作域中的指示信息,然后根据指示信息对报文进行修改,得到修改后的报文A+,并将修改后的报文A+转发给下级设备。在互联网的转发系统中,属于同一个报文类的报文通常具有相同的修改动作和转发动作,因此可以为属于同一报文类的报文配置相同的缓存资源。其中,存储单元分为以下两类:
一类为成本高、读写速度快、资源相对较少、接口简单的内置缓存资源;
另一类为成本低、读写速度慢、资源相对较多、接口复制的外置缓存资源。
内置缓存资源具有读写速度快、接口简单的特点,比较适合配置给大流量报文,以提高报文的转发性能。由于内置缓存资源相对较少,如何合理配置内置缓存资源至关重要。
通过本发明实施例提供一种确定大流量报文类的方法及装置,可以实现在海量报文中筛选出大流量报文类,进而实现为属于大流量报文类的报文配置内置缓存资源,实现缓存资源利用率最大化,同时有效避免报文拥塞,提高转发系统的转发性能。本发明实施例中,大流量报文类是指流量达到指定阈值的一类报文,该指定阈值可以人为设置,适合为达到指定阈值的报文配置内置缓存资源。
通过本发明实施例提供一种确定大流量报文类的装置及方法,筛选出大流量报文类后,还可以对属于大流量报文类的报文做相应的优化动作(以下将属于大流量报文类的报文简称为大流量报文),例如:对大流量报文进行转发管理,将大流量报文分散到不同的通路,降低大流量报文导致通路拥塞的风险;基于优先级,对大流量报文进行报文丢弃,限制大流量报文的流量,避免大流量报文导致的拥塞。
实施例一
如图2所示,本发明实施例提供一种确定大流量报文类的方法,该方法包括:
S201、在预设时间间隔内,针对任一经过报文转发系统的报文执行以下步骤:
利用预设的压缩函数对报文的特征域值进行压缩处理,得到报文的特征域值的压缩值;
S202、在已经进行过特征域值压缩处理的各报文中,统计具有压缩值的报文数量;
S203、在数量与预设时间间隔的商大于预设流量阈值时,确定报文所属的报文类为大流量报文类。
报文由多个域组成,不同的域定义了报文不同的属性。用于定义报文类的域的集合称报文的特征域,特征域值相同的报文属于同一报文类。例如:一个IPv4报文由源多址接入信道(Source Multiple Access Channel,SMAC)地址、目的多址接入信道(Destination Multiple Access Channel,DMAC)地址、源因特网协议(Source Internet Protocol,SIP)地址和目的因特网协议(DestinationInternet Protocol,DIP)地址等域组成,定义报文类A的特征域为SMAC、DMAC和SIP,SMAC、DMAC和SIP的域值分别为0、1和1,因此,若IPv4报文的SMAC、DMAC和SIP的域值分别为0、1和1,则IPv4报文属于报文类A。
{x0、x1……xn}用于表示报文的特征域,如果报文类A的特征域值为{a0,a1,……,an},报文类B的特征域值为{b0,b1,……,bn},报文类A与报文类B属于不同的报文类,那个一定存在某个域xm(xm为特征域中的一个域),使得报文类A的域xm的域值am不等于报文类B的域xm的域值bm。
如果报文的域xm有vm种不同的域值,那么以{x0、x1……xn}为特征域可以定义v0*v1*……*vn种报文类,随着特征域的增加,定义的报文类的数量会不断的扩大。由于直接统计每种报文类的流量大小,由于报文类的种类是海量的,统计所有报文类的流量的工作量巨大,因此,在本实施例中,通过利用预设的压缩函数对报文的特征域值进行压缩处理,得到报文的特征域值的压缩值,然后根据该压缩值统计报文类的流量。
下面举例说明图2所示的确定大流量报文类的方法:
在预设时间间隔T内,针对转发系统当前处理的报文a,报文a的特征域为X={x0,x1……xn},特征域值为{a0,a1,……,an},F为预设的压缩函数,y=F(X)是报文a的特征域值经过压缩处理得到函数值,即报文a的特征域值的压缩值,y的值域为{0,1}。定义报文的数量累计值的集合C={c0、c1},当y=0时,c0增加一,表示具有压缩值y=0的报文的数量累计值增加一;当y=1时,c1增加一,表示具有压缩值y=1的报文的数量累计值增加一。随着统计的报文数量的增加,c0和c1的值也会逐渐累加。
若报文a的特征域值的压缩值y=1,c1增加一后,使得c1大于预设流量阈值L与预设时间间隔T的商,则确定报文a所属的报文类A属于大流量报文类,可以通过报文a的特征域值{a0,a1,……,an}确定报文类A,即特征域值为{a0,a1,……,an}的所有报文都属于报文类A。
通过上述方法可以看出,本实施例中的大流量报文类可以理解为,在预设时间T内,每秒经过报文转发系统的同一类报文的报文数量超过预设流量阈值L与预设时间T的乘积的报文类。
本实施例中,为避免存在报文b,使报文b的特征域值的压缩值yb与报文a的特征域值的压缩值ya相同,造成具有相同压缩值的报文累计值不准确,预设的压缩函数可以为两个或两个以上压缩函数,经过任一预设的压缩函数进行压缩处理得到的压缩值的值域相同。
本实施例中,当预设的压缩函数为两个或两个以上压缩函数时,在预设时间间隔内,针对任一经过报文转发系统的报文执行以下步骤:
分别利用每个压缩函数对报文的特征域值进行压缩处理,得到报文的特征域值的压缩值组,压缩值组包含依次与每个压缩函数对应的子压缩值;
在已经进行过特征域值压缩处理的各报文中,统计经过相同压缩函数处理得到的具有相同子压缩值的报文数量;
在统计到的报文的任一子压缩值对应的报文数量与预设时间间隔的商均大于预设流量阈值时,确定报文所属的报文类为大流量报文类。
例如:当预设的压缩函数包括F0和F1两个压缩函数时,在预设时间间隔T内,针对转发系统当前处理的报文a,报文a的特征域为X={x0,x1……xn},特征域值为{a0,a1,……,an}。y0=F0(X)是报文a的特征域值经过压缩函数F0处理得到函数值,y0的值域为{0,1},y0对应的报文的数量累计值的集合为C0={c00、c01},当y0=0时,c00增加一,表示经过压缩函数F0处理得到的压缩值y0=0的报文的数量累计值增加一;当y0=1时,c01增加一,表示经过压缩函数F0处理得到的压缩值y0=1的报文的数量累计值增加一。y1=F1(X)是报文a的特征域值经过压缩函数F1处理得到函数值,y1的值域为{0,1},y1对应的报文的数量累计值的集合为C1={c10、c11},当y1=0时,c10增加一,表示经过压缩函数F1处理得到的压缩值y1=0的报文的数量累计值增加一;当y1=1时,c11增加一,表示经过压缩函数F1处理得到的压缩值y1=1的报文的数量累计值增加一。
假设,报文a的特征域值的压缩值y0=1,c01增加一,且y1=0,c10增加一后,使得c01和c10均大于预设流量阈值L与预设时间间隔T的商,则确定报文a所属的报文类A属于大流量报文类;否则,c01和c10中任意一个不满足大于预设流量阈值L与预设时间间隔T的商,都不能将报文a所属的报文类A属于大流量报文类。
同理,当预设的压缩函数包括{F0、F1、……、Fn}的n个压缩函数时,报文a的特征域值为{a0,a1,……,an}、压缩函数{F0、F1、……、Fn}、压缩值{y0,y1,……yn}={F0(X)、F1(X)、……、Fn(X)}、以及压缩值{y0,y1,……yn}对应的报文的数量累计值的集合为{C0,C1,……Cn}之间的对应关系如图3所示。当压缩值{y0,y1,……yn}对应增加后的报文的数量累计值的集合为{C0,C1,……Cn}均大于预设流量阈值L与预设时间间隔T的商时,确定报文a所属的报文类A属于大流量报文类;否则,{C0,C1,……Cn}中任意一个不满足大于预设流量阈值L与预设时间间隔T的商,都不能将报文a所属的报文类A属于大流量报文类。
本实施例中,压缩函数包括以下至少一种:循环冗余校验(CyclicRedundancy Check,CRC)算法、安全哈希算法(Secure Hash Algorithm-1,SHA-1)算法以及摘要算法5(Message-Digest Algorithm 5,MD5)。例如:
1、利用CRC算法对报文的特征域值进行压缩处理,得到报文的特征域值的压缩值,具体包括:
假设报文a的特征域值为{a0,a1,……,a5}为{16’h0,16’h1,16’h2,16’h3,16’h4},将该特征域值按位拼接形成80bit的数Ba,
Ba=80’h0004_0003_0002_0001_0000
其中,80表示数据位宽为80bit,h表示数据使用16进制表示;
Ba经CRC32算法处理后得到32bit的二进制数B,取B的第nbit B[n]作为Fn的函数值。
计算获得Ba经过循环冗余校验CRC后的32位校验码B,
B=32’b00000000_01010101_10101010_11111111
其中,32表示数据位宽为32bit,b表示数据使用2进制表示),则可以定义报文a的特征域值{a0,a1,……,a5}的压缩值如下所示:
y0=F0(X)=B[0]=1’b0;
y1=F1(X)=B[1]=1’b0;
……
y31=F31(X)=B[31]=1’b1。
2、如果报文a的特征域值{a0,a1,……,an}按位拼接后的值Ba很宽时,例如报文的a对应的Ba有512bit,可以使用SHA-1压缩算法。借助SHA-1算法的散列特性,取压缩后的数B=SHA-1(Ba)的各个bit位作为压缩函数的函数值,则可以定义压缩函数:yn=Fn(X)=B[n]。
3、类似与SHA-1算法,本实例中的压缩函数可以采用MD5算法。将报文的特征域值经过形式变换和数据补位后,采用MD5算法压缩得到散阵列数据,取散阵列数据的各个一系列bit位作为压缩函数的压缩值。
需要说明的是,本实施例中的压缩函数并不局限于上述提供的三种压缩函数,还可以是其他压缩函数。
本实施例中,可以通过以下方法,来进一步保证通过上述方法确定的大流量报文类的准确性。需要说明的是,通过上述方法能够确定大流量报文类,上述方法和以下步骤相结合的方案,确定的大流量报文类更加准确。
针对任一大流量报文类执行以下步骤:
统计预设时间间隔内,经过报文转发系统、且属于大流量报文类的报文数量;
在报文数量与预设时间间隔的商小于或等于预设流量阈值时,将大流量报文类更改确定为非大流量报文类。
假设,按照时间的先后顺序确定的大流量报文类包括报文类A0、报文类A1、……报文类Am、……报文类An(可表示成{A0,A1,……Am,……An}),以报文类Am为例,统计预设时间T内,经过报文转发系统、且属于报文类Am的报文数量cm,若cm与T的商大于预设流量阈值L,则进一步判定报文类Am是大流量报文;若cm与T的商小于或等于预设流量阈值L,则将报文类Am更改确定为非大流量报文。由于最先确定的大流量报文类的准确性最高,若报文类Am被进一步判定是大流量报文,则可以确定在报文Am被首次确定是大流量报文类之前确定的大流量报文类均是大流量报文类,即报文类Am被进一步判定是大流量报文后,可以确定{A0,A1,……Am-1}也是大流量报文类。
实施例一中,通过在预设时间间隔内,针对任一经过报文转发系统的报文执行以下步骤:利用预设的压缩函数对报文的特征域值进行压缩处理,得到报文的特征域值的压缩值;在已经进行过特征域值压缩处理的各报文中,统计具有压缩值的报文数量;在数量与预设时间间隔的商大于预设流量阈值时,确定报文所属的报文类为大流量报文类。可以实现在海量报文中筛选出大流量报文类,进而实现为属于大流量报文类的报文配置内置缓存资源,实现缓存资源利用率最大化,同时有效避免报文拥塞,提高转发系统的转发性能。
通过实施例一中提供的确定大流量报文类的方法,筛选出大流量报文类后,还可以对属于大流量报文类的报文做相应的优化动作,例如:对大流量报文进行转发管理,将大流量报文分散到不同的通路,降低大流量报文导致通路拥塞的风险;基于优先级,对大流量报文进行报文丢弃,限制大流量报文的流量,减少大流量导致的拥塞。
实施例二
与实施例一对应的,如图4所示,本发明实施例提供一种确定大流量报文类的装置,该装置在预设时间间隔内分别对任一经过报文转发系统的报文执行,该装置包括:
压缩处理单元401,用于利用预设的压缩函数对报文的特征域值进行压缩处理,得到报文的特征域值的压缩值;
数量统计单元402,用于在已经通过压缩处理单元401进行过特征域值压缩处理的各报文中,统计具有压缩值的报文数量;
报文类确定单元403,用于在数量统计单元402统计得到的数量与预设时间间隔的商大于预设流量阈值时,确定报文所属的报文类为大流量报文类。
报文由多个域组成,不同的域定义了报文不同的属性。用于定义报文类的域的集合称报文的特征域,特征域值相同的报文属于同一报文类。例如:一个IPv4报文由源多址接入信道(Source Multiple Access Channel,SMAC)地址、目的多址接入信道(Destination Multiple Access Channel,DMAC)地址、源因特网协议(Source Internet Protocol,SIP)地址和目的因特网协议(DestinationInternet Protocol,DIP)地址等域组成,定义报文类A的特征域为SMAC、DMAC和SIP,SMAC、DMAC和SIP的域值分别为0、1和1,因此,若IPv4报文的SMAC、DMAC和SIP的域值分别为0、1和1,则IPv4报文属于报文类A。
{x0、x1……xn}用于表示报文的特征域,如果报文类A的特征域值为{a0,a1,……,an},报文类B的特征域值为{b0,b1,……,bn},报文类A与报文类B属于不同的报文类,那个一定存在某个域xm(xm为特征域中的一个域),使得报文类A的域xm的域值am不等于报文类B的域xm的域值bm。
如果报文的域xm有vm种不同的域值,那么以{x0、x1……xn}为特征域可以定义v0*v1*……*vn种报文类,随着特征域的增加,定义的报文类的数量会不断的扩大。由于直接统计每种报文类的流量大小,由于报文类的种类是海量的,统计所有报文类的流量的工作量巨大,因此,在本实施例中,通过压缩处理单元401利用预设的压缩函数对报文的特征域值进行压缩处理,得到报文的特征域值的压缩值,然后根据该压缩值统计报文类的流量。
下面举例说明图4所示的装置确定大流量报文类的过程:
在预设时间间隔T内,针对转发系统当前处理的报文a,报文a的特征域为X={x0,x1……xn},特征域值为{a0,a1,……,an},F为预设的压缩函数,y=F(X)是报文a的特征域值经过压缩处理单元401压缩处理得到函数值,即报文a的特征域值的压缩值,y的值域为{0,1}。数量统计单元402定义报文的数量累计值的集合C={c0、c1},当y=0时,c0增加一,表示具有压缩值y=0的报文的数量累计值增加一;当y=1时,c1增加一,表示具有压缩值y=1的报文的数量累计值增加一。随着统计的报文数量的增加,c0和c1的值也会逐渐累加。
若报文a的特征域值的压缩值y=1,c1增加一后,使得c1大于预设流量阈值L与预设时间间隔T的商,则报文类确定单元403确定报文a所属的报文类A属于大流量报文类,可以通过报文a的特征域值{a0,a1,……,an}确定报文类A,即特征域值为{a0,a1,……,an}的所有报文都属于报文类A。
通过上述过程可以看出,本实施例中的大流量报文类可以理解为,在预设时间T内,每秒经过报文转发系统的同一类报文的报文数量超过预设流量阈值L与预设时间T的乘积的报文类。
本实施例中,为避免存在报文b,使报文b的特征域值的压缩值yb与报文a的特征域值的压缩值ya相同,造成具有相同压缩值的报文累计值不准确,预设的压缩函数可以为两个或两个以上压缩函数,经过任一预设的压缩函数进行压缩处理得到的压缩值的值域相同。
本实施例中,当预设的压缩函数为两个或两个以上压缩函数时,压缩处理单元401、数量统计单元402和报文类确定单元403在预设时间间隔内,针对任一经过报文转发系统的报文执行以下过程:
压缩处理单元401分别利用每个压缩函数对报文的特征域值进行压缩处理,得到报文的特征域值的压缩值组,压缩值组包含依次与每个压缩函数对应的子压缩值;
数量统计单元402在已经通过压缩处理单元401进行过特征域值压缩处理的各报文中,统计经过相同压缩函数处理得到的具有相同子压缩值的报文数量;
在数量统计单元402统计得到的统计到的报文的任一子压缩值对应的报文数量与预设时间间隔的商均大于预设流量阈值时,报文类确定单元403确定报文所属的报文类为大流量报文类。
例如:当预设的压缩函数包括F0和F1两个压缩函数时,在预设时间间隔T内,针对转发系统当前处理的报文a,报文a的特征域为X={x0,x1……xn},特征域值为{a0,a1,……,an}。y0=F0(X)是报文a的特征域值通过压缩处理单元401利用压缩函数F0处理得到函数值,y0的值域为{0,1}。数量统计单元402定义y0对应的报文的数量累计值的集合为C0={c00、c01},当y0=0时,数量统计单元402将c00增加一,表示经过压缩函数F0处理得到的压缩值y0=0的报文的数量累计值增加一;当y0=1时,数量统计单元402将c01增加一,表示经过压缩函数F0处理得到的压缩值y0=1的报文的数量累计值增加一。同理,y1=F1(X)是报文a的特征域值通过压缩处理单元401利用压缩函数F1处理得到函数值,y1的值域为{0,1}。数量统计单元402定义y1对应的报文的数量累计值的集合为C1={c10、c11},当y1=0时,数量统计单元402将c10增加一,表示经过压缩函数F1处理得到的压缩值y1=0的报文的数量累计值增加一;当y1=1时,数量统计单元402将c11增加一,表示经过压缩函数F1处理得到的压缩值y1=1的报文的数量累计值增加一。
假设,报文a的特征域值的压缩值y0=1,c01增加一,且y1=0,c10增加一后,使得c01和c10均大于预设流量阈值L与预设时间间隔T的商,则报文类确定单元403确定报文a所属的报文类A属于大流量报文类;否则,c01和c10中任意一个不满足大于预设流量阈值L与预设时间间隔T的商,报文类确定单元403都不能将报文a所属的报文类A属于大流量报文类。
同理,当预设的压缩函数包括{F0、F1、……、Fn}的n个压缩函数时,报文a的特征域值为{a0,a1,……,an}、压缩函数组{F0、F1、……、Fn}、压缩值{y0,y1,……yn}={F0(X)、F1(X)、……、Fn(X)}、以及压缩值{y0,y1,……yn}对应的报文的数量累计值的集合为{C0,C1,……Cn}之间的对应关系如图3所示。当压缩值{y0,y1,……yn}对应增加后的报文的数量累计值的集合为{C0,C1,……Cn}均大于预设流量阈值L与预设时间间隔T的商时,报文类确定单元403确定报文a所属的报文类A属于大流量报文类;否则,{C0,C1,……Cn}中任意一个不满足大于预设流量阈值L与预设时间间隔T的商,报文类确定单元403都不能将报文a所属的报文类A属于大流量报文类。
本实施例中,压缩函数包括以下至少一种:循环冗余校验CRC算法、安全哈希算法SHA-1算法以及摘要算法5(MD5)。
本实施例中,报文类确定单元403确定报文所属的报文类为大流量报文类后,可以通过数量统计单元402和报文类确定单元403的如下操作,来进一步保证确定的大流量报文类的准确性。
数量统计单元402和报文类确定单元403分别对任一大流量报文类执行:
数量统计单元402统计预设时间间隔内,经过报文转发系统、且属于大流量报文类的报文数量;
在数量统计单元402统计的报文数量与预设时间间隔的商小于或等于预设流量阈值时,报文类确定单元403将大流量报文类更改确定为非大流量报文类。
假设,按照时间的先后顺序,报文类确定单元403确定的大流量报文类包括报文类A0、报文类A1、……报文类Am、……报文类An(可表示成{A0,A1,……Am,……An}),以报文类Am为例,数量统计单元402统计预设时间T内,经过报文转发系统、且属于报文类Am的报文数量cm,若cm与T的商大于预设流量阈值L,则报文类确定单元403进一步判定报文类Am是大流量报文;若cm与T的商小于或等于预设流量阈值L,则报文类确定单元403将报文类Am更改确定为非大流量报文。由于最先确定的大流量报文类的准确性最高,若报文类Am被进一步判定是大流量报文,则报文类确定单元403可以确定在报文Am被首次确定是大流量报文类之前被确定的大流量报文类均是大流量报文类,即报文类Am被进一步判定是大流量报文后,可以确定{A0,A1,……Am-1}也是大流量报文类。
实施例二中,通过压缩处理单元401、数量统计单元402和报文类确定单元403,具体的,压缩处理单元401、数量统计单元402和报文类确定单元403在预设时间间隔内分别对任一经过报文转发系统的报文执行:压缩处理单元401利用预设的压缩函数对报文的特征域值进行压缩处理,得到报文的特征域值的压缩值;数量统计单元402在已经通过压缩处理单元401进行过特征域值压缩处理的各报文中,统计具有压缩值的报文数量;在数量统计单元402统计得到的数量与预设时间间隔的商大于预设流量阈值时,报文类确定单元403确定报文所属的报文类为大流量报文类。可以实现在海量报文中筛选出大流量报文类,进而实现为属于大流量报文类的报文配置内置缓存资源,实现缓存资源利用率最大化,同时有效避免报文拥塞,提高转发系统的转发性能。
通过实施例二中的压缩处理单元401、数量统计单元402和报文类确定单元403筛选出大流量报文类后,还可以对属于大流量报文类的报文做相应的优化动作,例如:对大流量报文进行转发管理,将大流量报文分散到不同的通路,降低大流量报文导致通路拥塞的风险;基于优先级,对大流量报文进行报文丢弃,限制大流量报文的流量,减少大流量导致的拥塞。
实施例三
与实施例一对应的,如图5所示,本发明实施例提供一种确定大流量报文类的装置,该装置在预设时间间隔内分别对任一经过报文转发系统的报文执行,该装置包括:
存储器501,用于存储预设的压缩函数;
处理器502,用于利用存储器501存储的预设的压缩函数,对报文的特征域值进行压缩处理,得到报文的特征域值的压缩值;
存储器501,还用于存储处理器502得到的报文的特征域值的压缩值;
处理器502,还用于在已经进行过特征域值压缩处理的各报文中,根据存储器501存储的压缩值,统计具有该压缩值的报文数量;以及
在统计的报文数量与预设时间间隔的商大于预设流量阈值时,确定报文所属的报文类为大流量报文类。
本实施例中,压缩函数包括两个或两个以上压缩函数时,经过任一压缩函数对报文的特征域值进行压缩处理得到的压缩值的值域相同。
本实施例中,压缩函数包括两个或两个以上压缩函数;
处理器502利用存储器501存储的预设的压缩函数,对报文的特征域值进行压缩处理,得到报文的特征域值的压缩值时,具体用于:
分别利用每个压缩函数对报文的特征域值进行压缩处理,得到报文的特征域值的压缩值组,压缩值组包含依次与每个压缩函数对应的子压缩值;
处理器502在已经进行过特征域值压缩处理的各报文中,根据存储器501存储的压缩值,统计具有该压缩值的报文数量时,具体用于:
在已经进行过特征域值压缩处理的各报文中,统计经过相同压缩函数处理得到的具有相同子压缩值的报文数量;
处理器502在数量与预设时间间隔的商大于预设流量阈值时,确定报文所属的报文类为大流量报文类,具体用于:
在统计到的报文的任一子压缩值对应的报文数量与预设时间间隔的商均大于预设流量阈值时,确定报文所属的报文类为大流量报文类。
本实施例中,处理器502确定报文所属的报文类为大流量报文类后,还用于:
对任一大流量报文类执行:
统计预设时间间隔内,经过报文转发系统、且属于大流量报文类的报文数量;
在报文数量与预设时间间隔的商小于或等于预设流量阈值时,将大流量报文类更改确定为非大流量报文类。
本实施例中,压缩函数包括以下至少一种:
循环冗余校验CRC算法、安全哈希算法SHA-1算法以及摘要MD5算法。
本实施例中,处理器502在确定报文所属的报文类为大流量报文类之后,还用于:
为报文配置内置缓存资源。
实施例三中,通过存储器501和处理器502,可以实现在海量报文中筛选出大流量报文类,进而实现为属于大流量报文类的报文配置内置缓存资源,实现缓存资源利用率最大化,同时有效避免报文拥塞,提高转发系统的转发性能。
通过实施例二中的存储器501和处理器502筛选出大流量报文类后,还可以对属于大流量报文类的报文做相应的优化动作,例如:对大流量报文进行转发管理,将大流量报文分散到不同的通路,降低大流量报文导致通路拥塞的风险;基于优先级,对大流量报文进行报文丢弃,限制大流量报文的流量,减少大流量导致的拥塞。
本领域内的技术人员应明白,本发明的实施例可提供为方法、系统、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
尽管已描述了本发明的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例作出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本发明范围的所有变更和修改。
显然,本领域的技术人员可以对本发明实施例进行各种改动和变型而不脱离本发明实施例的精神和范围。这样,倘若本发明实施例的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。
Claims (12)
1.一种确定大流量报文类的方法,其特征在于,该方法包括:
在预设时间间隔内,针对任一经过报文转发系统的报文执行以下步骤:
利用预设的压缩函数对所述报文的特征域值进行压缩处理,得到所述报文的特征域值的压缩值;
在已经进行过特征域值压缩处理的各报文中,统计具有所述压缩值的报文数量;
在所述数量与所述预设时间间隔的商大于预设流量阈值时,确定所述报文所属的报文类为大流量报文类。
2.如权利要求1所述的方法,其特征在于,所述压缩函数包括两个或两个以上压缩函数时,经过任一所述压缩函数对所述报文的特征域值进行压缩处理得到的压缩值的值域相同。
3.如权利要求1或2所述的方法,其特征在于,所述压缩函数包括两个或两个以上压缩函数;
利用预设的压缩函数对所述报文的特征域值进行压缩处理,得到所述报文的特征域值的压缩值,包括:
分别利用每个所述压缩函数对所述报文的特征域值进行压缩处理,得到所述报文的特征域值的压缩值组,所述压缩值组包含依次与每个压缩函数对应的子压缩值;
在已经进行过特征域值压缩处理的各报文中,统计具有所述压缩值的报文数量,包括:
在已经进行过特征域值压缩处理的各报文中,统计经过相同压缩函数处理得到的具有相同子压缩值的报文数量;
在所述数量与所述预设时间间隔的商大于预设流量阈值时,确定所述报文所属的报文类为大流量报文类,包括:
在统计到的所述报文的任一子压缩值对应的报文数量与所述预设时间间隔的商均大于预设流量阈值时,确定所述报文所属的报文类为大流量报文类。
4.如权利要求1至3任一权项所述的方法,其特征在于,将所述报文类确定为大流量报文类后,该方法还包括:
针对任一所述大流量报文类执行以下步骤:
统计所述预设时间间隔内,经过所述报文转发系统、且属于所述大流量报文类的报文数量;
在所述报文数量与所述预设时间间隔的商小于或等于预设流量阈值时,将所述大流量报文类更改确定为非大流量报文类。
5.如权利要求1至4任一权项所述的方法,其特征在于,所述压缩函数包括以下至少一种:
循环冗余校验CRC算法、安全哈希算法SHA-1算法以及摘要MD5算法。
6.如权利要求1至5任一权项所述的方法,其特征在于,在确定所述报文所属的报文类为大流量报文类之后,还包括:
为所述报文配置内置缓存资源。
7.一种确定大流量报文类的装置,其特征在于,所述装置在预设时间间隔内分别对任一经过报文转发系统的报文执行,所述装置包括:
压缩处理单元,用于利用预设的压缩函数对所述报文的特征域值进行压缩处理,得到所述报文的特征域值的压缩值;
数量统计单元,用于在已经通过所述压缩处理单元进行过特征域值压缩处理的各报文中,统计具有所述压缩值的报文数量;
报文类确定单元,用于在所述数量统计单元统计得到的所述数量与所述预设时间间隔的商大于预设流量阈值时,确定所述报文所属的报文类为大流量报文类。
8.如权利要求7所述的装置,其特征在于,所述压缩函数包括两个或两个以上压缩函数时,经过任一所述压缩函数对所述报文的特征域值进行压缩处理得到的压缩值的值域相同。
9.如权利要求7或8所述的装置,其特征在于,所述压缩函数包括两个或两个以上压缩函数;
所述压缩处理单元具体用于:
分别利用每个所述压缩函数对所述报文的特征域值进行压缩处理,得到所述报文的特征域值的压缩值组,所述压缩值组包含依次与每个压缩函数对应的子压缩值;
所述数量统计单元具体用于:
在已经通过所述压缩处理单元进行过特征域值压缩处理的各报文中,统计经过相同压缩函数处理得到的具有相同子压缩值的报文数量;
所述报文类确定单元具体用于:
在所述数量统计单元统计得到的所述报文的任一子压缩值对应的报文数量与所述预设时间间隔的商均大于预设流量阈值时,确定所述报文所属的报文类为大流量报文类。
10.如权利要求7至9任一权项所述的装置,其特征在于,所述报文类确定单元确定所述报文所属的报文类为大流量报文类后,所述数量统计单元和所述报文类确定单元分别对任一所述大流量报文类执行:
所述数量统计单元,还用于:统计所述预设时间间隔内,经过所述报文转发系统、且属于所述大流量报文类的报文数量;
所述报文类确定单元,还用于:在所述数量统计单元统计的所述报文数量与所述预设时间间隔的商小于或等于预设流量阈值时,将所述大流量报文类更改确定为非大流量报文类。
11.如权利要求7至10任一权项所述的装置,其特征在于,所述压缩函数包括以下至少一种:
循环冗余校验CRC算法、安全哈希算法SHA-1算法以及摘要MD5算法。
12.如权利要求7至11任一权项所述的装置,其特征在于,所述报文类确定单元在确定所述报文所属的报文类为大流量报文类之后,还用于:
为所述报文配置内置缓存资源。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510120960.6A CN104734990B (zh) | 2015-03-19 | 2015-03-19 | 一种确定大流量报文类的方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510120960.6A CN104734990B (zh) | 2015-03-19 | 2015-03-19 | 一种确定大流量报文类的方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN104734990A true CN104734990A (zh) | 2015-06-24 |
CN104734990B CN104734990B (zh) | 2018-10-30 |
Family
ID=53458437
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201510120960.6A Active CN104734990B (zh) | 2015-03-19 | 2015-03-19 | 一种确定大流量报文类的方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN104734990B (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106357547A (zh) * | 2016-09-08 | 2017-01-25 | 重庆邮电大学 | 一种基于流切片的软件定义网络拥塞控制算法 |
Citations (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20050060418A1 (en) * | 2003-09-17 | 2005-03-17 | Gennady Sorokopud | Packet classification |
CN101227318A (zh) * | 2007-12-04 | 2008-07-23 | 东南大学 | 高速网络流量的超点实时检测方法 |
CN101257456A (zh) * | 2008-03-31 | 2008-09-03 | 华为技术有限公司 | 提高压缩报文转发性能的方法及装置 |
CN101980489A (zh) * | 2010-10-28 | 2011-02-23 | 中兴通讯股份有限公司 | 一种防止协议报文攻击cpu的保护方法及系统 |
CN101478481B (zh) * | 2009-01-07 | 2011-04-06 | 成都市华为赛门铁克科技有限公司 | 缓存管理方法及装置、数据转发系统 |
CN102025563A (zh) * | 2010-11-30 | 2011-04-20 | 东南大学 | 基于哈希冲突补偿的网络大流识别方法 |
CN102299850A (zh) * | 2011-08-29 | 2011-12-28 | 中兴通讯股份有限公司 | 保护cpu的方法和装置 |
CN103297298A (zh) * | 2013-06-27 | 2013-09-11 | 山东山大电力技术有限公司 | 用于智能变电站的网络风暴实时快速检测方法 |
CN103580959A (zh) * | 2013-11-15 | 2014-02-12 | 大连梯耐德网络技术有限公司 | 一种分布式统计上报的实现方法 |
CN104348811A (zh) * | 2013-08-05 | 2015-02-11 | 深圳市腾讯计算机系统有限公司 | 分布式拒绝服务攻击检测方法及装置 |
-
2015
- 2015-03-19 CN CN201510120960.6A patent/CN104734990B/zh active Active
Patent Citations (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20050060418A1 (en) * | 2003-09-17 | 2005-03-17 | Gennady Sorokopud | Packet classification |
CN101227318A (zh) * | 2007-12-04 | 2008-07-23 | 东南大学 | 高速网络流量的超点实时检测方法 |
CN101257456A (zh) * | 2008-03-31 | 2008-09-03 | 华为技术有限公司 | 提高压缩报文转发性能的方法及装置 |
CN101478481B (zh) * | 2009-01-07 | 2011-04-06 | 成都市华为赛门铁克科技有限公司 | 缓存管理方法及装置、数据转发系统 |
CN101980489A (zh) * | 2010-10-28 | 2011-02-23 | 中兴通讯股份有限公司 | 一种防止协议报文攻击cpu的保护方法及系统 |
CN102025563A (zh) * | 2010-11-30 | 2011-04-20 | 东南大学 | 基于哈希冲突补偿的网络大流识别方法 |
CN102299850A (zh) * | 2011-08-29 | 2011-12-28 | 中兴通讯股份有限公司 | 保护cpu的方法和装置 |
CN103297298A (zh) * | 2013-06-27 | 2013-09-11 | 山东山大电力技术有限公司 | 用于智能变电站的网络风暴实时快速检测方法 |
CN104348811A (zh) * | 2013-08-05 | 2015-02-11 | 深圳市腾讯计算机系统有限公司 | 分布式拒绝服务攻击检测方法及装置 |
CN103580959A (zh) * | 2013-11-15 | 2014-02-12 | 大连梯耐德网络技术有限公司 | 一种分布式统计上报的实现方法 |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106357547A (zh) * | 2016-09-08 | 2017-01-25 | 重庆邮电大学 | 一种基于流切片的软件定义网络拥塞控制算法 |
Also Published As
Publication number | Publication date |
---|---|
CN104734990B (zh) | 2018-10-30 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111984395B (zh) | 一种数据迁移方法、系统及计算机可读存储介质 | |
US11188462B2 (en) | Method, device, and computer program product for managing address mapping in storage system | |
US8953600B2 (en) | Telemetry data routing | |
KR102594657B1 (ko) | 비순차적 리소스 할당을 구현하는 방법 및 장치 | |
CN104239518A (zh) | 重复数据删除方法和装置 | |
CN110297810B (zh) | 一种流数据处理方法、装置及电子设备 | |
CN103731368A (zh) | 一种处理报文的方法和装置 | |
CN104580202B (zh) | 报文的匹配方法和装置 | |
CN106921578A (zh) | 一种转发表项的生成方法和装置 | |
CN104991822A (zh) | 一种管理内存的方法和装置 | |
CN107391039B (zh) | 一种数据对象存储方法和装置 | |
US10601711B1 (en) | Lens table | |
CN104519145A (zh) | 一种地址资源管理方法、系统和dhcp服务器 | |
CN104270287A (zh) | 一种报文乱序检测方法及装置 | |
CN114297630A (zh) | 恶意数据的检测方法、装置、存储介质及处理器 | |
CN106411545A (zh) | 一种业务属性的计数方法及装置 | |
CN108123804B (zh) | 一种数据解密的执行方法、装置及介质 | |
CN104734990A (zh) | 一种确定大流量报文类的方法及装置 | |
CN104468855A (zh) | 地址解析协议arp报文的处理方法和装置 | |
US12019606B1 (en) | Hash operation manipulations | |
CN105704207A (zh) | 一种生成唯一标识的方法、终端和网络侧 | |
CN104853447A (zh) | 一种数据信息处理方法和装置 | |
US20170046306A1 (en) | Data processing method, processor, and data processing device | |
US8595239B1 (en) | Minimally disruptive hash table | |
US10355994B1 (en) | Lens distribution |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |