端口状态参数获取方法、装置及传输设备、存储介质与流程

文档序号:17002457发布日期:2019-03-02 01:52阅读:227来源:国知局
端口状态参数获取方法、装置及传输设备、存储介质与流程

本发明涉及通信领域,尤其涉及一种端口状态参数获取方法、装置及传输设备、存储介质。



背景技术:

随着数据业务、专线业务和带宽业务的发展,承载在ptn(packetopticaltransportnetwork,分组传送网络)上的业务量日益增大,给网络规划以及维护管理也带来了重大挑战。网络规划及网络维护管理都需要基于网络链路上端口的流量数据进行,因此,为了保证网络规划与网络维护的品质,让网管人员根据端口流量实时进行流量控制和流量规划,避免端口流量拥塞导致业务异常故障,就要求网络链路上端口流量统计能够尽可能地准确。

目前的端口流量统计方案基本上就是周期性地统计传输设备上的芯片数据,并根据采集到的数据计算出端口流量与传输速率。但是,如果在传输设备的cpu比较忙时,统计性能任务的优先级就会降低,因此时常会出现数据统计任务进行期间被其他高优先级任务打断,导致统计获得的数据不完整的情况。甚至,当传输设备长时间忙于执行高优先级任务时,还会导致低优先级任务得不到轮询,从而导致数据结果始终为0的情况发生。另外,由于芯片本身的缺陷,可能会出现芯片统计周期与传输设备上层应用统计周期不同步的情况,这种情况也会导致统计数据不正常。

可以看出上述两种导致统计数据异常的情况,并不是由网络状态或者传输设备本身故障所引起的,而是因为数据统计或数据采集本身不准确而导致的。换言之,传输设备本身的流量与传输速率是正常的,但数据采集过程本身的不准确导致了数据采集结果异常。所以这种异常的数据采集结果不应当作为网络规划与维护的依据,但是现有的端口流量统计方案中,会直接将数据采集结果作为网络规划与维护的依据,进而导致网络规划与维护的品质差,不符合实际情况。



技术实现要素:

本发明实施例提供的端口状态参数获取方法、装置及传输设备、存储介质,主要解决的技术问题是:提供一种新的端口状态参数获取方案,用以解决现有方案中直接读取传输设备芯片上数据来计算端口状态参数而导致后续网络规划与网络维护品质差,不符合实际情况的问题。

为解决上述技术问题,本发明实施例提供一种端口状态参数获取方法,包括:

对传输设备端口的传输性能数据进行采集;

确定当前采集到的传输性能数据异常,所述异常由数据采集本身不准确而导致;

对所述端口的在前状态参数进行优化处理获取所述端口当前的状态参数,所述状态参数包括所述端口的实际流量和/或传输速率。

本发明实施例还提供一种端口状态参数获取装置,包括:

数据采集模块,用于对传输设备端口的传输性能数据进行采集;

异常判定模块,用于确定当前采集到的传输性能数据异常,所述异常由数据采集本身不准确而导致;

状态获取模块,用于对所述端口的在前状态参数进行优化处理获取所述端口当前的状态参数,所述状态参数包括所述端口的实际流量和/或传输速率。

本发明实施例还提供一种传输设备,所述传输设备包括处理器、存储器及通信总线;

所述通信总线用于实现处理器和存储器之间的连接通信;

所述处理器用于执行存储器中存储的一个或者多个程序,以实现如上所述的端口状态参数获取方法的步骤。

本发明实施例还提供一种存储介质,所述存储介质存储有一个或者多个程序,所述一个或者多个程序可被一个或者多个处理器执行,以实现如上所述的端口状态参数获取方法的步骤。

本发明的有益效果是:

本发明实施例提供一种端口状态参数获取方法、装置及传输设备、存储介质,在该端口状态参数获取方法中,通过对传输设备端口的传输性能数据进行采集,然后在确定当前采集到的传输性能数据出现因数据采集本身不准确而导致的异常时,对该端口的在前状态参数进行优化处理以获取端口当前的状态参数。由于本发明实施例中在确定传输性能数据异常是由数据采集结果本身不准确而导致时,并不会直接根据数据采集结果计算端口当前的状态参数,而是会根据该端口的在前状态参数进行优化处理,从而获得该端口当前的状态参数。所以,这种方案能够避免数据采集结果本身不准确而致使端口状态参数不准确的问题,进而避免这种不准确的端口状态参数影响网络规划或网络维护品质,使得网络规划或网络维护的结果与实际网络情况相契合,为用网用户提供良好的用户体验。

本发明其他特征和相应的有益效果在说明书的后面部分进行阐述说明,且应当理解,至少部分有益效果从本发明说明书中的记载变的显而易见。

附图说明

图1为本发明实施例一提供的端口状态参数获取方法的一种流程图;

图2为本发明实施例一提供的对端口的在前状态参数进行优化处理获取端口当前状态参数的一种流程图;

图3为本发明实施例二提供的端口状态参数获取方法的一种流程图;

图4为本发明实施例二提供的对端口的在前状态参数进行优化处理获取端口当前状态参数的一种流程图;

图5为本发明实施例三提供的端口状态参数获取装置的一种结构示意图;

图6为本发明实施例五提供的传输设备的一种硬件结构示意图;

图7为本发明实施例五提供的端口状态参数获取方法的一种流程图。

具体实施方式

为了使本发明的目的、技术方案及优点更加清楚明白,下面通过具体实施方式结合附图对本发明实施例作进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。

实施例一:

为了解决现有技术中直接根据对传输设备中芯片的数据采集结果计算端口状态参数的方案中,会因为数据采集本身不准确而导致端口的状态参数不准确,进而导致根据该端口状态参数进行的网络规划与维护的品质不高,不符合实际情况的问题,本实施例提供一种端口状态参数获取方法,请参见图1示出的端口状态参数获取方法的流程图:

s102、对传输设备端口的传输性能数据进行采集。

