CN115550211A - 网络连接质量的探测方法、装置、存储介质和电子装置 - Google Patents

网络连接质量的探测方法、装置、存储介质和电子装置 Download PDF

Info

Publication number
CN115550211A
CN115550211A CN202110729978.1A CN202110729978A CN115550211A CN 115550211 A CN115550211 A CN 115550211A CN 202110729978 A CN202110729978 A CN 202110729978A CN 115550211 A CN115550211 A CN 115550211A
Authority
CN
China
Prior art keywords
detection
task
target
detection task
abnormal
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.)
Pending
Application number
CN202110729978.1A
Other languages
English (en)
Inventor
赵金鑫
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Qingdao Haier Technology Co Ltd
Haier Smart Home Co Ltd
Original Assignee
Qingdao Haier Technology Co Ltd
Haier Smart Home Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Qingdao Haier Technology Co Ltd, Haier Smart Home Co Ltd filed Critical Qingdao Haier Technology Co Ltd
Priority to CN202110729978.1A priority Critical patent/CN115550211A/zh
Publication of CN115550211A publication Critical patent/CN115550211A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/08Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/50Testing arrangements

Abstract

本发明公开了一种网络连接质量的探测方法、装置、存储介质和电子装置,其中,上述方法包括:基于目标区域拓扑信息和探测点部署信息,生成第一探测任务集合和异常检测任务,其中,第一探测任务集合用于探测目标区域网络连接质量;利用异常检测任务对第一探测任务集合中的目标探测任务进行异常检测;当确定目标探测任务存在异常时,生成异常事件并对异常事件进行分组存储。采用上述技术方案,解决了无法对网络连接质量进行持续监控的技术问题。

Description

