CN111200542B - 一种基于确定性替换策略的网络流量管理方法及系统 - Google Patents

一种基于确定性替换策略的网络流量管理方法及系统 Download PDF

Info

Publication number
CN111200542B
CN111200542B CN202010008618.8A CN202010008618A CN111200542B CN 111200542 B CN111200542 B CN 111200542B CN 202010008618 A CN202010008618 A CN 202010008618A CN 111200542 B CN111200542 B CN 111200542B
Authority
CN
China
Prior art keywords
stream
flow
counter
counters
section
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.)
Active
Application number
CN202010008618.8A
Other languages
English (en)
Other versions
CN111200542A (zh
Inventor
王睿
刘冬兰
马雷
刘新
陈剑飞
贾智平
杜洪超
王文婷
张昊
赵晓红
赵洋
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
State Grid Corp of China SGCC
Electric Power Research Institute of State Grid Shandong Electric Power Co Ltd
Original Assignee
State Grid Corp of China SGCC
Electric Power Research Institute of State Grid Shandong Electric Power Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by State Grid Corp of China SGCC, Electric Power Research Institute of State Grid Shandong Electric Power Co Ltd filed Critical State Grid Corp of China SGCC
Priority to CN202010008618.8A priority Critical patent/CN111200542B/zh
Publication of CN111200542A publication Critical patent/CN111200542A/zh
Application granted granted Critical
Publication of CN111200542B publication Critical patent/CN111200542B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/08Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters
    • H04L43/0876Network utilisation, e.g. volume of load or congestion level
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/02Capturing of monitoring data
    • H04L43/026Capturing of monitoring data using flow identification
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/02Capturing of monitoring data
    • H04L43/028Capturing of monitoring data by filtering

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Environmental & Geological Engineering (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

本发明公开了一种基于确定性替换策略的网络流量管理方法及系统,方法包括以下过程:数据结构设计:数据结构划分为L部分和S部分,L部分和S部分分别用于统计大流及小流数目;流插入及更新操作:将L部分和S部分的计数器都置为空,所有到来的新流f都将被视为大流,在L部分进行统计;流替换操作:当一个大流fm在S部分出现,且当L部分没有空余项时执行将该流从S部分移入L部分的流替换操作;流查询操作:查询L部分和S部分,并返回对应的计数器值。本发明能够在网络流量变化时动态地检测大流,提高了检测精度和错误率。

Description

一种基于确定性替换策略的网络流量管理方法及系统
技术领域
本发明涉及一种基于确定性替换策略的网络流量管理方法及系统,属于网络流量管理技术领域。
背景技术
泛在电力物联网是围绕电力系统各环节,充分应用移动互联、人工智能等现代信息技术、先进通信技术,实现电力系统各个环节万物互联、人机交互,具有状态全面感知、信息高效处理、应用便捷灵活特征的智慧服务系统。然而,随着泛在电力物联网网络技术的不断发展,物联终端的广泛接入,网络应用的日趋多样化,网络流量规模将呈现爆炸式增长,网络安全问题日益突出。恶意攻击产生的异常流量轻则影响网络服务的正常运行,重则引发大规模网络瘫痪,造成严重的经济损失。网络测量是网络管理中必不可少的组成部分,通过收集网络中各种维度的信息,使得网络管理者能够实现异常流量检测、流量工程、负载均衡等网络管理任务。
在现有网络测量架构中,针对流的测量是最常用的测量方法。流是一组具有相同特征的网络包的集合,通常可以把具有相同IP五元组<源IP地址,源端口,目的IP地址,目的端口,传输层协议>的数据包定义为一个流。通过统计经过每个网络节点的流的数据包数目,能够掌握目前网络的基本情况,并作出针对性的控制措施,如检测所有流中的异常流,可以识别网络攻击,并对相应流量进行限速或丢包处理。目前流测量方法主要有基于计数器和基于sketch两种。
基于计数器的测量方法对每一个流分配一个计数器,每当一个属于这个流的数据包到来时,更新其计数器;如果数据包不属于任何一个计数器,则从数据包头部提取出可用于定义流的ID,记录此ID,并为其分配一个新的计数器。在嵌入式网络设备,如交换机或路由器的存储空间受限,而网络中的流的数目非常大,不可能统计全部流。因此研究者提出了改进机制:使用掩码或通配符的方法将大量的流聚集在一起,从而减少所需计数器的数目。然而,利用掩码或通配符获得的统计结果粒度太大,损失了精度,只统计大流完全损失了小流的信息,并且测量准确度和区分大流小流的方法的表现密切相关。
基于sketch的方法从另一个方面出发,来解决嵌入式设备空间限制的问题。sketch是一种结构紧凑的数据结构,和基于计数器的方法不同,sketch不再保留流的ID信息,而且计数器由若干个流共享,从而显著降低了空间开销。sketch通过hash的方法,每当一个数据包到来,提取此数据包的ID信息,对其做一次或多次hash处理,得到这个数据包所属的流和计数器之间的映射关系,再更新对应的计数器,在一个计数器上出现hash冲突的流共享此计数器。sketch能够用固定大小空间来统计动态变化的流量,同时能对测量的精度提供概率上的保证。然而,基于sketch的方法为了节约空间没有存储ID,导致无法主动反馈流信息,大部分sketch只能被动接受查询或线下分析。
发明内容
为了解决上述问题,本发明提出了一种基于确定性替换策略的网络流量管理方法及系统,能够在网络流量变化时动态地检测大流,提高了检测精度和错误率。
本发明解决其技术问题采取的技术方案是:
一方面,本发明实施例提供的一种基于确定性替换策略的网络流量管理方法,包括以下过程:
数据结构设计:数据结构划分为L部分和S部分,L部分和S部分分别用于统计大流及小流数目;
流插入及更新操作:将L部分和S部分的计数器都置为空,所有到来的新流f都将被视为大流,在L部分进行统计;
流替换操作:当一个大流fm在S部分出现,且当L部分没有空余项时执行将该流从S部分移入L部分的流替换操作;
流查询操作:查询L部分和S部分,并返回对应的计数器值。
作为本实施例一种可能的实现方式,在数据结构设计过程中,L部分的管理条目包含流ID和流计数器值,分别用来记录流标识和流的数据包数目;S部分的管理条目包含一个基于sketch的一维共享计数器数组,每一个计数器由在此位置具有hash冲突的流所共享。
作为本实施例一种可能的实现方式,所述流插入及更新操作的过程包括以下步骤:
对于新流f,从第一个数据包中根据IP五元组提取ID标识fi,将(fi,1)插入到L部分中;
对于位于L部分的任意流fj,当属于该流的s个数据包到来时,对L部分中该流对应的计数器值增加s;
当L部分不存在空闲空间时,将新流fk纳入S部分进行计数。
作为本实施例一种可能的实现方式,在将新流fk纳入S部分进行计数过程中,从数据包中根据IP五元组提取ID标识,利用hash函数计算计数器下标位置,当每一个属于fk的数据包到来时,对该计数器进行加1操作。
作为本实施例一种可能的实现方式,所述流替换操作的过程包括以下步骤:
当流fm在S部分执行完流更新操作后,获取对应的计数器值;
如果fm计数器大于L部分所有计数器的最小值,则将L部对应的最小流fmin替换为fm,并对原有S部分计数器值置为0;
计算fmin在S部分的计数器位置,将fmin移入S部分,用fmin计数器的值替换原该位置的计数器的值。
作为本实施例一种可能的实现方式,所述流查询操作的过程包括以下步骤:
查询流fi时首先根据ID遍历查询L部分,如果存在则返回对应计数器值,否则遍历查询S部分;
根据流fi的ID遍历查询S部分,并返回在S部分对应的计数器值。
作为本实施例一种可能的实现方式,面向资源有限的网络设备,在数据结构设计过程中,将L部分所有的计数器都存放由hash表实现的数组中,在替换过程中利用局部最小值替代全局最小值。
作为本实施例一种可能的实现方式,所述流插入及更新操作的过程包括以下步骤:
当在L部分插入新流fi时,使用hash函数定位流在L部分中的位置;
检查hash表中该位置是否已经存在元素,如果该位置内容为空,则插入(fi,1),并进行后续的数据包计数操作,否则执行下一步;
如果该位置所在的计数器不为空,则至多循环查找d个计数器,如果d个计数器存在某个位置内容为空,则在此处插入(fi,1),记录ID信息,并进行后续的数据包计数更新操作,否则执行下一步;
当循环查找d个计数器后,如果无法找到空闲位置时,则将新流fi插入S部分,根据流fi的ID将流fi插入至S部分,并进行后续的数据包计数更新操作。
作为本实施例一种可能的实现方式,所述流替换操作的过程包括以下步骤:
在流fi更新操作过程中,当循环查找d个计数器时记录其中d个计数器中计数器最小值及相应的计数器位置;
当流fi在S部分更新时,如果S部分计数器值大于d个计数器中最小值则执行下一步,否则退出;
将fi的ID替换到L部分,并将fi原位置计数器置为零;
L部分新替换进来的流fi不再用小流部分的计数器值来赋值,直接更新原来的计数器;
将d个计数器的最小流移入S部分。
作为本实施例一种可能的实现方式,所述流查询操作的过程包括以下步骤:
查询流fi时首先根据流ID计算在L部分的计数器位置,如果该位置的ID标识与流fi相符,则返回计数器值,否则执行下一步;
循环查找d个计数器,判断流fi是否位于其中。如果某位置的ID标识与流fi相符,则返回对应计数器值,否则执行下一步;
在S部分进行查找流fi,根据流fi的流ID返回对应计数器值。
另一方面,本发明实施例提供的一种基于确定性替换策略的网络流量管理系统,包括:
数据结构模块,用于将数据结构划分为L部分和S部分,L部分和S部分分别用于统计大流及小流数目;
流插入及更新模块,用于将L部分和S部分的计数器都置为空,所有到来的新流f都将被视为大流,在L部分进行统计;
流替换模块,用于当一个大流fm在S部分出现,且当L部分没有空余项时执行将该流从S部分移入L部分的流替换操作;
流查询模块,用于查询L部分和S部分,并返回对应的计数器值。
本发明实施例的技术方案可以具有的有益效果如下:
本发明实施例的技术方案能够同时利用大流和小流信息、动态过滤小流信息,从而提供更加精确的大流检测和高精度的网络管理;能够有效地避免传统基于计数器或基于sketch机制中由于随机操作或hash冲突导致的低精度问题。
为了适用于资源有限的网络设备,本发明实施例的技术方案进一步通过将DAP的大流统计空间用hash表进行实现,并使用基于线性探查的开放地址法减少hash冲突,用局部最小值代替大流空间的全局最小值,能够减小计算开销、方便地实现在资源有限的网络设备中。
附图说明:
图1是根据一示例性实施例示出的一种基于确定性替换策略的网络流量管理方法的流程图;
图2是根据一示例性实施例示出的一种sketch基本架构示意图;
图3是根据一示例性实施例示出的一种数据结构示意图
图4是根据一示例性实施例示出的一种流插入及更新操作示意图
图5是根据一示例性实施例示出的一种流替换操作示意图;
图6是根据一示例性实施例示出的一种流查询操作示意图;
图7是根据一示例性实施例示出的一种基于线性探查的开放地址法示意图;
图8是根据一示例性实施例示出的一种基于确定性替换策略的网络流量管理系统的结构图。
具体实施方式
下面结合附图与实施例对本发明做进一步说明:
为能清楚说明本方案的技术特点,下面通过具体实施方式,并结合其附图,对本发明进行详细阐述。下文的公开提供了许多不同的实施例或例子用来实现本发明的不同结构。为了简化本发明的公开,下文中对特定例子的部件和设置进行描述。此外,本发明可以在不同例子中重复参考数字和/或字母。这种重复是为了简化和清楚的目的,其本身不指示所讨论各种实施例和/或设置之间的关系。应当注意,在附图中所图示的部件不一定按比例绘制。本发明省略了对公知组件和处理技术及工艺的描述以避免不必要地限制本发明。
实施例1:确定性替换策略(DAP,Deterministic Admission Policy)
图1是根据一示例性实施例示出的一种基于确定性替换策略的网络流量管理方法的流程图。如图1所述,本发明实施例提供的一种基于确定性替换策略的网络流量管理方法包括以下过程:
步骤1:数据结构设计。
如图3所示,DAP划分管理空间(数据结构)为大流部分(L部分)和小流部分(S部分),分别用于统计大流及小流数目。
步骤1-1:L部分的管理条目包含流ID和流计数器值(value),分别用来记录流标识和流的数据包数目。
步骤1-2:S部分包含一个基于sketch的一维共享计数器数组,每一个计数器由在此位置具有hash冲突的流所共享。Sketch的基本架构如图2所示。
步骤2:流插入及更新操作。
初始化阶段,首先将L部分和S部分的计数器都置为空。所有到来的新流f都将被视为大流,在L部分进行统计。
步骤2-1:如图4所示,对于新流f,从第一个数据包中根据IP五元组提取ID标识fi,将(fi,1)插入到L中。
步骤2-2:对于位于L部分的任意流fj,当属于该流的s个数据包到来时,对L中该流对应的计数器值value_Lj增加s,即:
value_Lj=value_Lj+s
步骤2-3:随着新流不断增加,当L部分不存在空闲空间时,新流fk将会进入S部分进行计数。从第一个数据包中根据IP五元组提取ID标识fk,计算计数器下标位置:
location_Sk=hash_S(fk)
随后,每当一个属于fk的数据包到来时,对该计数器location_Sk进行加1操作,即:
value_Sk=value_Sk+1。
步骤3:流替换操作。
新到S部分来的小流有可能成为大流。当一个真正的大流fm在S部分出现,且当L部分没有空余项时执行流替换操作,将该流从S部分移入L部分,以实现更精确的统计。替换原则为如果这个真的大流fm没有出现在L部分中,则这个fm在S部分中计数值value_Sm必须要大于L部分的所有计数器的最小值value_Lmin。如果此条件满足时,则用该流代替L中的最小流。
步骤3-1:如图5所示,当fm在S执行完流更新操作后,获取对应的计数器值value_Sm
步骤3-2:如果fm计数器值满足以下条件时,则认为fm为一个真正的大流,并替换到L部分。
value_Sm>value_Lmin
则将L部分中fmin替换为fm,即:
(fmin,value_Lmin)=(fm,value_Sm)
并对原有value_Sm置为0。
步骤3-3:将fmin移入S部分,计算在S部分的计数器位置:
location_Smin=hash_S(fmin)
将fmin计数器的值替换原该位置的计数器的值:
Figure BDA0002354594200000081
步骤4:流查询操作。
步骤4-1:对于查询流fi,首先根据ID遍历查询L部分,如果存在则返回计数器值value_Li。否则,执行步骤4-2。
步骤4-2:在L部分查询不到时,则根据流fi的ID,在S部分利用hash函数计算计数器位置:
location_Si=hash_S(fi)
返回对应的计数器值
Figure BDA0002354594200000082
本实施例所提出的流量监控方法能够同时利用大流和小流信息、动态过滤小流信息,从而提供更加精确的大流检测和高精度的网络管理;能够有效地避免传统基于计数器或基于sketch机制中由于随机操作或hash冲突导致的低精度问题。
实施例2:dL-DAP算法
步骤1:dL-DAP的数据结构设计。
DAP算法的更新操作时,需要在L部分得到全局最小值以实现快速更新。维护全局最小值所需的数据结构比较复杂,不适宜在资源有限的网络设备硬件实现。对此,为了适用于资源有限的网络设备,本发明在DAP基础上,引入一种d-Length DAP(dL-DAP)算法。如图7所示,dL-DAP将L部分所有的计数器都存放在由hash表实现的数组中,使用基于线性探查的开放地址法(open addressing with linear probing),每个流首先映射到一个计数器,如果不符合就线性的向后查找,最多循环查找d个计数器,所有的替换查找和寻找最小值都在这d个计数器上进行。
步骤2:流插入及更新操作。
初始化阶段,首先将L部分和S部分的计数器都置为空。所有到来的新流f都将被视为大流,在L部分进行统计。
步骤2-1:当在L部分插入新流fi时,使用hash函数中定位元素在L部分的位置;
location_Li=hash_L(fi)。
步骤2-2:检查hash表中该位置location_Li是否已经存在元素。如果该位置内容为空,则插入(fi,1),并进行后续的数据包计数操作。否则,转向步骤2-3。
步骤2-3:由于使用hash存在hash冲突的情况,即多个流映射到同一位置。如果位置location_Li所在的计数器不为空,则检查location_Li+1是否为空,如果已被占用,则检查location_Li+2,依此类推,最多循环查找d个计数器。如果d个计数器存在某个位置location_Lj内容为空,则在location_Lj处插入(fi,1),记录ID信息,并进行后续的数据包计数更新操作。否则,转向步骤2-4。
步骤2-4:当循环查找d个计数器后,如果仍然无法找到空闲位置,则将新流fi插入S部分。即根据流fi的ID,在S部分利用hash函数计算计数器位置:
location_Si=hash_S(fi)
每一个属于流fi的数据包到来时,对位于locationi的计数器进行加1操作:
Figure BDA0002354594200000094
流fi在S部分更新时,会同步进行流替换操作,替换过程转入步骤3。
步骤3:流替换操作。
步骤3-1流fi更新操作过程中,在循环查找d个计数器时,记录其中计数器最小值及相应的计数器位置
Figure BDA0002354594200000095
步骤3-2:在流fi更新S部分时,对S部分location_Si处的
Figure BDA0002354594200000096
Figure BDA0002354594200000097
进行比较。当满足以下条件时,认为位于S部分的流fi是大流。则进行步骤3-3至步骤3-5流替换操作。
Figure BDA0002354594200000091
步骤3-3:将fi的ID替换到L部分,即:
Figure BDA0002354594200000092
并将
Figure BDA0002354594200000093
置为零。
步骤3-4:为提高准确度,新替换进来的流fi不再用小流部分的计数器值来赋值,而是直接更新原来的计数器。
步骤3-5:将
Figure BDA0002354594200000101
移入S部分,计算在S部分的计数器位置:
Figure BDA0002354594200000102
Figure BDA0002354594200000103
计数器的值替换原该位置的计数器的值:
Figure BDA0002354594200000104
步骤4:流查询操作。
步骤4-1:对于查询流fi,首先根据流ID计算在L部分的计数器位置:
location_Li=hash_L(fi)
当该位置的ID标识与fi相符,则返回value_Li。否则,执行步骤4-2。
步骤4-2:从location_Li开始,循环查找d个计数器,判断fi是否位于其中。如果dj位置的ID标识与fi相符则返回
Figure BDA0002354594200000106
否则,执行步骤4-2。
步骤4-3:在L部分查询不到时,则在S部分进行查找。根据fi的流ID计算计数器位置:
location_Si=hash_S(fi)
返回location_Si对应计数器的值
Figure BDA0002354594200000105
为了适用于资源有限的网络设备,本实施例所提出的dL-DAP方法,通过将DAP的大流统计空间用hash表进行实现,并使用基于线性探查的开放地址法减少hash冲突,用局部最小值代替大流空间的全局最小值,能够减小计算开销,方便地实现在资源有限的网络设备中。
实施例3
本发明实施例提供的一种基于确定性替换策略的网络流量管理系统,包括:
数据结构模块,用于将数据结构划分为L部分和S部分,L部分和S部分分别用于统计大流及小流数目;
流插入及更新模块,用于将L部分和S部分的计数器都置为空,所有到来的新流f都将被视为大流,在L部分进行统计;
流替换模块,用于当一个大流fm在S部分出现,且当L部分没有空余项时执行将该流从S部分移入L部分的流替换操作;
流查询模块,用于查询L部分和S部分,并返回对应的计数器值。
本实施例的网络流量管理系统不仅可以根据实施例1的网络流量管理方法进行网络流量管理,还可以进一步根据实施例2的网络流量管理方法进行网络流量管理。
本发明对流量中的大流和小流分别处理,利用基于计数器的方法测量大流,利用基于sketch的方法统计小流。通过利用计数器对更重要的大流进行精确测量,同时不会把小流信息全部丢弃;大流部分的存在也弥补了sketch不统计ID的缺点,同时减轻了sketch的负载,提高了准确度。DAP方法只有在小流管理部分的一个流足够大时才进入大流管理部分,能够在网络流量变化时动态地检测大流,提高了检测精度和错误率。
本发明在DAP方法基础上,进一步提出dL-DAP方法,通过将大流统计空间用hash表进行实现,用局部最小值代替大流空间的全局最小值,并使用基于线性探查的开放地址法减少hash冲突。dL-DAP方法能够减少计算开销,更易于在嵌入式设备上实现。
以上所述只是本发明的优选实施方式,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也被视作为本发明的保护范围。

Claims (3)

1.一种基于确定性替换策略的网络流量管理方法,其特征是,包括以下过程:
数据结构设计:数据结构划分为L部分和S部分,L部分和S部分分别用于统计大流及小流数目;
流插入及更新操作:将L部分和S部分的计数器都置为空,所有到来的新流f都将被视为大流,在L部分进行统计;
流替换操作:当一个大流fm在S部分出现,且当L部分没有空余项时执行将该流从S部分移入L部分的流替换操作;
流查询操作:查询L部分和S部分,并返回对应的计数器值;
在数据结构设计过程中,L部分的管理条目包含流ID和流计数器值,分别用来记录流标识和流的数据包数目;S部分的管理条目包含一个基于sketch的一维共享计数器数组,每一个计数器由在此位置具有hash冲突的流所共享,将L部分所有的计数器都存放由hash表实现的数组中,在替换过程中利用局部最小值替代全局最小值;
所述流插入及更新操作的过程包括以下步骤:
当在L部分插入新流fi时,使用hash函数定位流在L部分中的位置;
检查hash表中该位置是否已经存在元素,如果该位置内容为空,则插入(fi,1),并进行后续的数据包计数操作,否则执行下一步;
如果该位置所在的计数器不为空,则至多循环查找d个计数器,如果d个计数器存在某个位置内容为空,则在此处插入(fi,1),记录ID信息,并进行后续的数据包计数更新操作,否则执行下一步;
当循环查找d个计数器后,如果无法找到空闲位置时,则将新流fi插入S部分,根据流fi的ID将流fi插入至S部分,并进行后续的数据包计数更新操作;
所述流替换操作的过程包括以下步骤:
在流fi更新操作过程中,当循环查找d个计数器时记录其中d个计数器中计数器最小值及相应的计数器位置;
当流fi在S部分更新时,如果S部分计数器值大于d个计数器中最小值则执行下一步,否则退出;
将fi的ID替换到L部分,并将fi原位置计数器置为零;
L部分新替换进来的流fi不再用小流部分的计数器值来赋值,直接更新原来的计数器;
将d个计数器的最小流移入S部分。
2.根据权利要求1所述的一种基于确定性替换策略的网络流量管理方法,其特征是,所述流查询操作的过程包括以下步骤:
查询流fi时首先根据流ID计算在L部分的计数器位置,如果该位置的ID标识与流fi相符,则返回计数器值,否则执行下一步;
循环查找d个计数器,判断流fi是否位于其中;如果某位置的ID标识与流fi相符,则返回对应计数器值,否则执行下一步;
在S部分进行查找流fi,根据流fi的流ID返回对应计数器值。
3.一种基于确定性替换策略的网络流量管理系统,其特征是,包括:
数据结构模块,用于将数据结构划分为L部分和S部分,L部分和S部分分别用于统计大流及小流数目;
流插入及更新模块,用于将L部分和S部分的计数器都置为空,所有到来的新流f都将被视为大流,在L部分进行统计;
流替换模块,用于当一个大流fm在S部分出现,且当L部分没有空余项时执行将该流从S部分移入L部分的流替换操作;
流查询模块,用于查询L部分和S部分,并返回对应的计数器值;
所述L部分的管理条目包含流ID和流计数器值,分别用来记录流标识和流的数据包数目;S部分的管理条目包含一个基于sketch的一维共享计数器数组,每一个计数器由在此位置具有hash冲突的流所共享,将L部分所有的计数器都存放由hash表实现的数组中,在替换过程中利用局部最小值替代全局最小值;
所述流插入及更新操作的过程包括以下步骤:
当在L部分插入新流fi时,使用hash函数定位流在L部分中的位置;
检查hash表中该位置是否已经存在元素,如果该位置内容为空,则插入(fi,1),并进行后续的数据包计数操作,否则执行下一步;
如果该位置所在的计数器不为空,则至多循环查找d个计数器,如果d个计数器存在某个位置内容为空,则在此处插入(fi,1),记录ID信息,并进行后续的数据包计数更新操作,否则执行下一步;
当循环查找d个计数器后,如果无法找到空闲位置时,则将新流fi插入S部分,根据流fi的ID将流fi插入至S部分,并进行后续的数据包计数更新操作;
所述流替换操作的过程包括以下步骤:
在流fi更新操作过程中,当循环查找d个计数器时记录其中d个计数器中计数器最小值及相应的计数器位置;
当流fi在S部分更新时,如果S部分计数器值大于d个计数器中最小值则执行下一步,否则退出;
将fi的ID替换到L部分,并将fi原位置计数器置为零;
L部分新替换进来的流fi不再用小流部分的计数器值来赋值,直接更新原来的计数器;
将d个计数器的最小流移入S部分。
CN202010008618.8A 2020-01-03 2020-01-03 一种基于确定性替换策略的网络流量管理方法及系统 Active CN111200542B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010008618.8A CN111200542B (zh) 2020-01-03 2020-01-03 一种基于确定性替换策略的网络流量管理方法及系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010008618.8A CN111200542B (zh) 2020-01-03 2020-01-03 一种基于确定性替换策略的网络流量管理方法及系统

Publications (2)

Publication Number Publication Date
CN111200542A CN111200542A (zh) 2020-05-26
CN111200542B true CN111200542B (zh) 2022-04-05

Family

ID=70747540

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010008618.8A Active CN111200542B (zh) 2020-01-03 2020-01-03 一种基于确定性替换策略的网络流量管理方法及系统

Country Status (1)

Country Link
CN (1) CN111200542B (zh)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113381945B (zh) * 2021-05-17 2022-08-30 中国人民解放军国防科技大学 基于冷热分离的流量处理方法及系统
CN113839835B (zh) * 2021-09-27 2023-09-26 长沙理工大学 一种基于小流过滤的Top-k流精确监控系统

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101834763A (zh) * 2010-06-25 2010-09-15 山东大学 高速网络环境下多类型大流并行测量方法
CN106657038A (zh) * 2016-12-08 2017-05-10 西安交通大学 一种基于对称度Sketch的网络流量异常检测与定位方法
CN110049061A (zh) * 2019-04-29 2019-07-23 南京邮电大学 高速网络上轻量级DDoS攻击检测装置及检测方法

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102025563B (zh) * 2010-11-30 2012-05-30 东南大学 基于哈希冲突补偿的网络大流识别方法

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101834763A (zh) * 2010-06-25 2010-09-15 山东大学 高速网络环境下多类型大流并行测量方法
CN106657038A (zh) * 2016-12-08 2017-05-10 西安交通大学 一种基于对称度Sketch的网络流量异常检测与定位方法
CN110049061A (zh) * 2019-04-29 2019-07-23 南京邮电大学 高速网络上轻量级DDoS攻击检测装置及检测方法

Non-Patent Citations (4)

* Cited by examiner, † Cited by third party
Title
Augmented sketch: faster and more accurate stream processing;Roy P, Khan A, Alonso G.;《Proceedings of the 2016 International Conference on Management of Data, San Francisco, 2016》;20160630;第1453页第4-9段 *
Elastic sketch: adaptive and fast network-wide measurements;Yang T, Jiang J, Liu P, et al.;《The 2018 conference of the ACM special Interest group》;20180807;第1.1节倒数第2段-1.2节,第3.1节,附图1-4 *
Yang T, Jiang J, Liu P, et al..Elastic sketch: adaptive and fast network-wide measurements.《The 2018 conference of the ACM special Interest group》.2018,561-575. *
一种高效率的大流提取方法;王风宇;《计算机研究与发展》;20130415;第50卷(第4期);全文 *

Also Published As

Publication number Publication date
CN111200542A (zh) 2020-05-26

Similar Documents

Publication Publication Date Title
CN109921996B (zh) 一种高性能的OpenFlow虚拟流表查找方法
US11811660B2 (en) Flow classification apparatus, methods, and systems
CN108337172B (zh) 大规模OpenFlow流表加速查找方法
US10516612B2 (en) System and method for identification of large-data flows
US7706302B2 (en) Optimization of routing forwarding database in a network processor
US9832122B2 (en) System and method for identification of large-data flows
US9485155B2 (en) Traffic analysis of data flows
US20130265883A1 (en) Method and system for storing packet flows
CN104579974B (zh) 面向ndn中名字查找的哈希布鲁姆过滤器及数据转发方法
CN110808910A (zh) 一种支持QoS的OpenFlow流表节能存储架构及其应用
CN111200542B (zh) 一种基于确定性替换策略的网络流量管理方法及系统
Xing et al. Sample and fetch-based large flow detection mechanism in software defined networks
CN114205253A (zh) 一种基于小流过滤的活跃大流精确检测架构及方法
CN116055362A (zh) 基于时间窗口的两级哈希-Sketch网络流量测量方法
CN107528794B (zh) 一种数据处理方法和装置
Turkovic et al. Detecting heavy hitters in the data-plane
Li et al. Pyramid family: Generic frameworks for accurate and fast flow size measurement
CN114710444B (zh) 基于塔型摘要和可驱逐流表的数据中心流量统计方法和系统
Li et al. Scalable packet classification using bit vector aggregating and folding
CN113259263B (zh) 一种深度报文检测集群中的数据包调度方法
CN115967673A (zh) 一种基于p4可编程交换机的大流五元组的查询方法
Wen et al. Traffic identification algorithm based on improved LRU
CN113965492A (zh) 一种数据流统计方法及装置
Zhao et al. HBL-Sketch: A new three-tier sketch for accurate network measurement
CN115473836B (zh) 一种基于流图模型的网络流量测量方法和装置

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant