CN108282481A - 一种基于sdn的数据中心网络流量测量方法 - Google Patents
一种基于sdn的数据中心网络流量测量方法 Download PDFInfo
- Publication number
- CN108282481A CN108282481A CN201810087181.4A CN201810087181A CN108282481A CN 108282481 A CN108282481 A CN 108282481A CN 201810087181 A CN201810087181 A CN 201810087181A CN 108282481 A CN108282481 A CN 108282481A
- Authority
- CN
- China
- Prior art keywords
- stream
- interchanger
- flow
- list item
- counting table
- 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
- 238000000034 method Methods 0.000 title claims abstract description 23
- 239000011159 matrix material Substances 0.000 claims description 11
- 238000005259 measurement Methods 0.000 claims description 9
- 238000013507 mapping Methods 0.000 claims description 4
- 230000005540 biological transmission Effects 0.000 claims description 3
- 238000001514 detection method Methods 0.000 claims description 3
- 238000000605 extraction Methods 0.000 claims description 3
- 230000008569 process Effects 0.000 claims description 3
- 238000012545 processing Methods 0.000 claims description 3
- 239000004744 fabric Substances 0.000 claims description 2
- 238000001914 filtration Methods 0.000 claims description 2
- 239000000203 mixture Substances 0.000 claims description 2
- 230000001105 regulatory effect Effects 0.000 claims description 2
- 230000006870 function Effects 0.000 description 14
- 238000005516 engineering process Methods 0.000 description 3
- 238000000691 measurement method Methods 0.000 description 3
- 238000012544 monitoring process Methods 0.000 description 3
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 230000009471 action Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000000354 decomposition reaction Methods 0.000 description 1
- 230000007812 deficiency Effects 0.000 description 1
- 238000012217 deletion Methods 0.000 description 1
- 230000037430 deletion Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000010586 diagram Methods 0.000 description 1
- 235000013399 edible fruits Nutrition 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 230000002349 favourable effect Effects 0.000 description 1
- 238000003780 insertion Methods 0.000 description 1
- 230000037431 insertion Effects 0.000 description 1
- 230000006855 networking Effects 0.000 description 1
- 230000008520 organization Effects 0.000 description 1
- 238000005070 sampling Methods 0.000 description 1
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/14—Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
- H04L63/1408—Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic by monitoring network traffic
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L43/00—Arrangements for monitoring or testing data switching networks
- H04L43/08—Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters
- H04L43/0876—Network utilisation, e.g. volume of load or congestion level
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/02—Network architectures or network communication protocols for network security for separating internal from external traffic, e.g. firewalls
- H04L63/0227—Filtering policies
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer Security & Cryptography (AREA)
- Computer Hardware Design (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- Environmental & Geological Engineering (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明公开了一种基于SDN的数据中心网络流量测量方法,先对每台交换机设置编码流集合,然后对每个数据平面的交换机在一个周期内对流进行编码,得到每台交换机的Flow Filter、Counting Table和Flow Vector,然后将一个周期内已编码的所有交换机的Flow Filter、Counting Table和Flow Vector发送到控制平面解码主机进行解码,从而测量出一个周期内经过数据中心网络中每台交换机的每条流量的大小。
Description
技术领域
本发明属于网络测量技术领域,更为具体地讲,涉及一种基于SDN的数据中心网络流量测量方法。
背景技术
NetFlow是一种广泛使用的流量监测工具。NetFlow在工作时,维持一个活动流的集合(active flow set),并支持流的插入,哈希冲突解决,流的删除等功能。但是数据中心的商用芯片上较难支持NetFlow的全部功能,因为NetFlow的完全功能会降低包的处理速度,其使用采样的简化版本无法监测到所有数据流的包。
FlowRadar,是一种带宽与存储开销较小,易扩展的流量监测方法。其核心思想是,在数据平面,交换机利用较少的存储空间与固定数量的简单操作编码流的信息,控制平面的主机收集各交换机编码信息,并解码出流的信息。FlowRadar可以以较小的存储开销和计算开销来准确的得到全网的流量信息。但是,FlowRadar在计数器资源不够的情况下,可能无法解码,从而导致完全得到不到流的信息。此外,FlowRadar在全网解码的情况下,其求解问题的负载度很高,很难保证结果的及时性。
软件定义网络(Software Defined Network,SDN)是一种新型的网络架构,通过将网络转发设备的控制平面与数据平面分离,实现网络流量的灵活控制。与传统IP网络不同,SDN网络的控制器可以获取SDN节点的流表统计数据、网络拓扑等信息,并且可以为SDN节点设计转发逻辑,具有高度的自主权。这样的特性使SDN的测量方法比传统网络的测量方法更加灵活多样,为实时监测、减少网络资源消耗等问题的解决提供新的思路。SDN交换机的流表项可以通过修改转发端口来控制数据包的转发方向,也可以通过添加行动修改数据包的头部信息。这些特点能够克服传统IP网络中链路性能参数测量的诸多困难,为网络的测量创造有利条件。
发明内容
本发明的目的在于克服现有技术的不足,提供一种基于SDN的数据中心网络流量测量方法,将流分组测量,将大规模的测量问题分解为若干小规模的测量问题,有效地减少了问题求解的复杂度。
为实现上述发明目的,本发明一种基于SDN的数据中心网络流量测量方法,其特征在于,具体包括以下步骤:
(1)、对于每个交换机设置编码流集合
编码流集合包括Flow Filter、Counting Table和Flow Vector三部分,其中,FlowFilter为一个布隆过滤器,用于检测一个数据包对应的流是否为新流,初始时刻布隆过滤器中所有表项值均为0;Counting Table为交换机计数器,共g个组,每组m个表项,每个表项均包含PacketCount与FlowCount两个值,用于存储流信息,其中,PacketCount用于存储哈希到本表项的所有流的数据包的数目之和,FlowCount用于存哈希到本表项的流的数目;Flow Vector为一个存储表,用于记录流的五元组;
(2)、每个数据平面交换机在一个周期内对流进行编码
(2.1)、对数据包对应流的五元组进行映射并检测数据包对应的流是否为新流
在一个周期内,当某一个数据包到达时,先提取该数据包对应流的五元组,将提取到的五元组输入到一个哈希函数中,得到一个哈希值,将该哈希值对g取模,得到j,再将该五元组输入到kc个相互独立的哈希函数,得到kc个哈希值;同时将提取的五元组输入到kf个相互独立的哈希函数,得到kf个哈希值,再用这kf个哈希值与Flow Filter中对应的表项中的值比较,如果对应的表项中的值都是1,则表明该数据包对应的流是旧流,直接跳转到(2.2),如果对应的表项中的值不都是1,则表明该数据包对应的流是新流,直接跳转到(2.3);
(2.2)更新Counting Table信息
将步骤(2.1)中提取到的j和kc个哈希值对应到Counting Table的第j组中的kc个表项,并将这kc个表项的PacketCount值和FlowCount值都加1;
(2.3)、记录新流并更新Counting Table信息
将步骤(2.1)中提取到的kf个哈希值对应到Flow Filter上的kf个表项,设置这些表项中的值为1,并将该数据包对应流的五元组加入Flow Vector中;然后将步骤(2.1)中提取到的j和kc个哈希值对应到Counting Table的第j组中的kc个表项,并将这kc个表项的PacketCount值加1,FlowCount值不变;
(2.4)、当该数据包对应流进行编码完成后,返回步骤(2.1),进行下一个包的处理,直到该周期结束;
(2)、将一个周期内已编码的所有交换机的Flow Filter、Counting Table和FlowVector发送到控制平面解码主机;
(3)、控制平面的解码主机收到一个周期内的所有交换机发送的Flow Filter、Counting Table和Flow Vector后进行解码
(3.1)、解码出所有交换机的Flow Vector中所有五元组对应的流在CountingTable中的组号和表项序号
对每个交换机执行以下步骤:将Flow Vector中存放的五元组按照表项顺序依次取出,将每个五元组作为输入,通过一个哈希函数得到一个哈希值,将该哈希值对g取模得到j,由此在Counting Table中找到对应第j组;再将该五元组作为输入,通过kc个相互独立的哈希函数,得到kc个哈希值,即得到所有在步骤(2.2)、(2.3)存放该五元组对应的流的信息的组号和表项序号;
(3.2)根据Counting Table中的组号和表项序号得到系数矩阵
对于Counting Table中的每个组j都设置一个系数矩阵Aj,Aj初始化为m×n的空矩阵;其中,m为Counting Table第j组的表项个数,n为Counting Table中第j组所有m个表项中的FlowCount值的和;
利用步骤(3.1)得到的Flow Vector中所有流的五元组对应的流存放在CountingTable中的组号和表项序号设置系数矩阵Aj中的值;设置方法为:如果Counting Table中第j组的第i个位置上存储了第k条流xk的信息,则将Ai,k设置为1;如果第i个位置上没有存储第k条流xk的信息,则将Ai,k设置为0,其中1<i≤m,1<k≤n;
(3.3)、对每个交换机的所有组建立统计数据包个数的方程,用Cplex进行求解
minimize||Xj||1
s.t.AjXj=Yj
Xj≥0
其中,Xj表示正在解码的交换机的Counting Table中第j组的所有流的数据包个数构成的列向量,是需要求解的向量,大小为n×1;Aj表示正在解码的交换机的CountingTable中第j组的系数矩阵;Yj表示正在解码的交换机的Counting Table中第j组的所有表项中的PacketCount的值构成的列向量,大小为m×1;
(3.4)、使用全局解码,在步骤(3.3)建立的方程组中添加约束条件,重新构建方程,计算出所有交换机机中经过的所有流的数据包的个数;
(4)、测量出本周期内经过数据中心网络每个交换机每条流量的大小,待下一个周期到来时,跳转到步骤(1)进行下一轮继续流量测量。
本发明的发明目的是这样实现的:
本发明一种基于SDN的数据中心网络流量测量方法,先对每台交换机设置编码流集合,然后对每个数据平面的交换机在一个周期内对流进行编码,得到每台交换机的FlowFilter、Counting Table和Flow Vector,然后将一个周期内已编码的所有交换机的FlowFilter、Counting Table和Flow Vector发送到控制平面解码主机进行解码,从而测量出一个周期内经过数据中心网络中每台交换机的每条流量的大小。
同时,本发明一种基于SDN的数据中心网络流量测量方法还具有以下有益效果:
(1)、在数据平面中提出了一种新颖的架构来存储流的五元组并编码流计数器。为了实现对流计数器的100%解码,使用了布隆过滤器和单独的Flow Vector表来存储在计数器中计数的流的五元组。为了实现可扩展的流计数器解码,使用两级流映射方案将流映射到一个Counting Table组,其中每个Counting Table组可以在远程控制器处被独立并行解码,具有高的可扩展性。
(2)、使用线性规划(LP)来计算在不同情况下交换机的Flow Vector表中记录的流的大小,可以实现高精度的流计数器解码。
(3)、提出了一种全局解码策略,将其他交换机可以直接获取的流量大小添加到交换机的解码问题中,提高了流计数器解码的准确性。
附图说明
图1是本发明基于SDN的数据中心网络流量测量方法流程图;
图2是本发明基于SDN的数据中心网络流量测量方法架构图;
图3是本发明基于SDN的数据中心网络流量测量方法仿真测量误差图;
图4是本发明基于SDN的数据中心网络流量测量方法仿真测量时间图。
具体实施方式
下面结合附图对本发明的具体实施方式进行描述,以便本领域的技术人员更好地理解本发明。需要特别提醒注意的是,在以下的描述中,当已知功能和设计的详细描述也许会淡化本发明的主要内容时,这些描述在这里将被忽略。
实施例
为了方便描述,先对具体实施方式中出现的相关专业术语进行说明:
SDN(Software Defined Networking):软件定义网络;
图1是本发明基于SDN的数据中心网络流量测量方法流程图。
在本实施例中,如图2所示,在拓扑为20个交换机的胖树结构网络中进行测试,并设定Flow Filter中的哈希函数个数kf为5,Counting Table的表项数为10K,分为10个组,每个组包含1k个表项,Counting Table中第二级哈希函数个数kc为4。设置网络中链路带宽为10Gps,解码周期为100ms,并以二八原则与带宽为标准,随机生成网络中的流。按照图2所示架构进行测量,下面对测量的具体过程进行描述。
如图1所示,本发明一种基于SDN的数据中心网络流量测量方法,具体包括以下步骤:
S1、对每台交换机设置编码流集合编码流集合包括Flow Filter、Counting Table和Flow Vector三部分,其中,Flow Filter为一个布隆过滤器表,用于检测一个数据包对应的流是否为新流,初始时刻布隆过滤器表中所有表项值均为0;Counting Table为交换机计数器,共g=10个组,每组m=1000个表项,每个表项均包含PacketCount与FlowCount两个值,用于存储流信息,其中,PacketCount用于存储哈希到本表项的所有流的数据包的数目之和,FlowCount用于存哈希到本表项的流的数目;Flow Vector为一个存储表,用于记录流的五元组;
S2、每个数据平面的交换机在一个周期内对流进行编码
S2.1、对数据包对应流的五元组进行映射并检测数据包对应的流是否为新流
在一个周期内,当某一个数据包到达时,先提取该数据包对应流的五元组,将提取到的五元组输入到一个哈希函数中,得到一个哈希值,将该哈希值对10取模,得到j,再将该五元组输入到5个相互独立的哈希函数,得到5个哈希值;同时将提取的五元组输入到4个相互独立的哈希函数,得到4个哈希值,再用这4个哈希值与Flow Filter中对应的表项中的值比较,如果对应的表项中的值都是1,则表明该数据包对应的流是旧流,直接跳转到S2.2,如果对应的表项中的值不都是1,则表明该数据包对应的流是新流,直接跳转到S2.3;
S2.2、更新Counting Table信息
将步骤S2.1中提取到的j和4个哈希值对应到Counting Table的第j组中的4个表项,并将这4个表项的PacketCount值和FlowCount值都加1;
S2.3、记录新流并更新Counting Table信息将步骤S2.1中提取到的5个哈希值对应到Flow Filter上的5个表项,设置这些表项中的值为1,并将该数据包对应流的五元组加入Flow Vector中;然后将步骤S2.1中提取到的j和4个哈希值对应到Counting Table的第j组中的4个表项,并将这4个表项的PacketCount值加1,FlowCount值不变;
S2.4、当该数据包对应流进行编码完成后,返回步骤S2.1,进行下一个包的处理,直到该周期结束;
S2、将一个周期内已编码的20台交换机的Flow Filter、Counting Table和FlowVector发送到控制平面解码主机;
S3、控制平面的解码主机收到一个周期内的20台交换机发送的Flow Filter、Counting Table和Flow Vector后进行解码
S3.1、解码出所有交换机的Flow Vector中所有五元组对应的流在CountingTable中的组号和表项序号
对每个交换机执行以下步骤:将Flow Vector中存放的五元组按照表项顺序依次取出,将每个五元组作为输入,通过一个哈希函数得到一个哈希值,将该哈希值对10取模得到j,由此在Counting Table中找到对应第j组;再将该五元组作为输入,通过4个相互独立的哈希函数,得到4个哈希值,即得到所有在步骤S2.2、S2.3存放该五元组对应的流的信息的组号和表项序号;
S3.2、根据Counting Table中的组号和表项序号得到系数矩阵
对于Counting Table中的每个组j都设置一个系数矩阵Aj,Aj初始化为1000×n的空矩阵;其中,1000为Counting Table第j组的表项个数,n为Counting Table中第j组所有1000个表项中的FlowCount值的和;
利用步骤S3.1得到的Flow Vector中所有流的五元组对应的流存放在CountingTable中的组号和表项序号设置系数矩阵Aj中的值;设置方法为:如果Counting Table中第j组的第i个位置上存储了第k条流xk的信息,则将Ai,k设置为1;如果第i个位置上没有存储第k条流xk的信息,则将Ai,k设置为0,其中1<i≤m,1<k≤n;
S3.3、单独解码:单独对每个交换机的所有组建立统计数据包个数的方程,Cplex进行求解出每个交换机中所有流量大小
minimize||Xj||1
s.t.AjXj=Yj
Xj≥0
其中,Xj表示正在解码的交换机的Counting Table中第j组的所有流的数据包个数构成的列向量,是需要求解的向量,大小为n×1;Aj表示正在解码的交换机的CountingTable中第j组的系数矩阵;Yj表示正在解码的交换机的Counting Table中第j组的所有表项中的PacketCount的值构成的列向量,大小为1000×1;S3.4、全局解码:在步骤S3.3建立的方程组中添加约束条件,重新构建方程组,计算出所有交换机机中经过的所有流的数据包的个数;
具体操作步骤为:
1)、为每台交换机设置存储表Pure Cell,Pure Cell共10个组;遍历所有交换机的Counting Table中所有组的所有表项,如果第p台交换机的第j组中的某个表项中的FlowCount大小为1,表示此表项只存储了一条流的信息,则此表项的PacketCount即为该流的数据包的大小,然后将该表项对应的五元组和PacketCount加入到Pure Cell中;
2)、对于第p台交换机的每个组,遍历该交换机相应的Counting Table中每个组的每条流,xk表示第k条流,通过Flow Filter得到流xk经过的交换机,以当前解码的交换机p作为本地交换机,在邻居交换机的Pure Cell中寻找流xk,如果存在,则可得到流xk在邻居交换机中的包的个数;如果不存在,则继续寻找邻居的邻居交换机,直到遍历完整条路径,得到流xk在邻居交换机中的包的个数fk,如果遍历完所有路径都不存在,则fk设置为0;
3)、统计数据包个数的方程组中添加约束条件,重新构建出如下方程,并用Cplex计算出每一个交换机中经过的所有流的数据包的个数;
minimize(Xj||1+||Δj||1
s.t.AjXj=Yj
Xj+Δj≤Fj
Xj≥0
其中,Δj表示Counting Table中第j组数据的调节变量构成的向量,大小为n×1,Aj表示正在解码的交换机的Counting Table中第j组的系数矩阵,Xj表示正在解码的交换机的Counting Table中第j组的所有流的数据包个数构成的列向量,大小为n×1,Yj表示正在解码的交换机的Counting Table中第j组的所有表项中的PacketCount的值构成的列向量,大小为1000×1,Fj表示正在解码的交换机的Counting Table中第j组的所有流在邻居交换机中的包的个数fk构成的列向量,大小为1000×1。
S4、测量出本周期内经过数据中心网络每个交换机每条流量的大小,待下一个周期到来时,跳转到步骤S1进行下一轮继续流量测量。
本实施例中,测试一个周期内的解码效果,设置平均流过交换机流数约从7500条每次增加约700条直到约15400条,重复步骤S1至S4,采用相对误差计算法得到解码误差如图3所示,解码时间如图4所示。从图3中可以看出,当交换机平均流数为9200左右时,单独解码可以达到0%的误差,而交换机平均流数为11000左右时,网际解码可以达到0%的误差;从图4可以看出,当交换机平均流数为9200左右时,解码时间能控制在100ms即一个周期之内。除此之外,还可以通过增加组数g对所有组进行并行解码减小解码时间,具有高的可扩展性;
尽管上面对本发明说明性的具体实施方式进行了描述,以便于本技术领域的技术人员理解本发明,但应该清楚,本发明不限于具体实施方式的范围,对本技术领域的普通技术人员来讲,只要各种变化在所附的权利要求限定和确定的本发明的精神和范围内,这些变化是显而易见的,一切利用本发明构思的发明创造均在保护之列。
Claims (2)
1.一种基于SDN的数据中心网络流量测量方法,其特征在于,具体包括以下步骤:
(1)、对于每个交换机设置编码流集合
编码流集合包括Flow Filter、Counting Table和Flow Vector三部分,其中,FlowFilter为一个布隆过滤器,用于检测一个数据包对应的流是否为新流,初始时刻布隆过滤器中所有表项值均为0;Counting Table为交换机计数器,共g个组,每组m个表项,每个表项均包含PacketCount与FlowCount两个值,用于存储流信息,其中,PacketCount用于存储哈希到本表项的所有流的数据包的数目之和,FlowCount用于存哈哈希希到本表项的流的数目;Flow Vector为一个存储表,用于记录流的五元组;
(2)、每个数据平面交换机在一个周期内对流进行编码
(2.1)、对数据包对应流的五元组进行映射并检测数据包对应的流是否为新流
在一个周期内,当某一个数据包到达时,先提取该数据包对应流的五元组,将提取到的五元组输入到一个哈希函数中,得到一个哈希值,将该哈希值对g取模,得到j,再将该五元组输入到kc个相互独立的哈希函数,得到kc个哈希值;同时将提取的五元组输入到kf个相互独立的哈希函数,得到kf个哈希值,再用这kf个哈希值与Flow Filter中对应的表项中的值比较,如果对应的表项中的值都是1,则表明该数据包对应的流是旧流,直接跳转到(2.2),如果对应的表项中的值不都是1,则表明该数据包对应的流是新流,直接跳转到(2.3);
(2.2)更新Counting Table信息
将步骤(2.1)中提取到的j和kc个哈希值对应到Counting Table的第j组中的kc个表项,并将这kc个表项的PacketCount值和FlowCount值都加1;
(2.3)、记录新流并更新Counting Table信息
将步骤(2.1)中提取到的kf个哈希值对应到Flow Filter上的kf个表项,设置这些表项中的值为1,并将该数据包对应流的五组加入Flow Vector中;然后将步骤(2.1)中提取到的j和kc个哈希值对应到Counting Table的第j组中的kc个表项,并将这kc个表项的PacketCount值加1,FlowCount值不变;
(2.4)、当该数据包对应流进行编码完成后,返回步骤(2.1),进行下一个包的处理,直到该周期结束;
(2)、将一个周期内已编码的所有交换机的Flow Filter、Counting Table和FlowVector发送到控制平面解码主机;
(3)、控制平面的解码主机收到一个周期内的所有交换机发送的Flow Filter、Counting Table和Flow Vector后进行解码
(3.1)、解码出所有交换机的Flow Vector中所有五元组对应的流在Counting Table中的组号和表项序号
对每个交换机执行以下步骤:将Flow Vector中存放的五元组按照表项顺序依次取出,将每个五元组作为输入,通过一个哈希函数得到一个哈希值,将该哈希值对g取模得到j,由此在Counting Table中找到对应第j组;再将该五元组作为输入,通过kc个相互独立的哈希函数,得到kc个哈希值,即得到所有在步骤(2.2)、(2.3)存放该五元组对应的流的信息的组号和表项序号;
(3.2)根据Counting Table中的组号和表项序号得到系数矩阵
对于Counting Table中的每个组都设置一个系数矩阵,第j组设置为系数矩阵Aj,Aj初始化为m×n的空矩阵;其中,m为Counting Table第j组的表项个数,n为Counting Table中第j组所有m个表项中的FlowCount值的和;
利用步骤(3.1)得到的Flow Vector中所有流的五元组对应的流存放在CountingTable中的组号和表项序号设置系数矩阵Aj中的值;设置方法为:如果Counting Table中第j组的第i个位置上存储了第k条流xk的信息,则将Ai,k设置为1;如果第i个位置上没有存储第k条流xk的信息,则将Ai,k设置为0,其中1<i≤m,1<k≤n;
(3.3)、对每个交换机的所有组建立统计数据包个数的方程并用Cplex工具进行求解
min imize||Xj||1
s.t.AjXj=Yj
Xj≥0
其中,Xj表示正在解码的交换机的Counting Table中第j组的所有流的数据包个数构成的列向量,是需要求解的向量,大小为n×1;Aj表示正在解码的交换机的Counting Table中第j组的系数矩阵;Yj表示正在解码的交换机的Counting Table中第j组的所有表项中的PacketCount的值构成的列向量,大小为m×1;
(3.4)、使用全局解码,在步骤(3.3)建立的方程组中添加约束条件,重新构建方程,计算出所有交换机机中经过的所有流的数据包的个数;
(4)、测量出本周期内经过数据中心网络每个交换机每条流量的大小,待下一个周期到来时,跳转到步骤(1)进行下一轮继续流量测量。
2.根据权利要求1所述的基于SDN的数据中心网络流量测量方法,其特征在于,所述步骤(3.4)中,对步骤(3.3)建立的方程组中添加约束条件,从而计算每一个交换机中经过的所有流的数据包的个数的具体操作步骤为:
1)、为每台交换机设置存储表Pure Cell,Pure Cell共g个组;遍历所有交换机的Counting Table中所有组的所有表项,如果第p台交换机的第j组中的某个表项中的FlowCount大小为1,表示此表项只存储了一条流的信息,则此表项的PacketCount即为该流的数据包的大小,然后将该表项对应的五元组和PacketCount加入到Pure Cell中;
2)、对于第p台交换机的每个组,遍历该交换机相应的Counting Table中每个组的每条流,xk表示第k条流,通过Flow Filter得到流xk经过的交换机,以当前解码的交换机p作为本地交换机,在邻居交换机的Pure Cell中寻找流xk,如果存在,则可得到流xk在邻居交换机中的包的个数;如果不存在,则继续寻找邻居的邻居交换机,直到遍历完整条路径,得到流xk在邻居交换机中的包的个数fk,如果遍历完所有路径都不存在,则fk设置为0;
3)、统计数据包个数的方程组中添加约束条件,计算出每一个交换机中经过的所有流的数据包的个数;
min imize(||Xj||1+||Δj||1
s.t.AjXj=Yj
Xj+Δj≤Fj
Xj≥0
其中,Δj表示Counting Table中第j组数据的调节变量构成的向量,大小为n×1,Aj表示正在解码的交换机的Counting Table中第j组的系数矩阵,Xj表示正在解码的交换机的Counting Table中第j组的所有流的数据包个数构成的列向量,大小为n×1,Yj表示正在解码的交换机的Counting Table中第j组的所有表项中的PacketCount的值构成的列向量,大小为m×1,Fj表示正在解码的交换机的Counting Table中第j组的所有流在邻居交换机中的包的个数fk构成的列向量,大小为m×1。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810087181.4A CN108282481B (zh) | 2018-01-30 | 2018-01-30 | 一种基于sdn的数据中心网络流量测量方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810087181.4A CN108282481B (zh) | 2018-01-30 | 2018-01-30 | 一种基于sdn的数据中心网络流量测量方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN108282481A true CN108282481A (zh) | 2018-07-13 |
CN108282481B CN108282481B (zh) | 2020-07-17 |
Family
ID=62805655
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201810087181.4A Expired - Fee Related CN108282481B (zh) | 2018-01-30 | 2018-01-30 | 一种基于sdn的数据中心网络流量测量方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN108282481B (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115766600A (zh) * | 2022-11-01 | 2023-03-07 | 中国科学院计算技术研究所 | 在可编程交换机上进行流大小无关的流记录计数方法及系统 |
CN115766600B (zh) * | 2022-11-01 | 2024-10-29 | 中国科学院计算技术研究所 | 一种基于可编程交换机的流记录计数方法及系统 |
Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104301246A (zh) * | 2014-10-27 | 2015-01-21 | 盛科网络(苏州)有限公司 | 基于sdn的大流负载均衡转发方法及装置 |
CN105376297A (zh) * | 2015-09-17 | 2016-03-02 | 广州大学 | Sdn控制器数量调整以及与交换机映射的方法 |
CN105429879A (zh) * | 2014-08-26 | 2016-03-23 | 杭州华为数字技术有限公司 | 流表项查询方法、设备及系统 |
CN105493455A (zh) * | 2014-03-12 | 2016-04-13 | 华为技术有限公司 | 压缩的源路由编码 |
CN105897518A (zh) * | 2016-06-30 | 2016-08-24 | 电子科技大学 | 一种全sdn网络的链路性能参数测量方法 |
CN106059821A (zh) * | 2016-06-29 | 2016-10-26 | 重庆邮电大学 | 一种基于sdn的数据中心业务服务质量保障方法 |
CN106209669A (zh) * | 2016-06-30 | 2016-12-07 | 中国人民解放军国防科学技术大学 | 面向sdn数据中心网络最大概率路径流调度方法及装置 |
CN107317758A (zh) * | 2017-06-12 | 2017-11-03 | 西安交通大学 | 一种高可靠性的细粒度sdn流量监控架构 |
-
2018
- 2018-01-30 CN CN201810087181.4A patent/CN108282481B/zh not_active Expired - Fee Related
Patent Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105493455A (zh) * | 2014-03-12 | 2016-04-13 | 华为技术有限公司 | 压缩的源路由编码 |
CN105429879A (zh) * | 2014-08-26 | 2016-03-23 | 杭州华为数字技术有限公司 | 流表项查询方法、设备及系统 |
CN104301246A (zh) * | 2014-10-27 | 2015-01-21 | 盛科网络(苏州)有限公司 | 基于sdn的大流负载均衡转发方法及装置 |
CN105376297A (zh) * | 2015-09-17 | 2016-03-02 | 广州大学 | Sdn控制器数量调整以及与交换机映射的方法 |
CN106059821A (zh) * | 2016-06-29 | 2016-10-26 | 重庆邮电大学 | 一种基于sdn的数据中心业务服务质量保障方法 |
CN105897518A (zh) * | 2016-06-30 | 2016-08-24 | 电子科技大学 | 一种全sdn网络的链路性能参数测量方法 |
CN106209669A (zh) * | 2016-06-30 | 2016-12-07 | 中国人民解放军国防科学技术大学 | 面向sdn数据中心网络最大概率路径流调度方法及装置 |
CN107317758A (zh) * | 2017-06-12 | 2017-11-03 | 西安交通大学 | 一种高可靠性的细粒度sdn流量监控架构 |
Non-Patent Citations (3)
Title |
---|
WANG XIONG等: ""Software Defined Network Inference with Passive/Active Evolutionary-Optimal pRobing (SNIPER)"", 《2015 24TH INTERNATIONAL CONFERENCE ON COMPUTER COMMUNICATION AND NETWORKS (ICCCN)》 * |
文强: ""SDN网络业务量工程技术研究"", 《中国优秀硕士学位论文全文数据库 信息科技辑》 * |
詹志宏: ""基于SDN的数据中心路由策略与安全认证研究"", 《中国优秀硕士学位论文全文数据库 信息科技辑》 * |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115766600A (zh) * | 2022-11-01 | 2023-03-07 | 中国科学院计算技术研究所 | 在可编程交换机上进行流大小无关的流记录计数方法及系统 |
CN115766600B (zh) * | 2022-11-01 | 2024-10-29 | 中国科学院计算技术研究所 | 一种基于可编程交换机的流记录计数方法及系统 |
Also Published As
Publication number | Publication date |
---|---|
CN108282481B (zh) | 2020-07-17 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
HRP20230707T1 (hr) | Dimenzionieranje podslike kod kodiranja videa | |
CN107690778A (zh) | 使用镜像探测分组测量网络的性能 | |
CN104488226B (zh) | 分布式组构系统及其管理方法、计算机可读储存介质 | |
CN104935476B (zh) | 一种基于sdn的网络流量矩阵测量方法 | |
CN108170642B (zh) | 基于编号矩阵的运动链同构判定方法 | |
CN106031094A (zh) | 分布式计数器的准确测量 | |
CN104170319B (zh) | 分布式组构系统及其管理方法 | |
CN104243300B (zh) | 包处理方法以及包处理装置 | |
CN104204969B (zh) | 参数设定装置 | |
CN105897518B (zh) | 一种全sdn网络的链路性能参数测量方法 | |
CN107454387A (zh) | 用于图像编解码传输系统的质量参数获取方法和装置 | |
CN106161098B (zh) | 一种网络行为检测方法及装置 | |
CN106068629B (zh) | 分组交换系统中的分布式计数器和计量器 | |
Velan et al. | Flow information storage assessment using IPFIXcol | |
CN107113191A (zh) | 数据中心结构网络中的内联数据包追踪 | |
US7899906B2 (en) | Multi-layered measurement model for data collection and method for data collection using same | |
CN104883303A (zh) | 一种sdn架构中多流表网络路由追踪的方法 | |
CN108282481A (zh) | 一种基于sdn的数据中心网络流量测量方法 | |
CN107786497A (zh) | 生成acl表的方法和装置 | |
CN102210128A (zh) | 路径计算顺序决定方法、程序以及计算装置 | |
CN102571423A (zh) | 基于gshlpn的网络数据传输建模及性能分析方法 | |
CN107070681B (zh) | 基于软件定义网络sdn的网络拓扑获取方法及装置 | |
CN109327393A (zh) | 网络交换目的端口确定方法、装置及基于该装置的交换机 | |
CN107409070A (zh) | 管理设备、网络管理方法和存储程序的存储介质 | |
Chang et al. | SPLWAH: A bitmap index compression scheme for searching in archival internet traffic |
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 | ||
CF01 | Termination of patent right due to non-payment of annual fee | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20200717 |