CN112308328A - 面向Top-Down网络测量***的并行测量任务的优化方法及*** - Google Patents

面向Top-Down网络测量***的并行测量任务的优化方法及*** Download PDF

Info

Publication number
CN112308328A
CN112308328A CN202011236613.7A CN202011236613A CN112308328A CN 112308328 A CN112308328 A CN 112308328A CN 202011236613 A CN202011236613 A CN 202011236613A CN 112308328 A CN112308328 A CN 112308328A
Authority
CN
China
Prior art keywords
query
processing flow
measurement
source
queries
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
Application number
CN202011236613.7A
Other languages
English (en)
Other versions
CN112308328B (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.)
Institute of Computing Technology of CAS
Original Assignee
Institute of Computing Technology of CAS
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 Institute of Computing Technology of CAS filed Critical Institute of Computing Technology of CAS
Priority to CN202011236613.7A priority Critical patent/CN112308328B/zh
Publication of CN112308328A publication Critical patent/CN112308328A/zh
Application granted granted Critical
Publication of CN112308328B publication Critical patent/CN112308328B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q10/00Administration; Management
    • G06Q10/04Forecasting or optimisation specially adapted for administrative or management purposes, e.g. linear programming or "cutting stock problem"
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/12Network monitoring probes

Landscapes

  • Engineering & Computer Science (AREA)
  • Business, Economics & Management (AREA)
  • Economics (AREA)
  • Strategic Management (AREA)
  • Human Resources & Organizations (AREA)
  • Marketing (AREA)
  • Quality & Reliability (AREA)
  • Development Economics (AREA)
  • Signal Processing (AREA)
  • Entrepreneurship & Innovation (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Operations Research (AREA)
  • Game Theory and Decision Science (AREA)
  • Tourism & Hospitality (AREA)
  • Physics & Mathematics (AREA)
  • General Business, Economics & Management (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Multi Processors (AREA)
  • Debugging And Monitoring (AREA)

Abstract

本发明提供了一种面向Top‑Down网络测量***的并行测量任务的优化方法及***,针对Top‑Down网络测量***在执行并行测量任务时存在的扩展性问题,提出了复用查询结果的优化技术,通过对Top‑Down网络测量***的声明式接口、编译模块进行扩展,降低了***在执行并行测量任务时的开支,保证了***的扩展性。

Description

面向Top-Down网络测量***的并行测量任务的优化方法及 ***
技术领域
本发明属于计算机网络测量技术领域,具体涉及一种面向Top-Down网络测量***的并行测量任务的优化方法及***。
背景技术
流量工程、网络安全等诸多网络管理任务需要对网络流量的统计信息进行分析,因此依赖于网络测量提供实时和准确的网络流量统计信息收集。
现有的网络测量***可以分成两大类:
一类是Bottom-Up的网络测量***,这一类网络测量***根据每个网络设备上可支持的测量功能(如端口镜像)配置测量规则采集数据,上层的测量分析任务只能依据测量规则可提供的数据进行分析处理,以获得想要的信息。其不足在于,由于测量规则的配置与上层测量任务的需求分离,数据平面采集到的数据不仅可能包含大量无效的数据,还可能存在数据遗漏,这种情况会导致上层测量任务的数据处理代价大、准确性降低,例如用户想要针对SYN泛洪攻击进行测量,而网络设备只支持sFlow采样,这样sFlow会采集到大量非SYN的、无用的数据包,增加测量任务的分析难度,并且采样过程中将错过大部分SYN数据包、导致测量结果精度很低。
另一类是Top-Down网络测量***,这类测量***直接以上层测量任务的意图为输入,通过一系列编译和优化,将测量意图翻译成底层数据平面设备可执行的测量规则,控制数据平面按照这些测量规则收集数据,进而为上层的测量任务精准地提供数据。Top-Down网络测量***架构如
图1所示,测量任务的意图通过一个声明式接口表达为查询,再通过编译模块编译为可执行的规则并分布式部署到网络设备上。测量***中的查询(Query)是指由***预定义的基本处理流程构成的处理流程序列,例如某些Top-Down网络测量***中,就以Filter、Map等数据流操作作为基本处理流程,此时查询即表现为数据流操作序列。
两类测量***相比而言,Top-Down网络测量***可有效避免Bottom-Up网络测量***存在的采集信息大而不全、造成的测量开支高、适用场景有限的问题。
现有技术的Top-Down网络测量***也存在问题。Top-Down网络测量***根据用户测量任务按需采集,当存在多个并行测量任务时,针对每个测量任务都会独立地进行数据采集。这些任务虽然由不同用户发起,但有可能是相同的任务,这样会造成重复测量。另外,对于不同的测量任务,其采集数据的处理过程可能有部分是相同的,也会造成重复测量。因此,在一个大型网络中,对来自不同用户(如网络管理员、应用开发者、终端用户)和不同分析应用(如攻击检测、攻防效能评估、网络性能分析等)的数量众多的不同测量需求,为每个测量需求独立地进行数据采集会导致测量开支随测量任务数量线性增长,影响测量***的扩展性。
发明内容
为解决上述现有技术中存在的问题,提供一种面向Top-Down网络测量***的并行测量任务的优化方法,包括:
步骤1,将每个测量任务表达为一个查询,每个所述查询由一个或者多个基本处理流程构成,并且包括用于指定所述查询的待测量数据的源属性;
步骤2,基于所述查询的源属性,提取多个所述查询中的公共处理流程,所述公共处理流程至少包括一个基本处理流程;
步骤3,通过复用所述公共处理流程,对每个所述查询进行优化形成新的查询;
步骤4,将所述新的查询编译生成用于部署到网络设备的规则或代码。
优选的,所述步骤2包括:
步骤22,当两个查询的源相同,并且两者的基本处理流程序列存在公共前缀,则将包含基本处理流程序列的公共前缀提取为一个单独的查询。
优选的,所述步骤2还包括:
步骤21,当两个查询的源相同,并且存在相同的基本处理流程时,在不影响查询功能的前提下,将相同的基本处理流程移动为公共前缀。
优选的,所述步骤3包括:修改每个所述查询的处理流程,以分别利用所述公共处理流程的输出为源进行串接,形成对应于所述测量任务的新的查询。
优选的,所述步骤4包括:
步骤41,对于每个待编译的当前查询,当所述当前查询的源是另一个查询的输出,则首先对源查询进行编译,然后对当前查询进行编译。
优选的,所述步骤4包括:
步骤42,生成用于检查当前查询的源查询的代码,以用于当源查询已完成时执行当前查询的代码。
优选的,所述步骤4包括:
步骤43,将构成当前查询的每个基本处理流程,编译为网络设备可执行的规则。
根据本发明的另一个方面,提供一种面向Top-Down网络测量***的并行测量任务的优化***,包括:声明式接口,优化模块,编译模块;
其中,所述声明式接口用于将每个测量任务表达为一个查询,每个所述查询由一个或者多个基本处理流程构成,并且包括用于指定所述查询的待测量数据的源属性;
所述优化模块与所述声明式接口相连接,基于所述查询的源属性,提取多个所述查询中的公共处理流程,所述公共处理流程至少包括一个基本处理流程,通过复用所述公共处理流程,对每个所述查询进行优化形成新的查询;
所述编译模块与所述优化模块相连接,用于编译所述新的查询,生成用于部署到网络设备的规则或代码。
本发明还提供一种计算机可读存储介质,其上存储有计算机程序,其中,该程序被处理器执行时实现上述任一项方法的步骤。
本发明还提供一种计算机设备,包括存储器和处理器,在所述存储器上存储有能够在处理器上运行的计算机程序,其特征在于,所述处理器执行所述程序时实现上述任一项方法的步骤。
本发明具有如下特点和有益效果:通过对Top-Down的测量***进行扩展,使得***能够对用户通过声明式接口输入的查询进行优化,在设备上执行时会通过复用中间结果以减少不必要的计算,从而较好地解决大量并行测量任务情形下Top-Down网络测量***面临的扩展性问题。
附图说明
图1示出了现有技术的Top-Down网络测量***的架构。
图2示出了现有技术的Top-Down网络测量***中通过声明式接口表达的查询示例。
图3示出了现有技术的Top-Down网络测量***查询的输入和输出示例。
图4示出了现有技术的Top-Down网络测量***的不同测量意图在同一时间窗口内有重复处理流程的示例。
图5示出了根据本发明一个实施例的扩展之后的声明式接口对于测量意图的表达的示例。
图6示出了根据本发明一个实施例的基于交换基本操作流程顺序的查询优化前的流程的示例。
图7示出了根据本发明一个实施例的交换基本操作流程顺序的查询优化后的流程的示例。
图8示出了根据本发明一个实施例的通过编译模块编译之后的代码示例。
图9示出了根据本发明一个实施例的面向Top-Down网络测量***的并行测量任务的优化方法实施流程。
具体实施方式
下面结合附图和具体实施例对本发明加以说明。应当理解,此处所描述的具体实施例仅用以解释本发明,并不用于限定本发明。
现有技术中,Top-Down网络测量***架构如
图1所示,其工作过程是:来自用户或者应用的不同测量意图分别表示为三个测量任务:测量任务1、测量任务2、测量任务3,三个测量任务通过声明式接口表达为三个查询:查询1、查询2、查询3,通过编译模块将三个查询编译为可执行的规则,然后部署到交换机、路由器等网络设备上进行数据采集。其中,声明式接口是Top-Down网络测量***提供的查询接口,以Sonata***为例,该***的查询接口可以将测量任务通过filt er、map、reduce、join、distinct五个数据操作表达为简短的代码,图2给出了使用Sonata提供的查询接口进行查询的两个示例。
从图1中还可以看出现有技术中Top-Down网络测量***存在的问题。查询1包含处理流程1、处理流程2、处理流程3,查询2包含处理流程1、处理流程2、处理流程4,查询3包含处理流程1、处理流程2、处理流程1、处理流程5、处理流程6,其中处理流程1、处理流程2、处理流程3、处理流程5、处理流程6分别对应一个基本处理流程,比如Sonata***中的filter、map、reduce等操作。可以看出,三个查询虽然总体完成的任务不同,但是包含了部分相同的基本处理流程,其中,查询1和查询2包含相同的基本处理流程1和基本处理流程2,三个查询中还包含共同的基本处理流程1。这些共同的基本处理流程没有被重复利用,而是分别进行了多次执行,造成了重复测量。
现有技术的Top-Down网络测量***无法解决上述重复测量的问题,具体原因在于:Top-Down网络测量***将查询编译为数据平面的网络设备的可执行规则,网络设备以时间窗口为单位对数据进行采集和提交。按照输入的不同,分为两类查询,一类是仅以所有待测量的数据作为输入(例如进入网络设备的所有数据包),另一类是将所有待测量的数据以及本查询的上一个时间窗口的输出作为输入。
图3示出了现有技术的Top-Down网络测量***查询的输入和输出。
图3中包含三个测量任务:测量任务1、测量任务2、测量任务3,三个测量任务对应三个查询:查询1、查询2、查询3。三个查询在时间窗口1和时间窗口2中的输入和输出有所不同,其中,查询1和查询3在时间窗口1和时间窗口2的输入都是待测量数据,时间窗口1的输出没有作为时间窗口2的输入,也就是说,上一个时间窗口的测量结果没有用于下一个时间窗口的测量。查询3则有所不同,其在时间窗口2的输入既包括待测量数据,也包括其在时间窗口1的输出结果,也就是说,查询3在时间窗口2的测量利用了时间窗口1本查询的测量结果。
上述的两类查询存在共同的问题,即每一个查询独立地完成对应的测量任务,一个查询的输出不能作为另外一个查询的输入,也就是说,一个查询不能利用另外一个查询的测量结果。因此对于不同的测量任务的意图,难以根据这些查询对数据的重复处理流程进行优化。图4示出了现有技术的Top-Down网络测量***中,不同测量意图在同一时间窗口内有重复处理流程示例。其中,测量任务1和测量任务2对应于查询1和查询2,在时间窗口1内,测量任务1和测量任务2包含相同的基本处理流程1和基本处理流程2,但***只能重复地对于待测数据执行这两个基本处理流程。因此随着网络规模膨胀、网络中的不同测量需求数目增加,Top-Down的测量***将面临一个扩展性问题:***为每个测量意图独立地进行数据采集将大量消耗网络设备的计算资源和内存空间,网络测量的开支会随着测量任务数量线性增长。
为了解决上述问题,根据本发明的一个实施例,提供一种面向Top-Down网络测量***的并行测量任务的优化方法,包括以下步骤。
步骤1,对Top-Down网络测量***的声明式接口进行扩展。
如前所述,现有技术的Top-Down网络测量***中,某一个查询的输入只能是待测量数据和上一个时间窗口里该查询的输出,不同查询之间完全独立,一个查询不能利用另外一个查询的输出结果,因此难以对并行测量任务的意图提供优化。根据本发明的一个实施例,首先对Top-Down网络测量***的声明式接口进行扩展,为每个查询维护“源”这一属性。“源”是指***或者用户在查询中指定的待测量数据,它默认为网络设备上所有待测量数据,也可以指定其他查询的输出作为本查询的输入。如图5所示,查询1为用户不特别声明源的情况,它将网络设备中的待测量数据作为自己的待测量数据,查询2和查询3的源为查询1,因为这两个查询以当前时间窗口的查询1的输出作为待测量数据。
通过如上的扩展,用户或者***可以对不同查询进行串接,使得多个被串接起来的查询共同表达一个测量任务的意图,也就是说,测量意图可以由一个或者多个查询请求组成。因此两个测量意图可以通过对某些查询的结果的复用来避免数据采集过程中的重复计算。图5示出了扩展之后的声明式接口对于测量意图的表达,其中包含三个查询:查询1、查询2、查询3。查询1的“源”属性为“待处理的原始数据”,表示其输入为网络设备中的待测量数据,其处理流程包括基本处理流程1和基本处理流程2,其输出作为查询2和查询3的输入。查询2的“源”属性为“查询1”,表示其输入为查询1的输出结果,其仅包括基本处理流程3。查询3的“源”属性也是“查询1”,表示其输入为查询1的输出结果,其仅包括处理流程4。查询1和查询2串接在一起表达一个测量任务,查询1和查询3串接在一起表达另一个测量任务,这样两个测量任务就复用了查询1的输出,从而避免在网络设备上对查询1处理流程的重复执行。
采用步骤1的技术效果是,扩展之后的声明式接口使得查询不再独立,通过对查询结果复用就可以为不同测量任务提供优化,这是对并行多测量任务进行优化的基础。
步骤2,对并行输入意图进行优化处理。
在对声明式接口进行扩展之后,可以通过复用某些查询结果的方式来对不同测量任务的意图进行优化,由于大型网络中的测量任务来自于大量不同用户,并行测量任务意图数量大,仅依赖于人力对查询进行优化是不可行的,需要测量***对所有用户输入的测量任务的查询进行自动优化。用户通过声明式接口输入的查询由一些基本处理流程构成,根据本发明的一个实施例,对并行输入的意图优化处理方法基于这些基本流程,步骤如下:
步骤21,如果两个查询的待处理数据(即查询的源)相同,并且它们存在相同的基本处理流程,那么考虑在不影响查询功能的前提下,如果一对相同基本处理流程可以移动为两个查询基本处理流程序列公共前缀的一部分,那么将这对相同基本处理流程移动为公共前缀。根据本发明的一个实施例,如图6所示,测量任务1和测量任务2对应查询1和查询2,两个查询包含相同的基本处理流程1和基本处理流程4,基本处理流程1本来就是两个查询公共前缀,无需移动。在查询1中,假如交换基本处理流程4和基本处理流程2的顺序不影响查询1的功能,则将基本处理流程4移动到基本处理流程2之前,位于基本处理流程1之后。在查询2中,假如交换处理流程4和处理流程3的顺序也不影响查询2的功能,则将处理流程4移动到处理流程3之前,位于处理流程1之后。这样,处理流程1和处理流程4共同构成了查询1和查询2的公共前缀,结果如图7所示。
步骤22,如果两个查询的待处理数据(即查询的源)相同,并且它们的基本处理流程序列存在公共前缀,那么可以将基本处理流程序列的公共前缀提取出来,作为一个单独的查询,从而复用该查询的结果。例如,图4中的查询1和查询2有相同的输入和相同的基本处理流程1和处理流程2,也就是说,具有公共的基本处理流程序列,即公共前缀<基本处理流程1,基本处理流程2>,于是***自动提取出该基本处理流程序列,作为一个单独的查询节点,最后得到如图5所示的优化结果。图5示出了扩展之后的声明式接口对于测量意图的表达,其中包含三个查询:查询1、查询2、查询3。查询1的“源”属性为“待处理的原始数据”,表示其输入为网络设备中的待测量数据,其处理流程包括基本处理流程1和基本处理流程2,其输出作为查询2和查询3的输入。查询2的“源”属性为“查询1”,表示其输入为查询1的输出结果,其仅包括基本处理流程3。查询3的“源”属性也是“查询1”,表示其输入为查询1的输出结果,其仅包括基本处理流程4。查询1和查询2串接在一起表达一个测量任务,查询1和查询3串接在一起表达另一个测量任务,这样两个测量任务就复用了查询1的输出,从而避免在网络设备上对查询1处理流程的重复执行。
通过步骤21和步骤22可以对两个不同查询进行优化,使得每个测量任务的意图可以被表达为一个或者多个查询,因此对查询进行优化就可以完成对并行测量任务的优化。Top-Down网络测量***在接收了用户通过声明式接口输入的查询之后,需要按照上述方法对所有查询进行优化,再将优化后的查询交给编译模块。
采用步骤2的技术效果是,通过将并行测量任务的基本处理流程公共前缀提取为单独的查询,复用该查询结果,实现了对并行测量任务的意图的自动优化。
步骤3,编译经步骤2优化后的并行测量任务。
为优化并行测量任务的意图,步骤1扩展了Top-Down网络测量***的声明式接口,为每个查询维护了“源”这个属性,用于重定义该查询的待测量数据为其他查询的输出,而这一扩展属性需要被Top-Down网络测量***的编译模块所支持,才能被正确编译到设备中执行,因而需要对Top-Down网络测量***的编译模块进行设计。Top-Down网络测量***可能将查询编译并交付给网络中的交换机、终端主机,或者控制器等,在其中可编程性最差的是交换机,如何将查询编译为可编程交换机上的规则,并且实现对于查询的“源”的指定是设计编译模块时主要考虑的问题。
根据本发明的一个实施例,对于每个输入编译模块的查询,编译模块执行如下操作进行编译:
步骤31,查看该查询的源,如果源是默认值,那么直接进入步骤32,如果源是另一个查询的输出,那么检查源查询是否已经被编译为代码,如果源查询尚未被编译,那么需要先对源查询进行编译,再继续对当前查询进行编译。这是为了保证当执行任何一个查询的代码的时候,已经执行完它的源的代码,从而获知源查询的输出,作为当前查询的输入。
步骤32,生成一段代码,用于检查当前查询的源查询是否已完成,仅当源查询已完成后,才执行当前查询的代码。
步骤33,将构成当前查询的每个基本处理流程,编译为网络设备可执行的代码,根据本发明的一个实施例,所述网络设备包括可编程交换机和可编程路由器。
这样的设计使得设备上执行数据采集的时候,可以按照查询的源指定输入查询的数据包,从而保证设备上的采集过程与查询是一致的。以图5中的查询为例,使用扩展的编译模块进行编译之后的代码如图8所示,其中,作为查询2和查询3的源,查询1的代码需要在查询2和查询3的前面,而执行查询2与查询3的代码之前,先要判断数据包是否已经符合查询1的要求,也就是说,要判断查询1已完成并输出了数据包。
步骤3的技术效果是,使得对于并行测量任务意图的优化之后的查询,能够正确在网络设备上被执行、实现满足用户输入测量意图的数据采集。
图9示出了根据本发明的一个面向Top-Down网络测量***的并行测量任务的优化方法实施流程的示例。其中,包括三个测量任务,分别是测量任务1、测量任务2、测量任务3。三个任务通过声明式接口表达为三个查询,分别是查询1、查询2、查询3。每个查询包含各自的基本处理流程,查询1包含基本处理流程1、基本处理流程2、基本处理流程3;查询2包含基本处理流程1、基本处理流程2、基本处理流程4;查询3包含基本处理流程1、基本处理流程5、基本处理流程6。三个查询基于本发明的公共处理流程通过优化模块优化,修改每个查询的处理流程,分别利用公共处理流程的输出为源进行串接,形成对应于所述测量任务的新的查询。优化后生成了5个查询,分别是查询a、查询b、查询c、查询d、查询e。优化后的查询包含源属性,用于指定查询的输入。具体的,查询a的源是所有待测数据,其包含基本处理流程1;查询b的源是查询a的输出,因此其不仅包含基本处理流程2,也包含了查询a的基本处理流程1;查询c的源是查询b的输出,其不仅包含了基本处理流程3,也包含了查询b的基本处理流程1和基本处理流程2,即查询c完成了前述查询1的测量任务;查询d的源是查询b的输出,其不仅包含了基本处理流程4,也包含了查询b的基本处理流程1和基本处理流程2,即查询d完成了前述查询2的测量任务;查询e的源是查询a的输出,其不仅包含了基本处理流程5和基本处理流程6,也包含了查询a的基本处理流程1,即查询e完成了前述查询3的测量任务。可以看出,与图1的现有技术相比,本发明通过引用公共处理流程的输出结果,避免了不同查询重复进行相同的处理流程。
本发明还提供一种面向Top-Down网络测量***的并行测量任务的优化***,包括:声明式接口,优化模块,编译模块;
其中,所述声明式接口用于将每个测量任务表达为一个查询,每个所述查询由一个或者多个基本处理流程构成,并且包括用于指定所述查询的待测量数据的源属性;
所述优化模块与所述声明式接口相连接,基于所述查询的源属性,提取多个所述查询中的公共处理流程,所述公共处理流程至少包括一个基本处理流程,通过复用所述公共处理流程,对每个所述查询进行优化形成新的查询;
所述编译模块与所述优化模块相连接,用于编译所述新的查询,生成用于部署到网络设备的规则或代码。
总体来说,本发明在实际应用过程中,需要对Top-Down网络测量***的声明式接口进行扩展和编译模块进行扩展,并在声明式接口和编译模块之间加入一个根据公共基本处理流程优化查询的优化模块。用户通过声明式接口将各种测量任务的意图表达为查询,而Top-Down网络测量***首先将这些查询交给优化模块统一进行优化,优化之后得到的查询再经编译模块编译到各设备进行执行。本发明能够有效避免Top-Down网络测量***在并行多测量意图情形下出现的某些数据处理流程多次重复进行的问题,减少了并行多测量意图的开支,增强了***的可扩展性。
应该注意到并理解,在不脱离后附的权利要求所要求的本发明的精神和范围的情况下,能够对上述详细描述的本发明做出各种修改和改进。因此,要求保护的技术方案的范围不受所给出的任何特定示范教导的限制。

Claims (10)

1.一种面向Top-Down网络测量***的并行测量任务的优化方法,包括:
步骤1,将每个测量任务表达为一个查询,每个所述查询由一个或者多个基本处理流程构成,并且包括用于指定所述查询的待测量数据的源属性;
步骤2,基于所述查询的源属性,提取多个所述查询中的公共处理流程,所述公共处理流程至少包括一个基本处理流程;
步骤3,通过复用所述公共处理流程,对每个所述查询进行优化形成新的查询;
步骤4,将所述新的查询编译生成用于部署到网络设备的规则或代码。
2.根据权利要求2所述的方法,所述步骤2包括:
步骤22,当两个查询的源相同,并且两者的基本处理流程序列存在公共前缀,则将包含基本处理流程序列的公共前缀提取为一个单独的查询。
3.根据权利要求2所述的方法,所述步骤2还包括:
步骤21,当两个查询的源相同,并且存在相同的基本处理流程时,在不影响查询功能的前提下,将相同的基本处理流程移动为公共前缀。
4.根据权利要求1所述的方法,所述步骤3包括:修改每个所述查询的处理流程,以分别利用所述公共处理流程的输出为源进行串接,形成对应于所述测量任务的新的查询。
5.根据权利要求1所述的方法,所述步骤4包括:
步骤41,对于每个待编译的当前查询,当所述当前查询的源是另一个查询的输出,则首先对源查询进行编译,然后对当前查询进行编译。
6.根据权利要求1所述的方法,所述步骤4包括:
步骤42,生成用于检查当前查询的源查询的代码,以用于当源查询已完成时执行当前查询的代码。
7.根据权利要求1所述的方法,所述步骤4包括:
步骤43,将构成当前查询的每个基本处理流程,编译为网络设备可执行的规则。
8.一种面向Top-Down网络测量***的并行测量任务的优化***,包括:声明式接口,优化模块,编译模块;
其中,所述声明式接口用于将每个测量任务表达为一个查询,每个所述查询由一个或者多个基本处理流程构成,并且包括用于指定所述查询的待测量数据的源属性;
所述优化模块与所述声明式接口相连接,基于所述查询的源属性,提取多个所述查询中的公共处理流程,所述公共处理流程至少包括一个基本处理流程,通过复用所述公共处理流程,对每个所述查询进行优化形成新的查询;
所述编译模块与所述优化模块相连接,用于编译所述新的查询,生成用于部署到网络设备的规则或代码。
9.一种计算机可读存储介质,其上存储有计算机程序,其中,该程序被处理器执行时实现根据权利要求1至7中任一项所述方法的步骤。
10.一种计算机设备,包括存储器和处理器,在所述存储器上存储有能够在处理器上运行的计算机程序,其特征在于,所述处理器执行所述程序时实现权利要求1至7任一项所述的方法的步骤。
CN202011236613.7A 2020-11-09 2020-11-09 面向Top-Down网络测量***的并行测量任务的优化方法及*** Active CN112308328B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202011236613.7A CN112308328B (zh) 2020-11-09 2020-11-09 面向Top-Down网络测量***的并行测量任务的优化方法及***

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202011236613.7A CN112308328B (zh) 2020-11-09 2020-11-09 面向Top-Down网络测量***的并行测量任务的优化方法及***

Publications (2)

Publication Number Publication Date
CN112308328A true CN112308328A (zh) 2021-02-02
CN112308328B CN112308328B (zh) 2023-06-06

Family

ID=74325179

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202011236613.7A Active CN112308328B (zh) 2020-11-09 2020-11-09 面向Top-Down网络测量***的并行测量任务的优化方法及***

Country Status (1)

Country Link
CN (1) CN112308328B (zh)

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102547757A (zh) * 2010-12-31 2012-07-04 北京亿阳信通软件研究院有限公司 网络优化分析***及方法
CN105701128A (zh) * 2014-11-28 2016-06-22 华为技术有限公司 一种查询语句的优化方法和装置
CN107368517A (zh) * 2017-06-02 2017-11-21 上海恺英网络科技有限公司 一种大数据流查询的方法及设备
CN108920110A (zh) * 2018-07-25 2018-11-30 湖南机电职业技术学院 一种基于内存计算模式的并行处理大数据存储***及方法

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102547757A (zh) * 2010-12-31 2012-07-04 北京亿阳信通软件研究院有限公司 网络优化分析***及方法
CN105701128A (zh) * 2014-11-28 2016-06-22 华为技术有限公司 一种查询语句的优化方法和装置
CN107368517A (zh) * 2017-06-02 2017-11-21 上海恺英网络科技有限公司 一种大数据流查询的方法及设备
CN108920110A (zh) * 2018-07-25 2018-11-30 湖南机电职业技术学院 一种基于内存计算模式的并行处理大数据存储***及方法

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
戴冕;程光;周余阳;: "软件定义网络的测量方法研究", 软件学报 *

Also Published As

Publication number Publication date
CN112308328B (zh) 2023-06-06

Similar Documents

Publication Publication Date Title
US10257057B2 (en) System and a process for searching massive amounts of time-series
CN103188112B (zh) 网络流量检测方法及装置
CN102929613B (zh) 操作***的调优装置和方法
EP4086771B1 (en) Method and system for the on-demand generation of graph-like models out of multidimensional observation data
CN108108288A (zh) 一种日志数据解析方法、装置及设备
KR102328938B1 (ko) 전자 시스템들에서의 로그 데이터의 관리
CN109359094A (zh) 一种分布式***日志全链路追踪方法及装置
JP6060312B2 (ja) データの編成及び高速検索
CN110019308A (zh) 数据查询方法、装置、设备及存储介质
US8489631B2 (en) Distributing a query
CN113836163A (zh) 数据的关联查询方法、装置、设备及存储介质
CN108733727A (zh) 一种查询处理方法、数据源注册方法及查询引擎
CN110719194A (zh) 一种网络数据的分析方法及装置
CN102799624A (zh) 基于Datalog的分布式环境下大图数据查询方法
CN111581232B (zh) 一种基于elk的慢sql实时分析方法及***
CN114443780A (zh) 数据处理方法、装置、设备和存储介质
Saleh et al. Partitioning for scalable complex event processing on data streams
CN105337764A (zh) 一种设备资源信息采集方法
CN112308328A (zh) 面向Top-Down网络测量***的并行测量任务的优化方法及***
CN108108289A (zh) 一种集群资源统计方法、***、装置及可读存储***
CN104932982B (zh) 一种消息访存的编译方法及相关装置
WO2012009901A1 (zh) 一种网络资源评估中的数据采集方法及***
CN114817300A (zh) 基于sql语句的日志查询方法及其应用
Tallent et al. Representative paths analysis
CN110019911A (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