本实施例中,端口状态参数获取装置对传输设备端口的传输性能数据进行采集,可以采用周期性数据采集的方式:当数据采集周期到达时,端口状态参数获取装置对端口的传输性能数据进行采集。传输性能数据可以包括接收方向上的传输总帧数和传输总字节数,也可以包括发送方向上的传输总帧数和传输总字节数,当然,端口状态参数获取装置还可以同时采集端口发送方向与接收方向上的传输总帧数和传输总字节数。毫无疑义的是,对于一个端口来说,接收方向与发送方向的状态参数并没有直接的关联关系,因此,在绝大多数情况下,针对同一个端口,端口状态参数获取装置是分别对发送方向和接收方向上的状态参数进行获取,所以,针对发送方向各接收方向的传输性能数据,端口状态参数获取装置也可以分别获取。

本实施例中所说的端口可以是以太网端口,不过,可以理解的是,除了以太网端口以外,还可以是承担了数据传输任务的其他类型的端口。

s104、确定当前采集到的传输性能数据异常。

当采集到端口的传输性能数据之后,端口状态参数获取装置可以根据数据采集情况确定当前采集到的传输性能数据是否异常。值得注意的是,本实施例中所指的异常是由数据采集本身不准确而引起的。所以,端口状态参数获取装置确定当前采集到的传输性能数据是否异常实际上也就是判断针对传输性能数据的采集是否准确。换言之,端口状态参数获取装置在确定当前采集到的传输性能数据异常时,会排除因真实网络状况等引起的端口传输性能数据异常情况。例如,如果以太网端口当前的传输性能数据与正常水平相差甚远,但这是由于数据采集时刻的网络状态差等原因引起的,则这不属于本实施例中所谓的异常情况;如果采集到的传输性能数据与正常水平相差甚远,但这是由于数据采集不准确造成的,也就是说,采集到的传输性能数据并不能表征以太网端口当前的实际情况,则这属于本实施例中的异常情况。

在前面已经介绍过,造成数据采集结果异常的可能有这样两方面的原因:一、数据采集任务被其他高优先级任务抢占,导致数据采集结果不全面、不准确;二、端口状态参数获取装置的数据采集周期与端口arm芯片的统计周期不同步。当然,这里只是列出了比较典型、比较主要的两个原因,除了上述两方面的原因以外,还可以包括其他原因。

在本实施例中,数据采集情况包括了对传输性能数据的采集过程和采集结果,所以,端口状态参数获取装置根据数据采集情况确定采集到的传输性能数据异常时至少可以包括这样两方面的含义:第一,端口状态参数获取装置根据传输性能数据的采集结果确定当前的数据采集本身不准确;第二,端口状态参数获取装置根据传输性能数据的采集过程确定当前的数据采集本身不准确。

针对上述第一方面,端口状态参数获取装置根据对传输性能数据的采集结果判定出传输性能数据异常,例如,端口状态参数获取装置确定采集到的传输性能数据为异常值,且根据在前数据采集情况确定传输性能数据为异常值的连续累计次数已达到预设阈值。这里所述的“在前数据采集情况”指的是此次数据采集之前的数据采集情况。假定当前是第m次进行传输性能数据的采集,则在前数据采集情况可能是第1次至第m-1次数据采集中的一次或多次的情况。

在本实施例的一种实施例中,当端口状态参数获取装置采集到传输性能数据之后,会判定采集到的传输性能数据是否是异常值,如果传输性能数据是异常值,则会对表征连续出现异常值的连续累计次数进行增加。如果传输性能数据不是异常值,则将当前的连续累计次数清零。例如,当前是第5次进行传输性能数据的采集,在这之前,第3次与第4次数据采集结果中传输性能数据均为异常值,则在进行第5次传输性能数据采集之前,连续累计次数的值为“2”。若第5次的采集结果表征传输性能数据异常,则连续累计次数将会再增加1变成“3”。如果后续又对端口进行了第6次传输性能数据采集,而传输性能数据的值并不是异常值,则在第6次数据采集之后,连续累计次数值将变成“0”。

根据上述介绍可知,端口状态参数获取装置在根据数据采集结果判定传输性能数据异常时,需要满足这样两个条件:首先,当前的数据采集结果中传输性能数据为异常值。传输性能数据包括接收和/或发送方向上的传输总帧数和传输总字节数,只要传输总帧数和传输总字节数中的任意一个的值为异常值,则端口状态参数获取装置可以认定传输性能数据为异常值。在本实施例的一个示例当中,异常值为0,则只要传输总帧数与传输总字节数中的任意一个的值为0,则可以认定传输性能数据的值为异常值。在当前采集所得的传输性能数据满足为异常值的条件的基础上,端口状态参数获取装置还需要根据在前数据采集情况确定传输性能数据为异常值的连续累计次数是否已经达到了预设阈值。

例如,假定预设阈值的大小为3,则针对上述示例,在端口状态参数获取装置进行第5次传输性能数据采集后,数据采集结果就已经同时满足了上述两个条件,因此,端口状态参数获取装置可以判定当前采集到的传输性能数据受数据采集本身不准确的影响而出现了异常。

s106、对端口的在前状态参数进行优化处理获取端口当前的状态参数。

当端口状态参数获取装置根据数据采集结果或数据采集过程确定当前采集到的传输性能数据受数据采集本身的影响而出现了异常时,端口状态参数获取装置在计算端口当前的状态参数时,可以根据在前状态参数进行优化处理以获取端口当前的状态参数。利用在前状态参数进行优化处理后所得的当前的状态参数,相对于直接根据异常传输性能数据计算获得的状态参数而言,更加接近端口当前的真实情况,这样可以排除直接根据异常传输性能数据计算端口状态参数所导致的不准确的问题。

针对根据数据采集结果确定传输性能数据异常的情景,端口状态参数获取装置在获取端口当前状态参数,例如端口当前实际流量时,可以根据在前数据采集过程中获得的端口实际流量进行优化处理,从而获得本次数据采集对应的端口实际流量,如图2所示:

s202、获取第m-n次至第m-1次传输性能数据采集中的至少一个所对应的实际流量。

假定,此次数据采集是第m次对端口的传输性能数据进行采集,则首先,端口状态参数获取装置获取此次数据采集之前第m-1至第m-n次数据采集所对应的实际流量。其中,n的值大于等于1。可以理解的是,端口状态参数获取的数据可以是第m-1至第m-n次数据采集中一个或多个所对应的实际流量。