网络连接质量的探测方法、装置、存储介质和电子装置
技术领域
本发明涉及通信领域,具体而言,涉及一种网络连接质量的探测方法、装置、存储介质和电子装置。
背景技术
目前,多数开发人员不了解网络在多个机房间通过何种方式进行连接。而对于机房维护人员来说,由于会更加关注基础设施的管理及维护,从而缺少对业务实际运行情况的感知。
当网络有问题时,缺少对网络质量的持续监控,业务及机房管理人员无法看到业务运行在网络上的真实状况,从而会大大增加业务排查问题的难度,存在无法对网络连接质量进行持续监控的技术问题。
针对相关技术中,无法对网络连接质量进行持续监控的技术问题,尚未提出有效的解决方案。
发明内容
本发明实施例提供了一种网络连接质量的探测方法、装置、存储介质和电子装置,以至少解决无法对网络连接质量进行持续监控的技术问题。
根据本发明实施例的一个实施例,提供了一种网络连接质量的探测方法。该方法可以包括:基于目标区域拓扑信息和探测点部署信息,生成第一探测任务集合和异常检测任务,其中,第一探测任务集合用于探测目标区域网络连接质量;利用异常检测任务对第一探测任务集合中的目标探测任务进行异常检测;当确定目标探测任务存在异常时,生成异常事件并对异常事件进行分组存储。
在一个示例性实施例中,基于目标区域拓扑信息和探测点部署信息,生成第一探测任务集合和异常检测任务包括:从第一预设存储区域获取目标区域拓扑信息和探测点部署信息;当目标区域拓扑信息和/或探测点部署信息发生变化时,生成第一探测任务集合和异常检测任务。
在一个示例性实施例中,生成第一探测任务集合包括:基于目标区域拓扑信息确定第一目标子区域和第二目标子区域;获取第一目标子区域中包含的第一探测点集合,第二目标子区域中包含的第二探测点集合以及指定任务数量;利用第一探测点集合,第二探测点集合和指定任务数量生成第一探测任务集合。
在一个示例性实施例中,网络连接质量的探测方法还包括:将第一探测任务集合与第二探测任务集合进行比对,确定差异任务集合,其中,第二探测任务集合为第二预设存储区域内已存储的探测任务;将差异任务集合与异常检测任务注册至第二预设存储区域。
在一个示例性实施例中,利用异常检测任务对目标探测任务进行异常检测包括:从第二预设存储区域中获取目标探测任务;抓取并存储目标探测任务的监控数据;基于异常检测任务确定监控数据是否存在异常。
在一个示例性实施例中,基于异常检测任务确定监控数据是否存在异常包括:从第二预设存储区域中获取异常检测任务;按照预设模板将异常检测任务转化为待使用的规则文件;加载规则文件,并利用规则文件确定监控数据是否存在异常。
在一个示例性实施例中,当确定目标探测任务存在异常时,生成异常事件并对异常事件进行分组存储包括:当监控数据存在异常时,获取异常信息并对异常信息进行分组处理,得到分组标签;基于分组标签向异常信息中添加对应的目标区域拓扑信息,生成异常事件;向第三预设存储区域上报异常事件。
根据本发明实施例的另一个实施例,还提供了一种网络连接质量的探测装置。该装置可以包括:第一生成单元,用于基于目标区域拓扑信息和探测点部署信息,生成第一探测任务集合和异常检测任务,其中,第一探测任务集合用于探测目标区域网络连接质量;检测单元,用于利用异常检测任务对第一探测任务集合中的目标探测任务进行异常检测;第二生成单元,用于当确定目标探测任务存在异常时,生成异常事件并对异常事件进行分组存储。
根据本发明实施例的另一个实施例,还提供了一种计算机可读的存储介质。该计算机可读的存储介质包括存储的程序,其中,程序被处理器运行时执行本发明实施例的网络连接质量的探测方法。
根据本发明实施例的另一个实施例,还提供了一种电子装置。该电子装置可以包括存储器和处理器,存储器中存储有计算机程序,处理器被设置为通过计算机程序执行本发明实施例的网络连接质量的探测方法。
在本发明实施例中,基于目标区域拓扑信息和探测点部署信息,生成第一探测任务集合和异常检测任务,其中,第一探测任务集合用于探测目标区域网络连接质量;利用异常检测任务对第一探测任务集合中的目标探测任务进行异常检测;当确定目标探测任务存在异常时,生成异常事件并对异常事件进行分组存储。也就是说,本申请的方案具有任务生成功能,基于目标区域拓扑信息和探测点部署信息,生成第一探测任务集合和异常检测任务,可以利用异常检测任务对第一探测任务集合中的目标探测任务实现异常检测功能,当目标探测任务存在异常时,可以生成异常事件并对异常事件进行分组存储,以供后续查询,从而实现了在保持研发、部署及维护低成本的前提下,对网络连接质量进行持续监控的技术效果,解决了无法对网络连接质量进行持续监控的技术问题。
附图说明
此处所说明的附图用来提供对本发明的进一步理解,构成本申请的一部分,本发明的示意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定。在附图中:
图1是本发明实施例的一种网络连接质量的探测方法的计算机终端的硬件结构框图;
图2是根据本发明实施例的一种网络连接质量的探测方法的流程图;
图3是根据本发明实施例的一种监控机房间网络质量的示意图;
图4是根据本发明实施例的一种探测任务生成的方法的流程图。
图5是根据本发明实施例的一种数据抓取及异常检测的方法的流程图;
图6是根据本发明实施例的一种网络连接质量的探测装置的结构框图。
具体实施方式
为了使本技术领域的人员更好地理解本发明方案,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分的实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本发明保护的范围。
需要说明的是,本发明的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本发明的实施例能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
本申请实施例所提供的方法实施例可以在计算机终端、计算机终端或者类似的运算装置中执行。以运行在计算机终端上为例,图1是本发明实施例的一种网络连接质量的探测方法的计算机终端的硬件结构框图。如图1所示,计算机终端可以包括一个或多个(图1中仅示出一个)处理器102(处理器102可以包括但不限于微处理器MCU或可编程逻辑器件FPGA等的处理装置)和用于存储数据的存储器104,在一个示例性实施例中,上述计算机终端还可以包括用于通信功能的传输装置106以及输入输出设备108。本领域普通技术人员可以理解,图1所示的结构仅为示意,其并不对上述计算机终端的结构造成限定。例如,计算机终端还可包括比图1中所示更多或者更少的组件,或者具有与图1所示等同功能或比图1所示功能更多的不同的配置。
存储器104可用于存储计算机程序,例如,应用软件的软件程序以及模块,如本发明实施例中的数据请求的处理方法对应的计算机程序,处理器102通过运行存储在存储器104内的计算机程序,从而执行各种功能应用以及数据处理,即实现上述的方法。存储器104可包括高速随机存储器,还可包括非易失性存储器,如一个或者多个磁性存储装置、闪存、或者其他非易失性固态存储器。在一些实例中,存储器104可进一步包括相对于处理器102远程设置的存储器,这些远程存储器可以通过网络连接至计算机终端。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
传输装置106用于经由一个网络接收或者发送数据。上述的网络具体实例可包括计算机终端的通信供应商提供的无线网络。在一个实例中,传输装置106包括一个网络适配器(Network Interface Controller,简称为NIC),其可通过基站与其他网络设备相连从而可与互联网进行通讯。在一个实例中,传输装置106可以为射频(Radio Frequency,简称为RF)模块,其用于通过无线方式与互联网进行通讯。
在本实施例中提供了一种网络连接质量的探测方法,应用于上述计算机终端,图2是根据本发明实施例的一种网络连接质量的探测方法的流程图。如图2所示,该方法可以包括以下步骤:
步骤S202,基于目标区域拓扑信息和探测点部署信息,生成第一探测任务集合和异常检测任务,其中,第一探测任务集合用于探测目标区域网络连接质量。
在本申请上述步骤S202提供的技术方案中,目标区域拓扑信息可以是机房拓扑信息,其可以体现机房拓扑关系,可以包括机房的名称、机房的地址(IP)段、机房连接信息等,其中,机房连接信息用于表示机房可以连通到其它哪个机房。该实施例的探测点部署信息可以为探测点IP信息,可以包括所有探测点部署的IP信息。其中,探测点可以为通过开源监控套件(BlackBox)提供的网络探测功能。
在获取目标区域拓扑信息和探测点部署信息之后,可以基于目标区域拓扑信息和探测点部署信息生成第一探测任务集合和异常检测任务,其中,第一探测任务集合也即全量探测任务,包括多个探测任务,每个探测任务可以是从一个探测点到另一个探测点的监控任务,可以包括传输控制协议(Transmission Control Protocol,简称为TCP)/控制报文协议(Internet Control Message Protocol,简称为ICMP)包,可以用于抓取对目标区域进行监控的监控数据,通过该监控数据探测目标区域的网络连接质量。
步骤S204,利用异常检测任务对第一探测任务集合中的目标探测任务进行异常检测。
在本申请上述步骤S204提供的技术方案中,在基于目标区域拓扑信息和探测点部署信息,生成第一探测任务集合和异常检测任务之后,可以利用异常检测任务对第一探测任务集合中的目标探测任务进行异常检测。
在该实施例中,可以在第一探测任务集合中确定目标探测任务,利用异常检测任务对上述目标探测任务进行异常检测。可选地,该实施例对目标探测任务进行异常检测可以是根据异常检测任务判断目标探测任务的监控数据是否有异常。
步骤S206,当确定目标探测任务存在异常时,生成异常事件并对异常事件进行分组存储。
在本申请上述步骤S206提供的技术方案中,在利用异常检测任务对第一探测任务集合中的目标探测任务进行异常检测之后,当检测出目标探测任务存在异常时,比如,检测出目标探测任务的监控数据存在异常,则可以生成异常事件,该异常事件可以包括异常消息,用于表示目标探测任务的监控数据存在异常,进而对异常事件进行分组存储,从而供后续查询,可以供后续在网络监控产品界面对异常事件进行查询,还可以对目标探测任务的监控数据进行查询,从而达到了对网络连接质量进行持续监控的目的。
通过本申请上述步骤S202至步骤S206,基于目标区域拓扑信息和探测点部署信息,生成第一探测任务集合和异常检测任务,其中,第一探测任务集合用于探测目标区域网络连接质量;利用异常检测任务对第一探测任务集合中的目标探测任务进行异常检测;当确定目标探测任务存在异常时,生成异常事件并对异常事件进行分组存储。也就是说,本申请的方案具有任务生成功能,基于目标区域拓扑信息和探测点部署信息,生成第一探测任务集合和异常检测任务,可以利用异常检测任务对第一探测任务集合中的目标探测任务实现异常检测功能,当目标探测任务存在异常时,可以生成异常事件并对异常事件进行分组存储,以供后续查询,从而实现了在保持研发、部署及维护低成本的前提下,对网络连接质量进行持续监控的技术效果,解决了无法对网络连接质量进行持续监控的技术问题。
下面对该实施例的上述方法进行进一步介绍。
作为一种可选的实施方式,步骤S202,基于目标区域拓扑信息和探测点部署信息,生成第一探测任务集合和异常检测任务包括:从第一预设存储区域获取目标区域拓扑信息和探测点部署信息;当目标区域拓扑信息和/或探测点部署信息发生变化时,生成第一探测任务集合和异常检测任务。
在该实施例中,目标区域拓扑信息和探测点部署信息可以存储在第一预测存储区域,该第一预测存储区域可以为配置管理数据库(CMDB),其可以用于对企业互联网技术(Internet Technology,简称为IT)架构中的目标区域拓扑信息(比如,机房拓扑信息)以及探测点部署信息进行抽象、存储。
在实现基于目标区域拓扑信息和探测点部署信息,生成第一探测任务集合和异常检测任务时,可以是先从上述第一预测存储区域中获取目标区域拓扑信息和探测点部署信息,然后判断目标区域拓扑信息和/或探测点部署信息是否发生变化,如果判断出目标区域拓扑信息和探测点部署信息没有发生变化,则探测任务也不会发生变化,可以直接返回等待下次定时任务开始。如果判断出目标区域拓扑信息和/或探测点部署信息发生变化时,则可以基于目标区域拓扑信息和探测点部署信息,重新生成第一探测任务集合和异常检测任务。
作为一种可选的实施方式,步骤S202,生成第一探测任务集合包括:基于目标区域拓扑信息确定第一目标子区域和第二目标子区域;获取第一目标子区域中包含的第一探测点集合,第二目标子区域中包含的第二探测点集合以及指定任务数量;利用第一探测点集合,第二探测点集合和指定任务数量生成第一探测任务集合。
在该实施例中,由于目标区域拓扑信息可以包括机房的名称、机房IP段、机房连接信息等,在生成第一探测任务集合时,可以是先基于目标区域拓扑信息确定第一目标子区域和第二目标子区域,其中,第一目标子区域可以为源机房,而第二目标子区域可以为目的机房。可选地,该实施例的第一目标子区域包括第一探测点集合,比如,源机房探测点列表(srcAgents),第二目标子区域可以保护第二探测点集合,比如,目的机房的探测点列表(dstAgents),可以获取上述第一探测点集合、第二探测点集合。
在该实施例中,网络质量监控本质上采用抽样的方法,选取多个不同探测点之间的网络连接情况作为样本数据,来推测当前区域的网络连接质量。为了提高抽样的准确性,需要在每个区域部署足够多的探测点,防止某个探测点异常产生的噪声数据影响整体结果。另外,如果简单的对所有探测点叉乘生成所有任务,任务数量会以探测点数量的平方级别迅速增长,比如,在有10个机房,每个机房有10个探测点的情况下,会有10*90*10=9000个任务生成。
由于某个探测点异常会导致关联的所有任务都异常,因此在生成任务时,只要保证样本数足够,而不必要对所有探测点的叉乘生成任务。该实施例可以获取指定任务数量(N),该指定任务数量可以是指从第一目标子区域到第二目标子区域生成的指定的任务数量,进而可以利用第一探测点集合,第二探测点集合和指定任务数量生成第一探测任务集合。
在该实施例中,需要尽量保证任务在探测点之间分布均匀,FnvHash作为一种哈希(Hash)算法,能够在输入比较相似的情况下,保证较好的分布。该实施例可以尽量保证在探测点变更时不会大规模改变任务,以防止频繁注册服务导致存储区域的存储压力过大。
在该实施例中,如果指定任务数量小于第一探测点集合中探测点的数量,则可以对第一探测点集合中的探测点进行排序,可以对第一目标子区域和第二目标子区域的名称通过FnvHash算法进行处理,并对第一子数量探测点的数量取模,得到下标p。可以从p开始,取[p,p+1,p+2…,0,1,…,x]共N个探测点作为源探测点。每个源探测点可以取d=1个目的探测点。
可选地,如果指定任务数量大于第一探测点集合中探测点的数量,则源探测点为第一探测点集合,每个源探测点可以取d=N/srcAgents.length个目的探测点。
可选地,该实施例对第二探测点集合中的探测点进行排序。可以循环源探测点,对源探测点的信息通过FnvHash算法进行处理,并对第二探测点集合的探测点的数量取模,得到下标p,从p开始,取[p,p+1,…,0,1…x]共d个目的探测点,从而通过上述源探测点以及对应的目的探测点组成(源探测点,目的探测点)对的列表,可以返回(源探测点,目的探测点)对的列表,基于其生成第一探测任务集合。
作为一种可选的实施方式,网络连接质量的探测方法还包括:将第一探测任务集合与第二探测任务集合进行比对,确定差异任务集合,其中,第二探测任务集合为第二预设存储区域内已存储的探测任务;将差异任务集合与异常检测任务注册至第二预设存储区域。
在该实施例中,由于任务数量与探测点数量的平方成正比,任务数量一般会较大。而一次性变更全部任务会对第二预设存储区域产生较大压力,其中,第二预设存储区域可以为开源的高可用服务注册中心(Consul),其可以用于存储第一探测任务集合和异常检测任务,其中,可以将第一探测任务集合转换为第二预设存储区域的服务,异常检测任务转换为键/值(Key/Value),写入第二预设存储区域中。该实施例可以将第一探测任务集合与第二探测任务集合进行比对,确定差异任务集合,其中,第二探测任务集合可以为第二预设存储区域内已经存储的探测任务,也即,该实施例比对新生成的第一探测任务集合和在第二预设存储区域内已有的第二探测任务集合,得到差异任务集合,进而将差异任务集合与异常检测任务注册至第二预设存储区域中,从而避免了一次性变更全部任务对第二预设存储区域产生较大压力。
作为一种可选的实施方式,步骤S204,利用异常检测任务对目标探测任务进行异常检测包括:从第二预设存储区域中获取目标探测任务;抓取并存储目标探测任务的监控数据;基于异常检测任务确定监控数据是否存在异常。
在该实施例中,在实现利用异常检测任务对目标探测任务进行异常检测时,可以从第二预设存储区域中获取目标探测任务,可以是利用开源监控套件(Prometheus)配置自动发现第二预设存储区域中的服务,该服务可以用于表示从一个探测点到另一个探测点的目标探测任务,比如,从A机房的X探测点发送TCP/ICMP包到B机房的Y探测点。在从第二预设存储区域中获取目标探测任务之后,可以抓取并存储目标探测任务的监控数据,该监控数据也即探测额数据,上述Prometheus可以定期抓取目标探测任务的监控数据,并对该监控数据的时序数据进行存储,进而根据异常检测任务判断监控数据是否存在异常。可选地,该实施例可以通过异常检测任务根据目标区域拓扑信息确定监控数据的异常类型。可选地,该实施例可以通过开源监控套(Grafana)对上述监控数据提供时序数据可视化功能。
作为一种可选的实施方式,基于异常检测任务确定监控数据是否存在异常包括:从第二预设存储区域中获取异常检测任务;按照预设模板将异常检测任务转化为待使用的规则文件;加载规则文件,并利用规则文件确定监控数据是否存在异常。
在该实施例中,由于第二预设存储区域中存储了异常检测任务,在实现基于异常检测任务确定监控数据是否存在异常时,可以是通过配置更新服务从第二预设存储区域中拉取异常检测任务,并使用预设模板将异常检测任务转化为待使用的规则文件(Rule文件),比如,转化为Prometheus可以接受的规则文件,然后加载规则文件,可选地,配置更新服务可以通知Prometheus重新加载规则文件,进而利用该规则文件确定监控数据是否存在异常。
作为一种可选的实施方式,步骤S206,当确定目标探测任务存在异常时,生成异常事件并对异常事件进行分组存储包括:当监控数据存在异常时,获取异常信息并对异常信息进行分组处理,得到分组标签;基于分组标签向异常信息中添加对应的目标区域拓扑信息,生成异常事件;向第三预设存储区域上报异常事件。
在该实施例中,当确定目标探测任务存在异常时,生成异常事件并对异常事件进行分组存储时,可以在确定目标探测任务的监控数据存在异常时,获取异常信息,该异常信息用于表示监控数据存在异常,可以对异常信息进行分组处理,得到分组标签,可选地,该实施例可以使用开源监控套组件(AlertManager)对异常信息进行分组处理,得到分组标签,并且也可以对其通过通知消息进行发送。可选地,该实施例基于上述分组标签向异常信息中添加对应的目标区域拓扑信息,生成异常事件,可以通过AlertManager将异常事件上报至第三预设存储区域,该第三预设存储区域可以为自研的异常事件存储服务,其可以根据网络质量监控的业务要求将异常事件存储为网络质量异常事件,可以实现对历史信息的存储,并对其提供查询功能。
该实施例可以利用开源监控套件实现稳定、高效的基础监控功能,避免重复开发,通过自研管理组件实现网络监控功能。其中,可以通过Consul开源组件实现开源监控组件动态加载配置,自研异常事件存储组件,实现历史异常信息的存储。在网络监控的任务生成方面,能够根据系统压力,调整任务数量,同时保证探测点分布尽可能均匀。任务生成、异常事件存储可以使用两个自研组件实现,这样在保持研发、部署及维护低成本的前提下,实现了网络质量的持续监控,大大降低了业务排查问题的难度,使得业务及机房管理人员看到业务运行在网络上的真实状况。
为了更好的理解上述网络连接质量的探测方法的过程,以下再结合可选实施例对上述网络连接质量的探测方法进行说明,但不用于限定本发明实施例的技术方案。
随着网络应用规模的增大,业务的部署结构也由最开始的单体应用向着分布式、微服务化的方向发展。服务之间的通信也从进程之间通信变为网络通信。随着业务的发展,大多数有一定规模的公司会有多个自建或租赁的机房(包括云上的不同可用区)。多个机房之间可以通过专线或其他方式相互连接,以供服务之间进行通信。网络作为连接这些机房的基础服务,在业务运行中的地位就显得格外重要。
对业务人员来说,网络的行为是“透明”的,多数开发人员不了解网络在多个机房间通过何种方式进行连接。而对机房维护人员来说,更加关注基础设施的管理及维护,缺少对业务实际运行情况的感知,从而导致当网络有问题时,由于缺少对网络质量的持续监控,大大增加了业务排查问题的难度。为了让业务及机房管理人员看到业务运行在网络上的真实状况,针对网络质量的基础网络监控就显得十分重要。
在相关技术中,已有针对机房间网络质量监控的SaaS服务以及自研方案。SaaS产品可以有Obkio,其为网络性能监控SaaS产品。用户在各个互联网数据中心(Internet DataCenter,简称为IDC)机房的服务器上部署代理(Agent),产品自动分析各个Agent之间的网络连通性情况。
微软Azure云提供的网络性能监控工具(Azure Network Performance Monitor),可以通过在机器上部署Agent探测不同机房之间的网络时延及丢包率。
而自研方案可以是通过在机房机器中安装自研的探测点,探测点之间互相探测计算整体的网络质量。
上述方案本质上都是通过从一个机房的多个探测点发出TCP或ICMP包到另一个机房的多个探测点,以是否收到返回和收到返回的时延来判定网络质量。
但是,SaaS服务需要安装外部的Agent,并且需要连接外网才能上报数据,这对一些安全性要求高、有自建机房的企业并不友好,并且很难根据自身需要迭代网络监控功能。
而外部公司自研的方案往往不对外开放,而自研一套完备的网络质量监控系统,需要以一套完备的监控系统为前提,而监控系统本身的复杂性又增加了企业的成本。
针对上述问题,该实施例可以提出一种研发成本低,功能可控的机房间网络质量监控方法。下面对其进行介绍。
图3是根据本发明实施例的一种监控机房间网络质量的示意图。如图3所示,其包括:网络监控管理服务、CMDB、Consul、开源监控套件和异常事件存储服务。下面对其分别进行介绍。
网络监控管理服务,为网络质量监控的核心服务,用于提供机房拓扑信息维护、探测点部署信息维护功能,并根据机房拓扑信息、探测点信息自动生成、注册探测任务及异常检测任务。
CMDB,为配置管理数据库,可以对企业IT架构中的机房拓扑信息及探测点部署信息进行抽象、存储。
Consul,为开源的高可用服务注册中心,用于存储探测任务及异常检测任务。
开源监控套件(探测点/Prometheus/AlertManager/Grafana),其中,BlackBox用于提供网络探测功能(即图3中的探测点);Prometheus用于抓取、存储监控时序数据,并根据异常检测任务判定数据是否有异常;AlertManager用于对异常信息进行分组及通知发送;Grafana用于提供时序数据可视化功能。
异常事件存储服务,用于接收上述AlertManager发送的异常事件,并可以根据网络质量监控的业务要求将其存储为网络质量异常事件,提供查询功能,可以在网络监控产品界面对异常事件进行查询,还可以对探测任务的时序数据进行查询,从而达到了对网络连接质量进行持续监控的目的。
在该实施例中,网络质量监控系统可以大致分为三类功能:任务生成功能、数据抓取及异常检测功能和异常检测任务更新。
任务生成功能,可以根据机房拓扑信息及探测点部署信息(IP信息)生成机房间的探测任务。
数据抓取及异常检测功能,可以通过监控服务根据任务收集探测任务的监控数据,并检测探测数据是否异常、存储异常事件。
异常检测任务更新,可以通过配置更新服务进行实现。
下面对探测任务生成的方法进行进一步介绍。
图4是根据本发明实施例的一种探测任务生成的方法的流程图。如图4所示,该方法可以包括以下步骤:
步骤S401,获取机房拓扑信息。
该实施例可以从CMDB中获取所有机房的名称、机房IP段、机房连接信息(可以连通到哪个机房)。
步骤S402,获取探测点IP信息。
该实施例可以获取所有探测点部署的IP信息。
步骤S403,判断机房拓扑信息及探测点部署的IP信息是否有变化。
在该实施例中,由于探测任务由拓扑及探测点IP唯一决定,如果机房拓扑信息以及探测点部署的IP信息没有变化,则探测任务也不会变化,可以直接返回等待下次定时任务开始。
步骤S404,若拓扑信息有变化,则重新生成全量探测任务及异常检测任务。
在该实施例中,由于任务数量与探测点数量的平方成正比,任务数量一般会较大。一次性变更全部任务会对Consul产生较大压力,因此该实施例可以对比新生成任务与已有任务集合,从而获取差异任务集合。
该实施例可以将探测任务转换为Consul服务,异常检测任务转换为Key/Value,写入Consul中。
步骤S405,获取差异任务集合。
该实施例可以将新生成的任务与已有的任务集合进行比对,获取差异任务集合。
步骤S406,注册任务。
该实施例可以将差异任务集合和异常检测任务注册至Consul中。在注册任务之后,开始下一次定时任务。
图5是根据本发明实施例的一种数据抓取及异常检测的方法的流程图。如图5所示,该方法可以包括以下步骤:
步骤S501,Prometheus配置自动发现Consul中的服务。
该实施例的每个服务可以代表从A探测点到B探测点的一个探测任务,该探测任务的内容可以为ICMP包或TCP包。
步骤S502,Prometheus定期抓取服务的监控数据。
步骤S503,将监控数据存储在Prometheus中。
步骤S504,根据Rule文件检测监控数据是否异常。
该实施例的配置更新服务可以拉取Consul中存储的探测任务,按照预设模板将异常检测任务转化为待使用的Rule文件,配置更新服务通知Prometheus加载Rule文件,并利用Rule文件确定监控数据是否存在异常。
步骤S505,根据机房拓扑信息判断监控数据的异常类型,存储异常事件。
在该实施例中,可以将用于表示监控数据异常的异常信息发送至异常事件存储服务进行存储。
在该实施例中,异常事件存储服务可以根据异常信息的标签,添加机房拓扑信息后存储到ES中供后续查询。
下面对该实施例的任务生成算法进行介绍。
在该实施例中,网络质量监控方法本质上可以采用抽样的方法,选取多个不同探测点之间的网络连接情况作为样本数据,推测当前的机房间网络连接质量。
为了提高抽样的准确性,需要在每个机房部署足够多的探测点,防止某个探测点异常产生的噪声数据影响整体结果。另一方面,如果简单的对所有探测点叉乘生成所有任务,任务数量会以探测点数量的平方级别迅速增长。比如,在10个机房,每个机房10个探测点的情况下,会有10*90*10=9000个任务生成。
由于某个探测点异常会导致关联的所有任务都异常,因此在生成任务时,只要保证样本数足够,不必要对所有探测点的叉乘生成任务。因此该实施例的系统使用基于FnvHash的任务生成算法,算法的目标可以为:
指定从源机房到目的机房生成的任务数量;
尽量保证任务在探测点之间分布均匀,FnvHash作为一种Hash算法,能够在输入比较相似的情况下,保证较好的分布。
尽量保证探测点变更对不会大规模改变任务,从而防止频繁注册服务导致Consul压力过大。
下面对算法进行进一步描述。
算法输入可以是源机房探测点列表(srcAgents)、目的机房的探测点列表(dstAgents)和任务数量N
算法输出可以是包括源探测点、目的探测点的集合。
如果N小于srcAgents数量,对srcAgent排序,对源机房和目的机房的名字做FnvHash,并对srcAgents数量取模,得到下标p,从p开始,取[p,p+1,p+2…,0,1,…,x]共N个探测点作为源探测点。每个探测点取d=1个目的探测点。
如果N大于srcAgents数量,则源探测点为srcAgents,每个源探测点取d=N/srcAgents.length个目的探测点。
对dstAgents排序。循环源探测点:对源探测点的信息做FnvHash,并对dstAgents数量取模,得到下标p,从p开始,取[p,p+1,…,0,1…x]共d个目的探测点。
组成源探测点-目的探测点对的列表,并返回源探测点-目的探测点对的列表。
该实施例可以基于开源监控组件实现底层功能,通过自研管理组件对监控系统的控制实现网络监控功能;通过对consul开源组件,实现开源监控组件动态加载配置;通过自研异常事件存储组件,来实现历史异常信息的存储;在网络监控任务生成方面,能够根据系统压力,调整任务数量,同时保证探测点分布尽可能均匀。
该实施例提出的方案对安全、成本敏感的企业较为友好,一方面可以充分利用开源组件的优势,实现稳定、高效的基础监控功能,从而避免重复开发。另一方面,在任务生成、异常事件存储使用两个自研组件实现。在保持研发、部署及维护低成本的前提下,实现了机房间的网络质量的持续监控,解决了无法对网络连接质量进行持续监控的技术问题,达到了对网络连接质量进行持续监控的技术效果。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到根据上述实施例的方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质(如ROM/RAM、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,服务器,或者网络设备等)执行本发明各个实施例的方法。
在本实施例中还提供了一种网络连接质量的探测装置,该装置用于实现上述实施例及优选实施方式,已经进行过说明的不再赘述。如以下所使用的,术语“模块”可以实现预定功能的软件和/或硬件的组合。尽管以下实施例所描述的设备较佳地以软件来实现,但是硬件,或者软件和硬件的组合的实现也是可能并被构想的。
图6是根据本发明实施例的一种网络连接质量的探测装置的结构框图;如图6所示,该网络连接质量的探测装置60可以包括:第一生成单元61、检测单元62和第二生成单元63。
第一生成单元61,用于基于目标区域拓扑信息和探测点部署信息,生成第一探测任务集合和异常检测任务,其中,第一探测任务集合用于探测目标区域网络连接质量。
检测单元62,用于利用异常检测任务对第一探测任务集合中的目标探测任务进行异常检测。
第二生成单元63,用于当确定目标探测任务存在异常时,生成异常事件并对异常事件进行分组存储。
可选地,第一生成单元61包括:第一获取模块,用于从第一预设存储区域获取目标区域拓扑信息和探测点部署信息;生成模块,用于当目标区域拓扑信息和/或探测点部署信息发生变化时,生成第一探测任务集合和异常检测任务。
可选地,生成模块包括:确定子模块,用于基于目标区域拓扑信息确定第一目标子区域和第二目标子区域;第一获取子模块,用于获取第一目标子区域中包含的第一探测点集合,第二目标子区域中包含的第二探测点集合以及指定任务数量;生成子模块,用于利用第一探测点集合,第二探测点集合和指定任务数量生成第一探测任务集合。
可选地,该实施例的网络连接质量的探测装置还包括:比对单元,用于将第一探测任务集合与第二探测任务集合进行比对,确定差异任务集合,其中,第二探测任务集合为第二预设存储区域内已存储的探测任务;注册单元,用于将差异任务集合与异常检测任务注册至第二预设存储区域。
可选地,检测单元62包括:第二获取模块,用于从第二预设存储区域中获取目标探测任务;抓取模块,用于抓取并存储目标探测任务的监控数据;确定模块,用于基于异常检测任务确定监控数据是否存在异常。
可选地,确定模块包括:第二获取子模块,用于从第二预设存储区域中获取异常检测任务;转换子模块,用于按照预设模板将异常检测任务转化为待使用的规则文件;加载子模块,用于加载规则文件,并利用规则文件确定监控数据是否存在异常。
可选地,第二生成单元63包括:第三获取模块,用于当监控数据存在异常时,获取异常信息并对异常信息进行分组处理,得到分组标签;添加模块,用于基于分组标签向异常信息中添加对应的目标区域拓扑信息,生成异常事件;上报模块,用于向第三预设存储区域上报异常事件。
该实施例通过第一生成单元61基于目标区域拓扑信息和探测点部署信息,生成第一探测任务集合和异常检测任务,其中,第一探测任务集合用于探测目标区域网络连接质量,通过检测单元62利用异常检测任务对第一探测任务集合中的目标探测任务进行异常检测,通过第二生成单元63当确定目标探测任务存在异常时,生成异常事件并对异常事件进行分组存储。也就是说,也就是说,本申请的方案具有任务生成功能,基于目标区域拓扑信息和探测点部署信息,生成第一探测任务集合和异常检测任务,可以利用异常检测任务对第一探测任务集合中的目标探测任务实现异常检测功能,当目标探测任务存在异常时,可以生成异常事件并对异常事件进行分组存储,以供后续查询,从而实现了在保持研发、部署及维护低成本的前提下,对网络连接质量进行持续监控的技术效果,解决了无法对网络连接质量进行持续监控的技术问题。
本发明的实施例还提供了一种计算机可读的存储介质。该计算机可读的存储介质包括存储的程序,其中,程序被处理器运行时执行本发明实施例的网络连接质量的探测方法。
可选地,在本实施例中,上述存储介质可以被设置为存储用于执行以下步骤的程序代码:
S1,基于目标区域拓扑信息和探测点部署信息,生成第一探测任务集合和异常检测任务,其中,第一探测任务集合用于探测目标区域网络连接质量;
S2,利用异常检测任务对第一探测任务集合中的目标探测任务进行异常检测;
S3,当确定目标探测任务存在异常时,生成异常事件并对异常事件进行分组存储。
本发明的实施例还提供了一种电子装置,包括存储器和处理器,该存储器中存储有计算机程序,该处理器被设置为运行计算机程序以执行上述任一项方法实施例中的步骤。
可选地,上述电子装置还可以包括传输设备以及输入输出设备,其中,该传输设备和上述处理器连接,该输入输出设备和上述处理器连接。
可选地,在本实施例中,上述处理器可以被设置为通过计算机程序执行以下步骤:
S1,基于目标区域拓扑信息和探测点部署信息,生成第一探测任务集合和异常检测任务,其中,第一探测任务集合用于探测目标区域网络连接质量;
S2,利用异常检测任务对第一探测任务集合中的目标探测任务进行异常检测;
S3,当确定目标探测任务存在异常时,生成异常事件并对异常事件进行分组存储。
可选地,在本实施例中,上述存储介质可以包括但不限于:U盘、只读存储器(Read-Only Memory,简称为ROM)、随机存取存储器(Random Access Memory,简称为RAM)、移动硬盘、磁碟或者光盘等各种可以存储程序代码的介质。
可选地,本实施例中的具体示例可以参考上述实施例及可选实施方式中所描述的示例,本实施例在此不再赘述。
显然,本领域的技术人员应该明白,上述的本发明的各模块或各步骤可以用通用的计算装置来实现,它们可以集中在单个的计算装置上,或者分布在多个计算装置所组成的网络上,可选地,它们可以用计算装置可执行的程序代码来实现,从而,可以将它们存储在存储装置中由计算装置来执行,并且在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤,或者将它们分别制作成各个集成电路模块,或者将它们中的多个模块或步骤制作成单个集成电路模块来实现。这样,本发明不限制于任何特定的硬件和软件结合。
以上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

