采样方法及装置与流程

文档序号:33471088发布日期:2023-03-15 08:27阅读:43来源:国知局
采样方法及装置与流程

1.本技术涉及通信技术领域,尤其涉及一种采样方法及装置。


背景技术:

2.目前,在大数据、大流量的5g时代背景下,数据中心设备,除了具有提供稳定可靠的转发功能之外,还需要具有精确有效的流量统计功能,可为控制端的流量计费、网络规划、攻击监测等功能提供重要依据。
3.netstream流的统计技术,以流为单元,对网络流数据输出者(英文:netstream data exporter,简称:nde)设备输出的流按照配置的采样比例进行采样。采样完成后,nde设备将采样结果(即流信息,包括ip地址、端口号、出入接口、vpn、nid、tte id、mpls标签等等)输出至分析器的数据库,由分析器进行下一步的流量控制。
4.在对netstream流进行采用的过程中,采样比例的设置是十分关键的。较大的采样比,可以保证采到较多的流数据。但是,nde设备的底层驱动性能存在瓶颈,在大流量下将丢失部分流信息,导致分析器生成的流量吞吐曲线失真,不利于流量计费;在小采样比下,nde设备的底层驱动性能没有采样压力,分析器可还原出真实的流量大小。但是,在小流量下采样到的流信息较少,不利于分析器实现网络规划和攻击监测功能。
5.如今,现网数据中心接入的用户数目复杂且多变,配置单一的采样比实现已存在明显缺陷。为了克服上述缺陷,当前采用管理人员(或称之为用户)手动配置采样比的方案。该方案适用于nde设备接收流量波动较小的场景,对于复杂多变的现网,无法实现nde设备底层驱动资源的动态维稳,也无法做到智能流量采样。同时,也使得分析器无法兼顾流量计费、网络规划,攻击监测等功能。


技术实现要素:

6.有鉴于此,本技术提供了一种采样方法及装置,用以解决现有手动配置采用比的方案中,无法使nde设备底层驱动资源动态维稳,也无法实现智能流量采样的问题。
7.第一方面,本技术提供了一种采样方法,所述方法应用于nde设备,所述nde设备与分析器已建立通信连接,所述方法包括;
8.接收所述分析器发送的控制报文,所述控制报文包括第一流量值,所述第一流量值为所述分析器根据原始采样比以及所述nde设备上报的数据报文的数量计算得到;
9.获取第二流量值,所述第二流量值为所述nde设备根据自身端口收发报文的数量统计得到;
10.根据所述第一流量值以及所述第二流量值,计算流量误差;
11.若所述流量误差未处于误差区间内,则生成当前采样比,所述当前采样比用于使所述nde设备依据所述当前采样比对业务流进行采样处理;
12.重复执行所述接收分析器发送的第一控制报文、所述获取第二流量值、所述根据所述第一流量值以及所述第二流量值,计算流量误差的过程,直至若所述流量误差处于所
述误差区间内时为止,得到最终采样比。
13.第二方面,本技术提供了一种采样装置,所述装置应用于nde设备,所述nde设备与分析器已建立通信连接,所述装置包括;
14.接收单元,用于接收所述分析器发送的控制报文,所述控制报文包括第一流量值,所述第一流量值为所述分析器根据原始采样比以及所述nde设备上报的数据报文的数量计算得到;
15.获取单元,用于获取第二流量值,所述第二流量值为所述nde设备根据自身端口收发报文的数量统计得到;
16.计算单元,用于根据所述第一流量值以及所述第二流量值,计算流量误差;
17.生成单元,用于若所述流量误差未处于误差区间内,则生成当前采样比,所述当前采样比用于使所述nde设备依据所述当前采样比对业务流进行采样处理;
18.所述接收单元、所述获取单元、所述计算单元重复执行所述接收分析器发送的第一控制报文、所述获取第二流量值、所述根据所述第一流量值以及所述第二流量值,计算流量误差的过程,直至若所述流量误差处于所述误差区间内时为止,得到最终采样比。
19.第三方面,本技术提供了一种网络设备,包括处理器和机器可读存储介质,机器可读存储介质存储有能够被处理器执行的机器可执行指令,处理器被机器可执行指令促使执行本技术第一方面所提供的方法。
20.因此,应用本技术提供的采样方法及装置,nde设备接收所述分析器发送的控制报文,该控制报文包括第一流量值,该第一流量值为分析器根据原始采样比以及nde设备上报的数据报文的数量计算得到;nde设备获取第二流量值,该第二流量值为nde设备根据自身端口收发报文的数量统计得到;根据第一流量值以及第二流量值,nde设备计算流量误差;若流量误差未处于误差区间内,则nde设备生成当前采样比,该当前采样比用于使nde设备依据当前采样比对业务流进行采用处理;nde设备重复执行接收分析器发送的第一控制报文、获取第二流量值、根据第一流量值以及第二流量值,计算流量误差的过程,直至若流量误差处于误差区间内时为止,得到最终采样比。
21.如此,利用采样器上报的第一流量值以及自身统计的第二流量值,实时计算流量误差并生成不同的采样比。解决了现有手动配置采用比的方案中,无法使nde设备底层驱动资源动态维稳,智能流量采用以及导致控制器无法实现兼顾流量计费、网络规划,攻击监测等功能的问题。实现了netstream的弹性采样,实现了nde设备底层资源和采样比的相互调节,保持nde设备的高效、稳定,同时,也有利于分析器兼顾流量统计、网络规划以及攻击监测等功能。
附图说明
22.图1为本技术实施例提供的采样方法的流程图;
23.图2为本技术实施例提供的采样装置结构图;
24.图3为本技术实施例提供的网络设备硬件结构体。
具体实施方式
25.这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及
附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施例并不代表与本技术相一致的所有实施例。相反,它们仅是与如所附权利要求书中所详述的、本技术的一些方面相一致的装置和方法的例子。
26.在本技术使用的术语是仅仅出于描述特定实施例的目的,而非旨在限制本技术。在本技术和所附权利要求书中所使用的单数形式的“一种”、“所述”和“该”也旨在包括多数形式,除非上下文清楚地表示其他含义。还应当理解,本文中使用的术语“和/或”是指并包含一个或多个相对应的列出项目的任何或所有可能组合。
27.应当理解,尽管在本技术可能采用术语第一、第二、第三等来描述各种信息,但这些信息不应限于这些术语。这些术语仅用来将同一类型的信息彼此区分开。例如,在不脱离本技术范围的情况下,第一信息也可以被称为第二信息,类似地,第二信息也可以被称为第一信息。取决于语境,如在此所使用的词语“如果”可以被解释成为“在
……
时”或“当
……
时”或“响应于确定”。
28.下面对本技术实施例提供的一种采样方法进行详细地说明。参见图1,图1为本技术实施例提供的采样方法的流程图。该方法应用于nde设备。本技术实施例提供的采样方法可包括如下所示步骤。
29.步骤110、接收所述分析器发送的控制报文,所述控制报文包括第一流量值,所述第一流量值为所述分析器根据原始采样比以及所述nde设备上报的数据报文的数量计算得到;
30.具体地,nde设备内包括一采样模块,该采样模块可对nde设备接收、发送的业务流进行采样处理,以获取流信息。管理人员(或称之为用户)可预先设置采样模块的原始采样比,采样模块通过原始采样比对业务流进行采样处理。
31.nde设备判断自身是否已启动弹性采样模式,若nde设备已启动弹性采样模式,则nde设备与分析器建立tcp/ip连接;若nde设备未启动弹性采样模式,则nde设备按照已配置的原始采样比对业务netstream流进行采样处理。
32.可选地,在执行本步骤之前,还包括nde设备向分析器发送至少一个数据报文以及模板报文的过程。
33.进一步地,根据原始采样比,采样模块对业务流进行采样处理,并从业务流中采样得到至少一个采样报文。nde设备提取每个采样报文的流信息,并生成对应数量的数据报文。nde设备生成模板报文,该模块报文包括原始采样比,以及用于解析数据报文的解析信息。nde设备向分析器发送至少一个数据报文以及模板报文。
34.分析器接收到至少一个数据报文以及模板报文后,从中获取原始采样比并确定数据报文的数量。分析器将原始采样比与数据报文的数量进行乘运算,得到一乘积值。分析器将该乘积值作为第一流量值,也即是分析器确定的当前nde设备的流量。
35.可以理解的是,解析信息用于使分析器对数据报文进行解析处理,并获取每个数据报文包括的流信息。该流信息包括但不限于ip地址、端口号、出入接口、vpn、nid、tte id、mpls标签等等。
36.分析器生成控制报文,该控制报文包括第一流量值。分析器向nde设备发送控制报文。
37.nde设备接收控制报文后,从中获取第一流量值。
38.在一个示例中,原始采样比为1:1,也即是采样模块对nde设备收发的每个报文均进行采样,即全采样。原始采样比为1:100000,也即是采样模块对nde设备收发的每100000报文中采样一个报文。
39.步骤120、获取第二流量值,所述第二流量值为所述nde设备根据自身端口收发报文的数量统计得到;
40.具体地,根据步骤110的描述,nde设备获取到第一流量值后,nde设备统计自身各端口收发报文的数量,得到第二流量值。
41.需要说明的是,nde设备可统计自身全部端口收发报文的数量,也可统计自身部分端口收发报文数量。
42.步骤130、根据所述第一流量值以及所述第二流量值,计算流量误差;
43.具体地,根据步骤120的描述,nde设备获取到第二流量值后,利用第一流量值与第二流量值,计算流量误差。
44.可选地,nde设备计算第一流量值与第二流量值的差值。nde设备将差值与第二流量值商的绝对值作为流量误差。
45.步骤140、若所述流量误差未处于误差区间内,则生成当前采样比,所述当前采样比用于使所述nde设备依据所述当前采样比对业务流进行采样处理;
46.具体地,根据步骤130的描述,nde设备获取到流量误差后,判断流量误差是否处于预设的误差区间内。
47.若流量误差未处于误差区间内,则nde设备生成当前采用比,该当前采样比用于使nde设备依据当前采样比对业务流进行采样处理。
48.若流量误差处于误差区间内,则nde设备确定当前已使用的原始采样比可充分利用底层资源,同时,分析器也可兼顾流量统计、网络规划以及攻击监测等功能。
49.可选地,误差区间是指流统计允许的波动范围,当误差区间范围较窄时,有利于流统计,当误差区间范围较宽时,有利于流分析。
50.可选地,在一个示例中,当前采样比包括第一采样比。上述若流量误差未处于误差区间内,则nde设备生成当前采样比,具体过程为:
51.进一步地,若流量误差大于误差区间包括的最大值,则nde设备获取预设的采样弹性区间;nde设备将原始采样比与采样弹性区间包括的最小采样比进行二分法计算,得到第一采样比。该第一采样比小于原始采样比。
52.由于第一采样比小于原始采样比,如此调节可通过牺牲部分流量分析的准确性,进而保证控制器实现流量统计功能。
53.可选地,在另一个示例中,当前采样比包括第二采样比。上述若流量误差未处于误差区间内,则nde设备生成当前采样比,具体过程为:
54.进一步地,若流量误差小于误差区间包括的最小值,则nde设备获取预设的采样弹性区间;nde设备将原始采样比与采样弹性区间包括的最大采样比进行二分法计算,得到第二采样比。该第二采样比大于原始采样比。
55.由于第二采样比大于原始采样比,如此调节可使得采集到更多的流信息,进而更有利于控制器实现流量分析功能。
56.上述采用弹性区间具体为采样比的扩缩范围,用以保证执行调节的采样比范围依
然可控。
57.在本技术实施例中,nde设备的底层资源与采样比实现了相互制约,有利于充分使用nde设备的底层资源。当nde设备的底层资源较充足时,表现出较好的统计性能,通过采样器的反馈,调高采样比,进一步的占用nde设备的底层资源;当nde设备的底层资源不足时,表现出较差的统计性能,调低采样比,进一步地释放nde设备的底层资源,保证系统稳定。
58.例如,误差区间具体配置为0.5%《x《1%,其中,x为流量误差。若x为大于1%或是小于0.5%,则nde设备均会生成当前采样比。采样弹性区间具体配置为[1:1,1:100000],其中,1:1为采样弹性区间包括的最大采样比,1:100000为采样弹性区间包括的最小采样比。
[0059]
比如,原始采样比为1:1,nde设备计算出的流量误差为:|(10-100)/100|=90%。由于该流量误差大于1%,则nde设备则将原始采样比1:1与最小采样比1:100000进行二分法计算,得到当前采样比为1:50000。
[0060]
可选地,在本技术实施例中,还将配置下述参数,以实现对采样比的动态调节。
[0061]
例如,调节周期是指弹性采样比的时间调节周期,用于控制弹性采样比的精度。配置的周期越短,采样比的精度越高,但会加大nde设备的工作负载;配置的周期越长,采样比的精度越差,但对nde设备的整体性能影响较小。
[0062]
在实际应用中,可根据nde设备的当前工作性能配置调节周期。若nde设备的当前工作性能较好,则可将调节周期配置较短,比如,1分钟,50秒;若nde设备的当前工作性能不好,则可将调节周期配置较长,比如,5分钟,8分钟等。
[0063]
步骤150、重复执行所述接收分析器发送的第一控制报文、所述获取第二流量值、所述根据所述第一流量值以及所述第二流量值,计算流量误差的过程,直至若所述流量误差处于所述误差区间内时为止,得到最终采样比。
[0064]
具体地,根据步骤140的描述,nde设备生成当前采样比之后,依据当前采样比继续对业务流进行采样处理。同时,nde设备重复执行步骤110-步骤130,并再次得到流量误差。
[0065]
nde设备判断流量误差是否处于误差区间内。若流量误差处于误差区间内,则nde设备确定当前已使用的原始采样比可充分利用底层资源,同时,分析器也可兼顾流量统计、网络规划以及攻击监测等功能。此时,nde设备得到最终采样比,并依据最终采样比对后续的业务流进行采样处理。
[0066]
若流量误差未处于误差区间内,则nde设备重复执行步骤140,并生成当前采样比。可以理解的是,nde设备依据当前采样比继续对业务流进行采样处理。同时,nde设备重复执行步骤110-步骤130,并再次得到流量误差。如此,nde设备往复循环步骤110-步骤150,直至若流量误差处于误差区间内时为止,得到最终采样比。
[0067]
因此,应用本技术提供的采样方法,nde设备接收所述分析器发送的控制报文,该控制报文包括第一流量值,该第一流量值为分析器根据原始采样比以及nde设备上报的数据报文的数量计算得到;nde设备获取第二流量值,该第二流量值为nde设备根据自身端口收发报文的数量统计得到;根据第一流量值以及第二流量值,nde设备计算流量误差;若流量误差未处于误差区间内,则nde设备生成当前采样比,该当前采样比用于使nde设备依据当前采样比对业务流进行采用处理;nde设备重复执行接收分析器发送的第一控制报文、获取第二流量值、根据第一流量值以及第二流量值,计算流量误差的过程,直至若流量误差处于误差区间内时为止,得到最终采样比。
[0068]
如此,利用采样器上报的第一流量值以及自身统计的第二流量值,实时计算流量误差并生成不同的采样比。解决了现有手动配置采用比的方案中,无法使nde设备底层驱动资源动态维稳,智能流量采用以及导致控制器无法实现兼顾流量计费、网络规划,攻击监测等功能的问题。实现了netstream的弹性采样,实现了nde设备底层资源和采样比的相互调节,保持nde设备的高效、稳定,同时,也有利于分析器兼顾流量统计、网络规划以及攻击监测等功能。
[0069]
基于同一发明构思,本技术实施例还提供了与采样方法对应的采样装置。参见图2,图2为本技术实施例提供的采样装置,所述装置应用于nde设备,所述nde设备与分析器已建立通信连接,所述装置包括;
[0070]
接收单元210,用于接收所述分析器发送的控制报文,所述控制报文包括第一流量值,所述第一流量值为所述分析器根据原始采样比以及所述nde设备上报的数据报文的数量计算得到;
[0071]
获取单元220,用于获取第二流量值,所述第二流量值为所述nde设备根据自身端口收发报文的数量统计得到;
[0072]
计算单元230,用于根据所述第一流量值以及所述第二流量值,计算流量误差;
[0073]
生成单元240,用于若所述流量误差未处于误差区间内,则生成当前采样比,所述当前采样比用于使所述nde设备依据所述当前采样比对业务流进行采样处理;
[0074]
所述接收单元210、所述获取单元220、所述计算单元230重复执行所述接收分析器发送的第一控制报文、所述获取第二流量值、所述根据所述第一流量值以及所述第二流量值,计算流量误差的过程,直至若所述流量误差处于所述误差区间内时为止,得到最终采样比。
[0075]
可选地,所述计算单元230具体用于,计算所述第一流量值与所述第二流量值的差值;
[0076]
将所述差值与所述第二流量值商的绝对值作为所述流量误差。
[0077]
可选地,所述当前采样比包括第一采样比;
[0078]
所述生成单元240具体用于,若所述流量误差大于所述误差区间包括的最大值,则获取预设的采样弹性区间;
[0079]
将所述原始采样比与所述采样弹性区间包括的最小采样比进行二分法计算,得到所述第一采样比,所述第一采样比小于所述原始采样比。
[0080]
可选地,所述当前采样比包括第二采样比;
[0081]
所述生成单元240具体用于,若所述流量误差小于所述误差区间包括的最小值,则获取预设的采样弹性区间;
[0082]
将所述原始采样比与所述采样弹性区间包括的最大采样比进行二分法计算,得到所述第二采样比,所述第二采样比大于所述原始采样比。
[0083]
可选地,所述装置还包括:
[0084]
采样单元(图中未示出),用于根据所述原始采样比,对业务流进行采样处理,得到至少一个采样报文;
[0085]
提取单元(图中未示出),用于提取每个采样报文的流信息,生成对应的数据报文;
[0086]
发送单元(图中未示出),用于向所述分析器发送至少一个数据报文以及模板报
文,所述模板报文包括所述nde设备对业务流进行采样处理的原始采样比以及用于解析所述数据报文的解析信息。
[0087]
因此,应用本技术提供的采样装置,nde设备接收所述分析器发送的控制报文,该控制报文包括第一流量值,该第一流量值为分析器根据原始采样比以及nde设备上报的数据报文的数量计算得到;nde设备获取第二流量值,该第二流量值为nde设备根据自身端口收发报文的数量统计得到;根据第一流量值以及第二流量值,nde设备计算流量误差;若流量误差未处于误差区间内,则nde设备生成当前采样比,该当前采样比用于使nde设备依据当前采样比对业务流进行采用处理;nde设备重复执行接收分析器发送的第一控制报文、获取第二流量值、根据第一流量值以及第二流量值,计算流量误差的过程,直至若流量误差处于误差区间内时为止,得到最终采样比。
[0088]
如此,利用采样器上报的第一流量值以及自身统计的第二流量值,实时计算流量误差并生成不同的采样比。解决了现有手动配置采用比的方案中,无法使nde设备底层驱动资源动态维稳,智能流量采用以及导致控制器无法实现兼顾流量计费、网络规划,攻击监测等功能的问题。实现了netstream的弹性采样,实现了nde设备底层资源和采样比的相互调节,保持nde设备的高效、稳定,同时,也有利于分析器兼顾流量统计、网络规划以及攻击监测等功能。
[0089]
基于同一发明构思,本技术实施例还提供了一种网络设备,如图3所示,包括处理器310、收发器320和机器可读存储介质330,机器可读存储介质330存储有能够被处理器310执行的机器可执行指令,处理器310被机器可执行指令促使执行本技术实施例所提供的采样方法。前述图2所示的通信装置,可采用如图3所示的网络设备硬件结构实现。
[0090]
上述计算机可读存储介质330可以包括随机存取存储器(英文:random access memory,简称:ram),也可以包括非易失性存储器(英文:non-volatile memory,简称:nvm),例如至少一个磁盘存储器。可选的,计算机可读存储介质330还可以是至少一个位于远离前述处理器310的存储装置。
[0091]
上述处理器310可以是通用处理器,包括中央处理器(英文:central processing unit,简称:cpu)、网络处理器(英文:network processor,简称:np)等;还可以是数字信号处理器(英文:digital signal processor,简称:dsp)、专用集成电路(英文:application specific integrated circuit,简称:asic)、现场可编程门阵列(英文:field-programmable gate array,简称:fpga)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。
[0092]
本技术实施例中,处理器310通过读取机器可读存储介质330中存储的机器可执行指令,被机器可执行指令促使能够实现处理器310自身以及调用收发器320执行前述本技术实施例描述的采样方法。
[0093]
另外,本技术实施例提供了一种机器可读存储介质330,机器可读存储介质330存储有机器可执行指令,在被处理器310调用和执行时,机器可执行指令促使处理器310自身以及调用收发器320执行前述本技术实施例描述的采样方法。
[0094]
上述装置中各个单元的功能和作用的实现过程具体详见上述方法中对应步骤的实现过程,在此不再赘述。
[0095]
对于装置实施例而言,由于其基本对应于方法实施例,所以相关之处参见方法实
施例的部分说明即可。以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本技术方案的目的。本领域普通技术人员在不付出创造性劳动的情况下,即可以理解并实施。
[0096]
对于采样装置以及机器可读存储介质实施例而言,由于其涉及的方法内容基本相似于前述的方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
[0097]
以上所述仅为本技术的较佳实施例而已,并不用以限制本技术,凡在本技术的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本技术保护的范围之内。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1