s204、采用平滑算法根据获取到的在前实际流量计算得到端口当前的实际流量。

在本实施例的一些示例当中,端口状态参数获取装置可以仅采用与本次数据采集时间最接近一个或一个以上的在前实际流量来根据平滑算法做优化处理,从而得到本次数据采集时的端口实际流量。但在另一些示例当中,端口状态参数获取装置也可以获取时间离本次数据采集较远的一个或多个在前实际流量。继续假定本次数据采集是第5次,如果第5次数据采集所采集到的传输性能数据异常,则端口状态参数获取装置可以根据第4次与第3次数据采集所对应的端口实际流量来确定端口当前的实际流量,也可以根据第1次和/或第2次的实际流量来平滑计算,得到当前的实际流量。

本实施例中不限定选择在前实际流量的个数,其可以由网关人员自定义设置。不过就理论而言,在采用平滑算法对在前实际流量进行优化处理以获得端口当前的实际流量时,选择的在前实际流量越多,计算结果跟实际情况的契合程度也就越高。

应当理解的是,本实施例中端口状态参数获取装置获取的在前实际流量应当是能够尽可能接近端口在对应时刻真实情况的数据。也就是说,参与平滑优化处理的在前实际流量并不一定是根据数据采集结果计算出来的,也有可能是根据之前的在前实际端口流量优化处理得到的。例如,假定当前是第5次进行传输性能数据采集,端口状态参数获取装置根据采集结果确定传输性能数据异常后,其可以结合第4次至第1次数据采集所对应的各实际流量中的一个或多个进行优化处理得到第5次的数据采集时端口的实际流量。假定端口状态参数获取装置利用的是第3次数据采集对应的实际流量和第4次数据采集所对应的实际流量来优化计算得到第5次数据采集对应的实际流量,但第3次数据采集所对应的实际流量实际上也可能是根据第1次数据采集和第2次数据采集所对应的实际流量优化计算得到的。因为通过优化处理所得的第3次数据采集时刻的端口实际流量,比根据第3次数据采集所得的传输性能数据所计算出来的端口流量值更能反映在进行第3次数据采集时端口流量的真实情况。同样地,如果在后续过程中需要将第5次数据采集所对应的实际流量作为在前实际流量,以计算对应时刻的端口实际流量,则其选择的第5次数据采集所对应的实际流量也应当是通过平滑算法进行优化处理得到的,而不是根据第5次数据采集所得的异常传输性能数据直接计算出来的。

虽然在前述示例当中并未直接说明,不过应当明白的是,每次确定出当前端口的实际流量之后,应当将该实际流量值同对应的数据采集次数的序号进行关联存储,以便后续需要是提取使用。

本实施例提供的端口状态参数获取方法,在对端口的传输性能数据进行采集之后,会根据数据采集结果或数据采集过程确定当前采集到的传输性能数据是否受到了数据采集本身不准确的影响。如果确定因数据采集本身不准确而导致数据采集结果不准确,则不会直接根据数据采集结果确定端口当前的状态参数,而是结合该端口的在前状态参数,利用平滑算法优化计算得到更贴合实际情形的状态参数,从而规避异常传输性能数据对端口状态参数计算的负面影响,提升端口状态参数的准确性。

实施例二:

本实施例将在实施例一的基础上,继续对本发明中的端口状态参数获取方法进行介绍,请参见图3示出的流程图:

s302、端口状态参数获取装置对传输设备端口的传输性能数据进行采集。

在本实施例中,端口状态参数获取装置周期性地对传输设备端口的传输性能数据进行采集。假定数据采集周期的周期为1s,也就是说,每1s内,端口状态参数获取装置就会对端口的传输性能数据进行一次采集。在1分钟中,有60个数据采集周期,所以,端口状态参数获取装置会对端口进行60次的传输性能数据采集。

由于端口状态参数获取装置判定采集到的传输性能数据是否异常时,可以根据数据采集过程进行判定,也就是实施例一中提及的第二方面。所以,为了便于端口状态参数获取装置确定采集到的传输性能数据是否受到数据采集不准确的影响,本实施例中,端口状态参数获取装置会记录下本次传输性能数据采集的起止时刻,也即,在开始传输性能数据采集时,端口状态参数获取装置会记录下数据采集的开始时刻;在传输性能数据采集完成时,端口状态参数获取装置又会记录下数据采集的结束时刻。

s304、端口状态参数获取装置判断采集到的传输性能数据是否异常。

在本实施例中,主要介绍端口状态参数获取装置根据数据采集过程确定传输性能数据是否异常的方案,这里给出一个示例:假定当前是第m次进行数据采集,则根据前面的介绍,在端口状态参数获取装置对端口进行传输性能数据采集之前会记录第m次数据采集的开始时刻tm,以及采集到数据时的数据采集结束时刻tm’,从而根据两个时刻的时间确定出本次数据采集所花费的时间dtm,即tm’-tm。例如当前是第5次进行传输性能数据采集,在此次数据采集开始的时刻,端口状态参数获取装置会记录下开始时刻t5。当第5次数据采集结束时,端口状态参数获取装置又会记录下结束时刻t5’,然后根据开始时刻t5与结束时刻t5’确定出第5次数据采集的当前采集时长dt5。同时,由于在前面4次进行数据采集的时候,端口状态参数获取装置也会记录下各次的开始时刻与结束时刻,并计算各次数据采集所花费的采集时长。所以,在本实施例中,端口状态参数获取装置可以根据以下条件来判断当前采集到的传输性能数据是否受数据采集本身不准确的影响而出现了异常:

前一次传输性能数据采集所花费的在前采集时长dtm-1大于等于第一时长阈值;

当前次传输性能数据采集所花费的当前采集时长dtm大于等于第二时长阈值;

当前次传输性能数据采集结束时刻tm’同前一次传输性能数据采集结束时刻tm-1’之间的间隔不等于传输性能数据采集周期t。因为,在每个传输性能数据采集周期t中,端口状态参数获取装置会进行一次数据采集,所以,正常情况下,t=tm′-tm-1′。