Claims (10)

1.一种网络连接质量的探测方法,其特征在于,包括:
基于目标区域拓扑信息和探测点部署信息,生成第一探测任务集合和异常检测任务,其中,所述第一探测任务集合用于探测目标区域网络连接质量;
利用所述异常检测任务对所述第一探测任务集合中的目标探测任务进行异常检测;
当确定所述目标探测任务存在异常时,生成异常事件并对所述异常事件进行分组存储。
2.根据权利要求1所述的网络连接质量的探测方法,其特征在于,基于所述目标区域拓扑信息和所述探测点部署信息,生成所述第一探测任务集合和所述异常检测任务包括:
从第一预设存储区域获取所述目标区域拓扑信息和所述探测点部署信息;
当所述目标区域拓扑信息和/或所述探测点部署信息发生变化时,生成所述第一探测任务集合和所述异常检测任务。
3.根据权利要求2所述的网络连接质量的探测方法,其特征在于,生成所述第一探测任务集合包括:
基于所述目标区域拓扑信息确定第一目标子区域和第二目标子区域;
获取所述第一目标子区域中包含的第一探测点集合,所述第二目标子区域中包含的第二探测点集合以及指定任务数量;
利用所述第一探测点集合,所述第二探测点集合和所述指定任务数量生成所述第一探测任务集合。
4.根据权利要求1所述的网络连接质量的探测方法,其特征在于,所述网络连接质量的探测方法还包括:
将所述第一探测任务集合与第二探测任务集合进行比对,确定差异任务集合,其中,所述第二探测任务集合为第二预设存储区域内已存储的探测任务;
将所述差异任务集合与所述异常检测任务注册至所述第二预设存储区域。
5.根据权利要求4所述的网络连接质量的探测方法,其特征在于,利用所述异常检测任务对所述目标探测任务进行异常检测包括:
从所述第二预设存储区域中获取所述目标探测任务;
抓取并存储所述目标探测任务的监控数据;
基于所述异常检测任务确定所述监控数据是否存在异常。
6.根据权利要求5所述的网络连接质量的探测方法,其特征在于,基于所述异常检测任务确定所述监控数据是否存在异常包括:
从所述第二预设存储区域中获取所述异常检测任务;
按照预设模板将所述异常检测任务转化为待使用的规则文件;
加载所述规则文件,并利用所述规则文件确定所述监控数据是否存在异常。
7.根据权利要求5所述的网络连接质量的探测方法,其特征在于,当确定所述目标探测任务存在异常时,生成所述异常事件并对所述异常事件进行分组存储包括:
当所述监控数据存在异常时,获取异常信息并对所述异常信息进行分组处理,得到分组标签;
基于所述分组标签向所述异常信息中添加对应的目标区域拓扑信息,生成所述异常事件;
向第三预设存储区域上报所述异常事件。
8.一种网络连接质量的探测装置,其特征在于,包括:
第一生成单元,用于基于目标区域拓扑信息和探测点部署信息,生成第一探测任务集合和异常检测任务,其中,所述第一探测任务集合用于探测目标区域网络连接质量;
检测单元,用于利用所述异常检测任务对所述第一探测任务集合中的目标探测任务进行异常检测;
第二生成单元,用于当确定所述目标探测任务存在异常时,生成异常事件并对所述异常事件进行分组存储。
9.一种计算机可读的存储介质,其特征在于,所述计算机可读的存储介质包括存储的程序,其中,所述程序被处理器运行时执行上述权利要求1至7任一项中所述的方法。
10.一种电子装置,包括存储器和处理器,其特征在于,所述存储器中存储有计算机程序,所述处理器被设置为通过所述计算机程序执行所述权利要求1至7任一项中所述的方法。
CN202110729978.1A 2021-06-29 2021-06-29 网络连接质量的探测方法、装置、存储介质和电子装置 Pending CN115550211A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202110729978.1A CN115550211A (zh) 2021-06-29 2021-06-29 网络连接质量的探测方法、装置、存储介质和电子装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202110729978.1A CN115550211A (zh) 2021-06-29 2021-06-29 网络连接质量的探测方法、装置、存储介质和电子装置

