【技术实现步骤摘要】
一种针对大象流与突变流的高效图流测量方法
[0001]本专利技术属于网络测量领域,特别针对在拓扑网络中对大象流与突变流的高效测量问题。
技术介绍
[0002]随着社交网络,大规模集群性网络以及物联网的兴起,海量的数据流给数据测量、存储和管理带来了巨大的挑战。因此,越来越多的数据被当作图来处理,大量的流总结被越来越多的采用来处理图数据。在流图的环境中,连接性在数据处理应用中起着至关重要的作用,例如分析日志流以进行实时故障排除,以及在社交网络中推荐你可能认识的朋友。图流是庞大而动态的,因此,将所有必要的数据存储在内存中进行实时查询是不可行的。为了处理动态的流媒体数据,在数据流应用的背景中需要快速和近似的答案。
[0003]近年来,随着互联网用户数量的增加,大象流和突变流出现得越加频繁。大象流一般指在固定时间内,权重大于阈值的流。突变流是指两个相邻的时间间隔内数据流权重变化超过阈值的数据流。对图流测量来说,大象流查询包含频繁边查询(heavy hitter edge query)与频繁点查询(heavy hitter node query)。大象流查询可以实时监测网络状态,以及帮助网络流量进行有效地管理,进而可以减少拥塞以及避免流量攻击。与大象流查询类似,图流测量的突变流查询包含突变边查询(heavy changer edge query)与突变点查询(heavy changernode query)。当网络中出现故障时会产生大量的突变流,因此快速、准确地找到突变流可以帮助排查故障,维护网络的安全稳定。
专 ...
【技术保护点】
【技术特征摘要】
1.一种针对大象流与突变流的高效图流测量方法,其特征在于,首先构建测量结构,并向所述的测量结构中插入图流信息,然后利用测量结构进行图流信息查询;所述的测量结构由布谷鸟矩阵(Cuckoo Matrix)、缓冲矩阵(Buffer Matrix)以及标记矩阵(Mark Matrix)三部分构成;所述布谷鸟矩阵由原始桶与备选桶构成,所述原始桶和备选桶中,每个桶均包含许多单元来存储图流的不同边,所述原始桶与备选桶记录了边的指纹对以及权重,所述测量结构保留了图流的节点信息;向所述的测量结构中插入图流信息是:将图流中的任意一条边存储在原始桶中,当原始桶的容量达到上限时,随机的将原始桶中的一条边驱逐,根据该驱逐边的指纹对计算备选桶的坐标,之后,将该驱逐边插入与坐标对应的备选桶中;若某条边在布谷鸟矩阵中没有存放的位置时,则将该边存放到所述的缓冲矩阵中;当一条边的权重达到阈值时,则将该边存放到所述的标记矩阵中;利用测量结构进行图流信息查询包括针对大象流与突变流的图流信息查询,针对大象流的图流信息查询包括频繁边查询和频繁点查询中的一种或多种;针对突变流的图流信息查询包括突变边查询和突变点查询中的一种或多种;所述的频繁边查询是:当给定一条频繁边E=(s,d;w)时,首先,根据哈希函数计算出边E的源节点与目的节点的哈希值与指纹对;然后,得到标记矩阵中的存储位置的对应坐标;之后,将边E的指纹对与对应桶中的每个单元中记录的指纹对相匹配;如果相同,则得到边E对应的权重w;否则,则代表边E不存在于标记矩阵中;所述频繁点查询是:当给定一个节点s时,首先计算出该节点对应的哈希值与指纹,从而确定布谷鸟矩阵、缓冲矩阵以及标记矩阵中存储位置的对应坐标;然后,遍历对应坐标中的所有桶,将节点s的指纹和对应桶中的每个单元中记录的指纹相匹配;如果源节点的指纹与节点s的指纹相同,则该节点对应的权重就被添加至节点查询的权重;遍历完成,查询所返回的权重即频繁节点s对应的权重;所述突变边查询是:将两个相邻周期的数据流输入两个查询结构,并且进行边查询,若同一条边的两次查询的差的绝对值大于阈值,则该边为突变边;所述突变点查询是:将两个相邻周期的数据流输入两个查询结构,并且进行节点查询,若同一节点的两次查询的差的绝对值大于阈值,则该节点为突变点。2.根据权利要求1所述的针对大象流与突变流的高效图流测量方法,其特征在于,向测量结构中进行图流信息插入包括以下步骤:步骤1
‑
1)接受图流中的任意一条边E=(s,d;w),计算该边E的源节点s和目的节点d的哈希值和指纹;步骤1
‑
2)根据步骤1
‑
1)计算的哈希值得到原始桶在布谷鸟矩阵中的坐标;步骤1
‑
3)根据步骤1
‑
1)计算的哈希值和指纹异或得到备选桶在布谷鸟矩阵中的坐标;步骤1
‑
4)根据步骤1
‑
2)和步骤1
‑
3)计算的坐标找到布谷鸟矩阵中对应的原始桶或备选桶,在桶内寻找边E或者一个空的单元;步骤1
‑
5)如果找到边E,则更新边E所在单元中的指纹对以及权重;如果找到一个空单元,则将边E插入该单元中,并更新该单元中的指纹对以及权重;执行步骤1
‑
10);步骤1
‑
6)如果均没有找到边E和一个空的单元,步骤1
‑
7)则随机从当前桶中驱逐任意一条边E
′
,并将总驱逐次数加1,
步骤1
‑
8)根据边E
′
,计算出该边对应的另一个桶在布谷鸟矩阵中的坐标,并在该桶内寻找边E
′
或者一个空的单元;如果找到边E
′
,更新边E
′
所在单元中的指纹对以及权重;如果找到了一个空单元,将边E
′
插入,并更新该单元中的指纹对以及权重,执行步骤1
‑
...
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。