上述三个条件中,只要此次数据采集过程满足了其中任意一个,端口状态参数获取装置即可判定当前采集到的传输性能数据受数据采集本身不准确的影响而出现了异常。换言之,如果端口状态参数获取装置确定前一次传输性能数据采集所花费的在前采集时长dtm-1小于第一时长阈值,且前次传输性能数据采集所花费的当前采集时长dtm小于第二时长阈值,而且前次传输性能数据采集结束时刻tm’同前一次传输性能数据采集结束时刻tm-1’之间的间隔等于传输性能数据采集周期t,才可以判定当前数据采集结果没有受数据采集的影响,是正常的。

例如,针对上述示例,端口状态参数获取装置需要判定第4次数据采集所花费的在前采集时长dt4与第一时长阈值之间的关系,本次数据采集所花费的当前采集时长dt5与第二时长阈值之间的关系,以及第5次数据采集结束时刻t5’与第4次数据采集结束时刻t4’间的间隔同数据采集周期t之间的关系。本实施例并不具体限定端口状态参数获取装置的判定时序,例如在一种示例当中,端口状态参数获取装置先判定dt5是否大于等于第二时长阈值,然后判定dt4是否大于等于第一时长阈值,最后再判定t5’-t4’是否等于t;但在本实施例的另一种示例当中,端口状态参数获取装置先判定dt4是否大于等于第一时长阈值,最后判定dt5是否大于等于第二时长阈值。

应当明白的是,当端口状态参数获取装置在确定上述任意一个条件满足的时候,即可不再继续判定剩余条件是否满足,以便节约判定时间。

可以理解的是,如果当前的数据采集过程符合上述三个条件中的任意一个,则说明第m次数据采集的时候花费了比正常采集时间更长的时间,因此端口状态参数获取装置根据数据采集过程判定传输性能数据是否异常实际上是在判定进行数据采集的时刻,是否发生了高优先级任务抢占数据采集任务的情形。如果端口状态参数获取装置的判定结果为是,则执行s306;否则,执行s308。

s306、端口状态参数获取装置对在前状态参数进行优化处理获取端口当前的状态参数。

如果根据数据采集的采集过程确定出当前采集到的传输性能数据异常,则端口状态参数获取装置需要对该端口的在前状态参数进行优化处理以获取该端口当前的状态参数。下面,以获取该端口的传输速率为例进行说明,请参见图4:

s402、根据第m-n次至第m-1次传输性能数据采集所对应的传输速率中的至少一个确定出在前速率。

由于,此次数据采集是第m次对端口的传输性能数据进行采集,所以,可选地,如果第m-1次的传输性能数据采集后获取的传输速率为0,则端口状态参数获取装置获取第m-n次至第m-1次传输性能数据采集所对应的传输速率,并计算n个传输速率的平均值作为在前速率,n大于1。如果第m-1次的传输性能数据采集后获取的传输速率不为0,则端口状态参数获取装置直接获取第m-1次的传输性能数据采集所对应的传输速率作为在前速率。

假定当前是第5次进行传输性能数据采集,若端口状态参数获取装置根据数据采集过程确定此次数据采集时,数据采集任务遭到高优先级任务的抢占,则端口状态参数获取装置可以获取第4次数据采集所对应的传输速率作为在前速率。如果第4次的传输速率为0,则端口状态参数获取装置可以获取第2次、第3次以及第4次数据采集的所对应的传输速率,并求取平均值作为第5次数据采集时的在前速率。

s404、采用平滑算法根据在前速率计算得到端口当前的传输速率。

当端口状态参数获取装置获取到当前次数据采集所对应的在前速率之后,可以根据以下公式计算当前的传输速率:

其中,sm为当前的传输速率,sm-1为在前速率。k为调整偏差,其值等于值的大小介于0~1之间,tm′为第m次数据采集的结束时刻,所述tm-1′为第m-1次数据采集的结束时刻。am为端口当前的实际流量,该实际流量的值可以是根据实施例一中介绍的优化处理方案获得的,也可以是根据当前次采集到的传输性能数据计算得到的。具体地,如果,在计算端口当前的实际流量时,端口状态参数获取装置确定传输性能数据异常,则可以根据前述实施例中提供的方案对在前实际流量进行平滑优化处理,进而得到此次数据采集时的am。如果,端口状态参数获取装置确定传输性能数据正常,则其可以直接根据采集到的传输性能数据结合以下公式计算得到am:

am=传输总字节数+(传输总帧数*端口帧间隙)

应当明白的是,对于端口发送方向的实际流量,应当根据发送方向的总字节数与总帧数进行计算,对于端口接收方向的实际流量,则应当根据接收方向的总节数与总帧数进行计算。

s308、端口状态参数获取装置直接根据采集到的传输性能数据计算出端口当前的状态参数。

如果端口状态参数获取装置根据数据采集结果或数据采集过程确定当前采集到的传输性能数据正常,没有受到数据采集本身准确与否的影响,则端口状态参数获取装置可以直接根据采集到的传输性能数据计算出端口当前的状态参数。例如针对端口当前的传输速率,可以根据以下公式计算:

在本实施例中,无论端口状态参数获取装置是通过何种方式获取到了端口当前的传输速率,其都会将该传输速率与端口号关联保存起来。应当理解的是,在保存的时候,还应当关联存储能够表征该传输速率所对应数据采集序号的信息。

本发明实施例提供的端口状态参数获取方法,在对端口的传输性能数据进行采集之后,会根据数据采集结果或数据采集过程确定当前采集到的传输性能数据是否受到了数据采集本身不准确的影响,对数据采集结果进行客观评判。在确定当前采集到的传输性能数据是正常数据,没有受到数据采集本身的影响时,直接根据该数据计算获得端口当前的状态参数。在确定采集到的传输性能数据收到了收据采集本身不准确的影响时,并不直接根据这种无法表征端口实际情况的传输性能数据计算获取端口当前的状态参数,而是根据该端口在前状态参数进行优化处理,从而获得与实际情况更接近的状态参数,进而为后续的网络规划与维护提供更可信的基础,提升网络规划与维护的品质。