Publications (1)

Publication Number Publication Date
CN115550211A true CN115550211A (zh) 2022-12-30

Family

ID=84717505

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202110729978.1A Pending CN115550211A (zh) 2021-06-29 2021-06-29 网络连接质量的探测方法、装置、存储介质和电子装置

Country Status (1)

Country Link
CN (1) CN115550211A (zh)

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102801587A (zh) * 2012-08-29 2012-11-28 北京邮电大学 面向大规模网络的虚拟化监测系统与动态监测方法
US20150100680A1 (en) * 2013-10-09 2015-04-09 Verisign, Inc. Systems and methods for configuring a probe server network using a reliability model
US20180062990A1 (en) * 2016-08-25 2018-03-01 Cisco Technology, Inc. Efficient path detection and validation between endpoints in large datacenters
CN107995030A (zh) * 2017-11-28 2018-05-04 车智互联(北京)科技有限公司 一种网络探测方法、网络故障检测方法及系统
CN108306756A (zh) * 2017-12-21 2018-07-20 国网北京市电力公司 一种基于电力数据网全息评估系统及其故障定位方法
CN213399575U (zh) * 2020-09-15 2021-06-08 中国电子科技集团公司第三十三研究所 一种分布式屏蔽机房自动监测预警系统

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102801587A (zh) * 2012-08-29 2012-11-28 北京邮电大学 面向大规模网络的虚拟化监测系统与动态监测方法
US20150100680A1 (en) * 2013-10-09 2015-04-09 Verisign, Inc. Systems and methods for configuring a probe server network using a reliability model
US20180062990A1 (en) * 2016-08-25 2018-03-01 Cisco Technology, Inc. Efficient path detection and validation between endpoints in large datacenters
CN107995030A (zh) * 2017-11-28 2018-05-04 车智互联(北京)科技有限公司 一种网络探测方法、网络故障检测方法及系统
CN108306756A (zh) * 2017-12-21 2018-07-20 国网北京市电力公司 一种基于电力数据网全息评估系统及其故障定位方法
CN213399575U (zh) * 2020-09-15 2021-06-08 中国电子科技集团公司第三十三研究所 一种分布式屏蔽机房自动监测预警系统

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
张涛, 胡铭曾, 云晓春, 张玉: "网络信息主动探测技术的研究与实现", 计算机工程与应用, no. 31, 1 July 2006 (2006-07-01), pages 17 - 20 *

