链路拥塞检测方法及相关设备与流程

文档序号:28429616发布日期:2022-01-12 00:56阅读:129来源:国知局
链路拥塞检测方法及相关设备与流程

1.本公开涉及网络运营和通信技术领域,具体而言,涉及一种链路拥塞检测方法、链路拥塞检测装置、计算机设备、计算机可读存储介质和计算机程序产品。


背景技术:

2.相关技术中的链路拥塞检测方法,通常为基于专家经验设置的单一性能指标的规则、阈值和等级,主要为对链路传输的时延、抖动、丢包或带宽利用率等单一性能指标超限问题进行判定。
3.由于评价链路拥塞的指标众多,基于单一性能指标判定链路是否发生链路拥塞不一定准确。


技术实现要素:

4.本公开实施例提供一种链路拥塞检测方法、链路拥塞检测装置、计算机设备、计算机可读存储介质和计算机程序产品,可以提高链路拥塞检测的准确性。
5.本公开实施例提供一种链路拥塞检测方法,所述方法包括:获得当前时刻的当前链路的当前链路信息;根据所述当前链路信息确定所述当前链路在所述当前时刻所属的目标链路聚类类别;调用所述目标链路聚类类别对应的目标链路拥塞检测模型处理所述当前链路信息,确定所述当前链路在所述当前时刻是否为拥塞链路。
6.本公开实施例提供一种链路拥塞检测装置,该装置包括:当前链路信息获得单元,用于获得当前时刻的当前链路的当前链路信息;链路聚类类别确定单元,用于根据所述当前链路信息确定所述当前链路在所述当前时刻所属的目标链路聚类类别;链路拥塞检测单元,用于调用所述目标链路聚类类别对应的目标链路拥塞检测模型处理所述当前链路信息,确定所述当前链路在所述当前时刻是否为拥塞链路。
7.本公开实施例提供一种计算机设备,包括:至少一个处理器;存储装置,用于存储至少一个程序;当所述至少一个程序被所述至少一个处理器执行,实现上述实施例中任意一种可能的实现方式中的方法。
8.本公开实施例提供了一种计算机可读存储介质,其上存储有用于计算机设备执行的计算机程序,所述程序被处理器执行时实现上述实施例中任意一种可能的实现方式中的方法。
9.本公开实施例提供了一种包含指令的计算机程序产品。当该计算机程序产品在计算机设备上运行时,使得计算机设备执行上述各方或上述各方中任意一种可能的实现方式中的方法的指令。
10.在本公开的一些实施例所提供的技术方案中,通过获得当前时刻的当前链路的当前链路信息,根据所述当前链路信息确定所述当前链路在所述当前时刻所属的目标链路聚类类别,然后调用所述目标链路聚类类别对应的目标链路拥塞检测模型处理所述当前链路信息,确定所述当前链路在所述当前时刻是否为拥塞链路,可以提高链路拥塞检测的准确
性。
11.应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本公开。
附图说明
12.此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本公开的实施例,并与说明书一起用于解释本公开的原理。显而易见地,下面描述中的附图仅仅是本公开的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
13.图1示意性示出了根据本公开的一实施例的链路拥塞检测方法的流程图。
14.图2示意性示出了根据本公开的一实施例的链路拥塞检测方法的示意图。
15.图3示意性示出了根据本公开的一实施例的基于聚类的异常检测的示意图。
16.图4示意性示出了根据本公开的一实施例的链路拥塞检测装置的示意性框图。
17.图5示意性示出了根据本公开的一实施例的计算机设备的示意性框图。
具体实施方式
18.现在将参考附图更全面地描述示例实施方式。然而,示例实施方式能够以多种形式实施,且不应被理解为限于在此阐述的范例;相反,提供这些实施方式使得本公开将更加全面和完整,并将示例实施方式的构思全面地传达给本领域的技术人员。
19.在本公开的描述中,除非另有说明,“/”表示“或”的意思,例如,a/b可以表示a或b。本文中的“和/或”仅仅是一种描述关联对象的关联关系,表示可以存在三种关系,例如,a和/或b,可以表示:单独存在a,同时存在a和b,单独存在b这三种情况。此外,“至少一个”是指一个或多个,“多个”是指两个或两个以上。“第一”、“第二”等字样并不对数量和执行次序进行限定,并且“第一”、“第二”等字样也并不限定一定不同。
20.本公开实施例并未对本公开实施例提供的方法的执行主体的具体结构特别限定,只要能够通过运行记录有本公开实施例的提供的方法的代码的程序,以根据本公开实施例提供的方法进行处理即可,例如,本公开实施例提供的方法的执行主体可以是计算机设备,或者,是计算机设备中能够调用程序并执行程序的功能模块。
21.可以理解的是,本公开实施例描述的网络架构以及业务场景是为了更加清楚的说明本公开实施例的技术方案,并不构成对于本公开实施例提供的技术方案的限定,本领域普通技术人员可知,随着网络架构的演变和新业务场景的出现,本公开实施例提供的技术方案对于类似的技术问题,同样适用。
22.图1示意性示出了根据本公开的一实施例的链路拥塞检测方法的流程图。如图1所示,本公开实施例提供的方法可以包括如下步骤。
23.在步骤s110中,获得当前时刻的当前链路的当前链路信息。
24.在示例性实施例中,所述方法还可以包括:获得历史时刻的历史链路的目标历史链路信息;对目标历史链路信息进行降维处理,获得各主成分方差贡献率;确定主成分方差贡献率排名前k的主成分的空间分布特点确定链路聚类类别数p,k为大于1的正整数,p为大于1的正整数;根据所述链路聚类类别数p对所述目标历史链路信息进行聚类分析,确定p个
链路聚类类别中的目标历史链路信息,所述p个链路聚类类别中包括所述目标链路聚类类别;根据每个链路聚类类别中包括的目标历史链路信息,获得每个链路聚类类别的性能分布指标;根据每个链路聚类类别的性能分布指标,分别设置每个链路聚类类别的异常值水平;根据每个链路聚类类别的异常值水平和每个链路聚类类别中的目标历史链路信息分别进行每个链路聚类类别的链路拥塞检测模型的训练,所述链路拥塞检测模型包括所述目标链路拥塞检测模型。
25.在示例性实施例中,每个链路聚类类别的性能分布指标可以包括每个链路聚类类别中的历史链路的链路抖动、链路时延、链路丢包率、链路带宽利用率的均值和方差,每个链路聚类类别的异常值水平可以与对应链路聚类类别的链路抖动、链路时延、链路丢包率、链路带宽利用率的均值和方差正相关。
26.在示例性实施例中,获得历史时刻的历史链路的目标历史链路信息,可以包括:设置采集粒度,按照所述采集粒度采集各个历史时刻的历史链路的历史链路信息,各个历史链路信息包括链路丢包率、链路时延、链路抖动、链路带宽占用率、物理/逻辑端口流量、采集时间、接口类型、设备和端口状态、中央处理器cpu使用率、内存使用率、链路种类、链路类型、链路数量、是否域间链路、物理/逻辑端口带宽和承载业务类型;对采集到的历史链路信息进行数据清洗处理;对数据清洗处理后的历史链路信息中的采集时间进行时间特征抽取,获得时间特征数据,所述时间特征数据包括所述采集时间是否工作日、是否活动日和是否忙闲时;对数据清洗处理后的历史链路信息和所述时间特征数据进行编码和归一化处理,获得所述目标历史链路信息。
27.在步骤s120中,根据所述当前链路信息确定所述当前链路在所述当前时刻所属的目标链路聚类类别。
28.本公开实施例中,可以根据所采用的聚类算法来决定采用何种方式来确定当前链路在当前时刻所属的目标链路聚类类别。例如,在下面的举例说明中,以kmean聚类算法为例,假设聚类分析获得了p个链路聚类类别,p为大于1的正整数,则可以计算当前链路信息分别与p个链路聚类类别的p个聚类中心之间的距离,将距离最小的聚类中心对应的链路聚类类别作为目标链路聚类类别。但本公开并不限定于此,具体如何确定当前链路在当前时刻所属的目标链路聚类类别可以根据所采用的聚类算法来确定。
29.在步骤s130中,调用所述目标链路聚类类别对应的目标链路拥塞检测模型处理所述当前链路信息,确定所述当前链路在所述当前时刻是否为拥塞链路。
30.在示例性实施例中,调用所述目标链路聚类类别对应的目标链路拥塞检测模型处理所述当前链路信息,确定所述当前链路在所述当前时刻是否为拥塞链路,可以包括:将所述当前链路信息输入至所述目标链路拥塞检测模型,以判断所述当前链路在所述当前时刻是否为正常链路;根据所述当前链路在所述当前时刻是否为正常链路的判断结果,确定所述当前链路在所述当前时刻是否为拥塞链路。
31.在示例性实施例中,根据所述当前链路在所述当前时刻是否为正常链路的判断结果,确定所述当前链路在所述当前时刻是否为拥塞链路,可以包括:若所述判断结果为所述当前链路在所述当前时刻为非正常链路,则获取链路拥塞阈值和所述目标链路拥塞检测模型输出的所述当前链路在所述当前时刻的链路异常值;若所述当前链路在所述当前时刻的链路异常值大于所述链路拥塞阈值,则确定所述当前链路在所述当前时刻为拥塞链路。
32.在示例性实施例中,所述方法还可以包括:存储所述当前链路在所述当前时刻是否为拥塞链路的当前链路拥塞检测结果,所述当前链路拥塞检测结果包括所述当前链路在所述当前时刻的拥塞标记,所述拥塞标记包括所述当前链路在所述当前时刻为拥塞链路或者非拥塞链路;根据所述当前链路拥塞检测结果,获得当前链路拥塞预测结果。
33.在示例性实施例中,根据所述当前链路拥塞检测结果,获得当前链路拥塞预测结果,可以包括:若根据所述当前链路拥塞检测结果确定所述当前链路连续n次的拥塞标记为拥塞链路,则确定所述当前链路的当前链路拥塞预测结果为链路拥塞链路,n为大于1的正整数;针对所述当前链路发出链路拥塞预警通知消息。
34.在示例性实施例中,根据所述当前链路拥塞检测结果,获得当前链路拥塞预测结果,可以包括:获得历史链路的历史链路拥塞检测结果;若根据所述历史链路拥塞检测结果确定所述历史链路连续m次的拥塞标记为拥塞链路,则将所述历史链路打上拥塞标签,m为大于1的正整数;若根据所述历史链路拥塞检测结果确定所述历史链路连续m次的拥塞标记为非拥塞链路,则将所述历史链路打上非拥塞标签;将带有拥塞标签或者非拥塞标签的所述历史链路的历史链路信息作为链路拥塞预测模型的训练数据集,训练获得链路拥塞预测模型;通过所述链路拥塞预测模型处理所述当前链路的当前链路信息以及历史链路信息,获得所述当前链路拥塞预测结果;若所述当前链路拥塞预测结果是所述当前链路为链路拥塞链路,则针对所述当前链路发出链路拥塞预警通知消息。
35.本公开实施例中,当检测到某条历史链路连续m次的拥塞标记为拥塞链路时,则将该历史链路打上拥塞标签;当检测到某条历史链路连续m次的拥塞标记为非拥塞链路时,则将该历史链路打上非拥塞标签;其他情况下,则不作处理,即不对该历史链路重新打上拥塞标签或者非拥塞标签。训练获得链路拥塞预测模型之后,可以利用该链路拥塞预测模型来处理当前链路的当前链路信息以及当前链路的历史链路信息(此时该当前链路也可以称之为一条历史链路)。
36.本公开实施方式提供的链路拥塞检测方法,通过获得当前时刻的当前链路的当前链路信息,根据所述当前链路信息确定所述当前链路在所述当前时刻所属的目标链路聚类类别,然后调用所述目标链路聚类类别对应的目标链路拥塞检测模型处理所述当前链路信息,确定所述当前链路在所述当前时刻是否为拥塞链路,可以提高链路拥塞检测的准确性。
37.下面对本公开实施例提供的方法进行举例说明,但本公开并不限定于此。
38.图2示意性示出了根据本公开的一实施例的链路拥塞检测方法的示意图。如图2所示,实现上述实施例提供的链路拥塞检测方法的链路拥塞检测系统可以包括数据采集子系统200、数据管理平台300和ip(internet protocol,网际互连协议)网络分析模块400,ip网络分析模块400可以包括数据获取清洗模块410、链路拥塞检测模块420、链路拥塞预测模块430和分析结果库440。
39.参考图2实施例,链路拥塞检测模块420可以进一步包括数据预处理单元421、结构化存储单元422、链路数据分类单元423、链路拥塞检测单元424和阈值设置单元425。
40.本公开实施例提供的方法可以应用于网络运营领域和通信领域,尤其涉及基于链路的历史流量等数据,并结合网络运营实际需求,实现链路拥塞检测。
41.相关技术中,链路拥塞检测方法通常为基于专家经验设置的单一性能指标的规则、阈值和等级,主要为对链路传输的时延、抖动、丢包或带宽利用率等性能指标超限问题
进行判定。
42.相关技术存在的问题为:1)评价链路拥塞的指标众多,未考虑性能指标间的关系,单一指标判定的拥塞不一定合理,缺乏多指标联合运营方法;2)无法针对不同设备、端口、链路的类型、状态、配置、所处网络位置以及承载的业务、特定时间段等信息灵活调整链路拥塞阈值。
43.本公开实施例提出一种链路拥塞检测方法及系统,目的在于提供一种运营商固网侧基于机器学习算法,并结合运营需求实现链路拥塞检测的方案。无需改进终端,方案简单易实施,能够在结合链路的历史流量等数据和运营需求的情况下,用于链路单一时刻的拥塞检测、标记。解决了运营商ip网络中链路拥塞检测方法,不能根据实际运营中对链路的不同需求动态调整规则阈值,以及规则阈值不合理等问题,提升网络保障水平和业务感知。
44.本公开实施例中,可以通过在骨干网的ip网络控制器的网络分析子系统上部署链路拥塞检测系统,以实现对链路拥塞检测和标记。部署时根据数据降维后的各主成分方差贡献率排名前几(前k,在下面的举例说明中以k=2为例进行举例说明,但本公开并不限定于此)的主成分的空间分布特点决定类别数(即链路聚类类别数p),使用聚类算法对数据进行聚类分析。之后针对不同类别(即不同链路聚类类别)中链路(为了与当前待预测的当前链路区别开来,这里称之为历史链路)的性能分布指标特点,分别对每类(即每个链路聚类类别)进行异常检测并设置不同的异常值水平,根据检测出的链路异常值以及设置的链路拥塞阈值判定是否为拥塞链路。在系统运行时,拥塞检测模型(即链路拥塞检测模型)结合实时流量等数据和阈值设置单元425设置的链路拥塞阈值判断是否产出拥塞信息,并将拥塞信息发送至链路拥塞预测模块(即链路拥塞预测模块430)和分析结果库440,以用于标记拥塞预警模型(即链路拥塞预测模型)的训练数据集,并将拥塞信息通过订阅服务等方式通知给数据管理平台300,以修改链路状态、辅助路径规划等。解决了相关技术中的链路拥塞检测方法,不能根据实际运营中对链路的不同要求动态调整规则阈值,以及规则阈值不合理等问题。
45.如图2所示,数据采集子系统200可以根据数据类型不同提供不同的接口方式,例如通过数据库api(application programming interface,应用程序接口)接口提供网络配置数据,例如可以包括链路、设备节点、物理端口等物理拓扑相关数据,通过消息交互接口提供性能、流量等监控类数据等。
46.数据管理平台300可以用于存储、管理数据采集子系统200采集到的数据,并提供api接口给ip网络控制器等其他模块进行系统调用。
47.数据获取清洗模块410可以从数据管理平台300通过不同的接口方式获取配置、性能、流量等网络源数据,例如链路性能数据、链路流量数据、时间(即采集时间)、接口类型数据、设备端口数据、链路数据、配置数据和业务数据等,其中链路性能数据可以包括链路丢包率(可以简写为丢包率或者丢包)、链路时延(可以简写为时延)、链路抖动(可以简写为抖动)、链路带宽占用率(可以简写为带宽占用率)等,链路流量数据可以包括物理/逻辑端口流量等,接口类型数据可以为光口/电口等,设备端口数据可以包括设备和端口状态、cpu使用率和内存使用率等,链路数据可以包括链路种类(例如物理/逻辑链路)、链路类型(是否捆绑链路)、链路数量和是否域间链路等,配置数据可以包括物理/逻辑端口带宽等,业务数据可以包括承载业务类型等,并根据数据清洗规则对网络源数据进行清洗处理,将清洗处
理后的数据存放到数据仓库中。
48.数据预处理单元421可以对清洗处理后的数据进行预处理和特征工程,包括编码、归一化、降维等。
49.需要说明的是,本公开实施例中,时间特征抽取可以由数据获取清洗模块410和/或数据预处理单元421执行,本公开对此不做限定,只要对采集时间进行时间特征抽取之后获得时间特征数据,例如是否工作日、是否活动日和是否忙闲时等时间特征数据即可。
50.结构化存储单元422可以用于储存数据预处理单元421进行预处理后的流量等数据。
51.可以理解的是,上述数据采集、数据清洗、数据预处理和结构化存储过程是按照设置的采集粒度不断持续进行的,为了将部署阶段的链路信息和待预测阶段的链路信息进行区分,将其分别称之为当前链路信息和历史链路信息,但实际处理过程和步骤是类似的,将历史时刻采集到的链路信息称之为历史链路信息,将经过上述数据清洗、数据预处理和结构化存储过程的历史链路信息称之为目标历史链路信息。
52.链路数据分类单元423可以根据数据降维后的各主成分方差贡献率排名前几的主成分的空间分布特点决定类别数(链路聚类类别数p),使用聚类算法对结构化存储单元422中存储的数据进行聚类分析。
53.链路拥塞检测单元424可以针对不同类别(不同链路聚类类别)中链路(这里是指历史链路)的性能分布指标特点,分别对每类(每个链路聚类类别)进行异常检测并设置不同的异常值水平,根据检测出的链路异常值,并结合阈值设置单元425设置的链路拥塞阈值来判断是否为拥塞链路。
54.阈值设置单元425可以使得ip控制器系统可以根据网络实际运营中对链路的不同要求,动态调整链路拥塞检测模型(即链路拥塞检测模型)判别阈值(即链路拥塞阈值),使得链路拥塞问题能够准确且合理的被发现。
55.分析结果库440可以用于存储链路拥塞分析结果(包括当前链路拥塞检测结果),供链路拥塞预测模块(即链路拥塞预测模块430)调用。
56.如图2,本公开实施例中,以采用kmean聚类算法(k均值聚类算法)实现对链路单一时刻流量等数据的分类分析进行举例说明,但本公开并不限制采用何种聚类算法,在其他实施例中,可以采用任意合适的其他聚类算法,具体实施过程如下:
57.1)对单一时刻(称之为各个历史时刻)的目标历史链路信息进行描述性统计和相关性分析,根据统计分析结果进行归一化、降维等预处理。
58.其中,描述性统计指运用制表和分类、图形以及计算概括性数据来描述数据特征的各项活动。描述性统计分析要对调查总体所有变量的有关数据进行统计性描述,主要包括数据的频数分析、集中趋势分析、离散程度分析、分布以及一些基本的统计图形。其中,数据的频数分析在数据的预处理部分,利用频数分析和交叉频数分析可以检验异常值。数据的集中趋势分析用来反映数据的一般水平,指标有平均值、中位数和众数等。数据的离散程度分析主要是用来反映数据之间的差异程度,常用的指标有方差和标准差。在统计分析中,通常要假设样本所属总体的分布属于正态分布,因此需要用偏度和峰度两个指标来检查样本数据是否符合正态分布。绘制统计图用图形的形式来表达数据,包括条形图、饼图和折线图等。
59.2)根据数据降维后的各主成分方差贡献率排名前几(要求前几主成分方差累计贡献率不低于90%)的空间分布特点决定类别数,具体可通过可视化方法观察分布特点来确定。
60.例如,图3中最左侧的原始数据对应的图是以主成分方差贡献率排名前2的主成分的空间分布为例进行举例说明的,假设根据该可视化的空间分布特点,确定类别数为3,但本公开并不限定于此,可以根据实际需求进行设置,或者可以进行不断的测试和调整,以确定最终的类别数。
61.3)当类别数确定之后,使用kmeans聚类算法对结构化存储单元422中存储的数据进行聚类分析,训练、存储并定期更新聚类模型。
62.例如,如图3所示,假设确定的类别数为3,则将结构化存储单元422中存储的数据聚类为三类,分别用不同的颜色标记。
63.本公开实施例中,对采集的每条数据会带上对应链路的标记,例如若采集到的是链路1的历史链路信息或者当前链路信息,则会在历史链路信息和当前链路信息中包括的链路性能数据、链路流量数据、时间特征数据、接口类型数据、设备端口数据、链路数据、配置数据和业务数据等标记上链路1的标记,以将其与其他链路的链路信息区别开来,在聚类时,通过链路的标记将属于同一链路的链路性能数据、链路流量数据、时间特征数据、接口类型数据、设备端口数据、链路数据、配置数据和业务数据等聚类到同一个链路聚类类别中。
64.本公开实施例中,分别统计不同类别(各个链路聚类类别)中所包含的目标历史链路信息,获得原始数据的链路时延、链路抖动、链路丢包率、链路带宽占用率这4个指标的平均值和方差,根据每类不同分布情况对每类进行isolationforest(孤立森林,是一种异常点检测算法)异常检测并设置不同的异常值水平,根据检测出的链路异常值,并结合阈值设置单元425设置的链路拥塞阈值来判断是否为拥塞链路。
65.本公开实施例中,以每个链路聚类类别中的链路拥塞检测模型为isolationforest为例进行举例说明,但本公开并不限定于此。
66.具体实施过程如下:
67.1)分别统计不同类别(各个链路聚类类别)中原始数据的链路时延、链路抖动、链路丢包率、链路带宽占用率这4个指标的平均值和方差。
68.2)针对每类不同分布情况对每类设置不同的异常值水平,范围从[0,100%],即根据各个链路聚类类别的链路时延、链路抖动、链路丢包率、链路带宽占用率这4个指标的平均值和方差来对各个链路聚类类别设置不同的异常值水平。
[0069]
3)分别对每类进行isolationforest异常值检测,根据检测出的链路异常值,并结合阈值设置单元425设置的链路拥塞阈值来判断是否为拥塞链路,训练、存储并定期更新链路拥塞检测模型(即链路拥塞检测模型)。
[0070]
下面以一个具体的实例对上述实施例提供的方法进行举例说明,但本公开并不限定于此。
[0071]
本公开实施例提出的一种链路拥塞检测方法,可以包括如下步骤:
[0072]
步骤一、考虑到数据的采集存储成本,假设采集粒度设置为5min,数据采集子系统200为不间断采集,采集到的链路流量等数据实时存入数据管理平台300,其中采集的数据
包括链路丢包率、链路延时、链路抖动、物理/逻辑端口流量、链路带宽占用率、光口/电口、设备和端口状态、cpu使用率、内存使用率、链路种类(物理/逻辑链路)、链路类型(是否捆绑链路)、链路数量、是否域间链路、物理/逻辑端口带宽、承载业务类型等。
[0073]
步骤二、数据获取清洗模块410从数据管理平台300通过不同的接口方式获取配置、性能、流量等网络源数据,并根据数据清洗规则对网络源数据进行清洗处理,将清洗处理后的数据存放到数据仓库中,清洗操作可以包括单一指标缺失值数量超过30%时删除该指标,未超过时使用众数填充缺失值,删除重复数据等,清洗后的数据例如如下表1所示。
[0074]
表1
[0075]
[0076][0077]
其中,每条链路(包括历史链路和当前链路)包括源节点、宿节点、源端口和宿端口,物理/逻辑端口流量可以根据链路的源端口发送字节数和/或宿端口接收字节数来确定,设备和端口状态可以包括源物理端口状态和宿物理端口状态,物理/逻辑端口带宽可以包括源端端口带宽。
[0078]
步骤三、对清洗处理后的数据进行预处理和特征工程,包括编码、归一化(例如采
用minmaxscaler)、pca(principal component analysis,主成分分析)降维、时间特征抽取(如是否工作日、是否活动日、是否忙闲时等)等。
[0079]
步骤四、根据数据降维后的各主成分方差贡献率排名前2(要求前几主成分方差累计贡献率不低于90%)的二维图的空间分布特点决定类别数为3。
[0080]
步骤五、使用kmeans聚类算法对结构化存储单元422中存储的数据进行聚类分析,这里假设类别数设定为3,训练、存储并定期更新聚类模型。
[0081]
步骤六、分别统计不同类别中原始数据的时延、抖动、丢包率、带宽占用率这4个指标的平均值和方差。例如,假设如下表2所示。
[0082]
表2
[0083][0084]
步骤七、针对每类不同分布情况对每类设置不同的异常值水平,例如,假设根据上表2可以看出第0类的时延、抖动、丢包率、带宽占用率这4个指标的平均值和方差均较小,第1类的时延、抖动、丢包率、带宽占用率这4个指标的平均值和方差处于中间,第2类的时延、抖动、丢包率、带宽占用率这4个指标的平均值和方差最大,因此,异常值水平的范围分别设定为第0类0.001%,第1类0.03%,第2类100%。异常值水平是否合理可以根据专家经验判定的拥塞情况进行判断、调整)。
[0085]
步骤八、分别对每类进行isolationforest异常值检测,根据检测出的链路异常值,并结合阈值设置单元425设置的链路拥塞阈值来判断是否为拥塞链路,训练、存储并定期更新链路拥塞检测模型(链路拥塞检测模型,这里以isolationforest异常检测模型为例进行举例说明)。
[0086]
步骤九、系统运行时链路拥塞检测模型结合实时流量等数据和阈值设置单元425设置的链路拥塞阈值判断是否产出拥塞信息,具体可通过比较isolationforest异常检测模型的decision_function输出值调整链路拥塞阈值。
[0087]
在一些实施例中,可以直接根据每类链路不同拥塞情况,对每类进行isolationforest异常检测并设置不同的异常值水平,根据检测出的链路异常值,并结合阈值设置单元425设置的链路拥塞阈值来判断是否为拥塞链路,即若当前链路在当前时刻的当前链路信息通过目标链路拥塞检测模型处理后,判断为正常链路,则直接将该当前链路在当前时刻确定为正常链路,即没有发生链路拥塞,标记为非拥塞链路;若判断为非正常链路,则可以直接判定该当前链路在当前时刻为拥塞链路,即发生了链路拥塞。
[0088]
在另一些实施例中,若判断为非正常链路,则目标链路拥塞检测模型例如目标isolationforest异常检测模型会输出decision_function输出值,作为当前链路在当前时刻的链路异常值,获取阈值设置单元425设置的链路拥塞阈值,若decision_function输出值小于或等于链路拥塞阈值,则可以将当前链路在当前时刻判定为非拥塞链路;若decision_function输出值大于链路拥塞阈值,则可以将当前链路在当前时刻判定为拥塞链路,由此可以实现对链路拥塞问题的精确合理检测和阈值灵活调整。
[0089]
步骤十、链路拥塞检测单元424可以将拥塞信息发送至链路拥塞预测模块(即链路拥塞预测模块430)和分析结果库440,以用于标记拥塞预警模型(链路拥塞预测模型)的数据集,并将拥塞信息通过订阅服务等方式通知给数据管理平台300以修改链路状态,辅助路径规划等。
[0090]
本公开实施例中的拥塞信息可以包括当前链路拥塞检测结果,当前链路拥塞检测结果可以包括当前链路的相关信息(例如链路的标记、当前链路信息等)、采集时间(包括当前时刻)以及拥塞标记,拥塞标记表示该当前链路在所述当前时刻为拥塞链路或者非拥塞链路。在其他实施例中,拥塞信息还可以包括历史链路拥塞检测结果,历史链路拥塞检测结果可以包括历史链路的相关信息(例如链路的标记、历史链路信息等)、采集时间(包括历史时刻)以及拥塞标记,拥塞标记表示该历史链路在所述历史时刻为拥塞链路或者非拥塞链路。
[0091]
在一些实施例中,可以将各个采集时间的链路拥塞检测结果(包括当前链路拥塞检测结果和历史链路拥塞检测结果)存储至分析结果库440中,链路拥塞预测模块430可以读取分析结果库440中存储的链路拥塞检测结果,若检测到同一链路(可以是当前链路,也可以是历史链路)连续n次的拥塞标记为拥塞链路,例如n=3,则可以对该链路发出链路拥塞预警通知消息,若连续3次没有发生链路拥塞,则可以不对该链路发出链路拥塞预警通知消息,或者对该链路发出链路不拥塞通知消息。
[0092]
在另一些实施例中,可以将各个采集时间的链路拥塞检测结果(包括当前链路拥塞检测结果和历史链路拥塞检测结果)存储至分析结果库440中,链路拥塞预测模块430可以读取分析结果库440中存储的链路拥塞检测结果,若检测到同一链路(可以是当前链路,也可以是历史链路)连续m次的拥塞标记为拥塞链路,例如m=3,则可以对该链路重新打标签,将其打上拥塞标签,若没有连续m次的拥塞标记为拥塞链路,则打上非拥塞标签,将重新打上标签的数据作为训练数据集,用于训练链路拥塞预测模型,链路拥塞预测模型可以采用任意的机器学习算法,本公开对此不做限定。然后利用训练完成的链路拥塞预测模型来预测当前链路是否为链路拥塞链路。
[0093]
本公开实施方式提供的链路拥塞检测方法,一方面,基于kmean聚类算法对链路单一时刻流量等数据进行聚类分析,挖掘不同因素对链路拥塞情况的影响,实现不同拥塞情
况的链路的分类,即通过聚类方法挖掘链路历史流量等数据的相关关系,并根据每类链路不同拥塞情况对每类进行异常检测,实现对链路拥塞问题的精确检测,相比于基于专家经验设置的单一性能指标的拥塞检测方法更加合理;另一方面,根据每类链路不同拥塞情况对每类进行isolationforest异常检测并设置不同的异常值水平,根据检测出的链路异常值,并结合阈值设置单元设置的链路拥塞阈值来判断是否为拥塞链路,根据异常检测模型(链路拥塞检测模型)的decision_function输出值(即链路异常值)设置灵活可调的链路拥塞阈值,实现对链路拥塞问题的精确合理检测和阈值灵活调整,使得网络可以根据链路类型、网络位置等信息灵活调整链路拥塞阈值,提升网络保障水平和业务感知。
[0094]
还应理解,上述只是为了帮助本领域技术人员更好地理解本公开实施例,而非要限制本公开实施例的范围。本领域技术人员根据所给出的上述示例,显然可以进行各种等价的修改或变化,例如,上述方法中某些步骤可以是不必须的,或者可以新加入某些步骤等。或者上述任意两种或者任意多种实施例的组合。这样的修改、变化或者组合后的方案也落入本公开实施例的范围内。
[0095]
还应理解,上文对本公开实施例的描述着重于强调各个实施例之间的不同之处,未提到的相同或相似之处可以互相参考,为了简洁,这里不再赘述。
[0096]
还应理解,上述各过程的序号的大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本公开实施例的实施过程构成任何限定。
[0097]
还应理解,在本公开的各个实施例中,如果没有特殊说明以及逻辑冲突,不同的实施例之间的术语和/或描述具有一致性、且可以相互引用,不同的实施例中的技术特征根据其内在的逻辑关系可以组合形成新的实施例。
[0098]
上文详细介绍了本公开提供的链路拥塞检测方法示例。可以理解的是,计算机设备为了实现上述功能,其包含了执行各个功能相应的硬件结构和/或软件模块。本领域技术人员应该很容易意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,本公开能够以硬件或硬件和计算机软件的结合形式来实现。某个功能究竟以硬件还是计算机软件驱动硬件的方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本公开的范围。
[0099]
下面将介绍本公开提供的链路拥塞检测装置。
[0100]
图4示意性示出了根据本公开的一实施例的链路拥塞检测装置的示意性框图。
[0101]
如图4所示,本公开实施例提供的链路拥塞检测装置500可以包括当前链路信息获得单元510、链路聚类类别确定单元520以及链路拥塞检测单元530。
[0102]
当前链路信息获得单元510可以用于获得当前时刻的当前链路的当前链路信息。
[0103]
链路聚类类别确定单元520可以用于根据所述当前链路信息确定所述当前链路在所述当前时刻所属的目标链路聚类类别。
[0104]
链路拥塞检测单元530可以用于调用所述目标链路聚类类别对应的目标链路拥塞检测模型处理所述当前链路信息,确定所述当前链路在所述当前时刻是否为拥塞链路。
[0105]
图4实施例的其它内容可以参照上述其它实施例。
[0106]
应理解,当前链路信息获得单元510可以由收发器实现,链路聚类类别确定单元520以及链路拥塞检测单元530可由处理器实现。链路拥塞检测装置500还可以包括存储单
元,存储单元可以由存储器实现。如图5所示的链路拥塞检测装置600可以包括处理器610、存储器620以及收发器630。
[0107]
应理解,上述各个单元的划分仅仅是功能上的划分,实际实现时可能会有其它的划分方法。
[0108]
本公开实施例还提供了一种链路拥塞检测装置,包括处理器和接口;该处理器,用于执行上述任一方法实施例中的链路拥塞检测方法。
[0109]
应理解,上述处理装置可以是一个芯片。例如,该处理装置可以是现场可编程门阵列(field-programmable gate array,fpga),可以是专用集成芯片(application specific integrated circuit,asic),还可以是系统芯片(system on chip,soc),还可以是中央处理器(central processor unit,cpu),还可以是网络处理器(network processor,np),还可以是数字信号处理电路(digital signal processor,dsp),还可以是微控制器(micro controller unit,mcu),还可以是可编程控制器(programmable logic device,pld)或其他集成芯片。
[0110]
在实现过程中,上述方法的各步骤可以通过处理器中的硬件的集成逻辑电路或者软件形式的指令完成。结合本公开实施例所公开的方法的步骤可以直接体现为硬件处理器执行完成,或者用处理器中的硬件及软件模块组合执行完成。软件模块可以位于随机存储器,闪存、只读存储器,可编程只读存储器或者电可擦写可编程存储器、寄存器等本领域成熟的存储介质中。该存储介质位于存储器,处理器读取存储器中的信息,结合其硬件完成上述方法的步骤。为避免重复,这里不再详细描述。
[0111]
应注意,本公开实施例中的处理器可以是一种集成电路芯片,具有信号的处理能力。在实现过程中,上述方法实施例的各步骤可以通过处理器中的硬件的集成逻辑电路或者软件形式的指令完成。上述的处理器可以是通用处理器、数字信号处理器(digitalsignal processor,dsp)、专用集成电路(application specific integrated crcuit,asic)、现成可编程门阵列(field programmable gate array,fpga)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。可以实现或者执行本公开实施例中的公开的各方法、步骤及逻辑框图。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。结合本公开实施例所公开的方法的步骤可以直接体现为硬件译码处理器执行完成,或者用译码处理器中的硬件及软件模块组合执行完成。软件模块可以位于随机存储器,闪存、只读存储器,可编程只读存储器或者电可擦写可编程存储器、寄存器等本领域成熟的存储介质中。该存储介质位于存储器,处理器读取存储器中的信息,结合其硬件完成上述方法的步骤。
[0112]
本公开实施例还提供了一种计算机可读介质,其上存储有计算机程序,该计算机程序被计算机执行时实现上述任一方法实施例中的链路拥塞检测方法。
[0113]
本公开实施例还提供了一种计算机程序产品,该计算机程序产品被计算机执行时实现上述任一方法实施例中的链路拥塞检测方法。
[0114]
本公开实施例还提供了一种系统芯片,该系统芯片包括:处理单元和通信单元,该处理单元,例如可以是处理器,该通信单元例如可以是输入/输出接口、管脚或电路等。该处理单元可执行计算机指令,以使该链路拥塞检测装置内的芯片执行上述本公开实施例提供的任一种链路拥塞检测方法。
[0115]
可选地,该计算机指令被存储在存储单元中。
[0116]
可选地,该存储单元为该芯片内的存储单元,如寄存器、缓存等,该存储单元还可以是该终端内的位于该芯片外部的存储单元,如只读存储器(read-only memory,rom)或可存储静态信息和指令的其他类型的静态存储设备,随机存取存储器(random access memory,ram)等。其中,上述任一处提到的处理器,可以是一个cpu,微处理器,asic,或一个或多个用于控制上述的链路拥塞检测方法的程序执行的集成电路。该处理单元和该存储单元可以解耦,分别设置在不同的物理设备上,通过有线或者无线的方式连接来实现该处理单元和该存储单元的各自的功能,以支持该系统芯片实现上述实施例中的各种功能。或者,该处理单元和该存储器也可以耦合在同一个设备上。
[0117]
在上述实施例中,可以全部或部分地通过软件、硬件、固件或者其任意组合来实现。当使用软件实现时,可以全部或部分地以计算机程序产品的形式实现。该计算机程序产品包括一个或多个计算机指令。在计算机上加载和执行该计算机指令时,全部或部分地产生按照本公开实施例的流程或功能。该计算机可以是通用计算机、专用计算机、计算机网络、或者其他可编程装置。该计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一个计算机可读存储介质传输,例如,该计算机指令可以从一个网站站点、计算机、服务器或数据中心通过有线(例如同轴电缆、光纤、数字用户线(digital subscriber line,dsl))或无线(例如红外、无线、微波等)方式向另一个网站站点、计算机、服务器或数据中心进行传输。该计算机可读存储介质可以是计算机能够存取的任何可用介质或者是包含一个或多个可用介质集成的服务器、数据中心等数据存储设备。该可用介质可以是磁性介质(例如,软盘、硬盘、磁带)、光介质(例如,高密度数字视频光盘(digital video disc,dvd))、或者半导体介质(例如,固态硬盘(solid state disk,ssd))等。
[0118]
在本公开所提供的几个实施例中,应该理解到,所揭露的系统、装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,该单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
[0119]
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
[0120]
另外,在本公开各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。
[0121]
在本公开的各个实施例中,如果没有特殊说明以及逻辑冲突,不同的实施例之间的术语和/或描述具有一致性、且可以相互引用,不同的实施例中的技术特征根据其内在的逻辑关系可以组合形成新的实施例。
[0122]
以上所述,仅为本公开的具体实施方式,但本公开的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本公开揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本公开的保护范围之内。因此,本公开的保护范围应以所述权利要求的保护范围为准。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1