实施例三:

本实施例提供一种端口状态参数获取装置,请参见图5:

端口状态参数获取装置50包括数据采集模块502、异常判定模块504以及状态获取模块506,其中,数据采集模块502用于对传输设备端口的传输性能数据进行采集;异常判定模块504用于确定当前采集到的传输性能数据异常;而状态获取模块506用于对端口的在前状态参数进行优化处理获取端口当前的状态参数。

本实施例中,数据采集模块502对传输设备端口的传输性能数据进行采集,可以采用周期性数据采集的方式:当数据采集周期到达时,数据采集模块502对端口的传输性能数据进行采集。传输性能数据可以包括接收方向上的传输总帧数和传输总字节数,也可以包括发送方向上的传输总帧数和传输总字节数,当然,数据采集模块502还可以同时采集端口发送方向与接收方向上的传输总帧数和传输总字节数。毫无疑义的是,对于一个端口来说,接收方向与发送方向的状态参数并没有直接的关联关系,因此,在绝大多数情况下,针对同一个端口,数据采集模块502是分别对发送方向和接收方向上的状态参数进行获取,所以,针对发送方向各接收方向的传输性能数据,数据采集模块502也可以分别获取。

本实施例中所说的端口可以是以太网端口,不过,可以理解的是,除了以太网端口以外,还可以是承担了数据传输任务的其他类型的端口。

当数据采集模块502采集到端口的传输性能数据之后,异常判定模块504可以根据数据采集情况确定当前采集到的传输性能数据是否异常。值得注意的是,本实施例中所指的异常是由数据采集本身不准确而引起的。所以,异常判定模块504确定当前采集到的传输性能数据是否异常实际上也就是判断针对传输性能数据的采集是否准确。换言之,异常判定模块504在确定当前采集到的传输性能数据异常时,会排除因真实网络状况等引起的端口传输性能数据异常情况。例如,如果以太网端口当前的传输性能数据与正常水平相差甚远,但这是由于数据采集时刻的网络状态差等原因引起的,则这不属于本实施例中所谓的异常情况;如果采集到的传输性能数据与正常水平相差甚远,但这是由于数据采集不准确造成的,也就是说,采集到的传输性能数据并不能表征以太网端口当前的实际情况,则这属于本实施例中的异常情况。

在前面已经介绍过,造成数据采集结果异常的可能有这样两方面的原因:一、数据采集任务被其他高优先级任务抢占,导致数据采集结果不全面、不准确;二、数据采集模块502的数据采集周期与端口arm芯片的统计周期不同步。当然,这里只是列出了比较典型、比较主要的两个原因,除了上述两方面的原因以外,还可以包括其他原因。

在本实施例中,数据采集情况包括了对传输性能数据的采集过程和采集结果,所以,异常判定模块504根据数据采集情况确定采集到的传输性能数据异常时至少可以包括这样两方面的含义:第一,异常判定模块504根据传输性能数据的采集结果确定当前的数据采集本身不准确;第二,异常判定模块504根据传输性能数据的采集过程确定当前的数据采集本身不准确。

针对上述第一方面,异常判定模块504根据对传输性能数据的采集结果判定出传输性能数据异常,例如,异常判定模块504确定采集到的传输性能数据为异常值,且根据在前数据采集情况确定传输性能数据为异常值的连续累计次数已达到预设阈值。这里所述的“在前数据采集情况”指的是此次数据采集之前的数据采集情况。假定当前是第m次进行传输性能数据的采集,则在前数据采集情况可能是第1次至第m-1次数据采集中的一次或多次的情况。

在本实施例的一种实施例中,当数据采集模块502采集到传输性能数据之后,异常判定模块504会判定采集到的传输性能数据是否是异常值,如果传输性能数据是异常值,则会对表征连续出现异常值的连续累计次数进行增加。如果传输性能数据不是异常值,则将当前的连续累计次数清零。例如,当前是第5次进行传输性能数据的采集,在这之前,第3次与第4次数据采集结果中传输性能数据均为异常值,则在进行第5次传输性能数据采集之前,连续累计次数的值为“2”。若第5次的采集结果表征传输性能数据异常,则连续累计次数将会再增加1变成“3”。如果后续又对端口进行了第6次传输性能数据采集,而传输性能数据的值并不是异常值,则在第6次数据采集之后,连续累计次数值将变成“0”。

根据上述介绍可知,异常判定模块504在根据数据采集结果判定传输性能数据异常时,需要满足这样两个条件:首先,当前的数据采集结果中传输性能数据为异常值。传输性能数据包括接收和/或发送方向上的传输总帧数和传输总字节数,只要传输总帧数和传输总字节数中的任意一个的值为异常值,则异常判定模块504可以认定传输性能数据为异常值。在本实施例的一个示例当中,异常值为0,则只要传输总帧数与传输总字节数中的任意一个的值为0,则可以认定传输性能数据的值为异常值。在当前采集所得的传输性能数据满足为异常值的条件的基础上,异常判定模块504还需要根据在前数据采集情况确定传输性能数据为异常值的连续累计次数是否已经达到了预设阈值。

例如,假定预设阈值的大小为3,则针对上述示例,在数据采集模块502进行第5次传输性能数据采集后,数据采集结果就已经同时满足了上述两个条件,因此,异常判定模块504可以判定当前采集到的传输性能数据受数据采集本身不准确的影响而出现了异常。

当异常判定模块504根据数据采集结果或数据采集过程确定当前采集到的传输性能数据受数据采集本身的影响而出现了异常时,状态获取模块506在计算端口当前的状态参数时,可以根据在前状态参数进行优化处理以获取端口当前的状态参数。利用在前状态参数进行优化处理后所得的当前的状态参数,相对于直接根据异常传输性能数据计算获得的状态参数而言,更加接近端口当前的真实情况,这样可以排除直接根据异常传输性能数据计算端口状态参数所导致的不准确的问题。

针对根据数据采集结果确定传输性能数据异常的情景,状态获取模块506在获取端口当前状态参数,例如端口当前实际流量时,可以根据在前数据采集过程中获得的端口实际流量进行优化处理,从而获得本次数据采集对应的端口实际流量。