Similar Documents

Publication Publication Date Title
US10389596B2 (en) Discovering application topologies
JP3510658B2 (ja) ネットワーク解析方法
JP5164996B2 (ja) 装置管理システム
EP2672668B1 (en) Facilitating the operation of a virtual network by predicting a failure
CN108259215B (zh) 一种设备管理方法及装置
EP3222004B1 (en) Diagnostic testing in networks
CN109960634B (zh) 一种应用程序监控方法、装置及系统
CN108259269A (zh) 网络设备的监控方法和系统
WO2020098025A1 (zh) 一种静态路由的部署方法、设备及系统
CN103117879A (zh) 一种计算机硬件运行参数网络监测系统
CN109039795B (zh) 一种云服务器资源监控方法和系统
US20040083246A1 (en) Method and system for performance management in a computer system
EP3897026A1 (en) Network analytics
CN112995042B (zh) 业务拓扑图的生成方法、装置、设备及存储介质
CN117041107B (zh) 带宽质量监控方法、带宽质量监控系统和数据中心
EP1622310B1 (en) Administration method and system for network management systems
US20100036943A1 (en) Method of network management
CN115550211A (zh) 网络连接质量的探测方法、装置、存储介质和电子装置
US10129086B2 (en) Collection of performance data in a communications network
JP2008244635A (ja) ネットワーク監視システム、ネットワーク監視方法、ネットワーク監視プログラム及び収集装置
CN104796294A (zh) 一种云加速网络监控系统及方法
JP6542538B2 (ja) ネットワーク監視システム、監視装置および監視方法
CN114461501A (zh) 资源的异常检测方法及装置、存储介质、电子装置
CN111385162B (zh) 网络探测方法、装置、计算机设备和存储介质
CN112260902A (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