CN114205254B - 流量监控方法、装置、集成电路、网络设备及网络系统 - Google Patents
流量监控方法、装置、集成电路、网络设备及网络系统 Download PDFInfo
- Publication number
- CN114205254B CN114205254B CN202011233448.XA CN202011233448A CN114205254B CN 114205254 B CN114205254 B CN 114205254B CN 202011233448 A CN202011233448 A CN 202011233448A CN 114205254 B CN114205254 B CN 114205254B
- Authority
- CN
- China
- Prior art keywords
- information
- value
- register
- acquisition device
- message
- 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
Links
- 238000012544 monitoring process Methods 0.000 title claims abstract description 419
- 238000000034 method Methods 0.000 title claims abstract description 139
- 230000004044 response Effects 0.000 claims description 10
- 238000012806 monitoring device Methods 0.000 abstract 1
- 238000004891 communication Methods 0.000 description 55
- 238000012545 processing Methods 0.000 description 49
- 230000006870 function Effects 0.000 description 19
- 238000010586 diagram Methods 0.000 description 16
- 230000000694 effects Effects 0.000 description 10
- 230000008569 process Effects 0.000 description 10
- 230000001186 cumulative effect Effects 0.000 description 7
- 238000004590 computer program Methods 0.000 description 6
- 238000009825 accumulation Methods 0.000 description 5
- 238000005259 measurement Methods 0.000 description 5
- 238000012935 Averaging Methods 0.000 description 4
- 230000003111 delayed effect Effects 0.000 description 4
- 238000005315 distribution function Methods 0.000 description 4
- 239000000284 extract Substances 0.000 description 4
- 238000012896 Statistical algorithm Methods 0.000 description 3
- 230000008878 coupling Effects 0.000 description 3
- 238000010168 coupling process Methods 0.000 description 3
- 238000005859 coupling reaction Methods 0.000 description 3
- 238000005516 engineering process Methods 0.000 description 3
- 239000004744 fabric Substances 0.000 description 3
- 230000003993 interaction Effects 0.000 description 3
- 238000010606 normalization Methods 0.000 description 3
- 230000003287 optical effect Effects 0.000 description 2
- 230000002093 peripheral effect Effects 0.000 description 2
- 238000007619 statistical method Methods 0.000 description 2
- 238000013459 approach Methods 0.000 description 1
- 238000004422 calculation algorithm Methods 0.000 description 1
- 238000000802 evaporation-induced self-assembly Methods 0.000 description 1
- RGNPBRKPHBKNKX-UHFFFAOYSA-N hexaflumuron Chemical compound C1=C(Cl)C(OC(F)(F)C(F)F)=C(Cl)C=C1NC(=O)NC(=O)C1=C(F)C=CC=C1F RGNPBRKPHBKNKX-UHFFFAOYSA-N 0.000 description 1
- 238000012423 maintenance Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000003032 molecular docking Methods 0.000 description 1
- 230000006855 networking Effects 0.000 description 1
- 230000000737 periodic effect Effects 0.000 description 1
- 230000011664 signaling Effects 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
Classifications
-
- 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
-
- 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/0852—Delays
-
- 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/12—Network monitoring probes
-
- 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/50—Testing arrangements
Abstract
本申请实施例公开了一种流量监控方法、装置、集成电路、网络设备及网络系统,流量采集装置接收第一报文时,确定第一报文的目标性能指标的测量值匹配第一寄存器中的第一信息的值,基于第一报文的目标性能指标的测量值更新第一寄存器中第二信息的值,和将第一寄存器中的第三信息的值加一。这样,将用于指示承载被监控报文的目标性能指标的测量值的数据桶的深度的第一信息、用于指示匹配各寄存器中的第一信息的值的被监控报文的目标性能指标的测量值的累加和的第二信息、以及用于指示接收的报文中匹配各寄存器中第一信息的值的报文数量的第三信息作为寄存器的三个统计参数,实现对目标性能指标的全面和准确的统计。
Description
本申请要求于2020年8月26日提交的申请号为202010873634.3、发明名称为“一种数据统计方法及装置”的中国专利申请的优先权,其全部内容通过引用结合在本申请中。
技术领域
本申请涉及通信技术领域,特别是涉及一种流量监控方法、装置、集成电路、网络设备及网络系统。
背景技术
在网络运行的过程中,能够通过报文时延、芯片端口队列长度等性能指标取值的分布反映网络的运行状况。通过存储该性能指标的所有取值能够准确计算它的分布,但该方式需要占用大量的存储资源。为了减少存储需求,当前通过直方图统计的方式来粗略的统计各种性能指标取值的分布情况。
直方图统计算法中,需要预先设置各性能指标对应的取值范围并将取值范围等分到对应的数据桶,配置较为繁琐。而且,对于不同的数据流或相同数据流的不同阶段,无法确保配置的取值范围以及各个数据桶的深度划分是否合理,统计精度较差。
发明内容
基于此,本申请实施例提供了一种流量监控方法、装置、集成电路、网络设备及网络系统,能够对接收到的报文的各种性能指标进行简单、准确的统计。通过少量的存储资源,就能准确的体现网络设备的真实状况。
第一方面,本申请实施例提供了一种流量监控方法,该方法例如包括:当流量采集装置接收第一报文时,可以确定第一报文的目标性能指标的测量值匹配第一寄存器中的第一信息的值,从而,流量采集装置基于第一报文的目标性能指标的测量值更新第一寄存器中第二信息的值,和将第一寄存器中的第三信息的值加一。其中,该第一寄存器还包括第二信息和第三信息,第一寄存器中的第一信息用于指示承载被监控报文的目标性能指标的测量值的数据桶的深度,第一寄存器中的第二信息用于指示匹配第一寄存器中的第一信息的值的被监控报文的目标性能指标的测量值的累加和,第一寄存器中的第三信息用于指示流量采集装置接收的报文中匹配第一寄存器中的第一信息的值的报文数量。这样,无需配置待监测的性能指标(即目标性能指标)的取值范围,也不需要对取值范围进行等分来确定每个数据桶的深度,而是将用于指示承载被监控报文的目标性能指标的测量值的数据桶的深度的第一信息,用于指示匹配各寄存器中的第一信息的值的被监控报文的目标性能指标的测量值的累加和的第二信息,以及用于指示接收的报文中匹配各寄存器中第一信息的值的报文数量的第三信息作为寄存器的三个统计参数,根据接收的报文的目标性能指标的测量值与各寄存器中第一信息的值进行匹配,灵活的更新所匹配的寄存器中第二信息和第三信息这两个统计参数的值,实现对目标性能指标的统计,不仅减少了统计目标性能指标的配置工作量,还由于不再局限统计的整体取值范围以及各个寄存器统计的取值子范围,使得获得更加全面、准确的统计结果成为可能。
需要说明的是,本申请实施例提供的方法中,流量采集装置中寄存器的数量对统计结果的准确性影响较小,所以,无需占用太多的硬件资源即可实现较为精确的网络设备的性能指标的统计。
其中,流量采集装置确定第一报文的目标性能指标的测量值匹配第一寄存器中的第一信息的值,可以包括:流量采集装置确定第一报文的目标性能指标的测量值属于第一寄存器中第一信息的值对应的数值范围。或者,流量采集装置确定第一报文的目标性能指标的测量值匹配第一寄存器中的第一信息的值,也可以包括:流量采集装置确定第一报文的目标性能指标的测量值与第一寄存器中的第一信息的值的差,小于第一报文的目标性能指标的测量值与其他寄存器中的第一信息的值的差。
在一种可能的实现方式中,流量采集装置基于第一报文的目标性能指标的测量值更新第一寄存器中第二信息的值,具体可以包括:流量采集装置将第一报文的目标性能指标的测量值与更新前第一寄存器中第二信息的值相加,得到更新的第二信息的值;以及,流量采集装置利用更新的第二信息的值替换更新前第一寄存器中第二信息的值。这样,可以将报文的目标性能指标的测量值通过与目标性能指标的测量值匹配的寄存器进行统计,使得该流量采集装置能够更加准确的实现对所接收报文的监控。
在一种可能的实现方式中,该方法还可以包括:流量采集装置向控制装置发送监控结果。一种情况下,该监控结果可以包括第一寄存器中第二信息的值和第一寄存器中第三信息的值。那么,控制装置可以根据所接收的监控结果,根据第一寄存器中第二信息的值和第一寄存器中第三信息的值计算第一寄存器对应的第四信息的值,基于第三信息的值和第四信息的值进行监控数据的处理。另一种情况下,该监控结果也包括第一寄存器对应的第四信息的值和第一寄存器中第三信息的值,即,流量采集装置根据第一寄存器中第二信息的值和第三信息的值计算得到第四信息的值,并将第三信息的值和第四信息的值发送给控制装置。其中,第四信息用于指示承载被监控报文的目标性能指标的测量值的平均值,例如,第四信息的值可以等于第二信息的值除以第三信息的值所得的商。
作为一个示例,流量采集装置可以周期性的向控制装置发送监控结果。
作为另一个示例,流量采集装置也可以在确定第一寄存器中第三信息的值大于第一阈值时,向控制装置发送监控结果。其中,第一阈值为预设阈值,或者,第一阈值为流量采集装置的所有寄存器中第三信息的值之和的预设比例。
作为再一个示例,流量采集装置也可以确定流量采集装置的所有寄存器中第三信息的值之和大于第二阈值时,向控制装置发送监控结果。
作为又一个示例,流量采集装置也可以基于控制装置发送的查询请求,向控制装置发送监控结果,其中,查询请求用于指示流量采集装置向控制装置发送监控结果。一种情况下,控制装置可以周期性的向流量采集装置发送查询请求,该周期可以固定不变,或者,该周期也可以基于控制装置对上一次所接收的监控数据的情况动态调整的,本申请实施例不作限定。
在一种可能的实现方式中,流量采集装置向控制装置发送监控结果之后,流量采集装置可以将第一寄存器中第二信息的值和第三信息的值清零。
在一种可能的实现方式中,流量采集装置发送给控制装置的监控结果,能够被控制装置用于计算流量采集装置中各寄存器对应的更新的第一信息的值。这样,当控制装置计算得到第一寄存器更新的第一信息的值之后,该方法还可以包括:流量采集装置接收控制装置发送的第一寄存器对应的第一信息的值;流量采集装置基于所接收的第一寄存器对应的第一信息的值更新第一寄存器中第一信息的值。这样,控制装置基于目前所有的监控数据计算得到各个寄存器的第一信息的值,使得流量采集装置能够基于最合理的第一信息的值实现各个寄存器对报文的统计,提高了对目标性能指标的监控精度。
在一种可能的实现方式中,初始情况下,各用于保存目标性能指标的监控结果的寄存器中第一信息的值可以是用户配置的,也可以是系统自动配置的随机初始值;或者,还可以是通过对所接收报文的监控确定的,例如,当流量采集装置接收到第二报文时,确定该流量采集装置中包括第二寄存器,该第二寄存器中的第二信息的值为零且第三信息的值为零,表征该第二寄存器为空,那么,响应于流量采集装置确定包括空的第二寄存器,该流量采集装置将第二寄存器中的第一信息的值更新为第二报文的所述目标性能指标的测量值,将第二寄存器中的第二信息的值更新为第二报文的所述目标性能指标的测量值,和将第二寄存器中的第三信息的值加一。
本申请实施例中,目标性能指标包括下述指标中的任意一种:时延、报文长度、接收报文时间间隔或队列占用率。
本申请实施例中,该流量采集装置被包括在处理芯片中,例如,可以集成在网络处理器(英文:network processor,简称:NP)芯片中。
第二方面,本申请实施例还提供了一种流量监控方法,该方法例如可以包括:控制装置接收流量采集装置发送的多个监控结果后,该控制装置根据多个监控结果,确定第一信息的多个值,第一信息的多个值与流量采集装置中的多个寄存器一一对应;从而,该控制装置向流量采集装置发送第一信息的多个值,第一信息的多个值被用于更新流量采集装置中的多个寄存器中的第一信息的值。其中,多个监控结果中的每个监控结果是流量采集装置根据流量采集装置包括的寄存器中的第二信息的值和第三信息的值确定的,寄存器还包括第一信息,第一信息用于指示承载被监控报文的目标性能指标的测量值的数据桶的深度,第二信息用于指示匹配寄存器中的第一信息的值的被监控报文的目标性能指标的测量值的累加和,第三信息用于指示流量采集装置接收的报文中匹配寄存器中的第一信息的值的报文数量。这样,流量采集装置无需配置待监测的性能指标(即目标性能指标)的取值范围,也不需要对取值范围进行等分来确定每个数据桶的深度,而是将用于指示承载被监控报文的目标性能指标的测量值的数据桶的深度的第一信息,用于指示匹配各寄存器中的第一信息的值的被监控报文的目标性能指标的测量值的累加和的第二信息,以及用于指示接收的报文中匹配各寄存器中第一信息的值的报文数量的第三信息作为寄存器的三个统计参数,根据接收的报文的目标性能指标的测量值与各寄存器中第一信息的值进行匹配,灵活的更新所匹配的寄存器中第二信息和第三信息这两个统计参数的值,实现对目标性能指标的统计,不仅减少了统计目标性能指标的配置工作量,还由于不再局限统计的整体取值范围以及各个寄存器统计的取值子范围,使得获得更加全面、准确的统计结果成为可能;而且,该流量采集装置还基于第二信息的值和第三信息的值获得各个寄存器的监控结果并批量将监控结果发送给控制装置,以便控制装置基于精确的监控数据获得更加合理各寄存器对应的新的第一信息的值,指示流量采集装置以新的第一信息的值继续完成监控,如此良性循环,使得该流量监控方法实现精确的监控成为可能。
需要说明的是,该方法中,流量采集装置中不要求参与统计的寄存器越多越好,因为寄存器会批量将阶段性的监控结果发送给控制装置进行处理和保存;相比于纯软件算法实现直方图统计出现资源使用率低且准确率较差的问题,该方法通过软硬件结合的形式,实现资源利用率高且较为准确的统计效果。可见,该方法对于网络设备可用寄存器较少但要求监控结果精度要求较高的情况效果更为突出。
在一种可能的实现方式中,控制装置接收流量采集装置发送的多个监控结果,例如可以包括:控制装置接收流量采集装置发送的第一寄存器对应的第一监控结果,第一监控结果包括:第一寄存器对应的第四信息的值和第三信息的值,其中,第四信息的值为流量采集装置基于第一寄存器中第二信息的值和第一寄存器中第三信息的值计算得到的,第四信息用于指示承载被监控报文的目标性能指标的测量值的平均值。
在一种可能的实现方式中,控制装置接收流量采集装置发送的多个监控结果,例如也可以包括:控制装置接收流量采集装置发送的第一寄存器对应的第一监控结果,第一监控结果包括:第一寄存器中第二信息的值和第一寄存器中第三信息的值。那么,控制装置根据多个监控结果确定第一信息的多个值之前,该方法还可以包括:控制装置根据第一寄存器中第二信息的值和第三信息的值,计算第一寄存器对应的第四信息的值,第四信息用于指示承载被监控报文的目标性能指标的测量值的平均值。
在一种可能的实现方式中,控制装置根据多个监控结果,确定第一信息的多个值,包括:控制装置根据第一寄存器对应的第四信息的值和第一寄存器中第三信息的值,确定流量采集装置中各寄存器对应的第一信息的多个值。
作为一个示例,控制装置根据多个监控结果,确定第一信息的多个值,可以包括:控制装置根据N个监控结果以及历史监控数据,得到N个更新的监控数据,N为正整数,N为流量采集装置包括的寄存器的个数;控制装置确定N个更新的监控数据中,第i寄存器对应的第i个更新的监控数据,其中,i为大于或等于1且不大于N的整数;控制装置将第i个更新的监控数据中第一信息的值记作第i寄存器对应的第一信息的值。例如,根据所接收的N组监控结果和本地保存的M组历史监控数据,得到新的N组监控数据,将新的N组监控数据中的value按照从小到大排序,第i寄存器对应的第i个更新的监控数据,从而,将第i个更新的监控数据中第一信息的值记作第i寄存器对应的第一信息的值,以使得后续流量采集装置的批量统计更为准确。其中,N可以是流量采集装置所包括的用于保存目标性能指标的监控结果的寄存器的数量,例如N=4,M是控制装置上保存监控数据的组数,例如M=20。对监控数据的合并,例如可以采用加和的方式、求平均值的方式、加权求平均的方式,在本申请实施例中不作具体限定。
在一种可能的实现方式中,该方法还可以包括:控制装置根据多个监控结果以及历史监控数据,更新历史监控数据。例如,控制装置可以根据所接收的N组监控结果和本地保存的M组历史监控数据,得到新的M组监控数据,该新的M组监控数据被保存在控制装置中,用于与下一次批量接收到的N组监控结果进行处理,也作为对流量采集装置所在网络设备的目标性能指标分析的最新数据。
在一种可能的实现方式中,该方法还可以包括:控制装置基于当前保存的监控数据确定目标性能指标的概率分布。例如,控制装置可以在任何需要的时刻基于保存的M组监控数据,分析和确定该目标性能指标的概率分布,以了解该流量采集装置所在的网络设备的目标性能指标。
在一种可能的实现方式中,在控制装置接收流量采集装置发送的多个监控结果之前,还可以向流量采集装置发送查询请求,该查询请求用于指示流量采集装置向控制装置发送监控结果。其中,控制装置可以周期性的向流量采集装置发送查询请求。该周期可以固定不变,或者,该周期也可以基于控制装置对上一次所接收的监控数据的情况动态调整的,本申请实施例不作限定。
本申请实施例中,目标性能指标包括下述指标中的任意一种:时延、报文长度、接收报文时间间隔或队列占用率。
本申请实施例中,该流量采集装置被包括在处理芯片中,例如,可以集成在NP芯片中。
第三方面,本申请实施例还提供了一种流量采集装置,该装置可以包括第一接收单元、第一确定单元和第一更新单元。其中,第一接收单元,用于接收第一报文;第一确定单元,用于确定第一报文的目标性能指标的测量值匹配第一寄存器中的第一信息的值,第一寄存器还包括第二信息和第三信息,第一寄存器中的第一信息用于指示承载被监控报文的目标性能指标的测量值的数据桶的深度,第一寄存器中的第二信息用于指示匹配第一寄存器中的第一信息的值的被监控报文的目标性能指标的测量值的累加和,第一寄存器中的第三信息用于指示流量采集装置接收的报文中匹配第一寄存器中的第一信息的值的报文数量;第一更新单元,用于基于第一报文的目标性能指标的测量值更新第一寄存器中第二信息的值,和将第一寄存器中的第三信息的值加一。
在一种可能的实现方式中,第一确定单元,具体用于:确定第一报文的目标性能指标的测量值属于第一寄存器中第一信息的值对应的数值范围。或者,第一确定单元,具体用于:确定第一报文的目标性能指标的测量值与第一寄存器中的第一信息的值的差,小于第一报文的目标性能指标的测量值与其他寄存器中的第一信息的值的差。
在一种可能的实现方式中,第一更新单元,具体用于:将第一报文的目标性能指标的测量值与更新前第一寄存器中第二信息的值相加,得到更新的第二信息的值;并且,利用更新的第二信息的值替换更新前第一寄存器中第二信息的值。
在一种可能的实现方式中,该装置还可以包括:第一发送单元。其中,第一发送单元,用于向控制装置发送监控结果,其中,监控结果包括第一寄存器中第二信息的值和第一寄存器中第三信息的值,或者,监控结果包括第一寄存器对应的第四信息的值和第一寄存器中第三信息的值,其中,第四信息用于指示承载被监控报文的目标性能指标的测量值的平均值,第四信息的值为流量采集装置根据第一寄存器中第二信息的值和第三信息的值计算得到的。
作为一个示例,第一发送单元,具体用于:周期性的向控制装置发送监控结果。
作为另一个示例,第一发送单元,具体用于:确定第一寄存器中第三信息的值大于第一阈值,则,向控制装置发送监控结果。其中,第一阈值可以为预设阈值,或者,第一阈值也可以为流量采集装置的所有寄存器中第三信息的值之和的预设比例。
作为再一个示例,第一发送单元,具体用于:确定流量采集装置的所有寄存器中第三信息的值之和大于第二阈值,则,向控制装置发送监控结果。
在一种可能的实现方式中,该装置还可以包括:第二接收单元。该第二接收单元,用于在向控制装置发送监控结果之前,接收控制装置发送的查询请求,查询请求用于指示流量采集装置向控制装置发送监控结果。
在一种可能的实现方式中,该装置还可以包括:清零单元。该清零单元,用于将第一寄存器中第二信息的值和第三信息的值清零。
其中,监控结果被控制装置用于计算流量采集装置中各寄存器对应的更新的第一信息的值。
在一种可能的实现方式中,该装置还可以包括:第三接收单元和第二更新单元。其中,第二接收单元,用于接收控制装置发送的第一寄存器对应的第一信息的值;第二更新单元,用于基于所接收的第一寄存器对应的第一信息的值更新第一寄存器中第一信息的值。
在一种可能的实现方式中,该装置还可以包括:第四接收单元和第二确定单元和第三更新单元。其中,第四接收单元,用于接收第二报文;第二确定单元,用于确定流量采集装置中是否包括第二寄存器,第二寄存器包括第一信息、第二信息和第三信息,第二寄存器中的第二信息的值为零且第三信息的值为零;第三更新单元,用于响应于确定流量采集装置中包括第二寄存器,将第二寄存器中的第一信息的值更新为第二报文的目标性能指标的测量值,将第二寄存器中的第二信息的值更新为第二报文的目标性能指标的测量值,和将第二寄存器中的第三信息的值加一。
本申请实施例中,目标性能指标包括下述指标中的任意一种:时延、报文长度、接收报文时间间隔或队列占用率。
本申请实施例中,该流量采集装置被包括在处理芯片中,例如,可以集成在NP芯片中。
需要说明的是,第三方面提供的流量采集装置与第一方面提供的方法对应,具体实现方式以及达到的效果,参见第一方面所示的方法的相关描述。
第四方面,本申请实施例还提供了一种控制装置,该控制装置可以包括接收单元、第一确定单元和第一发送单元。其中,接收单元,用于接收流量采集装置发送的多个监控结果,多个监控结果中的每个监控结果是流量采集装置根据流量采集装置包括的寄存器中的第二信息的值和第三信息的值确定的,寄存器还包括第一信息,第一信息用于指示承载被监控报文的目标性能指标的测量值的数据桶的深度,第二信息用于指示匹配寄存器中的第一信息的值的被监控报文的目标性能指标的测量值的累加和,第三信息用于指示流量采集装置接收的报文中匹配寄存器中的第一信息的值的报文数量;第一确定单元,用于根据多个监控结果,确定第一信息的多个值,第一信息的多个值与流量采集装置中的多个寄存器一一对应;第一发送单元,用于向流量采集装置发送第一信息的多个值,第一信息的多个值被用于更新流量采集装置中的多个寄存器中的第一信息的值。
在一种可能的实现方式中,接收单元,具体用于:接收流量采集装置发送的第一寄存器对应的第一监控结果,其中,第一监控结果包括:第一寄存器对应的第四信息的值和第三信息的值,其中,第四信息的值为流量采集装置基于第一寄存器中第二信息的值和第一寄存器中第三信息的值计算得到的,第四信息用于指示承载被监控报文的目标性能指标的测量值的平均值。或者,第一监控结果包括:第一寄存器中第二信息的值和第一寄存器中第三信息的值,那么,该装置还可以包括:计算单元,该计算单元用于在根据多个监控结果确定第一信息的多个值之前,根据第一寄存器中第二信息的值和第三信息的值,计算第一寄存器对应的第四信息的值,第四信息用于指示承载被监控报文的目标性能指标的测量值的平均值。
该实现方式下,第一确定单元,具体用于:根据第一寄存器对应的第四信息的值和第一寄存器中第三信息的值,确定流量采集装置中各寄存器对应的第一信息的多个值。
在一种可能的实现方式中,第一确定单元,具体用于:根据N个监控结果以及历史监控数据,得到N个更新的监控数据,N为正整数,N为流量采集装置包括的寄存器的个数;确定N个更新的监控数据中,第i寄存器对应的第i个更新的监控数据,其中,i为大于或等于1且不大于N的整数;并且,将第i个更新的监控数据中第一信息的值记作第i寄存器对应的第一信息的值。
在一种可能的实现方式中,该装置还可以包括更新单元。该更新单元,用于根据多个监控结果以及历史监控数据,更新历史监控数据。
在一种可能的实现方式中,该装置还可以包括第二确定单元。该第二确定单元,用于基于当前保存的监控数据确定目标性能指标的概率分布。
在一种可能的实现方式中,该装置还可以包括第二发送单元。该第二发送单元,用于在接收流量采集装置发送的多个监控结果之前,向流量采集装置发送查询请求,查询请求用于指示流量采集装置向控制装置发送监控结果。作为一个示例,该第二发送单元,具体用于:周期性的向流量采集装置发送查询请求。
本申请实施例中,目标性能指标包括下述指标中的任意一种:时延、报文长度、接收报文时间间隔或队列占用率。
本申请实施例中,该流量采集装置被包括在处理芯片中,例如,可以集成在NP芯片中。
需要说明的是,第四方面提供的控制装置与第二方面提供的方法对应,具体实现方式以及达到的效果,参见第二方面所示的方法的相关描述。
第五方面,本申请实施例还提供了一种流量采集装置,该装置包括处理器和收发器。其中:收发器,用于接收第一报文;处理器,用于确定第一报文的目标性能指标的测量值匹配第一寄存器中的第一信息的值,第一寄存器还包括第二信息和第三信息,第一寄存器中的第一信息用于指示承载被监控报文的目标性能指标的测量值的数据桶的深度,第一寄存器中的第二信息用于指示匹配第一寄存器中的第一信息的值的被监控报文的目标性能指标的测量值的累加和,第一寄存器中的第三信息用于指示流量采集装置接收的报文中匹配第一寄存器中的第一信息的值的报文数量;处理器,还用于基于第一报文的目标性能指标的测量值更新第一寄存器中第二信息的值,和将第一寄存器中的第三信息的值加一。
在一种可能的实现方式中,处理器,具体用于:确定第一报文的目标性能指标的测量值属于第一寄存器中第一信息的值对应的数值范围。
在一种可能的实现方式中,处理器,具体用于:确定第一报文的目标性能指标的测量值与第一寄存器中的第一信息的值的差,小于第一报文的目标性能指标的测量值与其他寄存器中的第一信息的值的差。
在一种可能的实现方式中,处理器,具体用于:将第一报文的目标性能指标的测量值与更新前第一寄存器中第二信息的值相加,得到更新的第二信息的值;并且,利用更新的第二信息的值替换更新前第一寄存器中第二信息的值。
在一种可能的实现方式中,收发器,还用于向控制装置发送监控结果,监控结果包括第一寄存器中第二信息的值和第一寄存器中第三信息的值。
在一种可能的实现方式中,收发器,还用于向控制装置发送监控结果,监控结果包括第一寄存器对应的第四信息的值和第一寄存器中第三信息的值,其中,第四信息用于指示承载被监控报文的目标性能指标的测量值的平均值,第四信息的值为流量采集装置根据第一寄存器中第二信息的值和第三信息的值计算得到的。
在一种可能的实现方式中,收发器,具体用于:周期性的向控制装置发送监控结果。
在一种可能的实现方式中,收发器,具体用于:确定第一寄存器中第三信息的值大于第一阈值,则,向控制装置发送监控结果。其中,第一阈值可以为预设阈值,或者,第一阈值也可以为流量采集装置的所有寄存器中第三信息的值之和的预设比例。
在一种可能的实现方式中,收发器,具体用于:确定流量采集装置的所有寄存器中第三信息的值之和大于第二阈值,则,向控制装置发送监控结果。
在一种可能的实现方式中,收发器,还用于在向控制装置发送监控结果之前,接收控制装置发送的查询请求,查询请求用于指示流量采集装置向控制装置发送监控结果。
在一种可能的实现方式中,处理器,还用于将第一寄存器中第二信息的值和第三信息的值清零。
在一种可能的实现方式中,监控结果被控制装置用于计算流量采集装置中各寄存器对应的更新的第一信息的值。
在一种可能的实现方式中,收发器,还用于接收控制装置发送的第一寄存器对应的第一信息的值;处理器,还用于基于所接收的第一寄存器对应的第一信息的值更新第一寄存器中第一信息的值。
在一种可能的实现方式中,收发器,还用于接收第二报文;处理器,还用于确定流量采集装置中是否包括第二寄存器,第二寄存器包括第一信息、第二信息和第三信息,第二寄存器中的第二信息的值为零且第三信息的值为零;处理器,还用于响应于确定流量采集装置中包括第二寄存器,将第二寄存器中的第一信息的值更新为第二报文的目标性能指标的测量值,将第二寄存器中的第二信息的值更新为第二报文的目标性能指标的测量值,和将第二寄存器中的第三信息的值加一。
本申请实施例中,目标性能指标包括下述指标中的任意一种:时延、报文长度、接收报文时间间隔或队列占用率。
本申请实施例中,该流量采集装置被包括在处理芯片中,例如,可以集成在NP芯片中。
需要说明的是,第五方面提供的流量采集装置与第一方面提供的方法对应,具体实现方式以及达到的效果,参见第一方面所示的方法的相关描述。
第六方面,本申请实施例还提供了一种控制装置,该装置包括收发器和处理器。其中:收发器,用于接收流量采集装置发送的多个监控结果,多个监控结果中的每个监控结果是流量采集装置根据流量采集装置包括的寄存器中的第二信息的值和第三信息的值确定的,寄存器还包括第一信息,第一信息用于指示承载被监控报文的目标性能指标的测量值的数据桶的深度,第二信息用于指示匹配寄存器中的第一信息的值的被监控报文的目标性能指标的测量值的累加和,第三信息用于指示流量采集装置接收的报文中匹配寄存器中的第一信息的值的报文数量;处理器,用于根据多个监控结果,确定第一信息的多个值,第一信息的多个值与流量采集装置中的多个寄存器一一对应;收发器,还用于向流量采集装置发送第一信息的多个值,第一信息的多个值被用于更新流量采集装置中的多个寄存器中的第一信息的值。
在一种可能的实现方式中,收发器,具体用于:接收流量采集装置发送的第一寄存器对应的第一监控结果,第一监控结果包括:第一寄存器对应的第四信息的值和第三信息的值,其中,第四信息的值为流量采集装置基于第一寄存器中第二信息的值和第一寄存器中第三信息的值计算得到的,第四信息用于指示承载被监控报文的目标性能指标的测量值的平均值。
在一种可能的实现方式中,收发器,具体用于:接收流量采集装置发送的第一寄存器对应的第一监控结果,第一监控结果包括:第一寄存器中第二信息的值和第一寄存器中第三信息的值。
在一种可能的实现方式中,处理器,还用于在根据多个监控结果确定第一信息的多个值之前,根据第一寄存器中第二信息的值和第三信息的值,计算第一寄存器对应的第四信息的值,第四信息用于指示承载被监控报文的目标性能指标的测量值的平均值;处理器,具体用于:根据第一寄存器对应的第四信息的值和第一寄存器中第三信息的值,确定流量采集装置中各寄存器对应的第一信息的多个值。
在一种可能的实现方式中,处理器,具体用于:根据N个监控结果以及历史监控数据,得到N个更新的监控数据,N为正整数,N为流量采集装置包括的寄存器的个数;确定N个更新的监控数据中,第i寄存器对应的第i个更新的监控数据,其中,i为大于或等于1且不大于N的整数;并且,将第i个更新的监控数据中第一信息的值记作第i寄存器对应的第一信息的值。
在一种可能的实现方式中,处理器,还用于根据多个监控结果以及历史监控数据,更新历史监控数据。
在一种可能的实现方式中,处理器,还用于基于当前保存的监控数据确定目标性能指标的概率分布。
在一种可能的实现方式中,收发器,用于在接收流量采集装置发送的多个监控结果之前,向流量采集装置发送查询请求,查询请求用于指示流量采集装置向控制装置发送监控结果。
在一种可能的实现方式中,收发器,具体用于:周期性的向流量采集装置发送查询请求。
本申请实施例中,目标性能指标包括下述指标中的任意一种:时延、报文长度、接收报文时间间隔或队列占用率。
本申请实施例中,该流量采集装置被包括在处理芯片中,例如,可以集成在NP芯片中。
需要说明的是,第六方面提供的控制装置与第二方面提供的方法对应,具体实现方式以及达到的效果,参见第二方面所示的方法的相关描述。
第七方面,本申请实施例还提供了一种流量采集装置,该装置包括:处理器和存储器,存储器用于存储程序,处理器用于从存储器中调用并运行程序以执行上述第一方面任一种可能的实现方式中所提供的方法。
第八方面,本申请实施例还提供了一种控制装置,该装置包括:处理器和存储器,存储器用于存储程序,处理器用于从存储器中调用并运行程序以执行上述第二方面任一种可能的实现方式中所提供的方法
第九方面,本申请实施例还提供了一种集成电路,该集成电路包括控制电路和接口电路。其中:接口电路,用于接收第一报文;控制电路,用于确定第一报文的目标性能指标的测量值匹配第一寄存器中的第一信息的值,第一寄存器还包括第二信息和第三信息,第一寄存器中的第一信息用于指示承载被监控报文的目标性能指标的测量值的数据桶的深度,第一寄存器中的第二信息用于指示匹配第一寄存器中的第一信息的值的被监控报文的目标性能指标的测量值的累加和,第一寄存器中的第三信息用于指示集成电路接收的报文中匹配第一寄存器中的第一信息的值的报文数量;控制电路,还用于基于第一报文的目标性能指标的测量值更新第一寄存器中第二信息的值,和将第一寄存器中的第三信息的值加一。
在一种可能的实现方式中,控制电路,具体用于:确定第一报文的目标性能指标的测量值属于第一寄存器中第一信息的值对应的数值范围。
在一种可能的实现方式中,控制电路,具体用于:确定第一报文的目标性能指标的测量值与第一寄存器中的第一信息的值的差,小于第一报文的目标性能指标的测量值与其他寄存器中的第一信息的值的差。
在一种可能的实现方式中,控制电路,具体用于:将第一报文的目标性能指标的测量值与更新前第一寄存器中第二信息的值相加,得到更新的第二信息的值;并且,利用更新的第二信息的值替换更新前第一寄存器中第二信息的值。
在一种可能的实现方式中,接口电路,还用于向控制装置发送监控结果,监控结果包括第一寄存器中第二信息的值和第一寄存器中第三信息的值。
在一种可能的实现方式中,接口电路,还用于向控制装置发送监控结果,监控结果包括第一寄存器对应的第四信息的值和第一寄存器中第三信息的值,其中,第四信息用于指示承载被监控报文的目标性能指标的测量值的平均值,第四信息的值为流量采集装置根据第一寄存器中第二信息的值和第三信息的值计算得到的。
在一种可能的实现方式中,接口电路,具体用于:周期性的向控制装置发送监控结果。
在一种可能的实现方式中,接口电路,具体用于:确定第一寄存器中第三信息的值大于第一阈值,则,向控制装置发送监控结果。其中,第一阈值可以为预设阈值,或者,第一阈值也可以为集成电路的所有寄存器中第三信息的值之和的预设比例。
在一种可能的实现方式中,接口电路,具体用于:确定集成电路的所有寄存器中第三信息的值之和大于第二阈值,则,向控制装置发送监控结果。
在一种可能的实现方式中,接口电路,还用于在向控制装置发送监控结果之前,接收控制装置发送的查询请求,查询请求用于指示集成电路向控制装置发送监控结果。
在一种可能的实现方式中,控制电路,还用于将第一寄存器中第二信息的值和第三信息的值清零。
在一种可能的实现方式中,监控结果被控制装置用于计算集成电路中各寄存器对应的更新的第一信息的值。
在一种可能的实现方式中,接口电路,还用于接收控制装置发送的第一寄存器对应的第一信息的值;控制电路,还用于基于所接收的第一寄存器对应的第一信息的值更新第一寄存器中第一信息的值。
在一种可能的实现方式中,接口电路,还用于接收第二报文;控制电路,还用于确定集成电路中是否包括第二寄存器,第二寄存器包括第一信息、第二信息和第三信息,第二寄存器中的第二信息的值为零且第三信息的值为零;控制电路,还用于响应于确定集成电路中包括第二寄存器,将第二寄存器中的第一信息的值更新为第二报文的目标性能指标的测量值,将第二寄存器中的第二信息的值更新为第二报文的目标性能指标的测量值,和将第二寄存器中的第三信息的值加一。
本申请实施例中,目标性能指标包括下述指标中的任意一种:时延、报文长度、接收报文时间间隔或队列占用率。
本申请实施例中,该集成电路被包括在处理芯片中,例如,可以集成在NP芯片中。
需要说明的是,第九方面提供的集成电路与第一方面提供的方法对应,具体实现方式以及达到的效果,参见第一方面所示的方法的相关描述。
第十方面,本申请实施例还提供了一种集成电路,该集成电路包括接口电路和控制电路。其中:接口电路,用于接收流量采集装置发送的多个监控结果,多个监控结果中的每个监控结果是流量采集装置根据流量采集装置包括的寄存器中的第二信息的值和第三信息的值确定的,寄存器还包括第一信息,第一信息用于指示承载被监控报文的目标性能指标的测量值的数据桶的深度,第二信息用于指示匹配寄存器中的第一信息的值的被监控报文的目标性能指标的测量值的累加和,第三信息用于指示流量采集装置接收的报文中匹配寄存器中的第一信息的值的报文数量;控制电路,用于根据多个监控结果,确定第一信息的多个值,第一信息的多个值与流量采集装置中的多个寄存器一一对应;接口电路,还用于向流量采集装置发送第一信息的多个值,第一信息的多个值被用于更新流量采集装置中的多个寄存器中的第一信息的值。
在一种可能的实现方式中,接口电路,具体用于:接收流量采集装置发送的第一寄存器对应的第一监控结果,第一监控结果包括:第一寄存器对应的第四信息的值和第三信息的值,其中,第四信息的值为流量采集装置基于第一寄存器中第二信息的值和第一寄存器中第三信息的值计算得到的,第四信息用于指示承载被监控报文的目标性能指标的测量值的平均值。
在一种可能的实现方式中,接口电路,具体用于:接收流量采集装置发送的第一寄存器对应的第一监控结果,第一监控结果包括:第一寄存器中第二信息的值和第一寄存器中第三信息的值。
在一种可能的实现方式中,控制电路,还用于在根据多个监控结果确定第一信息的多个值之前,根据第一寄存器中第二信息的值和第三信息的值,计算第一寄存器对应的第四信息的值,第四信息用于指示承载被监控报文的目标性能指标的测量值的平均值;那么,控制电路,具体用于:根据第一寄存器对应的第四信息的值和第一寄存器中第三信息的值,确定流量采集装置中各寄存器对应的第一信息的多个值。
在一种可能的实现方式中,控制电路,具体用于:根据N个监控结果以及历史监控数据,得到N个更新的监控数据,N为正整数,N为流量采集装置包括的寄存器的个数;确定N个更新的监控数据中,第i寄存器对应的第i个更新的监控数据,其中,i为大于或等于1且不大于N的整数;并且,将第i个更新的监控数据中第一信息的值记作第i寄存器对应的第一信息的值。
在一种可能的实现方式中,控制电路,还用于根据多个监控结果以及历史监控数据,更新历史监控数据。
在一种可能的实现方式中,控制电路,还用于基于当前保存的监控数据确定目标性能指标的概率分布。
在一种可能的实现方式中,接口电路,用于在接收流量采集装置发送的多个监控结果之前,向流量采集装置发送查询请求,查询请求用于指示流量采集装置向集成电路发送监控结果。
在一种可能的实现方式中,接口电路,具体用于:周期性的向流量采集装置发送查询请求。
本申请实施例中,目标性能指标包括下述指标中的任意一种:时延、报文长度、接收报文时间间隔或队列占用率。
本申请实施例中,该流量采集装置被包括在处理芯片中,例如,可以集成在NP芯片中。
需要说明的是,第十方面提供的集成电路与第二方面提供的方法对应,具体实现方式以及达到的效果,参见第二方面所示的方法的相关描述。
第十一方面,本申请实施例还提供了一种网络设备,该网络设备可以包括第一装置和第二装置,其中:所述第一装置,包括以上第三方面、第五方面或第七方法提供的流量采集装置,或者,上述第九方法提供的集成电路;所述第二装置,包括以上第四方面、第六方面或第八方面提供的控制装置,或者,上述第十方面提供的集成电路。
第十二方面,本申请实施例还提供了一种网络系统,该网络系统包括第一网络设备和第二网络设备,其中:第一网络设备,包括以上第三方面、第五方面或第七方法提供的流量采集装置,或者,上述第九方法提供的集成电路;所述第二网络设备,包括第四方面、第六方面或第八方面提供的控制装置,或者,上述第十方面提供的集成电路。
第十三方面,本申请实施例还提供了一种计算机可读存储介质,包括指令,当其在计算机上运行时,使得计算机执行以上第一方面或第二方面提供的所述方法。
第十四方面,本申请还提供了计算机程序产品,包括计算机程序或计算机可读指令,当所述计算机程序或所述计算机可读指令在计算机上运行时,使得计算机执行前述第一方面或第二方面所提供的方法。
附图说明
为了更清楚地说明本申请实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请中记载的一些实施例,对于本领域普通技术人员来讲,还可以根据这些附图获得其他的附图。
图1为本申请实施例中一种直方图统计算法的时延的直方图示意图;
图2为本申请实施例中一种适用场景的结构示意图;
图3为本申请实施例中一种流量监控方法的一示例性流程示意图;
图4为本申请实施例中图3所示的流量监控方法下各寄存器保存内容的一示意图;
图5为本申请实施例中一种流量监控方法100的流程示意图;
图6为本申请实施例中一种流量采集装置600的结构示意图;
图7为本申请实施例中一种控制装置700的结构示意图;
图8为本申请实施例中一种流量采集装置800的结构示意图;
图9为本申请实施例中一种控制装置900的结构示意图;
图10为本申请实施例中一种集成电路1000的结构示意图;
图11为本申请实施例中一种集成电路1100的结构示意图;
图12为本申请实施例中一种网络设备1200的结构示意图;
图13为本申请实施例中一种网络系统1300的结构示意图;
图14为本申请实施例中一种通信设备1400的结构示意图;
图15为本申请实施例中一种通信设备1500的结构示意图。
具体实施方式
为了减少获取存储时延、报文长度、接收报文的时间间隔或队列占用率等各种性能指标分布信息所需要的存储资源,通常通过直方图统计的方式记录性能指标的情况,从而体现网络的运行状况。
目前统计网络设备性能指标的方式,作为一个示例,可以通过网络设备上的四个寄存器R1~R4实现,以统计的性能指标为时延为例,假设预设的目标分位值(即调整时延阈值的参考比例)为95%,R1用于保存当前周期采集到的报文的总个数n,网络设备每接收到一个报文,该R1中的取值加一;R2用于保存该周期中的时延阈值t1;R3用于保存该周期内所接收的报文中时延超过时延阈值t1的报文的个数m;R4用于保存该周期内当前所接收的报文中时延的最大值(英文:max latency,简称ML)。具体实现时,网络设备会周期性的计算(m/n)(即时延大于t1的报文占所有报文的比例),并根据(m/n)和目标分位值更新R2中的取值,当(1-m/n)<95%,则,根据下述公式(1)计算新的时延阈值t2,当(1-m/n)≥95%,则,根据下述公式(2)计算新的时延阈值t3:
t2=t1-ML*[95%-(1-m/n)]/G ……公式(1)
t3=t1+ML*[(1-m/n)-95%]/G ……公式(2)
其中,G为步长,是常数。需要说明的是,每次更新R2的取值时,其他寄存器的取值均需要清零。该统计方案,实现比较简单,但是存在很多问题:问题一,只采用简单的梯度下降方式来统计网络设备的性能指标,未考虑历史数据对网络设备性能指标的影响,导致统计精度较低;问题二,统计结果往往只体现性能指标在该周期内对应的目标分位值这一个取值的情况,无法获取该性能指标在其他取值的信息,也无法获取该性能指标在网络设备整个运行过程中的情况,统计价值大打折扣。
作为另一个示例,目前还可以采用直方图统计算法来统计性能指标。以通过R1~R4统计的性能指标,例如,R1~R4中每个R中包括的一个用于统计时延的数据桶(英文:databucket)。以直方图统计方法中的直方条(英文:bin)这一数据桶的具体实现为例对该示例进行说明,例如,R1中包括用于统计时延的bin 1,R2中包括用于统计时延的bin 2,R3中包括用于统计时延的bin 3,R4中包括用于统计时延的bin 4,那么,bin 1~bin 4为一组统计时延的bin。网络设备预先配置时延统计范围:[t1,t2],bin 1~bin 4中分别包括一个计数器(英文:counter),每个counter用于统计接收到的报文中落入所属bin对应时延子范围的报文个数。例如,将[t1,t2]等分为4个子区间:[t1,t3]、(t3,t4]、(t4,t5]、(t5,t2],其中,t3=t1+(t2-t1)/4,t4=t3+(t2-t1)/4,t5=t4+(t2-t1)/4。bin 1中的counter1用于统计接收到的报文中时延在[t1,t3]内的报文个数,bin 2中的counter2用于统计接收到的报文中时延在(t3,t4]内的报文个数,bin 3中的counter3用于统计接收到的报文中时延在(t4,t5]内的报文个数,bin 4中的counter4用于统计接收到的报文中时延在(t5,t2]内的报文个数。其中,任意一个时延子范围均可以记作该bin的深度,例如,时延子范围(t3,t4]可以称为bin 2的深度。任意时刻,可以基于该bin 1~bin 4中counter的取值,得到该网络设备的时延的概率分布曲线,过程例如可以是:将各counter中的取值进行归一化处理,得到counter1~counter4的归一化处理结果依次为:a、b、c和d,那么,可以得到如图1所示的直方图,其中,bin 1~bin 4对应的直方图高度分别为a、b、c和d。此外,可以根据此直方图得到该时延的累积分布函数(英文:cumulative distribution function,简称:CDF)的曲线,进一步可以按照需求的出现概率(例如95%)确定对应的横坐标的值,作为网络设备设置的时延标定值。虽然目前的直方图统计算法相比上述介绍的统计方法,能够较准确的统计网络设备的性能指标,但是,该直方图统计方案中需要预先配置性能指标对应的取值范围并将取值范围等分到对应的bin中,配置过程较为繁琐,由于报文的多样性和复杂性可能导致配置的取值范围不合理,还可能导致bin的深度分配不合理,部分bin中的counter值很大,而部分bin中的counter值很小,统计结果不够精确。
基于此,本申请实施例提供了一种流量监控方法,该流量监控方法应用于本申请实施例提供的流量采集装置,流量采集装置中包括多个寄存器,每个寄存器包括第一信息、第二信息和第三信息,其中,第一信息用于指示承载被监控报文的目标性能指标的测量值的数据桶的深度,第二信息用于指示匹配该寄存器中的第一信息的值的被监控报文的目标性能指标的测量值的累加和,第三信息用于指示流量采集装置接收的报文中匹配该寄存器中的第一信息的值的报文数量。每个寄存器对应一个数据桶,该数据桶统计目标性能指标的测量值在一定范围内的报文,该数据桶中记录第一信息的值、第二信息的值和第三信息的值,其中,第一信息的值是指该数据桶中所统计的报文的测量值或测量值的范围,第二信息的值是指该数据桶中所统计的所有报文的测量值的累加和,第三信息的值是指该数据桶所统计的报文的数量。数据桶中记录的统计结果存储在对应的寄存器中。寄存器对应的数据桶的深度可以作为该寄存器中第一信息的值,落入对应数据桶的深度的报文的目标性能指标的测量值的和可以作为该数据桶对应寄存器中第二信息的值,落入对应数据桶的深度的报文数量可以作为该数据桶对应寄存器中第三信息的值。例如,对于寄存器Rx,对应于数据桶x,该数据桶x的深度可以表示为25(即寄存器Rx中第一信息的值为25),用于统计目标性能指标的测量值在25±25的报文,那么,当流量采集装置未接收到目标性能指标的测量值落入0-50的报文时,寄存器Rx中第一信息的值、第二信息和第三信息的值的值为0;当流量采集装置接收到目标性能指标的测量值为10的报文1时,寄存器Rx中第一信息的值为25,第二信息的值为10,第三信息的值为1;当流量采集装置接收到目标性能指标的测量值为16的报文2时,寄存器Rx中第一信息的值为25,第二信息的值为(10+16)=26,第三信息的值可以为2;当流量采集装置接收到目标性能指标的测量值为45的报文3时,寄存器Rx中第一信息的值为25,第二信息的值为(26+45)=71,第三信息的值可以为3。
本申请实施例提供的流量监控方法,例如可以包括:当流量采集装置接收第一报文时,确定该第一报文的目标性能指标的测量值匹配第一寄存器中的第一信息的值,此时,流量采集装置可以基于第一报文的目标性能指标的测量值更新第一寄存器中所述第二信息的值,并且,将第一寄存器中的第三信息的值加一。这样,无需配置待监测的性能指标(即目标性能指标)的取值范围,也不需要对取值范围进行等分来确定每个数据桶的深度,而是将用于指示承载被监控报文的目标性能指标的测量值的数据桶的深度的第一信息,用于指示匹配各寄存器中的第一信息的值的被监控报文的目标性能指标的测量值的累加和的第二信息,以及用于指示接收的报文中匹配各寄存器中第一信息的值的报文数量的第三信息作为寄存器的三个统计参数,根据接收的报文的目标性能指标的测量值与各寄存器中第一信息的值进行匹配,灵活的更新所匹配的寄存器中第二信息和第三信息这两个统计参数的值,实现对目标性能指标的统计,不仅减少了统计目标性能指标的配置工作量,还由于不再局限统计的整体取值范围以及各个寄存器统计的取值子范围,使得获得更加全面、准确的统计结果成为可能。需要说明的是,该实现方式中,流量采集装置中寄存器的数量对统计结果的准确性影响较小,所以,无需占用太多的硬件资源即可实现较为精确的网络设备的性能指标的统计。
其中,数据桶用于表征统计目标性能指标的测量值的对象,数据桶的深度是指该数据桶能够统计的目标性能指标的测量值或测量值的范围,不同深度的数据桶用于实现对目标性能指标的测量值不同或测量值范围不同的报文的统计。例如,流量采集装置中包括:数据桶1和数据桶2,其中,数据桶1用于统计目标性能指标的测量值在0-50之间的报文,数据桶2用于统计目标性能指标的测量值在51-101之间的报文,那么,数据桶1的深度可以表示为0-50,数据桶2的深度可以表示为51-100;或者,如果数据桶的深度是该数据桶用于承载的目标性能指标的测量值的最小值,数据桶用于承载该数据桶的深度到该数据桶的深度加50的报文,那么,数据桶1的深度也可以表示为0,数据桶2的深度可以表示为51;又或者,如果数据桶的深度是该数据桶用于承载的目标性能指标的测量值的中间值,数据桶用于承载该数据桶的深度±25的报文,那么,数据桶1的深度也可以表示为25,数据桶2的深度可以表示为76;再或者,数据桶的深度也可以表示为落入该数据桶统计范围的报文的测量值的平均值,如,数据桶1中统计了一个目标性能指标的测量值为10的报文,则,数据桶1的深度可以表示为10,又如,数据桶1中统计了3个目标性能指标的测量值分别为18、50和22的报文,则,数据桶1的深度可以表示为(18+50+22)/3=30。
寄存器是数据桶在该流量采集装置中的一种硬件实现方式。例如,上述数据桶1中统计的数据可以存储在该流量采集装置的寄存器1中,数据桶2中统计的数据可以存储在该流量采集装置的寄存器2中。假设流量采集装置接收到报文1~报文5,报文1~报文5的目标性能指标的测量值分别为10、20、60、30、90,那么,报文1、报文2和报文4对应数据桶1的深度(即,落入数据桶1的统计范围),寄存器1中保存报文1、报文2和报文4对应的统计结果,报文3和报文5对应数据桶2的深度,寄存器2保存报文3和报文5对应的统计结果,如,数据桶1对应的寄存器1中保存的第一信息的值可以为25,第二信息的值可以为(10+20+30)=60,第三信息的值可以为3;数据桶2对应的寄存器2中保存的第一信息的值可以为76,第二信息的值可以为(60+90)=150,第三信息的值可以为2。
作为一个示例,在直方图统计方法中,数据桶例如可以通过直方条bin实现,每个寄存器保存一个bin对应的统计结果,bin采集的统计结果存储在对应的寄存器中。下文中,数据桶、bin和寄存器可以替换使用。
其中,寄存器中的第一信息可以表示为value,寄存器中第二信息可以表示sum,寄存器中第三信息可以表示为counter。下文中,第一信息和value可以替换使用,第二信息和sum可以替换使用,第三信息和counter可以替换使用。
举例来说,本申请实施例可以应用于图2所示的场景中,如图2所示,该场景至少可以包括控制装置110和流量采集装置120。
其中,流量采集装置120中可以包括多个寄存器R,以流量采集装置120中包括R1~R4为例,该流量采集装置120能够按照本申请实施例提供的流量监控方法,对R1~R4中保存的内容进行管控和处理。该流量采集装置120可以被集成在处理芯片中,例如,可以集成在网络处理器(英文:network processor,简称:NP)中,流量采集装置120可以是NP芯片中的具有本申请实施例所提供的流量采集能力的功能模块。如,流量采集装置120是NP芯片中的一个具有流量采集能力的协处理器。
控制装置110用于根据R1~R4中保存的监控结果,完成对流量采集装置120所在的网络设备的目标性能指标的了解和分析。控制装置110例如可以是中央处理器(英文:central processing unit,简称:CPU)110。控制装置110可以和流量采集装置120集成在同一个网络设备中,或者,控制装置110可以和流量采集装置120分别集成在能够实现通信的两个网络设备中。
需要说明的是,本示例中用于存储监控结果的寄存器为R1~R4;该流量采集装置120还可以包括寄存器R0,该R0用于存储待统计的报文的目标性能指标的测量值和第三信息的值(即为1)。如果接收到一个待统计的报文,则,根据该待统计报文的目标性能指标的测量值更新R0中的第一信息的值,在完成该待统计报文的统计,则,可以将R0中该报文的相关内容清零,为统计下一个报文做好准备;或者,也可以在接收到下一个待统计的报文时,直接用下一个报文的目标性能指标的测量值更新该R0中前一个报文的第一信息的值。
以图2所示的场景为例,示例性的说明本申请实施例提供的流量监控方法的流程,参见图3所示,该流量监控过程可以包括:S11,流量采集装置120接收报文1,获取报文1的目标性能指标的测量值x,并在R0中保存:value=x、counter=1;S12,确定该x与R1的value的值匹配,基于x更新R1中sum的值(即,sum的值加x得到更新后R1的sum值),并且,将R1中的counter的值加1;S13,判断是否有批量更新,如果是,则执行下述S14,否则执行S16;S14,将R1~R4中当前保存的监控结果进行处理并发送给控制装置110,假设处理前的监控结果为(value,sum,counter),那么,处理后发送给控制装置110的监控结果可以表示为(value=sum/counter,counter);S15,控制装置110根据4组监控结果和已经保存的n组历史监控数据,得到n组新的监控数据并保存,而且,控制装置110根据新接收到的4组监控结果和已经保存的n组历史监控数据,得到4组新的监控数据,将该4组新的监控数据中的value按照顺序作为4个R的下一次批量处理之前的value;S16,判断是否有新接收的报文,如果有,则返回执行S11,否则结束。
其中,S11中流量采集装置120接收报文1并获取报文1的目标性能指标的测量值x,具体可以是:流量采集装置120所在的网络设备接收到报文1,并由该网络设备中的NP芯片从报文1中提取报文头(或者,提取有效载荷(英文:payload)中的部分数据和报文头),由NP芯片中的流量采集装置120依据所提取的部分进行流量监控,获取报文1的目标性能指标的测量值x。
作为一个示例,基于上述图3所示的方法,说明接收到11个报文时,流量采集装置120进行逐包时延统计的过程,下述描述中时延的的单位为毫秒。以各用于保存监控结果的R中的value值从小到大排序为例进行说明。当流量采集装置120接收到报文1时,获取该报文1的时延的测量值为2,在R0中存入:value=2、counter=1,并将该R0中的value=2、counter=1存入R1中,如图4中的第一个部分;当流量采集装置120接收到报文2时,获取该报文2的时延的测量值为20,在R0中存入:value=20、counter=1,由于20大于2,所以,将该R0中的value=20、counter=1存入R2中,如图4中的第二个部分;当流量采集装置120接收到报文3时,获取该报文3的时延的测量值为10,在R0中存入:value=10、counter=1,由于10介于2和20之间,所以,将R2中的value=20、sum=20、counter=1搬移到R3中,将该R0中的value=10、counter=1存入R2中,如图4中的第三个部分;当流量采集装置120接收到报文4时,获取该报文4的时延的测量值为10,在R0中存入value=10、counter=1,由于10与R2中的value匹配,所以,将该R0中的value=10、counter=1存入R2中,即,将R2中的sum值加10,counter值加一,该次存入之后,R2中value=10、sum=20、counter=2,如图4中的第四个部分;以此类推,接收到9个报文后,R1~R4中保存的内容参见图4的第五个部分;当流量采集装置120接收到报文10时,获取该报文10的时延的测量值为3,在R0中存入value=3、counter=1,此时,确定时延3和R1中的时延2匹配,从而将采用R0中value=10、counter=1更新R1中保存的value=2、sum=10、counter=4,得到value=2、sum=(10+3)=13、counter=(4+1)=5,将该value=2、sum=13、counter=5保存在R1中,R1~R4中保存的内容如图4的第六个部分;此时,确定统计的报文的个数等于10,需要批量更新,则,将R1~R4中的(value=2、sum=10、counter=4)、(value=10、sum=20、counter=2)、(value=20、sum=39、counter=2)和(value=50、sum=50、counter=1)进行处理,得到(v=13/5=2.6、counter=5)、(v=20/2=10、counter=2)、(v=39/2=19.5、counter=2)和(v=50、counter=1),并将处理后的4组监控结果发送给控制装置110,同时将R1~R4中对应关系的sum和counter的值清零;此时,控制装置110一方面将该新接收的4组监控结果与已保存的n组历史监控数据进行合并处理,得到n组新的监控数据并保存,作为后续合并监控结果的基础或分析流量采集装置120所在网络设备时延的数据来源,另一方面,将该新接收的4组监控结果与已保存的n组历史监控数据进行合并处理,得到4组新的监控数据,并将该4组新的监控数据中的value值(如5,12,19,45)分别下发给流量采集装置120中的R1~R4,作为下一次批量更新之前各R中新的value值;在控制装置110执行上述合并处理的同时,流量采集装置120还对新接收的报文进行统计,例如,流量采集装置120接收到报文1’时,获取该报文1’的时延的测量值为10,在R0中存入:value=10、counter=1,确定10与R2中的value对应,采用R0中的value=10、counter=1更新R2中的对应关系value=10、sum=0、counter=0,得到R2中保存value=10、sum=10、counter=1,此时,如果接收到控制装置110发送的新的value,则,可以将各个R中的value进行更新,更新后R1~R4中分别为:(value=5、sum=0、counter=0)、(value=12、sum=10、counter=1)、(value=19、sum=0、counter=0)和(value=45、sum=0、counter=0),具体如图4的第七个部分。这样,任意时刻,控制装置110均可基于自身保存的n组监控数据对流量采集装置120所在的网络设备的时延进行分析,如,n组监控数据中的counter的值进行归一化处理,以n组监控数据中的value值为横坐标,counter的值的归一化处理结果为纵坐标,得到该网络设备截止读取监控结果时刻的时延的概率分布函数(英文:probability distribution function,简称:PDF)曲线。之后,以n组监控数据中的value值为横坐标,每个横坐标对应的纵坐标为:小于横坐标对应value值的所有监控数据的counter的值归一化处理结果的累加和,得到该网络设备截止读取统计结果时刻的时延的CDF曲线。
可见,本申请实施例提供的流量监控方法,无需存储所有报文的性能指标的具体数值,节约了网络设备的存储资源,也无需进行复杂的配置,能够简单、准确的对网络设备的性能指标进行逐报文的统计,从而,基于统计结果能够准确分析出网络设备的真实运行状况。
本申请实施例中,网络设备是指集成有本申请实施例提供的流量采集模块,能够对所接收的报文进行逐包性能指标统计的设备,具体可以包括但不限于交换机、路由器或防火墙等。
本申请实施例中,网络设备统计的性能指标包括但不限于:时延、报文大小(也可以称为报文长度)、接收报文的时间间隔或队列占用率。
下面结合附图,通过实施例来详细说明本申请实施例中一种流量监控方法的具体实现方式。
图5为本申请实施例中一种流量监控方法100的流程示意图,该方法100以流量采集装置和控制装置之间交互的方式进行介绍。其中,流量采集装置例如可以是图2所示的流量采集装置120,控制装置例如可以是图2所示的控制装置110。流量采集装置统计不同的性能指标所执行的操作均相同,本申请实施例中以流量采集装置统计目标性能指标为例进行说明,该目标性能指标为流量采集装置能够监控和统计的所有性能指标中的任意一种。
流量采集装置中包括:一个用于临时存储待监控报文的目标性能指标的测量值的寄存器,以及若干个用于保存目标性能指标的监控结果的寄存器。其中,用于保存目标性能指标的监控结果的寄存器的数量是固定不变的;用于临时存储待监控报文的目标性能指标的测量值的寄存器,在接收到待监控报文之后到对该报文的目标性能指标完成监控之前,存储该待监控报文的目标性能指标的第一信息的值和第三信息的值,第三信息的值为1。
下述实施例中,用于保存目标性能指标的监控结果的寄存器中包括第一信息、第二信息和第三信息,每个寄存器中第一信息用于指示承载被监控报文的目标性能指标的测量值的数据桶的深度,例如,上述图4中,各寄存器中第一信息表示为value,以图4第七个部分中的R1为例,R1中包括数据桶,该数据桶的深度与2对应,即,R1中第一信息用于指示承载被监控报文的时延的测量值的数据桶的深度为2,也就是说,R1中监控时延测量值与2对应的报文。每个寄存器中第二信息用于指示匹配该寄存器中的第一信息的值的被监控报文的目标性能指标的测量值的累加和,例如,上述图4中,各寄存器中第二信息表示为sum,以图4第四个部分中的R2为例,R2中第二信息的值为20,用于指示匹配该R2中的第一信息的值10的被监控报文的目标性能指标的测量值的累加和为20。每个寄存器的第三信息指示该流量采集装置接收的报文中匹配该寄存器中第一信息的值的报文数量,例如,上述图4中,各寄存器中第三信息表示为counter,以图4第六个部分中的R4为例,R4中第三信息的值为1,也就是说,R4中监控到了时延测量值与50对应的1个报文。当寄存器中第二信息的值为零且第三信息的值为零,则,说明该寄存器还未对任何报文的目标性能指标的测量值进行监控,表征该寄存器为空。
具体实现时,参见图5,该方法100例如可以包括下述S101~S108:
S101,流量采集装置接收第一报文。
其中,该第一报文可以是业务报文,也可以是控制报文,在本申请实施例不作限定。
具体实现时,该流量采集装置所在的网络设备接收到第一报文后,可以由网络设备中的NP芯片从第一报文中提取报文头(或者,提取payload中的部分数据和报文头),再由该NP芯片中的流量采集装置依据所提取的部分进行流量监控。
在S101和S102之间,流量采集装置可以获取第一报文的目标性能指标的测量值,并基于该测量值更新用于临时存储待监控报文的目标性能指标的测量值的寄存器中第一信息的值和第三信息的值,更新后该用于临时存储待监控报文的目标性能指标的测量值的寄存器中的第一信息的值为该第一报文的目标性能指标的测量值,更新后该用于临时存储待监控报文的目标性能指标的测量值的寄存器中的第三信息的值为1。这样,为后续完成对第一报文的监控提供了数据基础。
S102,流量采集装置确定第一报文的目标性能指标的测量值匹配第一寄存器中的第一信息的值,该第一寄存器还包括第二信息和第三信息,第一寄存器中的第一信息用于指示承载被监控报文的目标性能指标的测量值的数据桶的深度,第一寄存器中的第二信息用于指示匹配第一寄存器中的第一信息的值的被监控报文的目标性能指标的测量值的累加和,第一寄存器中的第三信息用于指示流量采集装置接收的报文中匹配第一寄存器中的第一信息的值的报文数量。
作为一个示例,流量采集装置确定该第一报文的目标性能指标的测量值与第一寄存器的第一信息的值匹配,可以包括:该流量采集装置确定第一报文的目标性能指标的测量值属于第一寄存器中所述第一信息的值对应的数值范围。例如,第一寄存器中第一信息的值为5,对应的数值范围为0~10,那么,如果第一报文的目标性能指标的测量值为7,则,可以确定该第一报文的目标性能指标的测量值与第一寄存器的第一信息的值匹配。又例如,第一寄存器中第一信息的值为5,对应的数值范围为5±3,那么,如果第一报文的目标性能指标的测量值为7,则,可以确定该第一报文的目标性能指标的测量值与第一寄存器的第一信息的值匹配。
作为另一个示例,流量采集装置确定该第一报文的目标性能指标的测量值与第一寄存器的第一信息的值匹配,也可以包括:流量采集装置确定第一报文的目标性能指标的测量值与第一寄存器中的第一信息的值的差,小于第一报文的目标性能指标的测量值与其他寄存器中的第一信息的值的差。例如,流量采集装置包括第一寄存器和第三寄存器,第一寄存器中第一信息的值为5,第三寄存器中第一信息的值为12,如果第一报文的目标性能指标的测量值为7,那么,由于(7-5)<(12-7),所以,可以确定该第一报文的目标性能指标的测量值与第一寄存器的第一信息的值匹配。
需要说明的是,初始情况下,各用于保存目标性能指标的监控结果的寄存器中第一信息的值可以是用户配置的,也可以是系统自动配置的随机初始值;或者,还可以是以上述图4所示的方式,通过对所接收报文的监控确定的,例如,当流量采集装置接收到第二报文时,确定该流量采集装置中包括第二寄存器,该第二寄存器中的第二信息的值为零且第三信息的值为零,表征该第二寄存器为空,那么,响应于流量采集装置确定包括空的第二寄存器,该流量采集装置将第二寄存器中的第一信息的值更新为第二报文的所述目标性能指标的测量值,将第二寄存器中的第二信息的值更新为第二报文的所述目标性能指标的测量值,和将第二寄存器中的第三信息的值加一,具体可以参见图4的相关描述。
S103,流量采集装置基于第一报文的目标性能指标的测量值更新第一寄存器中第二信息的值,和将第一寄存器中的第三信息的值加一。
具体实现时,S103中流量采集装置基于第一报文的目标性能指标的测量值更新第一寄存器中第二信息的值,例如可以包括:流量采集装置将第一报文的目标性能指标的测量值与更新前第一寄存器中第二信息的值相加,得到更新的第二信息的值,从而,利用更新的所述第二信息的值替换更新前第一寄存器中第二信息的值。
S104,流量采集装置向控制装置发送多个监控结果,所述多个监控结果中的每个监控结果是流量采集装置根据流量采集装置包括的寄存器中的第二信息的值和第三信息的值确定的,寄存器还包括第一信息。
S105,控制装置接收流量采集装置发送的多个监控结果。
其中,流量采集装置所在的网络设备向控制装置批量发送监控结果的时机,一种情况下,可以是周期性的发送,例如,网络设备中的流量采集装置中包括定时器,该定时器设置发送监控结果的周期,一旦定时器超时,流量采集装置就可以将各个寄存器中保存的第二信息的值和第三信息的值所确定的监控结果发送给控制装置。另一种情况下,也可以是基于触发条件发送的,触发条件例如可以是某个用于保存目标性能指标的监控结果的寄存器中的counter大于第一阈值,其中,第一阈值可以是预设的数值(如4),各个寄存器对应的第一阈值可以相同也可以不同;或者,第一阈值也可以是流量采集装置的所有寄存器中counter的值之和的预设比例(如60%)。触发条件例如还可以是所有寄存器中的counter的值之和大于第二阈值(如10)。再一种情况下,还可以是基于控制装置发送的查询请求而发送的,即,当控制装置需要从流量采集装置获取监控结果时,向流量采集装置发送查询请求,用于指示流量采集装置向控制装置发送监控结果。控制装置发送查询请求可以是周期性的,该周期可以是固定不变的,也可以基于所接收的监控结果的动态调整的,例如,当监控结果中所有寄存器中的counter的值之和小于第三阈值(如50)时,以10秒的周期向流量采集装置发送查询请求,当监控结果中所有寄存器中的counter的值之和大于或等于第三阈值时,以5秒的周期向流量采集装置发送查询请求。又例如,当监控结果中某个寄存器中的counter的值大于所有寄存器的counter的值之和的预设比例(如70%)时,以5秒的周期向流量采集装置发送查询请求,当监控结果中某个寄存器中的counter的值不大于所有寄存器的counter的值之和的预设比例(如70%)时,以10秒的周期向流量采集装置发送查询请求。
流量采集装置向控制装置发送多个监控结果,多个监控结果包括第一寄存器对应的监控结果。作为一个示例,第一寄存器对应的监控结果可以包括第一寄存器中第二信息的值和第一寄存器中第三信息的值。这样,控制装置还可以在接收到第一寄存器中第二信息的值和第一寄存器中第三信息的值之后,根据第一寄存器中第二信息的值和第一寄存器中第三信息的值计算第一寄存器中第四信息的值,该第四信息用于指示承载被监控报文的目标性能指标的测量值的平均值。作为另一个示例,S104之前,流量采集装置还可以根据第一寄存器中第二信息的值和第三信息的值计算得到第一寄存器对应的第四信息的值,那么,第一寄存器对应的监控结果也可以包括第一寄存器对应的第四信息的值和第一寄存器中第三信息的值,其中,第四信息用于指示承载被监控报文的所述目标性能指标的测量值的平均值。
流量采集装置向控制装置发送多个监控结果的过程中,各个寄存器对应的监控结果可以承载在一个报文中向控制装置发送,也可以承载在多个报文向控制装置发送。需要说明的是,流量采集装置向控制装置发送多个监控结果,可以不关联各寄存器的value值,也可以不关注各个监控结果对应的value值的顺序。
在S104之后,流量采集装置可以将各个寄存器中保存的对应关系中的第二信息的值和第三信息的值清零,继续以当前的第一信息统计接收到的报文的目标性能指标,直到接收到控制装置下发的新的第一信息的值,通过更新第一信息的值实现更准确的统计。
S106,控制装置根据所述多个监控结果,确定所第一信息的多个值,该第一信息的多个值与流量采集装置中的多个寄存器一一对应。
具体实现时,S106例如可以包括:控制装置根据包括第一寄存器对应的第四信息的值和第一寄存器中第三信息的值的多个监控结果,确定流量采集装置中各寄存器对应的第一信息的多个值。
在S105之后,控制装置执行两方面的操作:一方面,控制装置可以根据所接收的N组监控结果和本地保存的M组历史监控数据,得到新的M组监控数据,该新的M组监控数据被保存在控制装置中,用于与下一次批量接收到的N组监控结果进行处理,也作为对流量采集装置所在网络设备的目标性能指标分析的最新数据。另一方面,控制装置可以执行S106,即,根据所接收的N组监控结果和本地保存的M组历史监控数据,得到新的N组监控数据,将新的N组监控数据中的value按照从小到大排序,第i寄存器对应的第i个更新的监控数据,从而,将第i个更新的监控数据中第一信息的值记作第i寄存器对应的第一信息的值,以使得后续流量采集装置的批量统计更为准确。其中,N可以是流量采集装置所包括的用于保存目标性能指标的监控结果的寄存器的数量,例如N=4,M是控制装置上保存监控数据的组数,例如M=20。对监控数据的合并,例如可以采用加和的方式、求平均值的方式、加权求平均的方式,在本申请实施例中不作具体限定。
具体实现时,控制装置可以在任何需要的时刻基于保存的M组监控数据,分析和确定该目标性能指标的概率分布,以了解该流量采集装置所在的网络设备的目标性能指标。
S107,控制装置向流量采集装置发送第一信息的多个值,第一信息的多个值被用于更新流量采集装置中的多个寄存器中的第一信息的值。
需要说明的是,控制装置向流量采集装置发送第一信息的多个值的过程中,各个寄存器对应的第一信息的值可以承载在一个报文中向流量采集装置发送,也可以承载在多个报文向流量采集装置发送,本申请实施例不作限定。
控制装置向流量采集装置发送第一信息的多个值,需要严格关联各寄存器以确保各寄存器按照第一信息的值的排序不变。如果流量采集装置和控制装置属于同一个网络设备,则,可以通过网络设备内部的数据交互实现控制装置向流量采集装置发送第一信息的多个值,交互的数据需要指定每个第一信息的值对应待写入的目的地址(该目的地址指向该第一信息的值对应的寄存器),以保证可以准确的写入对应的寄存器实现对该寄存器的第一信息的值的更新。如果流量采集装置和控制装置属于不同的网络设备,则,可以通过网络设备之间的数据交互实现控制装置向流量采集装置发送第一信息的多个值,交互的数据需要指定流量采集装置的设备标识以及每个第一信息的值对应待写入寄存器的目的地址,以保证可以准确的写入流量采集装置所在网络设备中对应的寄存器,实现对该寄存器的第一信息的值的更新。当流量采集装置接收到控制装置下发的新的第一信息的值时,可以将各个寄存器中保存的对应关系中的第一信息的值更新为所接收到的新第一信息的值,具体可以参见对图4中第七个部分的相关描述。如此,通过更新第一信息的值能够实现更准确的统计。
S108,流量采集装置接收控制装置发送的第一寄存器对应的第一信息的值,并基于所接收的第一寄存器对应的第一信息的值更新第一寄存器中第一信息的值。
其中,S107中控制装置向流量采集装置发送第一信息的多个值,包括第一寄存器对应的第一信息的值,那么,S108中流量采集装置接收到第一寄存器对应的第一信息的值时,基于所接收的第一寄存器对应的第一信息的值更新第一寄存器中已有的值第一信息的值。例如,对于图4所示的第七部分中的R2,流量采集装置接收到R2对应的第一信息的值12时,将该R2中第一信息的值10更新为12。
可见,通过该方法100,无需配置待监测的性能指标(即目标性能指标)的取值范围,也不需要对取值范围进行等分来确定每个数据桶的深度,而是将用于指示承载被监控报文的目标性能指标的测量值的数据桶的深度的第一信息,用于指示匹配各寄存器中的第一信息的值的被监控报文的目标性能指标的测量值的累加和的第二信息,以及用于指示接收的报文中匹配各寄存器中第一信息的值的报文数量的第三信息作为寄存器的三个统计参数,根据接收的报文的目标性能指标的测量值与各寄存器中第一信息的值进行匹配,灵活的更新所匹配的寄存器中第二信息和第三信息这两个统计参数的值,实现对目标性能指标的统计,不仅减少了统计目标性能指标的配置工作量,还由于不再局限统计的整体取值范围以及各个寄存器统计的取值子范围,使得获得更加全面、准确的统计结果成为可能。
需要说明的是,该方法100中,流量采集装置中不要求参与统计的寄存器越多越好,因为寄存器会批量将阶段性的监控结果发送给控制装置进行处理和保存;相比于纯软件算法实现直方图统计出现资源使用率低且准确率较差的问题,该方法100通过软硬件结合的形式,实现资源利用率高且较为准确的统计效果。可见,该方法100对于网络设备可用寄存器较少但要求监控结果精度要求较高的情况效果更为突出。
基于上述方法实施例,本申请实施例还提供了相应的装置,下面将结合附图对该装置进行说明。
参见图6,该图为本申请实施例提供的一种流量采集装置600的结构示意图,该装置600例如可以是流量采集装置120,执行图3所示的方法,该装置600可以包括:第一接收单元601、第一确定单元602和第一更新单元603。
第一接收单元601,用于接收第一报文。
其中,第一接收单元601的具体实现可以参见图5所述实施例中S101的详细描述。
第一确定单元602,用于确定第一报文的目标性能指标的测量值匹配第一寄存器中的第一信息的值,第一寄存器还包括第二信息和第三信息,第一寄存器中的第一信息用于指示承载被监控报文的目标性能指标的测量值的数据桶的深度,第一寄存器中的第二信息用于指示匹配第一寄存器中的第一信息的值的被监控报文的目标性能指标的测量值的累加和,第一寄存器中的第三信息用于指示流量采集装置600接收的报文中匹配第一寄存器中的第一信息的值的报文数量。
其中,第一确定单元602的具体实现可以参见图5所述实施例中S102的详细描述。
第一更新单元603,用于基于第一报文的目标性能指标的测量值更新第一寄存器中第二信息的值,和将第一寄存器中的第三信息的值加一。
其中,第一更新单元603的具体实现可以参见图5所述实施例中S103的详细描述。
在一种可能的实现方式中,第一确定单元602,具体用于:确定第一报文的目标性能指标的测量值属于第一寄存器中第一信息的值对应的数值范围。或者,第一确定单元602,具体用于:确定第一报文的目标性能指标的测量值与第一寄存器中的第一信息的值的差,小于第一报文的目标性能指标的测量值与其他寄存器中的第一信息的值的差。
在一种可能的实现方式中,第一更新单元603,具体用于:将第一报文的目标性能指标的测量值与更新前第一寄存器中第二信息的值相加,得到更新的第二信息的值;并且,利用更新的第二信息的值替换更新前第一寄存器中第二信息的值。
在一种可能的实现方式中,该装置600还可以包括:第一发送单元。其中,第一发送单元,用于向控制装置发送监控结果,其中,监控结果包括第一寄存器中第二信息的值和第一寄存器中第三信息的值,或者,监控结果包括第一寄存器对应的第四信息的值和第一寄存器中第三信息的值,其中,第四信息用于指示承载被监控报文的目标性能指标的测量值的平均值,第四信息的值为流量采集装置600根据第一寄存器中第二信息的值和第三信息的值计算得到的。其中,第一发送单元的具体实现可以参见图5所述实施例中S104和S105的详细描述。
作为一个示例,第一发送单元,具体用于:周期性的向控制装置发送监控结果。
作为另一个示例,第一发送单元,具体用于:确定第一寄存器中第三信息的值大于第一阈值,则,向控制装置发送监控结果。其中,第一阈值可以为预设阈值,或者,第一阈值也可以为流量采集装置600的所有寄存器中第三信息的值之和的预设比例。
作为再一个示例,第一发送单元,具体用于:确定流量采集装置600的所有寄存器中第三信息的值之和大于第二阈值,则,向控制装置发送监控结果。
在一种可能的实现方式中,该装置600还可以包括:第二接收单元。该第二接收单元,用于在向控制装置发送监控结果之前,接收控制装置发送的查询请求,查询请求用于指示流量采集装置600向控制装置发送监控结果。
在一种可能的实现方式中,该装置600还可以包括:清零单元。该清零单元,用于将第一寄存器中第二信息的值和第三信息的值清零。
其中,监控结果被控制装置用于计算流量采集装置600中各寄存器对应的更新的第一信息的值。
在一种可能的实现方式中,该装置600还可以包括:第三接收单元和第二更新单元。其中,第二接收单元,用于接收控制装置发送的第一寄存器对应的第一信息的值;第二更新单元,用于基于所接收的第一寄存器对应的第一信息的值更新第一寄存器中第一信息的值。其中,第三接收单元和第二更新单元的具体实现可以参见图5所述实施例中S107和S108的详细描述。
在一种可能的实现方式中,该装置600还可以包括:第四接收单元和第二确定单元和第三更新单元。其中,第四接收单元,用于接收第二报文;第二确定单元,用于确定流量采集装置600中是否包括第二寄存器,第二寄存器包括第一信息、第二信息和第三信息,第二寄存器中的第二信息的值为零且第三信息的值为零;第三更新单元,用于响应于确定流量采集装置600中包括第二寄存器,将第二寄存器中的第一信息的值更新为第二报文的目标性能指标的测量值,将第二寄存器中的第二信息的值更新为第二报文的目标性能指标的测量值,和将第二寄存器中的第三信息的值加一。
本申请实施例中,目标性能指标包括下述指标中的任意一种:时延、报文长度、接收报文时间间隔或队列占用率。
本申请实施例中,该流量采集装置600被包括在处理芯片中,例如,可以集成在NP芯片中。
关于流量采集装置600具体可执行的功能和实现,可以参见图3所示的方法、图5所示的方法100中流量采集装置的相应描述,此处不再赘述。
相应的,本申请实施例还提供了一种控制装置700,如图7所示。该控制装置700可以包括接收单元701、第一确定单元702和第一发送单元703。
接收单元701,用于接收流量采集装置发送的多个监控结果,多个监控结果中的每个监控结果是流量采集装置根据流量采集装置包括的寄存器中的第二信息的值和第三信息的值确定的,寄存器还包括第一信息,第一信息用于指示承载被监控报文的目标性能指标的测量值的数据桶的深度,第二信息用于指示匹配寄存器中的第一信息的值的被监控报文的目标性能指标的测量值的累加和,第三信息用于指示流量采集装置接收的报文中匹配寄存器中的第一信息的值的报文数量。
其中,接收单元701的具体实现可以参见图5所述实施例中S105的详细描述。
第一确定单元702,用于根据多个监控结果,确定第一信息的多个值,第一信息的多个值与流量采集装置中的多个寄存器一一对应。
其中,第一确定单元702的具体实现可以参见图5所述实施例中S106的详细描述。
第一发送单元703,用于向流量采集装置发送第一信息的多个值,第一信息的多个值被用于更新流量采集装置中的多个寄存器中的第一信息的值。
其中,第一发送单元703的具体实现可以参见图5所述实施例中S107的详细描述。
在一种可能的实现方式中,接收单元701,具体用于:接收流量采集装置发送的第一寄存器对应的第一监控结果,其中,第一监控结果包括:第一寄存器对应的第四信息的值和第三信息的值,该第四信息的值为流量采集装置基于第一寄存器中第二信息的值和第一寄存器中第三信息的值计算得到的,第四信息用于指示承载被监控报文的目标性能指标的测量值的平均值。或者,第一监控结果包括:第一寄存器中第二信息的值和第一寄存器中第三信息的值,那么,该装置700还可以包括:计算单元,该计算单元用于在根据多个监控结果确定第一信息的多个值之前,根据第一寄存器中第二信息的值和第三信息的值,计算第一寄存器对应的第四信息的值,第四信息用于指示承载被监控报文的目标性能指标的测量值的平均值。
该实现方式下,第一确定单元702,具体用于:根据第一寄存器对应的第四信息的值和第一寄存器中第三信息的值,确定流量采集装置中各寄存器对应的第一信息的多个值。
在一种可能的实现方式中,第一确定单元702,具体用于:根据N个监控结果以及历史监控数据,得到N个更新的监控数据,N为正整数,N为流量采集装置包括的寄存器的个数;确定N个更新的监控数据中,第i寄存器对应的第i个更新的监控数据,其中,i为大于或等于1且不大于N的整数;并且,将第i个更新的监控数据中第一信息的值记作第i寄存器对应的第一信息的值。
在一种可能的实现方式中,该装置700还可以包括更新单元。该更新单元,用于根据多个监控结果以及历史监控数据,更新历史监控数据。
在一种可能的实现方式中,该装置700还可以包括第二确定单元。该第二确定单元,用于基于当前保存的监控数据确定目标性能指标的概率分布。
在一种可能的实现方式中,该装置700还可以包括第二发送单元。该第二发送单元,用于在接收流量采集装置发送的多个监控结果之前,向流量采集装置发送查询请求,查询请求用于指示流量采集装置向控制装置700发送监控结果。作为一个示例,该第二发送单元,具体用于:周期性的向流量采集装置发送查询请求。
本申请实施例中,目标性能指标包括下述指标中的任意一种:时延、报文长度、接收报文时间间隔或队列占用率。
本申请实施例中,该流量采集装置被包括在处理芯片中,例如,可以集成在NP芯片中。
关于控制装置700具体可执行的功能和实现,可以参见图3所示的方法、图5所示的方法100中控制装置的相应描述,此处不再赘述。
本申请实施例还提供了一种流量采集装置800,如图8所示。该装置800包括处理器801和收发器802。其中:收发器802,用于接收第一报文;处理器801,用于确定第一报文的目标性能指标的测量值匹配第一寄存器中的第一信息的值,第一寄存器还包括第二信息和第三信息,第一寄存器中的第一信息用于指示承载被监控报文的目标性能指标的测量值的数据桶的深度,第一寄存器中的第二信息用于指示匹配第一寄存器中的第一信息的值的被监控报文的目标性能指标的测量值的累加和,第一寄存器中的第三信息用于指示流量采集装置800接收的报文中匹配第一寄存器中的第一信息的值的报文数量;处理器801,还用于基于第一报文的目标性能指标的测量值更新第一寄存器中第二信息的值,和将第一寄存器中的第三信息的值加一。
在一种可能的实现方式中,处理器801,具体用于:确定第一报文的目标性能指标的测量值属于第一寄存器中第一信息的值对应的数值范围。
在一种可能的实现方式中,处理器801,具体用于:确定第一报文的目标性能指标的测量值与第一寄存器中的第一信息的值的差,小于第一报文的目标性能指标的测量值与其他寄存器中的第一信息的值的差。
在一种可能的实现方式中,处理器801,具体用于:将第一报文的目标性能指标的测量值与更新前第一寄存器中第二信息的值相加,得到更新的第二信息的值;并且,利用更新的第二信息的值替换更新前第一寄存器中第二信息的值。
在一种可能的实现方式中,收发器802,还用于向控制装置发送监控结果,监控结果包括第一寄存器中第二信息的值和第一寄存器中第三信息的值。
在一种可能的实现方式中,收发器802,还用于向控制装置发送监控结果,监控结果包括第一寄存器对应的第四信息的值和第一寄存器中第三信息的值,其中,第四信息用于指示承载被监控报文的目标性能指标的测量值的平均值,第四信息的值为流量采集装置800根据第一寄存器中第二信息的值和第三信息的值计算得到的。
在一种可能的实现方式中,收发器802,具体用于:周期性的向控制装置发送监控结果。
在一种可能的实现方式中,收发器802,具体用于:确定第一寄存器中第三信息的值大于第一阈值,则,向控制装置发送监控结果。其中,第一阈值可以为预设阈值,或者,第一阈值也可以为流量采集装置800的所有寄存器中第三信息的值之和的预设比例。
在一种可能的实现方式中,收发器802,具体用于:确定流量采集装置800的所有寄存器中第三信息的值之和大于第二阈值,则,向控制装置发送监控结果。
在一种可能的实现方式中,收发器802,还用于在向控制装置发送监控结果之前,接收控制装置发送的查询请求,查询请求用于指示流量采集装置800向控制装置发送监控结果。
在一种可能的实现方式中,处理器801,还用于将第一寄存器中第二信息的值和第三信息的值清零。
在一种可能的实现方式中,监控结果被控制装置用于计算流量采集装置800中各寄存器对应的更新的第一信息的值。
在一种可能的实现方式中,收发器802,还用于接收控制装置发送的第一寄存器对应的第一信息的值;处理器801,还用于基于所接收的第一寄存器对应的第一信息的值更新第一寄存器中第一信息的值。
在一种可能的实现方式中,收发器802,还用于接收第二报文;处理器801,还用于确定流量采集装置800中是否包括第二寄存器,第二寄存器包括第一信息、第二信息和第三信息,第二寄存器中的第二信息的值为零且第三信息的值为零;处理器801,还用于响应于确定流量采集装置800中包括第二寄存器,将第二寄存器中的第一信息的值更新为第二报文的目标性能指标的测量值,将第二寄存器中的第二信息的值更新为第二报文的目标性能指标的测量值,和将第二寄存器中的第三信息的值加一。
本申请实施例中,目标性能指标包括下述指标中的任意一种:时延、报文长度、接收报文时间间隔或队列占用率。
本申请实施例中,该流量采集装置800被包括在处理芯片中,例如,可以集成在NP芯片中。
关于流量采集装置800具体可执行的功能和实现,可以参见图3所示的方法、图5所示的方法100中流量采集装置的相应描述,此处不再赘述。
本申请实施例还提供了一种控制装置900,如图9所示。该装置900包括收发器902和处理器901。其中:收发器902,用于接收流量采集装置发送的多个监控结果,多个监控结果中的每个监控结果是流量采集装置根据流量采集装置包括的寄存器中的第二信息的值和第三信息的值确定的,寄存器还包括第一信息,第一信息用于指示承载被监控报文的目标性能指标的测量值的数据桶的深度,第二信息用于指示匹配寄存器中的第一信息的值的被监控报文的目标性能指标的测量值的累加和,第三信息用于指示流量采集装置接收的报文中匹配寄存器中的第一信息的值的报文数量;处理器901,用于根据多个监控结果,确定第一信息的多个值,第一信息的多个值与流量采集装置中的多个寄存器一一对应;收发器902,还用于向流量采集装置发送第一信息的多个值,第一信息的多个值被用于更新流量采集装置中的多个寄存器中的第一信息的值。
在一种可能的实现方式中,收发器902,具体用于:接收流量采集装置发送的第一寄存器对应的第一监控结果,第一监控结果包括:第一寄存器对应的第四信息的值和第三信息的值,其中,第四信息的值为流量采集装置基于第一寄存器中第二信息的值和第一寄存器中第三信息的值计算得到的,第四信息用于指示承载被监控报文的目标性能指标的测量值的平均值。
在一种可能的实现方式中,收发器902,具体用于:接收流量采集装置发送的第一寄存器对应的第一监控结果,第一监控结果包括:第一寄存器中第二信息的值和第一寄存器中第三信息的值。
在一种可能的实现方式中,处理器901,还用于在根据多个监控结果确定第一信息的多个值之前,根据第一寄存器中第二信息的值和第三信息的值,计算第一寄存器对应的第四信息的值,第四信息用于指示承载被监控报文的目标性能指标的测量值的平均值;处理器901,具体用于:根据第一寄存器对应的第四信息的值和第一寄存器中第三信息的值,确定流量采集装置中各寄存器对应的第一信息的多个值。
在一种可能的实现方式中,处理器901,具体用于:根据N个监控结果以及历史监控数据,得到N个更新的监控数据,N为正整数,N为流量采集装置包括的寄存器的个数;确定N个更新的监控数据中,第i寄存器对应的第i个更新的监控数据,其中,i为大于或等于1且不大于N的整数;并且,将第i个更新的监控数据中第一信息的值记作第i寄存器对应的第一信息的值。
在一种可能的实现方式中,处理器901,还用于根据多个监控结果以及历史监控数据,更新历史监控数据。
在一种可能的实现方式中,处理器901,还用于基于当前保存的监控数据确定目标性能指标的概率分布。
在一种可能的实现方式中,收发器902,用于在接收流量采集装置发送的多个监控结果之前,向流量采集装置发送查询请求,查询请求用于指示流量采集装置向控制装置900发送监控结果。
在一种可能的实现方式中,收发器902,具体用于:周期性的向流量采集装置发送查询请求。
本申请实施例中,目标性能指标包括下述指标中的任意一种:时延、报文长度、接收报文时间间隔或队列占用率。
本申请实施例中,该流量采集装置被包括在处理芯片中,例如,可以集成在NP芯片中。
关于控制装置900具体可执行的功能和实现,可以参见图3所示的方法、图5所示的方法100中控制装置的相应描述,此处不再赘述。
此外,本申请实施例还提供了一种集成电路1000,如图10所示。该集成电路1000包括控制电路1001和接口电路1002。其中:接口电路1002,用于接收第一报文;控制电路1001,用于确定第一报文的目标性能指标的测量值匹配第一寄存器中的第一信息的值,第一寄存器还包括第二信息和第三信息,第一寄存器中的第一信息用于指示承载被监控报文的目标性能指标的测量值的数据桶的深度,第一寄存器中的第二信息用于指示匹配第一寄存器中的第一信息的值的被监控报文的目标性能指标的测量值的累加和,第一寄存器中的第三信息用于指示集成电路1000接收的报文中匹配第一寄存器中的第一信息的值的报文数量;控制电路1001,还用于基于第一报文的目标性能指标的测量值更新第一寄存器中第二信息的值,和将第一寄存器中的第三信息的值加一。
在一种可能的实现方式中,控制电路1001,具体用于:确定第一报文的目标性能指标的测量值属于第一寄存器中第一信息的值对应的数值范围。
在一种可能的实现方式中,控制电路1001,具体用于:确定第一报文的目标性能指标的测量值与第一寄存器中的第一信息的值的差,小于第一报文的目标性能指标的测量值与其他寄存器中的第一信息的值的差。
在一种可能的实现方式中,控制电路1001,具体用于:将第一报文的目标性能指标的测量值与更新前第一寄存器中第二信息的值相加,得到更新的第二信息的值;并且,利用更新的第二信息的值替换更新前第一寄存器中第二信息的值。
在一种可能的实现方式中,接口电路1002,还用于向控制装置发送监控结果,监控结果包括第一寄存器中第二信息的值和第一寄存器中第三信息的值。
在一种可能的实现方式中,接口电路1002,还用于向控制装置发送监控结果,监控结果包括第一寄存器对应的第四信息的值和第一寄存器中第三信息的值,其中,第四信息用于指示承载被监控报文的目标性能指标的测量值的平均值,第四信息的值为流量采集装置根据第一寄存器中第二信息的值和第三信息的值计算得到的。
在一种可能的实现方式中,接口电路1002,具体用于:周期性的向控制装置发送监控结果。
在一种可能的实现方式中,接口电路1002,具体用于:确定第一寄存器中第三信息的值大于第一阈值,则,向控制装置发送监控结果。其中,第一阈值可以为预设阈值,或者,第一阈值也可以为集成电路1000的所有寄存器中第三信息的值之和的预设比例。
在一种可能的实现方式中,接口电路1002,具体用于:确定集成电路1000的所有寄存器中第三信息的值之和大于第二阈值,则,向控制装置发送监控结果。
在一种可能的实现方式中,接口电路1002,还用于在向控制装置发送监控结果之前,接收控制装置发送的查询请求,查询请求用于指示集成电路1000向控制装置发送监控结果。
在一种可能的实现方式中,控制电路1001,还用于将第一寄存器中第二信息的值和第三信息的值清零。
在一种可能的实现方式中,监控结果被控制装置用于计算集成电路1000中各寄存器对应的更新的第一信息的值。
在一种可能的实现方式中,接口电路1002,还用于接收控制装置发送的第一寄存器对应的第一信息的值;控制电路1001,还用于基于所接收的第一寄存器对应的第一信息的值更新第一寄存器中第一信息的值。
在一种可能的实现方式中,接口电路1002,还用于接收第二报文;控制电路1001,还用于确定集成电路1000中是否包括第二寄存器,第二寄存器包括第一信息、第二信息和第三信息,第二寄存器中的第二信息的值为零且第三信息的值为零;控制电路1001,还用于响应于确定集成电路1000中包括第二寄存器,将第二寄存器中的第一信息的值更新为第二报文的目标性能指标的测量值,将第二寄存器中的第二信息的值更新为第二报文的目标性能指标的测量值,和将第二寄存器中的第三信息的值加一。
本申请实施例中,目标性能指标包括下述指标中的任意一种:时延、报文长度、接收报文时间间隔或队列占用率。
本申请实施例中,该集成电路1000被包括在处理芯片中,例如,可以集成在NP芯片中。
关于集成电路1000具体可执行的功能和实现,可以参见图3所示的方法、图5所示的方法100中流量采集装置的相应描述,此处不再赘述。
相应的,本申请实施例还提供了一种集成电路1100,参见图11所示。该集成电路1100包括接口电路1102和控制电路1101。其中:接口电路1102,用于接收流量采集装置发送的多个监控结果,多个监控结果中的每个监控结果是流量采集装置根据流量采集装置包括的寄存器中的第二信息的值和第三信息的值确定的,寄存器还包括第一信息,第一信息用于指示承载被监控报文的目标性能指标的测量值的数据桶的深度,第二信息用于指示匹配寄存器中的第一信息的值的被监控报文的目标性能指标的测量值的累加和,第三信息用于指示流量采集装置接收的报文中匹配寄存器中的第一信息的值的报文数量;控制电路1101,用于根据多个监控结果,确定第一信息的多个值,第一信息的多个值与流量采集装置中的多个寄存器一一对应;接口电路1102,还用于向流量采集装置发送第一信息的多个值,第一信息的多个值被用于更新流量采集装置中的多个寄存器中的第一信息的值。
在一种可能的实现方式中,接口电路1102,具体用于:接收流量采集装置发送的第一寄存器对应的第一监控结果,第一监控结果包括:第一寄存器对应的第四信息的值和第三信息的值,其中,第四信息的值为流量采集装置基于第一寄存器中第二信息的值和第一寄存器中第三信息的值计算得到的,第四信息用于指示承载被监控报文的目标性能指标的测量值的平均值。
在一种可能的实现方式中,接口电路1102,具体用于:接收流量采集装置发送的第一寄存器对应的第一监控结果,第一监控结果包括:第一寄存器中第二信息的值和第一寄存器中第三信息的值。
在一种可能的实现方式中,控制电路1101,还用于在根据多个监控结果确定第一信息的多个值之前,根据第一寄存器中第二信息的值和第三信息的值,计算第一寄存器对应的第四信息的值,第四信息用于指示承载被监控报文的目标性能指标的测量值的平均值;那么,控制电路1101,具体用于:根据第一寄存器对应的第四信息的值和第一寄存器中第三信息的值,确定流量采集装置中各寄存器对应的第一信息的多个值。
在一种可能的实现方式中,控制电路1101,具体用于:根据N个监控结果以及历史监控数据,得到N个更新的监控数据,N为正整数,N为流量采集装置包括的寄存器的个数;确定N个更新的监控数据中,第i寄存器对应的第i个更新的监控数据,其中,i为大于或等于1且不大于N的整数;并且,将第i个更新的监控数据中第一信息的值记作第i寄存器对应的第一信息的值。
在一种可能的实现方式中,控制电路1101,还用于根据多个监控结果以及历史监控数据,更新历史监控数据。
在一种可能的实现方式中,控制电路1101,还用于基于当前保存的监控数据确定目标性能指标的概率分布。
在一种可能的实现方式中,接口电路1102,用于在接收流量采集装置发送的多个监控结果之前,向流量采集装置发送查询请求,查询请求用于指示流量采集装置向集成电路发送监控结果。
在一种可能的实现方式中,接口电路1102,具体用于:周期性的向流量采集装置发送查询请求。
本申请实施例中,目标性能指标包括下述指标中的任意一种:时延、报文长度、接收报文时间间隔或队列占用率。
本申请实施例中,该流量采集装置被包括在处理芯片中,例如,可以集成在NP芯片中。
关于集成电路1100具体可执行的功能和实现,可以参见图3所示的方法、图5所示的方法100中控制装置的相应描述,此处不再赘述。
本申请实施例还提供了一种网络设备1200,如图12所示。该网络设备1200可以包括第一装置1201和第二装置1202。其中:所述第一装置1201,包括以上流量采集装置120/600/800或集成电路1000;所述第二装置1202,包括以上控制装置110/700/900或集成电路1100。
本申请实施例还提供了一种网络系统1300,该网络系统1300包括第一网络设备1301和第二网络设备1302。其中:第一网络设备1301,包括以上流量采集装置120/600/800或集成电路1000;所述第二网络设备1302,包括以上控制装置110/700/900或集成电路1100。
图14为本申请实施例提供的一种通信设备1400的结构示意图,该通信设备1400例如可以是图2所示实施例中的流量采集装置120所在的网络设备,或者也可以是图6所示实施例中的流量采集装置600所在的网络设备,或者也可以是图8所示实施例中的流量采集装置800所在的网络设备,又或者也可以是图10所示实施例中的集成电路1000所在的网络设备。或者,该通信设备1400例如可以是图2所示实施例中的控制装置110所在的网络设备,或者也可以是图7所示实施例中的控制装置700所在的网络设备,或者也可以是图9所示实施例中的控制装置900所在的网络设备,又或者也可以是图11所示实施例中的集成电路1100所在的网络设备。
请参阅图14所示,通信设备1400包括:处理器1410、通信接口1420和存储器1430。其中通信设备1400中的处理器1410的数量可以一个或多个,图14中以一个处理器为例。本申请实施例中,处理器1410、通信接口1420和存储器1430可通过总线系统或其它方式连接,其中,图14中以通过总线系统1440连接为例。
处理器1410可以是CPU、NP、或者CPU和NP的组合。处理器1410还可以进一步包括硬件芯片。上述硬件芯片可以是专用集成电路(application-specific integratedcircuit,ASIC),可编程逻辑器件(programmable logic device,PLD)或其组合。上述PLD可以是复杂可编程逻辑器件(complex programmable logic device,CPLD),现场可编程逻辑门阵列(field-programmable gate array,FPGA),通用阵列逻辑(generic array logic,GAL)或其任意组合。
通信接口1420用于接收和发送报文,具体地,通信接口1420可以包括接收接口和发送接口。其中,接收接口可以用于接收报文,发送接口可以用于发送报文。通信接口1420的个数可以为一个或多个。
存储器1430可以包括易失性存储器(英文:volatile memory),例如随机存取存储器(random-access memory,RAM);存储器1430也可以包括非易失性存储器(英文:non-volatile memory),例如快闪存储器(英文:flash memory),硬盘(hard disk drive,HDD)或固态硬盘(solid-state drive,SSD);存储器1430还可以包括上述种类的存储器的组合。
可选地,存储器1430存储有操作系统和程序、可执行模块或者数据结构,或者它们的子集,或者它们的扩展集,其中,程序可包括各种操作指令,用于实现各种操作。操作系统可包括各种系统程序,用于实现各种基础业务以及处理基于硬件的任务。处理器1410可以读取存储器1430中的程序,实现本申请实施例提供的流量监控方法。
其中,存储器1430可以为通信设备1400中的存储器件,也可以为独立于通信设备1400的存储装置。
总线系统1440可以是外设部件互连标准(peripheral component interconnect,PCI)总线或扩展工业标准结构(extended industry standard architecture,EISA)总线等。总线系统1440可以分为地址总线、数据总线、控制总线等。为便于表示,图14中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。
图15是本申请实施例提供的另一种通信设备1500的结构示意图,通信设备1500例如可以是图2所示实施例中的流量采集装置120所在的网络设备,或者也可以是图6所示实施例中的流量采集装置600所在的网络设备,或者也可以是图8所示实施例中的流量采集装置800所在的网络设备,又或者也可以是图10所示实施例中的集成电路1000所在的网络设备。或者,该通信设备1500例如可以是图2所示实施例中的控制装置110所在的网络设备,或者也可以是图7所示实施例中的控制装置700所在的网络设备,或者也可以是图9所示实施例中的控制装置900所在的网络设备,又或者也可以是图11所示实施例中的集成电路1100所在的网络设备。
通信设备1500包括:主控板1510和接口板1530。
主控板1510也称为主处理单元(main processing unit,MPU)或路由处理卡(route processor card),主控板1510对通信设备1500中各个组件的控制和管理,包括路由计算、设备管理、设备维护、协议处理功能。主控板1510包括:中央处理器1511和存储器1512。
接口板1530也称为线路接口单元卡(line processing unit,LPU)、线卡(linecard)或业务板。接口板1530用于提供各种业务接口并实现数据包的转发。业务接口包括而不限于以太网接口、POS(Packet over SONET/SDH)接口等,以太网接口例如是灵活以太网业务接口(Flexible Ethernet Clients,FlexE Clients)。接口板1530包括:中央处理器1531、网络处理器1532、转发表项存储器1534和物理接口卡(ph8sical interface card,PIC)1533。
接口板1530上的中央处理器1531用于对接口板1530进行控制管理并与主控板1510上的中央处理器1511进行通信。
网络处理器1532用于实现报文的转发处理。网络处理器1532的形态可以是转发芯片。具体而言,上行报文的处理包括:报文入接口的处理,转发表查找;下行报文的处理:转发表查找等等。
物理接口卡1533用于实现物理层的对接功能,原始的流量由此进入接口板1530,以及处理后的报文从该物理接口卡1533发出。物理接口卡1533包括至少一个物理接口,物理接口也称物理口,物理接口卡1533对应于系统架构中的FlexE物理接口。物理接口卡1533也称为子卡,可安装在接口板1530上,负责将光电信号转换为报文并对报文进行合法性检查后转发给网络处理器1532处理。在一些实施例中,接口板1530的中央处理器1531也可执行网络处理器1532的功能,比如基于通用CPU实现软件转发,从而物理接口卡1533中不需要网络处理器1532。
可选地,通信设备1500包括多个接口板,例如通信设备1500还包括接口板1540,接口板1540包括:中央处理器1541、网络处理器1542、转发表项存储器1544和物理接口卡1543。
可选地,通信设备1500还包括交换网板1520。交换网板1520也可以称为交换网板单元(switch fabric unit,SFU)。在通信设备有多个接口板1530的情况下,交换网板1520用于完成各接口板之间的数据交换。例如,接口板1530和接口板1540之间可以通过交换网板1520通信。
主控板1510和接口板1530耦合。例如。主控板1510、接口板1530和接口板1540,以及交换网板1520之间通过系统总线与系统背板相连实现互通。在一种可能的实现方式中,主控板1510和接口板1530之间建立进程间通信协议(inter-process communication,IPC)通道,主控板1510和接口板1530之间通过IPC通道进行通信。
在逻辑上,通信设备1500包括控制面和转发面,控制面包括主控板1510和中央处理器1531,转发面包括执行转发的各个组件,比如转发表项存储器1534、物理接口卡1533和网络处理器1532。控制面执行路由器、生成转发表、处理信令和协议报文、配置与维护设备的状态等功能,控制面将生成的转发表下发给转发面,在转发面,网络处理器1532基于控制面下发的转发表对物理接口卡1533收到的报文查表转发。控制面下发的转发表可以保存在转发表项存储器1534中。在一些实施例中,控制面和转发面可以完全分离,不在同一设备上。
如果通信设备1500被配置为流量采集装置120,中央处理器1511可以确定第一报文的目标性能指标的测量值匹配第一寄存器中的第一信息的值,并且,基于第一报文的目标性能指标的测量值更新第一寄存器中第二信息的值,和将第一寄存器中的第三信息的值加一。网络处理器1532可以触发物理接口卡1533接收第一报文。
应理解,流量采集装置800中的收发器802可以相当于通信设备1500中的物理接口卡1533或物理接口卡1543;流量采集装置800中的处理器802可以相当于通信设备1500中的中央处理器1511或中央处理器1531。流量采集装置600中的第一接收单元601可以相当于通信设备1500中的物理接口卡1533或物理接口卡1543;流量采集装置600中的第一确定单元602和第一更新单元603等可以相当于通信设备1500中的中央处理器1511或中央处理器1531。
应理解,控制装置900中的收发器902可以相当于通信设备1500中的物理接口卡1533或物理接口卡1543;控制装置900中的处理器902可以相当于通信设备1500中的中央处理器1511或中央处理器1531。控制装置700中的接收单元701和第一发送单元703等可以相当于通信设备1500中的物理接口卡1533或物理接口卡1543;控制装置700中的第一确定单元702可以相当于通信设备1500中的中央处理器1511或中央处理器1531。
应理解,本申请实施例中接口板1540上的操作与接口板1530的操作一致,为了简洁,不再赘述。应理解,本实施例的通信设备1500可对应于上述各个方法实施例中的流量采集装置或集成电路,该通信设备1500中的主控板1510、接口板1530和/或接口板1540可以实现上述各个方法实施例中的流量采集装置或控制装置中所具有的功能和/或所实施的各种步骤,为了简洁,在此不再赘述。
应理解,主控板可能有一块或多块,有多块的时候可以包括主用主控板和备用主控板。接口板可能有一块或多块,通信设备的数据处理能力越强,提供的接口板越多。接口板上的物理接口卡也可以有一块或多块。交换网板可能没有,也可能有一块或多块,有多块的时候可以共同实现负荷分担冗余备份。在集中式转发架构下,通信设备可以不需要交换网板,接口板承担整个系统的业务数据的处理功能。在分布式转发架构下,通信设备可以有至少一块交换网板,通过交换网板实现多块接口板之间的数据交换,提供大容量的数据交换和处理能力。所以,分布式架构的通信设备的数据接入和处理能力要大于集中式架构的设备。可选地,通信设备的形态也可以是只有一块板卡,即没有交换网板,接口板和主控板的功能集成在该一块板卡上,此时接口板上的中央处理器和主控板上的中央处理器在该一块板卡上可以合并为一个中央处理器,执行两者叠加后的功能,这种形态设备的数据交换和处理能力较低(例如,低端交换机或路由器等通信设备)。具体采用哪种架构,取决于具体的组网部署场景。
在一些可能的实施例中,上述各网络设备或通信设备可以实现为虚拟化设备。例如,虚拟化设备可以是运行有用于发送报文功能的程序的虚拟机(英文:Virtual Machine,VM),虚拟机部署在硬件设备上(例如,物理服务器)。虚拟机指通过软件模拟的具有完整硬件系统功能的、运行在一个完全隔离环境中的完整计算机系统。可以将虚拟机配置为图1中的各网络设备。例如,可以基于通用的物理服务器结合网络功能虚拟化(NetworkFunctions Virtualization,NFV)技术来实现各网络设备或通信设备。各网络设备或通信设备为虚拟主机、虚拟路由器或虚拟交换机。本领域技术人员通过阅读本申请即可结合NFV技术在通用物理服务器上虚拟出具有上述功能的各网络设备或通信设备,此处不再赘述。
应理解,上述各种产品形态的通信设备,分别具有上述方法实施例中各网络设备或通信设备的任意功能,此处不再赘述。
本申请实施例还提供了一种芯片,包括处理器和接口电路,接口电路,用于接收指令并传输至处理器;处理器,例如可以是本申请实施例中流量采集装置或控制装置的一种具体实现形式,可以用于执行上述流量监控方法。其中,所述处理器与存储器耦合,所述存储器用于存储程序或指令,当所述程序或指令被所述处理器执行时,使得该芯片系统实现上述任一方法实施例中的方法。
可选地,该芯片系统中的处理器可以为一个或多个。该处理器可以通过硬件实现也可以通过软件实现。当通过硬件实现时,该处理器可以是逻辑电路、集成电路等。当通过软件实现时,该处理器可以是一个通用处理器,通过读取存储器中存储的软件代码来实现。
可选地,该芯片系统中的存储器也可以为一个或多个。该存储器可以与处理器集成在一起,也可以和处理器分离设置,本申请并不限定。示例性的,存储器可以是非瞬时性处理器,例如只读存储器ROM,其可以与处理器集成在同一块芯片上,也可以分别设置在不同的芯片上,本申请对存储器的类型,以及存储器与处理器的设置方式不作具体限定。
示例性的,该芯片系统可以是现场可编程门阵列(field programmable gatearray,FPGA),可以是专用集成芯片(application specific integrated circuit,ASIC),还可以是系统芯片(system on chip,SoC),还可以是中央处理器(central processorunit,CPU),还可以是网络处理器(network processor,NP),还可以是数字信号处理电路(digital signal processor,DSP),还可以是微控制器(micro controller unit,MCU),还可以是可编程控制器(programmable logic device,PLD)或其他集成芯片。
本申请实施例还提供了一种计算机可读存储介质,包括指令或计算机程序,当其在计算机上运行时,使得计算机执行以上实施例提供的流量监控方法。
本申请实施例还提供了一种包含指令或计算机程序的计算机程序产品,当其在计算机上运行时,使得计算机执行以上实施例提供的流量监控方法。
本申请的说明书和权利要求书及上述附图中的术语“第一”、“第二”、“第三”、“第四”等(如果存在)是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的实施例能够以除了在这里图示或描述的内容以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统,装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
在本申请所提供的几个实施例中,应该理解到,所揭露的系统,装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,单元的划分,仅仅为一种逻辑业务划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本申请各个实施例中的各业务单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件业务单元的形式实现。
集成的单元如果以软件业务单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施例方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
本领域技术人员应该可以意识到,在上述一个或多个示例中,本发明所描述的业务可以用硬件、软件、固件或它们的任意组合来实现。当使用软件实现时,可以将这些业务存储在计算机可读介质中或者作为计算机可读介质上的一个或多个指令或代码进行传输。计算机可读介质包括计算机存储介质和通信介质,其中通信介质包括便于从一个地方向另一个地方传送计算机程序的任何介质。存储介质可以是通用或专用计算机能够存取的任何可用介质。
以上的具体实施方式,对本发明的目的、技术方案和有益效果进行了进一步详细说明,所应理解的是,以上仅为本发明的具体实施方式而已。
以上,以上实施例仅用以说明本申请的技术方案,而非对其限制;尽管参照前述实施例对本申请进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本申请各实施例技术方案的范围。
Claims (56)
1.一种流量监控方法,其特征在于,所述方法包括:
流量采集装置接收第一报文;
所述流量采集装置确定所述第一报文的目标性能指标的测量值匹配第一寄存器中的第一信息的值,所述第一寄存器还包括第二信息和第三信息,所述第一寄存器中的所述第一信息用于指示承载被监控报文的所述目标性能指标的测量值的数据桶的深度,所述第一寄存器中的所述第二信息用于指示匹配所述第一寄存器中的所述第一信息的值的被监控报文的所述目标性能指标的测量值的累加和,所述第一寄存器中的所述第三信息用于指示所述流量采集装置接收的报文中匹配所述第一寄存器中的所述第一信息的值的报文数量,所述第一寄存器中的所述第一信息的值基于从控制装置所接收的、与所述第一寄存器对应的所述第一信息的值更新的;
所述流量采集装置基于所述第一报文的所述目标性能指标的测量值更新所述第一寄存器中所述第二信息的值,和将所述第一寄存器中的所述第三信息的值加一;
所述流量采集装置向所述控制装置发送监控结果,所述监控结果包括根据所述第一寄存器中的所述第二信息的值和所述第三信息的值确定的内容,所述监控结果被所述控制装置用于确定所述第一寄存器对应的所述第一信息的值。
2.根据权利要求1所述方法,其特征在于,所述流量采集装置确定所述第一报文的目标性能指标的测量值匹配第一寄存器中的第一信息的值,包括:
所述流量采集装置确定所述第一报文的目标性能指标的测量值属于所述第一寄存器中所述第一信息的值对应的数值范围。
3.根据权利要求1所述的方法,其特征在于,所述流量采集装置确定所述第一报文的目标性能指标的测量值匹配第一寄存器中的第一信息的值,包括:
所述流量采集装置确定所述第一报文的目标性能指标的测量值与第一寄存器中的所述第一信息的值的差,小于所述第一报文的目标性能指标的测量值与其他寄存器中的所述第一信息的值的差。
4.根据权利要求1-3任一项所述的方法,其特征在于,所述流量采集装置基于所述第一报文的所述目标性能指标的测量值更新所述第一寄存器中所述第二信息的值,包括:
所述流量采集装置将所述第一报文的所述目标性能指标的测量值与更新前所述第一寄存器中所述第二信息的值相加,得到更新的所述第二信息的值;
所述流量采集装置利用所述更新的所述第二信息的值替换所述更新前所述第一寄存器中所述第二信息的值。
5.根据权利要求1-3任一项所述的方法,其特征在于,所述监控结果包括所述第一寄存器中所述第二信息的值和所述第一寄存器中所述第三信息的值。
6.根据权利要求1-3任一项所述的方法,其特征在于,所述监控结果包括所述第一寄存器对应的第四信息的值和所述第一寄存器中所述第三信息的值,其中,所述第四信息用于指示承载被监控报文的所述目标性能指标的测量值的平均值,所述第四信息的值为所述流量采集装置根据所述第一寄存器中所述第二信息的值和所述第三信息的值计算得到的。
7.根据权利要求1-3任一项所述的方法,其特征在于,所述流量采集装置向控制装置发送监控结果,包括:
所述流量采集装置周期性的向控制装置发送所述监控结果。
8.根据权利要求1-3任一项所述的方法,其特征在于,所述流量采集装置向控制装置发送监控结果,包括:
所述流量采集装置确定所述第一寄存器中所述第三信息的值大于第一阈值,则,向所述控制装置发送所述监控结果。
9.根据权利要求8所述的方法,其特征在于,所述第一阈值为预设阈值,或者,所述第一阈值为所述流量采集装置的所有寄存器中所述第三信息的值之和的预设比例。
10.根据权利要求1-3任一项所述的方法,其特征在于,所述流量采集装置向控制装置发送监控结果,包括:
所述流量采集装置确定所述流量采集装置的所有寄存器中所述第三信息的值之和大于第二阈值,则,向所述控制装置发送所述监控结果。
11.根据权利要求1-3任一项所述的方法,其特征在于,在所述流量采集装置向控制装置发送监控结果之前,所述方法还包括:
所述流量采集装置接收所述控制装置发送的查询请求,所述查询请求用于指示所述流量采集装置向所述控制装置发送所述监控结果。
12.根据权利要求1-3任一项所述的方法,其特征在于,所述方法还包括:
所述流量采集装置将所述第一寄存器中所述第二信息的值和所述第三信息的值清零。
13.根据权利要求1-3任一项所述的方法,其特征在于,所述方法还包括:
所述流量采集装置接收控制装置发送的所述第一寄存器对应的所述第一信息的值;
所述流量采集装置基于所接收的所述第一寄存器对应的所述第一信息的值更新所述第一寄存器中所述第一信息的值。
14.根据权利要求1-3任一项所述的方法,其特征在于,所述方法还包括:
所述流量采集装置接收第二报文;
所述流量采集装置确定所述流量采集装置中是否包括第二寄存器,所述第二寄存器包括所述第一信息、所述第二信息和所述第三信息,所述第二寄存器中的所述第二信息的值为零且所述第三信息的值为零;
响应于所述流量采集装置确定所述流量采集装置中包括所述第二寄存器,所述流量采集装置将所述第二寄存器中的所述第一信息的值更新为所述第二报文的所述目标性能指标的测量值,将所述第二寄存器中的所述第二信息的值更新为所述第二报文的所述目标性能指标的测量值,和将所述第二寄存器中的所述第三信息的值加一。
15.根据权利要求1-3任一项所述的方法,其特征在于,所述目标性能指标包括下述指标中的任意一种:
时延、报文长度、接收报文时间间隔或队列占用率。
16.根据权利要求1-3任一项所述的方法,其特征在于,
所述流量采集装置被包括在网络处理器NP芯片中。
17.一种流量监控方法,其特征在于,包括:
控制装置接收流量采集装置发送的多个监控结果,所述多个监控结果中的每个监控结果是所述流量采集装置根据所述流量采集装置包括的寄存器中的第二信息的值和第三信息的值确定的,所述寄存器还包括第一信息,所述第一信息用于指示承载被监控报文的目标性能指标的测量值的数据桶的深度,所述第二信息用于指示匹配寄存器中的所述第一信息的值的被监控报文的所述目标性能指标的测量值的累加和,所述第三信息用于指示所述流量采集装置接收的报文中匹配寄存器中的所述第一信息的值的报文数量;
所述控制装置根据所述多个监控结果,确定所述第一信息的多个值,所述第一信息的多个值与所述流量采集装置中的多个寄存器一一对应;
所述控制装置向所述流量采集装置发送所述第一信息的多个值,所述第一信息的多个值被用于更新所述流量采集装置中的所述多个寄存器中的所述第一信息的值。
18.根据权利要求17所述的方法,其特征在于,所述控制装置接收流量采集装置发送的多个监控结果,包括:
所述控制装置接收所述流量采集装置发送的第一寄存器对应的第一监控结果,所述第一监控结果包括:所述第一寄存器对应的第四信息的值和第三信息的值,其中,所述第四信息的值为所述流量采集装置基于所述第一寄存器中第二信息的值和所述第一寄存器中所述第三信息的值计算得到的,所述第四信息用于指示承载被监控报文的所述目标性能指标的测量值的平均值。
19.根据权利要求17所述的方法,其特征在于,所述控制装置接收流量采集装置发送的多个监控结果,包括:
所述控制装置接收所述流量采集装置发送的第一寄存器对应的第一监控结果,所述第一监控结果包括:所述第一寄存器中第二信息的值和所述第一寄存器中第三信息的值。
20.根据权利要求17-19任一项所述的方法,其特征在于,所述控制装置根据所述多个监控结果,确定所述第一信息的多个值,包括:
所述控制装置根据N个监控结果以及历史监控数据,得到N个更新的监控数据,所述N为正整数,所述N为所述流量采集装置包括的寄存器的个数;
所述控制装置确定所述N个更新的监控数据中,第i寄存器对应的第i个更新的监控数据,其中,i为大于或等于1且不大于N的整数;
所述控制装置将所述第i个更新的监控数据中所述第一信息的值记作所述第i寄存器对应的所述第一信息的值。
21.根据权利要求17-19任一项所述的方法,其特征在于,所述方法还包括:
所述控制装置根据所述多个监控结果以及历史监控数据,更新所述历史监控数据。
22.根据权利要求17-19任一项所述的方法,其特征在于,所述方法还包括:
所述控制装置基于当前保存的监控数据确定所述目标性能指标的概率分布。
23.根据权利要求17-19任一项所述的方法,其特征在于,在所述控制装置接收流量采集装置发送的多个监控结果之前,所述方法还包括:
所述控制装置向所述流量采集装置发送查询请求,所述查询请求用于指示所述流量采集装置向所述控制装置发送监控结果。
24.根据权利要求23所述的方法,其特征在于,所述控制装置向所述流量采集装置发送查询请求,包括:
所述控制装置周期性的向所述流量采集装置发送查询请求。
25.根据权利要求17-19任一项所述的方法,其特征在于,所述目标性能指标包括下述指标中的任意一种:
时延、报文长度、接收报文时间间隔或队列占用率。
26.根据权利要求17-19任一项所述的方法,其特征在于,
所述流量采集装置被包括在网络处理器NP芯片中。
27.一种流量采集装置,其特征在于,包括:处理器和存储器,所述存储器用于存储程序,所述处理器用于从存储器中调用并运行所述程序以执行权利要求1至16中任一项所述的方法。
28.一种控制装置,其特征在于,包括:处理器和存储器,所述存储器用于存储程序,所述处理器用于从存储器中调用并运行所述程序以执行权利要求17至26中任一项所述的方法。
29.一种集成电路,其特征在于,所述集成电路包括控制电路和接口电路,其中:
所述接口电路,用于接收第一报文;
所述控制电路,用于确定所述第一报文的目标性能指标的测量值匹配第一寄存器中的第一信息的值,所述第一寄存器还包括第二信息和第三信息,所述第一寄存器中的所述第一信息用于指示承载被监控报文的所述目标性能指标的测量值的数据桶的深度,所述第一寄存器中的所述第二信息用于指示匹配所述第一寄存器中的所述第一信息的值的被监控报文的所述目标性能指标的测量值的累加和,所述第一寄存器中的所述第三信息用于指示所述集成电路接收的报文中匹配所述第一寄存器中的所述第一信息的值的报文数量,所述第一寄存器中的所述第一信息的值基于从控制装置所接收的、与所述第一寄存器对应的所述第一信息的值更新的;
所述控制电路,还用于基于所述第一报文的所述目标性能指标的测量值更新所述第一寄存器中所述第二信息的值,和将所述第一寄存器中的所述第三信息的值加一;
所述接口电路,还用于向所述控制装置发送监控结果,所述监控结果包括根据所述第一寄存器中的所述第二信息的值和所述第三信息的值确定的内容,所述监控结果被所述控制装置用于确定所述第一寄存器对应的所述第一信息的值。
30.根据权利要求29所述的集成电路,其特征在于,所述控制电路,具体用于:
确定所述第一报文的目标性能指标的测量值属于所述第一寄存器中所述第一信息的值对应的数值范围。
31.根据权利要求29所述的集成电路,其特征在于,所述控制电路,具体用于:
确定所述第一报文的目标性能指标的测量值与第一寄存器中的所述第一信息的值的差,小于所述第一报文的目标性能指标的测量值与其他寄存器中的所述第一信息的值的差。
32.根据权利要求29-31任一项所述的集成电路,其特征在于,所述控制电路,具体用于:
将所述第一报文的所述目标性能指标的测量值与更新前所述第一寄存器中所述第二信息的值相加,得到更新的所述第二信息的值;
利用所述更新的所述第二信息的值替换所述更新前所述第一寄存器中所述第二信息的值。
33.根据权利要求29-31任一项所述的集成电路,其特征在于,
所述监控结果包括所述第一寄存器中所述第二信息的值和所述第一寄存器中所述第三信息的值。
34.根据权利要求29-31任一项所述的集成电路,其特征在于,
所述监控结果包括所述第一寄存器对应的第四信息的值和所述第一寄存器中所述第三信息的值,其中,所述第四信息用于指示承载被监控报文的所述目标性能指标的测量值的平均值,所述第四信息的值为所述集成电路根据所述第一寄存器中所述第二信息的值和所述第三信息的值计算得到的。
35.根据权利要求29-31任一项所述的集成电路,其特征在于,所述接口电路,具体用于:
周期性的向控制装置发送所述监控结果。
36.根据权利要求29-31任一项所述的集成电路,其特征在于,所述接口电路,具体用于:
确定所述第一寄存器中所述第三信息的值大于第一阈值,则,向所述控制装置发送所述监控结果。
37.根据权利要求36所述的集成电路,其特征在于,所述第一阈值为预设阈值,或者,所述第一阈值为所述集成电路的所有寄存器中所述第三信息的值之和的预设比例。
38.根据权利要求29-31任一项所述的集成电路,其特征在于,所述接口电路,具体用于:
确定所述集成电路的所有寄存器中所述第三信息的值之和大于第二阈值,则,向所述控制装置发送所述监控结果。
39.根据权利要求29-31任一项所述的集成电路,其特征在于,
所述接口电路,还用于在向所述控制装置发送监控结果之前,接收所述控制装置发送的查询请求,所述查询请求用于指示所述集成电路向所述控制装置发送所述监控结果。
40.根据权利要求29-31任一项所述的集成电路,其特征在于,
所述控制电路,还用于将所述第一寄存器中所述第二信息的值和所述第三信息的值清零。
41.根据权利要求29-31任一项所述的集成电路,其特征在于,
所述接口电路,还用于接收控制装置发送的所述第一寄存器对应的所述第一信息的值;
所述控制电路,还用于基于所接收的所述第一寄存器对应的所述第一信息的值更新所述第一寄存器中所述第一信息的值。
42.根据权利要求29-31任一项所述的集成电路,其特征在于,
所述接口电路,还用于接收第二报文;
所述控制电路,还用于确定所述集成电路中是否包括第二寄存器,所述第二寄存器包括所述第一信息、所述第二信息和所述第三信息,所述第二寄存器中的所述第二信息的值为零且所述第三信息的值为零;
所述控制电路,还用于响应于确定所述集成电路中包括所述第二寄存器,将所述第二寄存器中的所述第一信息的值更新为所述第二报文的所述目标性能指标的测量值,将所述第二寄存器中的所述第二信息的值更新为所述第二报文的所述目标性能指标的测量值,和将所述第二寄存器中的所述第三信息的值加一。
43.根据权利要求29-31任一项所述的集成电路,其特征在于,所述目标性能指标包括下述指标中的任意一种:
时延、报文长度、接收报文时间间隔或队列占用率。
44.根据权利要求29-31任一项所述的集成电路,其特征在于,
所述集成电路被包括在网络处理器NP芯片中。
45.一种集成电路,其特征在于,所述集成电路包括接口电路和控制电路,其中:
所述接口电路,用于接收流量采集装置发送的多个监控结果,所述多个监控结果中的每个监控结果是所述流量采集装置根据所述流量采集装置包括的寄存器中的第二信息的值和第三信息的值确定的,所述寄存器还包括第一信息,所述第一信息用于指示承载被监控报文的目标性能指标的测量值的数据桶的深度,所述第二信息用于指示匹配寄存器中的所述第一信息的值的被监控报文的所述目标性能指标的测量值的累加和,所述第三信息用于指示所述流量采集装置接收的报文中匹配寄存器中的所述第一信息的值的报文数量;
所述控制电路,用于根据所述多个监控结果,确定所述第一信息的多个值,所述第一信息的多个值与所述流量采集装置中的多个寄存器一一对应;
所述接口电路,还用于向所述流量采集装置发送所述第一信息的多个值,所述第一信息的多个值被用于更新所述流量采集装置中的所述多个寄存器中的所述第一信息的值。
46.根据权利要求45所述的集成电路,其特征在于,所述接口电路,具体用于:
接收所述流量采集装置发送的第一寄存器对应的第一监控结果,所述第一监控结果包括:所述第一寄存器对应的第四信息的值和第三信息的值,其中,所述第四信息的值为所述流量采集装置基于所述第一寄存器中第二信息的值和所述第一寄存器中所述第三信息的值计算得到的,所述第四信息用于指示承载被监控报文的所述目标性能指标的测量值的平均值。
47.根据权利要求45所述的集成电路,其特征在于,所述接口电路,具体用于:
接收所述流量采集装置发送的第一寄存器对应的第一监控结果,所述第一监控结果包括:所述第一寄存器中第二信息的值和所述第一寄存器中第三信息的值。
48.根据权利要求45-47任一项所述的集成电路,其特征在于,所述控制电路,具体用于:
根据N个监控结果以及历史监控数据,得到N个更新的监控数据,所述N为正整数,所述N为所述流量采集装置包括的寄存器的个数;
确定所述N个更新的监控数据中,第i寄存器对应的第i个更新的监控数据,其中,i为大于或等于1且不大于N的整数;
将所述第i个更新的监控数据中所述第一信息的值记作所述第i寄存器对应的所述第一信息的值。
49.根据权利要求45-47任一项所述的集成电路,其特征在于,
所述控制电路,还用于根据所述多个监控结果以及历史监控数据,更新所述历史监控数据。
50.根据权利要求45-47任一项所述的集成电路,其特征在于,
所述控制电路,还用于基于当前保存的监控数据确定所述目标性能指标的概率分布。
51.根据权利要求45-47任一项所述的集成电路,其特征在于,
所述接口电路,用于在接收流量采集装置发送的多个监控结果之前,向所述流量采集装置发送查询请求,所述查询请求用于指示所述流量采集装置向所述集成电路发送监控结果。
52.根据权利要求51所述的集成电路,其特征在于,所述接口电路,具体用于:
周期性的向所述流量采集装置发送查询请求。
53.根据权利要求45-47任一项所述的集成电路,其特征在于,所述目标性能指标包括下述指标中的任意一种:
时延、报文长度、接收报文时间间隔或队列占用率。
54.根据权利要求45-47任一项所述的集成电路,其特征在于,
所述流量采集装置被包括在网络处理器NP芯片中。
55.一种网络设备,其特征在于,所述网络设备包括第一装置和第二装置,其中:
所述第一装置,包括以上权利要求27所述的流量采集装置,或者,以上权利要求29-44任一项所述的集成电路;
所述第二装置,包括以上权利要求28所述的控制装置,或者,以上权利要求45-54任一项所述的集成电路。
56.一种网络系统,其特征在于,所述网络系统包括第一网络设备和第二网络设备,其中:
所述第一网络设备,包括以上权利要求27所述的流量采集装置,或者,以上权利要求29-44任一项所述的集成电路;
所述第二网络设备,包括以上权利要求28所述的控制装置,或者,以上权利要求45-54任一项所述的集成电路。
Priority Applications (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
EP21859544.5A EP4195609A4 (en) | 2020-08-26 | 2021-03-19 | TRAFFIC MONITORING METHOD AND APPARATUS, INTEGRATED CIRCUIT, NETWORK DEVICE, AND NETWORK SYSTEM |
PCT/CN2021/081656 WO2022041695A1 (zh) | 2020-08-26 | 2021-03-19 | 流量监控方法、装置、集成电路、网络设备及网络系统 |
US18/173,270 US20230198873A1 (en) | 2020-08-26 | 2023-02-23 | Traffic monitoring method, apparatus, integrated circuit, network device, and network system |
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2020108736343 | 2020-08-26 | ||
CN202010873634 | 2020-08-26 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN114205254A CN114205254A (zh) | 2022-03-18 |
CN114205254B true CN114205254B (zh) | 2023-12-15 |
Family
ID=80360695
Family Applications (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202011233448.XA Active CN114205254B (zh) | 2020-08-26 | 2020-11-06 | 流量监控方法、装置、集成电路、网络设备及网络系统 |
CN202011235536.3A Active CN114124731B (zh) | 2020-08-26 | 2020-11-06 | 流量监控方法、装置、集成电路及网络设备 |
Family Applications After (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202011235536.3A Active CN114124731B (zh) | 2020-08-26 | 2020-11-06 | 流量监控方法、装置、集成电路及网络设备 |
Country Status (1)
Country | Link |
---|---|
CN (2) | CN114205254B (zh) |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101803313A (zh) * | 2007-09-19 | 2010-08-11 | 英国电讯有限公司 | 用于提供拥塞信息的方法和装置 |
US8751757B1 (en) * | 2011-12-30 | 2014-06-10 | Emc Corporation | Acquisition and kernel memory storage of I/O metrics |
CN106789450A (zh) * | 2017-03-01 | 2017-05-31 | 杭州迪普科技股份有限公司 | 一种报文的特征统计方法及装置 |
CN110768856A (zh) * | 2018-07-27 | 2020-02-07 | 华为技术有限公司 | 网络流测量的方法、网络测量设备以及控制面设备 |
Family Cites Families (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7289447B2 (en) * | 2003-10-21 | 2007-10-30 | Comcast Cable Holdings, Llc | Method and packet-level device for traffic regulation in a data network |
CN101741739B (zh) * | 2009-12-01 | 2012-06-13 | 中兴通讯股份有限公司 | 一种交换设备出、入端口报文统计的方法和装置 |
CN104283699A (zh) * | 2013-07-01 | 2015-01-14 | 中兴通讯股份有限公司 | 业务类型确定方法和装置 |
US20170048924A1 (en) * | 2015-08-10 | 2017-02-16 | Qualcomm Incorporated | Multiple broadband subscription sharing |
US10001943B2 (en) * | 2015-11-06 | 2018-06-19 | HomeAway.com, Inc. | Data stream processor and method to throttle consumption of message data in a distributed computing system |
US10514997B2 (en) * | 2016-09-27 | 2019-12-24 | Eaton Intelligent Power Limited | Multi-producer single consumer lock-free queues with producer reference counting |
CN109962832B (zh) * | 2017-12-26 | 2022-06-14 | 华为技术有限公司 | 报文处理的方法和装置 |
CN110087261B (zh) * | 2019-04-28 | 2020-11-06 | 电子科技大学 | 一种基于OpenWrt的企业级无线局域网流量控制方法 |
-
2020
- 2020-11-06 CN CN202011233448.XA patent/CN114205254B/zh active Active
- 2020-11-06 CN CN202011235536.3A patent/CN114124731B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101803313A (zh) * | 2007-09-19 | 2010-08-11 | 英国电讯有限公司 | 用于提供拥塞信息的方法和装置 |
US8751757B1 (en) * | 2011-12-30 | 2014-06-10 | Emc Corporation | Acquisition and kernel memory storage of I/O metrics |
CN106789450A (zh) * | 2017-03-01 | 2017-05-31 | 杭州迪普科技股份有限公司 | 一种报文的特征统计方法及装置 |
CN110768856A (zh) * | 2018-07-27 | 2020-02-07 | 华为技术有限公司 | 网络流测量的方法、网络测量设备以及控制面设备 |
Non-Patent Citations (1)
Title |
---|
云数据库中等宽直方图的分布式并行构造方法;王阳;钟勇;周渭博;杨观赐;;工程科学与技术(第02期);全文 * |
Also Published As
Publication number | Publication date |
---|---|
CN114205254A (zh) | 2022-03-18 |
CN114124731B (zh) | 2023-03-31 |
CN114124731A (zh) | 2022-03-01 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP7039685B2 (ja) | トラフィック測定方法、デバイス、およびシステム | |
US7577736B1 (en) | Network accounting statistics collection | |
US10333724B2 (en) | Method and system for low-overhead latency profiling | |
US20220038374A1 (en) | Microburst detection and management | |
US20230017175A1 (en) | Adaptive in-band network telemetry for full network coverage | |
US11050649B2 (en) | Delay measurement method of network node device, apparatus, and network node device | |
CN105580318A (zh) | 用于网络流的采样测量的端口镜像 | |
EP3979577B1 (en) | Queue congestion control method, device and storage medium | |
US20140115183A1 (en) | Information processing method, recording medium, and information processing apparatus | |
CN113014508A (zh) | 一种报文处理方法及装置 | |
CN112565102A (zh) | 一种负载均衡方法、装置、设备及介质 | |
US8780723B2 (en) | Communication system and communication apparatus | |
CN116566907A (zh) | 一种网络拥塞控制方法及相关装置 | |
CN114205254B (zh) | 流量监控方法、装置、集成电路、网络设备及网络系统 | |
US20180048579A1 (en) | A sampling node and a method performed thereby for handling flows through a sdn between client(s) and origin server(s) of a communication network | |
EP4195609A1 (en) | Traffic monitoring method and apparatus, integrated circuit, network device, and network system | |
US11777826B2 (en) | Traffic monitoring method and apparatus, integrated circuit, and network device | |
CN114157595B (zh) | 一种通信系统、数据处理方法以及相关设备 | |
CN112152867B (zh) | 流量矩阵测量方法、系统以及存储介质 | |
CN115277424B (zh) | 软件定义网络中的决策下发方法、装置及存储介质 | |
WO2023155904A1 (zh) | 一种网络设备运行状态的调整方法、装置及相关设备 | |
CN116032852B (zh) | 基于会话的流量控制方法、装置、系统、设备及存储介质 | |
WO2023280004A1 (zh) | 一种网络配置方法、设备和系统 | |
CN115733642A (zh) | 流量特征提取方法及装置 | |
CN116668210A (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 |