首先,状态获取模块506获取第m-n次至第m-1次传输性能数据采集中的至少一个所对应的实际流量。假定,此次数据采集是第m次对端口的传输性能数据进行采集,则首先,状态获取模块506获取此次数据采集之前第m-1至第m-n次数据采集所对应的实际流量。其中,n的值大于等于1。可以理解的是,端口状态参数获取的数据可以是第m-1至第m-n次数据采集中一个或多个所对应的实际流量。

然后,状态获取模块506采用平滑算法根据获取到的在前实际流量计算得到端口当前的实际流量。在本实施例的一些示例当中,状态获取模块506可以仅采用与本次数据采集时间最接近一个或一个以上的在前实际流量来根据平滑算法做优化处理,从而得到本次数据采集时的端口实际流量。但在另一些示例当中,状态获取模块506也可以获取时间离本次数据采集较远的一个或多个在前实际流量。继续假定本次数据采集是第5次,如果第5次数据采集所采集到的传输性能数据异常,则状态获取模块506可以根据第4次与第3次数据采集所对应的端口实际流量来确定端口当前的实际流量,也可以根据第1次和/或第2次的实际流量来平滑计算,得到当前的实际流量。

本实施例中不限定选择在前实际流量的个数,其可以由网关人员自定义设置。不过就理论而言,在采用平滑算法对在前实际流量进行优化处理以获得端口当前的实际流量时,选择的在前实际流量越多,计算结果跟实际情况的契合程度也就越高。

应当理解的是,本实施例中状态获取模块506获取的在前实际流量应当是能够尽可能接近端口在对应时刻真实情况的数据。也就是说,参与平滑优化处理的在前实际流量并不一定是根据数据采集结果计算出来的,也有可能是根据之前的在前实际端口流量优化处理得到的。例如,假定当前是第5次进行传输性能数据采集,异常判定模块504根据采集结果确定传输性能数据异常后,其可以结合第4次至第1次数据采集所对应的各实际流量中的一个或多个进行优化处理得到第5次的数据采集时端口的实际流量。假定状态获取模块506利用的是第3次数据采集对应的实际流量和第4次数据采集所对应的实际流量来优化计算得到第5次数据采集对应的实际流量,但第3次数据采集所对应的实际流量实际上也可能是根据第1次数据采集和第2次数据采集所对应的实际流量优化计算得到的。因为通过优化处理所得的第3次数据采集时刻的端口实际流量,比根据第3次数据采集所得的传输性能数据所计算出来的端口流量值更能反映在进行第3次数据采集时端口流量的真实情况。同样地,如果在后续过程中需要将第5次数据采集所对应的实际流量作为在前实际流量,以计算对应时刻的端口实际流量,则其选择的第5次数据采集所对应的实际流量也应当是通过平滑算法进行优化处理得到的,而不是根据第5次数据采集所得的异常传输性能数据直接计算出来的。

虽然在前述示例当中并未直接说明,不过应当明白的是,每次确定出当前端口的实际流量之后,应当将该实际流量值同对应的数据采集次数的序号进行关联存储,以便后续需要是提取使用。

本实施例提供的端口状态参数获取装置,在对端口的传输性能数据进行采集之后,会根据数据采集结果或数据采集过程确定当前采集到的传输性能数据是否受到了数据采集本身不准确的影响。如果确定因数据采集本身不准确而导致数据采集结果不准确,则不会直接根据数据采集结果确定端口当前的状态参数,而是结合该端口的在前状态参数,利用平滑算法优化计算得到更贴合实际情形的状态参数,从而规避异常传输性能数据对端口状态参数计算的负面影响,提升端口状态参数的准确性。

实施例四:

本实施例将继续结合图5对本发明中的端口状态参数获取装置50进行介绍:

在本实施例中,数据采集模块502周期性地对传输设备端口的传输性能数据进行采集。假定数据采集周期的周期为1s,也就是说,每1s内,数据采集模块502就会对端口的传输性能数据进行一次采集。在1分钟中,有60个数据采集周期,所以,数据采集模块502会对端口进行60次的传输性能数据采集。

由于异常判定模块504判定采集到的传输性能数据是否异常时,可以根据数据采集过程进行判定,也就是实施例一中提及的第二方面。所以,为了便于异常判定模块504确定采集到的传输性能数据是否受到数据采集不准确的影响,本实施例中,数据采集模块502会记录下本次传输性能数据采集的起止时刻,也即,在开始传输性能数据采集时,数据采集模块502会记录下数据采集的开始时刻;在传输性能数据采集完成时,数据采集模块502又会记录下数据采集的结束时刻。

在本实施例中,主要介绍异常判定模块504根据数据采集过程确定传输性能数据是否异常的方案,这里给出一个示例:假定当前是第m次进行数据采集,则根据前面的介绍,在数据采集模块502对端口进行传输性能数据采集之前会记录第m次数据采集的开始时刻tm,以及采集到数据时的数据采集结束时刻tm’,从而根据两个时刻的时间确定出本次数据采集所花费的时间dtm,即tm’-tm。例如当前是第5次进行传输性能数据采集,在此次数据采集开始的时刻,数据采集模块502会记录下开始时刻t5。当第5次数据采集结束时,数据采集模块502又会记录下结束时刻t5’,然后根据开始时刻t5与结束时刻t5’确定出第5次数据采集的当前采集时长dt5。同时,由于在前面4次进行数据采集的时候,数据采集模块502也会记录下各次的开始时刻与结束时刻,并计算各次数据采集所花费的采集时长。所以,在本实施例中,异常判定模块504可以根据以下条件来判断当前采集到的传输性能数据是否受数据采集本身不准确的影响而出现了异常:

前一次传输性能数据采集所花费的在前采集时长dtm-1大于等于第一时长阈值;

当前次传输性能数据采集所花费的当前采集时长dtm大于等于第二时长阈值;

当前次传输性能数据采集结束时刻tm’同前一次传输性能数据采集结束时刻tm-1’之间的间隔不等于传输性能数据采集周期t。因为,在每个传输性能数据采集周期t中,端口状态参数获取装置会进行一次数据采集,所以,正常情况下,t=tm′-tm-1′。

上述三个条件中,只要此次数据采集过程满足了其中任意一个,异常判定模块504即可判定当前采集到的传输性能数据受数据采集本身不准确的影响而出现了异常。换言之,如果异常判定模块504确定前一次传输性能数据采集所花费的在前采集时长dtm-1小于第一时长阈值,且前次传输性能数据采集所花费的当前采集时长dtm小于第二时长阈值,而且前次传输性能数据采集结束时刻tm’同前一次传输性能数据采集结束时刻tm-1’之间的间隔等于传输性能数据采集周期t,才可以判定当前数据采集结果没有受数据采集的影响,是正常的。

例如,针对上述示例,异常判定模块504需要判定第4次数据采集所花费的在前采集时长dt4与第一时长阈值之间的关系,本次数据采集所花费的当前采集时长dt5与第二时长阈值之间的关系,以及第5次数据采集结束时刻t5’与第4次数据采集结束时刻t4’间的间隔同数据采集周期t之间的关系。本实施例并不具体限定异常判定模块504的判定时序,例如在一种示例当中,异常判定模块504先判定dt5是否大于等于第二时长阈值,然后判定dt4是否大于等于第一时长阈值,最后再判定t5’-t4’是否等于t;但在本实施例的另一种示例当中,异常判定模块504先判定dt4是否大于等于第一时长阈值,最后判定dt5是否大于等于第二时长阈值。

应当明白的是,当异常判定模块504在确定上述任意一个条件满足的时候,即可不再继续判定剩余条件是否满足,以便节约判定时间。

可以理解的是,如果当前的数据采集过程符合上述三个条件中的任意一个,则说明第m次数据采集的时候花费了比正常采集时间更长的时间,因此端异常判定模块504根据数据采集过程判定传输性能数据是否异常实际上是在判定进行数据采集的时刻,是否发生了高优先级任务抢占数据采集任务的情形。如果异常判定模块504的判定结果为是,则状态获取模块506对在前状态参数进行优化处理获取端口当前的状态参数;否则状态获取模块506直接根据采集到的传输性能数据计算出端口当前的状态参数。

如果根据数据采集的采集过程确定出当前采集到的传输性能数据异常,则状态获取模块506需要对该端口的在前状态参数进行优化处理以获取该端口当前的状态参数。下面,以获取该端口的传输速率为例进行说明:

首先,状态获取模块506根据第m-n次至第m-1次传输性能数据采集所对应的传输速率中的至少一个确定出在前速率。由于,此次数据采集是第m次对端口的传输性能数据进行采集,所以,可选地,如果第m-1次的传输性能数据采集后获取的传输速率为0,则状态获取模块506获取第m-n次至第m-1次传输性能数据采集所对应的传输速率,并计算n个传输速率的平均值作为在前速率,n大于1。如果第m-1次的传输性能数据采集后获取的传输速率不为0,则状态获取模块506直接获取第m-1次的传输性能数据采集所对应的传输速率作为在前速率。

假定当前是第5次进行传输性能数据采集,若异常判定模块504根据数据采集过程确定此次数据采集时,数据采集任务遭到高优先级任务的抢占,则状态获取模块506可以获取第4次数据采集所对应的传输速率作为在前速率。如果第4次的传输速率为0,则状态获取模块506可以获取第2次、第3次以及第4次数据采集的所对应的传输速率,并求取平均值作为第5次数据采集时的在前速率。

当状态获取模块506获取到当前次数据采集所对应的在前速率之后,采用平滑算法根据在前速率计算得到端口当前的传输速率。可选地状态获取模块506可以根据以下公式计算当前的传输速率:

其中,sm为当前的传输速率,sm-1为在前速率k为调整偏差,其值等于值的大小介于0~1之间,所述tm′为第m次数据采集的结束时刻,所述tm-1′为第m-1次数据采集的结束时刻。am为端口当前的实际流量,该实际流量的值可以是根据实施例一中介绍的优化处理方案获得的,也可以是根据当前次采集到的传输性能数据计算得到的。具体地,如果,在计算端口当前的实际流量时,异常判定模块504确定传输性能数据异常,则状态获取模块506可以根据前述实施例中提供的方案对在前实际流量进行平滑优化处理,进而得到此次数据采集时的am。如果,异常判定模块504确定传输性能数据正常,则状态获取模块506可以直接根据采集到的传输性能数据结合以下公式计算得到am:

am=传输总字节数+(传输总帧数*端口帧间隙)

应当明白的是,对于端口发送方向的实际流量,应当根据发送方向的总字节数与总帧数进行计算,对于端口接收方向的实际流量,则应当根据接收方向的总节数与总帧数进行计算。如果异常判定模块504根据数据采集结果或数据采集过程确定当前采集到的传输性能数据正常,没有受到数据采集本身准确与否的影响,则状态获取模块506可以直接根据采集到的传输性能数据计算出端口当前的状态参数。例如针对端口当前的传输速率,可以根据以下公式计算:

在本实施例中,无论状态获取模块506是通过何种方式获取到了端口当前的传输速率,其都会将该传输速率与端口号关联保存起来。应当理解的是,在保存的时候,还应当关联存储能够表征该传输速率所对应数据采集序号的信息。

本发明实施例提供的端口状态参数获取装置,在对端口的传输性能数据进行采集之后,会根据数据采集结果或数据采集过程确定当前采集到的传输性能数据是否受到了数据采集本身不准确的影响,对数据采集结果进行客观评判。在确定当前采集到的传输性能数据是正常数据,没有受到数据采集本身的影响时,直接根据该数据计算获得端口当前的状态参数。在确定采集到的传输性能数据收到了收据采集本身不准确的影响时,并不直接根据这种无法表征端口实际情况的传输性能数据计算获取端口当前的状态参数,而是根据该端口在前状态参数进行优化处理,从而获得与实际情况更接近的状态参数,进而为后续的网络规划与维护提供更可信的基础,提升网络规划与维护的品质。

第五实施例:

前述实施例中的端口状态参数获取装置50可以部署在传输设备上,也可以部署在传输设备以外,与传输设备分别享用不同的物理实体。下面以端口状态参数获取装置50被部署到传输设备上为例进行说明:

请进一步结合图6,传输设备60包括处理器61、存储器62及通信总线63,其中通信总线63用于实现处理器61和存储器62之间的连接通信。可以理解的是,实施例一和实施例二中的端口状态参数获取方法可以通过计算机程序来实现,本实施例还提供一种存储介质,即存储器62。存储器62作为一种计算机可读存储介质,其中存储有至少一个计算机程序,这些计算机程序可以供处理器61读取、编译并执行,从而实现对应的处理流程。例如,在本实施例中,存储器62中存储有端口状态参数获取程序,处理器61可以通过执行该计算机程序实现前述实施例中介绍的端口状态参数获取方法。图5中所示出的数据采集模块502、异常判定模块504和状态获取模块506的功能均可以通过图6中的处理器61执行存储器62中的端口状态参数获取程序来实现。

对于处理器61执行端口状态参数获取程序实现端口状态参数获取方法的二具体过程,在实施例一与实施例二中已经做了比较详细的介绍,这里不再赘述。不过下面将会结合具体示例对前述实施例中的端口状态参数获取方案进行进一步阐述:

假定此次对端口进行数据采集的序号是m,即,当前是针对端口号为001的端口进行的第m次传输性能数据采集。假定控制数据采集的定时器的定时时长为1s,也即数据采集周期t=1s,则当数据采集周期到达时,开始对传输设备中的某一个端口进行数据采集并计算该端口的状态参数,请参见图7:

s701、记录第m次对端口进行传输性能数据采集的开始时刻tm。

在本实施例中,当确定第m次对端口进行传输性能数据采集的开始时刻tm时,可以将与端口号001进行关联存储。

s702、记录第m次对端口进行传输性能数据采集的开始时刻tm’。

同记录数据采集开始时刻类似,当第m次数据采集结束完成时,还要记录下对应的时间。同样地,对于结束时刻也需要和端口号进行关联存储。在本实施例的一种示例当中,可以采用如下表格的形式来关联存储端口号与数据采集的开始时刻、结束时刻:

表1

s703、判断第m次数据采集所得到的传输性能数据是否异常。

如果第m次采集到的传输性能数据中,传输总字节数或传输总帧数这两个数据中任意有一个的值为0,则将表征传输性能数据连续异常的连续累计次数的值增加1。同时判断当前连续累计次数是否已经大于等于预设阈值,若判断为是,则执行是s704;否则执行s705。若第m次采集到的传输性能数据中,传输总字节数和传输总帧数均布为0,则将连续累计次数的值清零,同时执行s705。

s704、获取在前实际流量利用平滑算法优化处理得到第m次数据采集时的端口实际流量。

可以直接获取第m-1次数据采集时端口的实际流量直接作为第m次数据采集时端口的实际流量。当然,也可以获取第m-1次至第m-n次数据采集时的端口流量进行平滑之后作为第m次数据采集时端口的实际流量,其中n大于1。

s705、根据采集到的传输性能数据计算第m次数据采集时的端口实际流量。

如果确定第m次采集到的传输性能数据正常,则可以正常计算端口当前接收方向和/或发送方向的实际流量。例如针对接收方向:

am=接收方向的总字节数+(接收方向的总帧数*端口帧间隙)。

s706、判断在第m次数据采集期间是否存在任务抢占。

如果根据表1中记录的数据,确定数据采集过程满足条件:

“(dtm-1<第一时长阈值)&&(dtm<第二时长阈值)&&(tm’-tm-1’==t)”,则判定第m次数据采集期间不存在任务抢占的情形,执行s707;若判断结果为是,则执行s708。

s707、根据第m次数据采集时端口的实际流量直接计算第m次数据采集时端口的传输速率。

如果根据数据采集结果或数据采集过程确定第m次数据采集期间不存在任务抢占的情形,则可以直接根据采集到的传输性能数据计算出端口的传输速率:

其中,am为第m次数据采集时端口的实际流量。

s708、获取在前速率利用平滑算法优化处理得到第m次数据采集时的端口传输速率。

如果根据数据采集结果或数据采集过程确定第m次数据采集期间存在任务抢占的情形,则需要获取在前速率,并利用平滑算法优化处理得到第m次数据采集时的端口传输速率:

首先,计算调整偏差值k,然后根据公式:

计算出sm,即第m次数据采集时端口001的传输速率,其中sm-1为在前速率。

当端口实际流量和端口的传输速率被计算出来之后,也需要与端口号进行关联存储,以便后续使用。

本实施例提供的存储介质、传输设备以及端口状态参数获取方案,通过记录对端口进行数据采集的起止时刻,从而可以确定数据采集过程中是否出现了任务抢占导致数据采集结果不准确。另一方面,还可以记录数据采集结果为异常值的连续次数进行累计记录,并在确定当前采集到传输性能数据的值为异常值时,将传输性能数据连续异常的次数与预设阈值进行比较,进而确定采集到的传输性能数据是否异常。通过上述两方面,可以保证在数据采集本身不准确而导致数据采集结果异常时,能够对异常结果进行优化纠正,避免直接根据异常传输性能数据计算端口状态参数的负面影响,提升端口状态参数的准确性,进而为后续的网络规划与维护提供更可信的基础,提升网络规划与维护的品质。

显然,本领域的技术人员应该明白,上述本发明实施例的各模块或各步骤可以用通用的计算装置来实现,它们可以集中在单个的计算装置上,或者分布在多个计算装置所组成的网络上,可选地,它们可以用计算装置可执行的程序代码来实现,从而,可以将它们存储在计算机存储介质(rom/ram、磁碟、光盘)中由计算装置来执行,并且在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤,或者将它们分别制作成各个集成电路模块,或者将它们中的多个模块或步骤制作成单个集成电路模块来实现。所以,本发明不限制于任何特定的硬件和软件结合。

以上内容是结合具体的实施方式对本发明实施例所作的进一步详细说明,不能认定本发明的具体实施只局限于这些说明。对于本发明所属技术领域的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干简单推演或替换,都应当视为属于本发明的保护范围。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1