CN112637010A - 一种设备的检查方法及装置 - Google Patents
一种设备的检查方法及装置 Download PDFInfo
- Publication number
- CN112637010A CN112637010A CN202011493127.3A CN202011493127A CN112637010A CN 112637010 A CN112637010 A CN 112637010A CN 202011493127 A CN202011493127 A CN 202011493127A CN 112637010 A CN112637010 A CN 112637010A
- Authority
- CN
- China
- Prior art keywords
- switch
- configuration
- command line
- main switch
- port
- 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.)
- Granted
Links
- 238000000034 method Methods 0.000 title claims abstract description 78
- 230000002159 abnormal effect Effects 0.000 claims abstract description 99
- 230000002776 aggregation Effects 0.000 claims abstract description 99
- 238000004220 aggregation Methods 0.000 claims abstract description 99
- 238000007689 inspection Methods 0.000 claims description 46
- 230000005856 abnormality Effects 0.000 claims description 18
- 230000008859 change Effects 0.000 claims description 16
- 230000003993 interaction Effects 0.000 claims description 15
- 238000003860 storage Methods 0.000 claims description 7
- 238000012163 sequencing technique Methods 0.000 claims description 6
- 230000000737 periodic effect Effects 0.000 claims description 5
- 238000005516 engineering process Methods 0.000 abstract description 10
- 238000013024 troubleshooting Methods 0.000 abstract description 6
- 230000008569 process Effects 0.000 description 23
- 238000010586 diagram Methods 0.000 description 17
- 238000004590 computer program Methods 0.000 description 7
- 238000012545 processing Methods 0.000 description 7
- 230000000694 effects Effects 0.000 description 5
- 230000006870 function Effects 0.000 description 5
- 238000012986 modification Methods 0.000 description 5
- 230000004048 modification Effects 0.000 description 5
- 101100513046 Neurospora crassa (strain ATCC 24698 / 74-OR23-1A / CBS 708.71 / DSM 1257 / FGSC 987) eth-1 gene Proteins 0.000 description 4
- 206010047289 Ventricular extrasystoles Diseases 0.000 description 3
- 238000005129 volume perturbation calorimetry Methods 0.000 description 3
- 230000005540 biological transmission Effects 0.000 description 2
- 238000011022 operating instruction Methods 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 238000011160 research Methods 0.000 description 2
- 230000004931 aggregating effect Effects 0.000 description 1
- 230000004075 alteration Effects 0.000 description 1
- 238000004458 analytical method Methods 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000008901 benefit Effects 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 230000002452 interceptive effect Effects 0.000 description 1
- 210000001503 joint Anatomy 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 230000007774 longterm Effects 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 230000006855 networking Effects 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
- 230000008439 repair process Effects 0.000 description 1
- 230000009466 transformation Effects 0.000 description 1
Images
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
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/06—Management of faults, events, alarms or notifications
- H04L41/0631—Management of faults, events, alarms or notifications using root cause analysis; using analysis of correlation between notifications, alarms or events based on decision criteria, e.g. hierarchy, tree or time analysis
-
- 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
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Environmental & Geological Engineering (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明涉及金融科技(Fintech)领域,公开一种设备的检查方法及装置,确定预设区域中形成跨设备链路聚合的交换机组合的端口异常;其中,交换机组合包括主交换机和备交换机;获取预设区域中针对主交换机的第一配置模板和针对备交换机的第二配置模板;第一配置模板和第二配置模板是根据预设区域中具有同一型号的端口正常的多个交换机组合得到的;分别基于第一配置模板和第二配置模板,对主交换机的配置数据和备交换机的配置数据进行检查,以确定配置数据是否异常。通过自动化的方法形成配置模板,可极大节约人力、财力成本,且对于故障排查可具有更优越的灵活性,避免了仅在专家对设备进行人工排查期间才可能发现一些端口异常的设备。
Description
技术领域
本申请实施例涉及金融科技(Fintech)领域,尤其涉及一种设备的检查方法及装置。
背景技术
随着计算机技术的发展,越来越多的技术(例如大数据或云计算)应用在金融领域,传统金融业正在逐步向金融科技转变。在大数据技术的背景下,对于所产生的海量数据,保证它们在网络中能够准确、可靠地进行传输,将具有非常重要的意义。
数据中心各组件的可靠性一直是稳定运营致力于提高的方向。其中,为了增加服务器端口互联的可靠性,可将服务器的两个物理口进行捆绑、而与交换机进行互联;与此同时,可让两台交换机通过跨设备链路聚合方式与服务器进行对接。常见的跨设备链路聚合方式有多种,不同厂商给出的解决方案不同,比如,有些厂商采用的是VPC(Virtual PortChannel,虚拟链路聚合)实现方式,有些厂商采用的是M-LAG(Multichassis LinkAggregation Group,跨设备链路聚合组)实现方式,还有些厂商采用的是DRNI(Distributed Resilient Network Interconnect,分布式弹性网络互连)实现方式,其他厂商不一一举例。以VPC技术为例,该技术可以提供二层的多路径选择,让用户可以在有多条可选路径的情况下增加网络冗余度,同时实现提升带宽、在多个节点之间启用多条并行路径和对流量进行负载均衡。VPC技术中,服务器双端口捆绑与两台交换机组网架构如图1所示,图1中的交换机1和交换机2形成VPC域,此时交换机1和交换机2互为VPC PEER(成员)。
跨设备链路聚合长期运行中会因为各种因素导致聚合链路故障,表现为仅有一个端口能正常使用,因而无法起到双端口聚合保护作用。如果照常使用故障端口而不修复,则增加了服务器单端口故障的风险,影响到业务的稳定运营。跨设备链路聚合单边故障时,大多数情况服务器侧通常不感知,而需要从网络侧(即交换机侧)发现故障。
目前对网络侧跨设备链路聚合的故障发现和排查的方式,主要是依赖人工巡检的方式进行。然而,现网中网络设备通常较多,人工巡检所花费的成本较高;进一步的,巡检周期长容易造成对故障设备发现不及时的问题。
综上,在对跨设备链路聚合中的故障设备进行发现时,主要依赖于人工巡检,该方式成本相当高且不够智能化。
发明内容
本申请提供一种设备的检查方法及装置,用以实现智能化、自动化地对线网的跨设备链路聚合中的故障设备进行发现。
第一方面,本申请实施例提供一种设备的检查方法,该方法包括:确定预设区域中形成跨设备链路聚合的交换机组合的端口异常;其中,所述交换机组合包括主交换机和备交换机;获取所述预设区域中针对所述主交换机的第一配置模板和针对所述备交换机的第二配置模板;所述第一配置模板和所述第二配置模板是根据所述预设区域中具有同一型号的端口正常的多个交换机组合得到的;分别基于所述第一配置模板和所述第二配置模板,对所述主交换机的配置数据和所述备交换机的配置数据分别进行检查,以确定配置数据是否异常。
基于该方案,对于形成跨设备链路聚合的交换机组合的端口异常事件,通过对该交换机组合中的主交换机以及备交换机的配置数据分别进行检查,其中,由于对主、备交换机进行配置数据检查所使用的第一配置模板、第二配置模板是基于与该主、备交换机位于同一区域中的同一型号的端口正常的多个交换机组合进行确定的,该方式中通过自动化的方法形成配置模板,从而对跨设备链路聚合的交换机组合的端口异常事件,则可以智能化地基于所形成的配置模板来对端口异常事件的主、备交换机进行配置数据的检查,该方式可以极大地节约人力、财力成本,且对于故障排查可具有更优越的灵活性,避免了背景技术中仅在专家对设备进行人工排查期间才可能发现一些端口异常的设备。
在一种可能实现的方法中,所述第一配置模板是根据所述预设区域中具有同一型号的端口正常的多个交换机组合得到的,包括:获取所述多个交换机组合中的各主交换机的配置数据;针对配置数据中的任一配置模块,从所述各主交换机的配置数据中确定出符合第一设定条件的同一类别的各命令行结构;所述同一类别的各命令行结构具有相同的命令行行数,且对于同一行命令行具有相同的行首关键字;针对所述同一类别的各命令行结构,通过比对任意两个命令行结构,得到所述配置模块在满足第二设定条件下的子配置模板;所述子配置模板用于指示所述同一类别的各命令行结构应当具有的命令行固定参数和命令行变化参数,所述命令行固定参数不依赖于配置对象改变,所述命令行变化参数依赖于配置对象而改变;根据各配置模块分别对应的子配置模板,得到所述第一配置模板。
基于该方案,对于一个预设区域,其中可能存在多种型号的、用于形成跨设备链路聚合的交换机,因此在形成第一配置模板之前,可根据端口异常事件的主交换机的型号来确定与该主交换机位于同一预设区域、用于自动化形成第一配置模板的端口正常的各个主交换机的配置数据;由于主交换机在投入使用的过程中,技术人员对各个交换机的配置并非完全一致,且交换机可包括多个配置模块(不同的配置模块,用于实现不同的功能),因此对交换机中的各个配置模块中的任一配置模块来说,首先从各个主交换机的配置数据中确定出符合第一设定条件的同一类别的各命令行结构,然后基于该些同一类别的各命令行结构,通过比对任意两个命令行结构,从而可以得到端口异常事件中的主交换机在该配置模块下的子配置模板,进而对各个配置模块分别对应的子配置模板进行结合,从而可以得到用于判定端口异常事件中的主交换机的配置数据是否发生异常的第一配置模板了,同理可以得到第二配置模板。该确定第一配置模板以及第二配置模板的方式是全自动化生成的,因此可以对预设区域中端口异常事件的交换机的配置数据的进行快速检查,从而可提升对跨设备链路聚合中异常设备的确定效率。
在一种可能实现的方法中,所述针对所述同一类别的各命令行结构,通过比对任意两个命令行结构,得到所述配置模块在满足第二设定条件下的子配置模板,包括:将同一类别的各命令行结构排序;针对所述各命令行结构中的任一第一命令行结构,将所述第一命令行结构与排序位于所述第一命令行结构之前的任一第二命令行结构进行匹配,将所述第一命令行结构与所述第二命令行结构之间的重叠部分作为待选子配置模板;将各命令行结构的待选子配置模板中符合所述第二设定条件的待选子配置模板作为所述子配置模板。
基于该方案,在对符合第一设定条件的同一类别的各个命令行结构进行处理而得到子配置模板时,可通过将该些同一类别的命令行结构进行排序,然后关于排序后的任一个第一命令行结构,可将该第一命令结构与排在它前面的任一个第二命令行结构进行匹配,并将二者的重叠部分作为待选子配置模板,最后将多个待选子配置模板中符合第二设定条件的待选子配置模板确定为子配置模板。该方式通过不断地对同一预设区域中的同一型号的各个主交换机在同一配置模板下的命令行结构进行比较而得到第一配置模板,该种自动化生成第一配置模板的方式最大程度上结合了端口异常事件的主交换机在自身所处环境、以及与自己同一型号的多个主交换机的实际情况,从而在将该种通过自动化方式生成的第一配置模板用于对端口异常事件的主交换机的配置数据的检查时,则具有更佳的贴合性,也提高了设备的检查效率。
在一种可能实现的方法中,所述第一设定条件为针对各主交机的同一配置模块,属于同一类别的命令行结构中数量最大的;所述第二设定条件为各待选子配置模板中数量最大的。
基于该方案,在得到第一配置模板的过程中,通过将预设区域中同一型号的交换机在同一配置模块下、属于同一类别的命令行结构的数量最多的一类主交换机所具有的命令行结构作为第一设定条件,以及将待选子配置模板中的重合度最大的待选子配置模板作为第二设定条件,这也更加贴合技术人员对预设区域中的交换机的配置规则,从而使用该种方式得到的第一配置模板用于对端口异常事件的主交换机的配置数据的检查时,对主交换机的检查过程也将更加省时。
在一种可能实现的方法中,所述基于所述第一配置模板对所述主交换机的配置数据进行检查,包括:确定所述主交换机的配置数据中的第i行与所述第一配置模板中的第i行是否符合同一标准;所述同一标准为命令行固定参数相同、命令行变化参数不同;确定所述主交换机的配置数据中的命令行变化参数是否符合配置要求;若所述主交换机的配置数据中的各命令行均符合所述同一标准且命令行变化参数符合配置要求,则确定所述主交换机的配置数据的配置正常。
基于该方案,在基于第一配置模板对主交换机的配置数据进行检查的过程中,通过逐行的比较主交换机的命令行结构与第一配置模板的相同行,确定二者是否符合同一标准,以及确定配置数据中的命令行变化参数是否符合配置要求,最后在主交换机的各个命令行均分别符合对应于各自的同一标准,且命令行变化参数也符合配置要求时,则确定主交换机的配置数据正常。该方式通过对端口异常事件的主交换机的配置数据进行全面的检查,从而有助于准确地确定该主交换机是否在配置过程中发生了配置异常现象。
在一种可能实现的方法中,所述确定预设区域中形成跨设备链路聚合的交换机组合的端口异常,包括:基于所述交换机组合中任意交换机发送的告警信息,确定所述主交换机的地址信息和所述备交换机的地址信息;或基于周期性检查,从预设的交换机组合的地址信息中确定所述主交换机的地址信息和所述备交换机的地址信息;根据所述主交换机的地址信息和所述备交换机的地址信息,分别从所述主交换机和所述备交换机获取交换机间的各端口的状态信息从而确定所述交换机组合的端口异常。
基于该方案,一方面可以通过告警的方式来对跨设备链路聚合中的、发送告警信息的交换机组合的交换机的端口状态进行检查,从而确定该组发送告警信息的交换机组合中存在有端口异常的交换机,另一方面也支持周期性地对预设区域中的形成跨设备链路聚合的交换机组合的交换机的端口进行检查,从而确定被检查的交换机组合中的交换机发生了端口异常的现象。该方式支持从多个角度来确定预设区域中发生端口异常事件的交换机,提升了确定异常设备的效率。
在一种可能实现的方法中,所述告警信息是所述交换机组合中的所述主交换机发送的;所述基于所述交换机组合中任意交换机发送的告警信息,确定所述主交换机的地址信息和所述备交换机的地址信息,包括:接收所述主交换机发送的告警信息;所述告警信息是所述主交换机与所述跨设备链路聚合中的服务器相连接的第一端口断开时发送的,所述告警信息包括所述主交换机的地址信息;基于所述主交换机的地址信息,向所述主交换机发送端口信息获取命令;所述端口信息获取命令用于获取所述主交换机的第二端口,所述第二端口用于表示所述主交换机通过所述第二端口与所述备交换机相连从而形成设备链路聚合;对所述第二端口下发对端设备地址信息获取命令,得到所述备交换机的地址信息。
基于该方案,若接收到的告警信息是交换机组合中的主交换机发送的,则可以基于主交换机的地址信息向该主交换机发送端口信息获取命令,从而可以获取该主交换机是通过自身的哪个/些端口(即第二端口)而与备交换机进行连接从而形成设备链路聚合的,最后通过对第二端口下发对端设备地址信息获取命令,从而获取到备交换机的地址信息。该方式基于告警信息,可以自动化地获取到发送该告警信息的交换机组合的地址信息,而避免在使用查表的方式来准备获取发送该告警信息的交换机组合的地址信息时,无法及时地获取到存储有交换机组合的地址信息的预设表格。
在一种可能实现的方法中,向所述主交换机、所述备交换机以及与所述主交换机、所述备交换机形成跨设备链路聚合的服务器发送指标采集指令;所述指标采集指令用于获取所述主交换机与所述服务器,所述备交换机与所述服务器之间进行数据交互时的数据包的发送状态;根据所述指标采集指令返回的指标结果,确定所述主交换机、所述备交换机和所述服务器是否发生异常。
基于该方案,在使用第一配置模板和第二配置模板分别对主、备交换机进行配置数据的检查后,关于该步骤的检查结果,无论是确定配置数据异常,或者是确定配置数据无异常,皆可以向该主交换机、该备交换机以及与该主交换机、该备交换机形成跨设备链路聚合的服务器发送指标采集指令,以确定这三者之间是否在数据包发送过程中存在异常;其中,若指标采集指令是基于确定配置数据异常而发出的,则说明还可以继续检查三者之间的数据包发送情况,以提高对本次的端口异常事件的检查效果;若指标采集指令是基于确定配置数据无异常而发出的,则说明本次的端口异常事件还可能是由于三者之间的数据包发送过程发生了异常,因此需要下发指标采集指令来对本次的端口异常事件背后真实的原因进行检查。
在一种可能实现的方法中,若确定所述主交换机、所述备交换机和所述服务器并未发生异常,则分别对所述主交换机与所述服务器之间的第一协议报文、所述备交换机与所述服务器之间的第二协议报文进行检查,并分别得到第一检查结果和第二检查结果;根据所述第一检查结果和所述第二检查结果,确定所述主交换机、所述备交换机和所述服务器中是否发生异常。
基于该方案,对于指标采集指令返回的数据,无论是确定为数据包发送异常,或者是确定为数据包发送无异常,皆可以向该主交换机、该备交换机和该服务器发送协议报文的检查指令,从而确定三者之间是否存在发生异常的设备;其中,若协议报文的检查指令是基于指标采集指令返回的结果表示三者中存在异常的设备,则说明还可以继续检查三者之间的协议报文的发送情况,以提高对本次的端口异常事件的检查效果;若协议报文的检查指令是基于三者之间的配置数据以及数据包发送过程均未发生异常而发出的,则说明本次的端口异常事件只可能是三者之间的协议报文在交互过程中发生了异常,因此需要下发协议报文检查指令来对本次的端口异常事件背后真实的原因进行检查。
第二方面,本申请实施提供一种设备的检查装置,该装置包括:异常确定单元,用于确定预设区域中形成跨设备链路聚合的交换机组合的端口异常;其中,所述交换机组合包括主交换机和备交换机;配置模板确定单元,用于获取所述预设区域中针对所述主交换机的第一配置模板和针对所述备交换机的第二配置模板;所述第一配置模板和所述第二配置模板是根据所述预设区域中具有同一型号的端口正常的多个交换机组合得到的;检查单元,用于分别基于所述第一配置模板和所述第二配置模板,对所述主交换机的配置数据和所述备交换机的配置数据分别进行检查,以确定配置数据是否异常。
在一种可能实现的方法中,所述配置模板确定单元,具体用于:获取所述多个交换机组合中的各主交换机的配置数据;针对配置数据中的任一配置模块,从所述各主交换机的配置数据中确定出符合第一设定条件的同一类别的各命令行结构;所述同一类别的各命令行结构具有相同的命令行行数,且对于同一行命令行具有相同的行首关键字;针对所述同一类别的各命令行结构,通过比对任意两个命令行结构,得到所述配置模块在满足第二设定条件下的子配置模板;所述子配置模板用于指示所述同一类别的各命令行结构应当具有的命令行固定参数和命令行变化参数,所述命令行固定参数不依赖于配置对象改变,所述命令行变化参数依赖于配置对象而改变;根据各配置模块分别对应的子配置模板,得到所述第一配置模板。
在一种可能实现的方法中,所述配置模板确定单元,具体用于:将同一类别的各命令行结构排序;针对所述各命令行结构中的任一第一命令行结构,将所述第一命令行结构与排序位于所述第一命令行结构之前的任一第二命令行结构进行匹配,将所述第一命令行结构与所述第二命令行结构之间的重叠部分作为待选子配置模板;将各命令行结构的待选子配置模板中符合所述第二设定条件的待选子配置模板作为所述子配置模板。
在一种可能实现的方法中,所述第一设定条件为针对各主交机的同一配置模块,属于同一类别的命令行结构中数量最大的;所述第二设定条件为各待选子配置模板中数量最大的。
在一种可能实现的方法中,所述检查单元,具体用于:确定所述主交换机的配置数据中的第i行与所述第一配置模板中的第i行是否符合同一标准;所述同一标准为命令行固定参数相同、命令行变化参数不同;确定所述主交换机的配置数据中的命令行变化参数是否符合配置要求;若所述主交换机的配置数据中的各命令行均符合所述同一标准且命令行变化参数符合配置要求,则确定所述主交换机的配置数据的配置正常。
在一种可能实现的方法中,所述异常确定单元,具体用于:基于所述交换机组合中任意交换机发送的告警信息,确定所述主交换机的地址信息和所述备交换机的地址信息;或基于周期性检查,从预设的交换机组合的地址信息中确定所述主交换机的地址信息和所述备交换机的地址信息;根据所述主交换机的地址信息和所述备交换机的地址信息,分别从所述主交换机和所述备交换机获取交换机间的各端口的状态信息从而确定所述交换机组合的端口异常。
在一种可能实现的方法中,所述告警信息是所述交换机组合中的所述主交换机发送的;所述异常确定单元,还用于:接收所述主交换机发送的告警信息;所述告警信息是所述主交换机与所述跨设备链路聚合中的服务器相连接的第一端口断开时发送的,所述告警信息包括所述主交换机的地址信息;基于所述主交换机的地址信息,向所述主交换机发送端口信息获取命令;所述端口信息获取命令用于获取所述主交换机的第二端口,所述第二端口用于表示所述主交换机通过所述第二端口与所述备交换机相连从而形成设备链路聚合;对所述第二端口下发对端设备地址信息获取命令,得到所述备交换机的地址信息。
在一种可能实现的方法中,所述异常确定单元,还用于:向所述主交换机、所述备交换机以及与所述主交换机、所述备交换机形成跨设备链路聚合的服务器发送指标采集指令;所述指标采集指令用于获取所述主交换机与所述服务器,所述备交换机与所述服务器之间进行数据交互时的数据包的发送状态;根据所述指标采集指令返回的指标结果,确定所述主交换机、所述备交换机和所述服务器是否发生异常。
在一种可能实现的方法中,所述异常确定单元,还用于:若确定所述主交换机、所述备交换机和所述服务器并未发生异常,则分别对所述主交换机与所述服务器之间的第一协议报文、所述备交换机与所述服务器之间的第二协议报文进行检查,并分别得到第一检查结果和第二检查结果;根据所述第一检查结果和所述第二检查结果,确定所述主交换机、所述备交换机和所述服务器中是否发生异常。
第三方面,本申请实施例提供了一种计算设备,包括:
存储器,用于存储程序指令;
处理器,用于调用所述存储器中存储的程序指令,按照获得的程序执行如第一方面任一实现方法。
第四方面,本申请实施例提供了一种计算机可读存储介质,所述计算机可读存储介质存储有计算机可执行指令,所述计算机可执行指令用于使计算机执行如第一方面任一实现方法。
附图说明
为了更清楚地说明本申请实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简要介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域的普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1为现有技术的一种跨设备链路聚合架构;
图2为本申请实施例提供的一种系统架构;
图3为本申请实施例提供的一种设备的检查方法;
图4为本申请实施例提供的一种命令行结构示意图;
图5为本申请实施例提供的一种配置模板框架的示意图;
图6为本申请实施例提供的一种子配置模板的确定示意图;
图7为本申请实施例提供的一种设备的检查装置;
图8为本申请实施例提供的一种计算设备的示意图。
具体实施方式
为了使本申请的目的、技术方案和优点更加清楚,下面将结合附图对本申请作进一步地详细描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其它实施例,都属于本申请保护的范围。
针对跨设备链路聚合在运行过程中产生的故障问题,目前主要是依赖于人工巡检的方式进行排查与故障的发现。该方式人力、财力成本高,且不具有及时发现故障的弊端。
针对上述技术问题,本申请提供一种可能的系统架构,如图2所示,该系统架构包括检查服务器210和至少一个跨设备链路聚合系统220(图2中仅使用一个跨设备链路聚合系统示意),其中,每一个跨设备链路聚合系统220中包括服务器2201和两台交换机,如分别令为2202、2203,交换机2202和交换机2203称为一个交换机组合,且其中一个是主交换机,一个是备交换机。
其中,检查服务器210可用于对一个预设区域中存在的多个跨设备链路聚合系统220的故障进行排查,包括:
(1)、在跨设备链路聚合系统220中的交换机与服务器之间的连接端口断开时,此端口断开的交换机可向检查服务器210上报告警信息,从而检查服务器210可开始遵循对交换机的配置数据进行检查、交换机与服务器之间的数据包发送情况进行检查,以及交换机与服务器之间的业务报文的交互情况进行检查的顺序,对本次交换机上报的告警信息背后的故障原因进行排查;
(2)、检查服务器210可周期性地、主动地依据本地存储的跨设备链路聚合系统的主、备交换机标识信息来对预设区域中的每一个交换机组合中的主交换机和备交换机的端口状态进行检查,并从中发现发生端口异常的交换机。
针对一个预设区域中的任一个跨设备链路聚合系统220,其中,交换机2202 与交换机2203为同一型号的交换机,且交换机2202和交换机2203分别通过自身的一个端口与服务器2201上的端口进行连接,如图2中的交换机2202的端口eth1与服务器2201的端口eth1进行连接,交换机2203的端口eth1与服务器2201的端口eth0进行连接,同时,交换机2202和交换机2203彼此之间也是通过端口进行连接,如图2中的交换机2202的端口eth2与交换机2203 的端口eth2进行连接,交换机2202的端口eth3与交换机2203的端口eth3进行连接,通过此种连接方式,从而形成了跨设备链路聚合系统。
如在本申请的系统架构中,跨设备链路聚合系统参照的是VPC技术。一个预设区域设为一个指定的机房,该机房中存在有多种型号的交换机组合分别与服务器形成的跨设备链路聚合系统。其中,在机房中开始搭建跨设备链路聚合系统时,任一组的跨设备链路聚合系统中的主、备交换机的标识与服务器的标识已经被一一记录,并由检查服务器210对该些设备之间的对应关系进行存储。
基于上述技术问题和系统架构,本申请实施例提供一种设备的检查方法,如图3所示,该方法由图2所示的检查服务器执行,包括以下步骤:
步骤301,确定预设区域中形成跨设备链路聚合的交换机组合的端口异常。
在本步骤中,针对一个预设区域,其中包括多个形成跨设备链路聚合的交换机组合,该些交换机组合中的每一个交换机组合均包括主交换机和备交换机,且该主交换机与该备交换机为同一型号的交换机。若确定形成跨设备链路聚合的交换机组合中的主交换机和备交换机中一旦存在异常的端口,则确定需要对该组合中的主交换机的配置数据以及对该组合中的备交换机的配置数据分别进行检查。
步骤302,获取所述预设区域中针对所述主交换机的第一配置模板和针对所述备交换机的第二配置模板。
在本步骤中,由于在一个预设区域中,技术人员在初始搭建跨设备链路聚合系统的过程中,可采用多个型号的交换机,如此,该预设区域中将存在多个型号的跨设备链路聚合系统。由于不同型号的交换机之间的配置数据差异可能较大,因此本申请实施例中,在对端口异常的交换机组合中的主、备交换机的配置数据进行检查的过程中,所使用的配置模板是根据与该组合的主、备交换机具有同一型号的多个端口正常的交换机组合得到的。其中,针对一个跨设备链路聚合系统,其中的主交换机的配置数据与备交换机的配置数据也可能存在不同,因此,本申请在得到配置模板的过程中,可为端口异常的跨设备链路聚合中的主交换机生成第一配置模板,以及可为端口异常的跨设备链路聚合中的备交换机生成第二配置模板,其中,根据与该主交换机为同一型号的多个端口正常的交换机组合中的多个主交换机的配置数据可得到第一配置模板,以及根据与该备交换机为同一型号的多个端口正常的交换机组合中的多个备交换机的配置数据可得到第二配置模板。
步骤303,分别基于所述第一配置模板和所述第二配置模板,对所述主交换机的配置数据和所述备交换机的配置数据分别进行检查,以确定配置数据是否异常。
在本步骤中,基于所形成的第一配置模板而对端口异常的跨设备链路聚合系统中的主交换机的配置数据机进行检查,以及基于所形成的第二配置模板而对端口异常的该跨设备链路聚合系统中的备交换机的配置数据进行检查,以确定该跨设备链路聚合中的主、备交换机的配置数据是否存在异常。
基于该方案,对于形成跨设备链路聚合的交换机组合的端口异常事件,通过对该交换机组合中的主交换机以及备交换机的配置数据分别进行检查,其中,由于对主、备交换机进行配置数据检查所使用的第一配置模板、第二配置模板是基于与该主、备交换机位于同一区域中的同一型号的端口正常的多个交换机组合进行确定的,该方式中通过自动化的方法形成配置模板,从而对跨设备链路聚合的交换机组合的端口异常事件,则可以智能化地基于所形成的配置模板来对端口异常事件的主、备交换机进行配置数据的检查,该方式可以极大地节约人力、财力成本,且对于故障排查可具有更优越的灵活性,避免了背景技术中仅在专家对设备进行人工排查期间才可能发现一些端口异常的设备。
以下将结合示例分别对一些步骤进行详细说明。
在上述步骤301的一个实施中,所述确定预设区域中形成跨设备链路聚合的交换机组合的端口异常,包括:基于所述交换机组合中任意交换机发送的告警信息,确定所述主交换机的地址信息和所述备交换机的地址信息;或基于周期性检查,从预设的交换机组合的地址信息中确定所述主交换机的地址信息和所述备交换机的地址信息;根据所述主交换机的地址信息和所述备交换机的地址信息,分别从所述主交换机和所述备交换机获取交换机间的各端口的状态信息从而确定所述交换机组合的端口异常。
对于一个预设区域,可以是由该预设区域中的形成跨设备链路聚合的任意交换机向检查服务器发送告警信息,在检查服务器接收到告警信息后,由检查服务器对该组合的主交换机的地址信息和备交换机的地址信息进行确定,进而根据所确定的主、备交换机的地址信息而分别从对应的主、备交换机上获取交换机的各端口的状态信息,并根据各端口的状态信息从而确定出该交换机组合的端口异常;也可以由检查服务器基于本地存储的形成跨设备链路聚合的交换机组合的主、备交换机的标识信息而周期性地、主动地对预设区域中的各个交换机组合的主、备交换机的各端口的状态信息进行获取,从而基于所获取的各端口的状态信息确定出端口发生异常的交换机组合。
该方式中,一方面可以通过交换机发出告警信息的方式,由接收到告警信息的检查服务器来确定跨设备链路聚合系统中的交换机组合的端口发生异常,这可以满足实时地基于告警信息来对发出告警信息的跨设备链路聚合的主、备交换机的检查;另一方面,通过周期性地来对预设区域中的任一形成跨设备链路聚合的主、备交换机的端口信息进行检查,这可以实现对预设区域中存在的任一组合的跨设备链路聚合的主、备交换机全方位的检查,还可以增强对未能如期发出告警信息的跨设备链路聚合的主、备交换机的及时发现。
在本申请的某些实施例中,所述告警信息是所述交换机组合中的所述主交换机发送的;所述基于所述交换机组合中任意交换机发送的告警信息,确定所述主交换机的地址信息和所述备交换机的地址信息,包括:接收所述主交换机发送的告警信息;所述告警信息是所述主交换机与所述跨设备链路聚合中的服务器相连接的第一端口断开时发送的,所述告警信息包括所述主交换机的地址信息;基于所述主交换机的地址信息,向所述主交换机发送端口信息获取命令;所述端口信息获取命令用于获取所述主交换机的第二端口,所述第二端口用于表示所述主交换机通过所述第二端口与所述备交换机相连从而形成设备链路聚合;对所述第二端口下发对端设备地址信息获取命令,得到所述备交换机的地址信息。
检查服务器基于告警信息来对发送该告警信息的跨设备链路聚合中的主、备交换机的地址进行获取的过程中,告警信息可以是在跨设备链路聚合中的主交换机与服务器之间的连接端口断开时、由该主交换机发送的,告警信息可以是在跨设备链路聚合中的备交换机与服务器之间的连接端口断开时、由该备交换机发送的,告警信息也可以是由于在同一时刻下、跨设备链路聚合中的主交换机与服务器之间的连接端口断开且跨设备链路聚合中的备交换机与服务器之间的连接端口断开,由该主、备交换机同时向检查服务器发送的,本申请对此不做限定。在本申请实施例中,设告警信息是跨设备链路聚合中的主交换机与服务器之间的连接端口断开时、由主交换机向检查服务器发送的,此告警信息中包括该主交换机的地址信息。为了可以自动地获取到与该主交换机形成设备链路聚合的备交换机的地址信息,而无需通过查表的方式来获取备交换机的地址信息,本申请实施例中检查服务器可以根据主交换机的地址信息,而向该主交换机发送端口信息获取命令,以用于获取该主交换机通过自身的哪些端口而与备交换机形成了设备链路聚合,接着,检查服务器可以根据所获取的主交换机的端口而下发对端设备地址信息获取命令,从而检查服务器可以获取到备交换机的地址信息。
举个例子,设在一个机房中,存在有A型号的200台交换机以及存在有B 型号的400台交换机,为了使得编号的不重复,将A型号的200台交换机分别令为1、2、3……199、200,以及将B型号的400台交换机分别令为201、202、 203……599、600。其中,将同一型号的两台交换机与一台服务器进行组合,则可以形成一个跨设备链路聚合系统,例如:针对A型号的交换机,将1、2 号交换机与1号服务器形成跨设备链路聚合、将3、4编号的交换机与2号服务器形成跨设备链路聚合……如此,关于A型号的200台交换机,可以形成 100个跨设备链路聚合系统;以及,针对B型号的交换机,将201、202号交换机与101号服务器形成跨设备链路聚合,将203、204号交换机与102号服务器形成跨设备链路聚合……如此,关于B型号的400台交换机,可以形成 200个跨设备链路聚合系统。此外,关于任一个跨设备链路聚合系统中的主、备交换机具体为哪一个、服务器具体为哪一个,是可以预先进行设定的,比如本申请中将奇数编号的交换机定义为主交换机,以及将偶数编号的交换机定义为备交换机,然后将这个机房中的300个跨设备链路聚合系统中的每一个跨设备链路聚合系统的具体信息都一一存储到检查服务器中。
接着,一方面,检查服务器可以通过本地的配置采集模块、周期性地依据本地存储的关于该机房的跨设备链路聚合系统的具体信息,逐一地对这300个跨设备链路聚合系统中的主、备交换机的状态信息进行获取,包括采集每个交换机组合中的各个交换机的LLDP(Link Layer Discovery Protocol,链路层发现协议)信息、VPC状态、VPC PEER Link信息、port-channel(链路聚合)状态以及配置数据等多方面信息。
另一方面,当该机房中的交换机与服务器之间的连接端口断开时、交换机可主动发出告警信息,因此检查服务器还可以通过本地的告警模块来对该告警信息进行接收,从而检查服务器可对发送该告警信息的交换机依次发送端口信息获取命令(如VPC PEERLink命令)、对端设备地址信息获取命令(如LLDP 命令),而最终获取到与该交换机形成设备链路聚合的另一交换机的地址信息。当然,检查服务器也可以基于本地存储的该机房的各个跨设备链路聚合系统的具体信息来获取另一交换机的地址信息,本申请不做具体限定。在检查服务器获取到发送告警信息的交换机组合的地址信息后,可以通过本地的配置采集模块对该交换机组合中的主交换机、备交换机的状态信息进行获取,包括采集交换机的LLDP信息、VPC状态、VPC PEER Link信息、port-channel状态以及配置数据等多方面信息。
然后,检查服务器可以调用本地的状态检查模块,由状态检查模块来对任一组合的主、备交换机的状态信息进行检查。其中,状态检查模块会逐一遍历采集出来的配置找到对应的VPC PEER设备和提取相关状态位信息。根据采集出来的LLDP信息,将VPC PEER自动组合成一个设备组,如下表一中设备A和设备B为一个设备组,找不到设备组的设备将归入异常设备列表。通过对设备组关键字段的匹配判断物理口和逻辑口的状态,形成VPC状态信息表,如下表一所示。通过对设备的VPC状态信息表每个端口的状态进行判断,则可得知一组VPC的情况是否正常。只要如下端口eth1端口状态表中有一个接口UP但不全为UP,则判断VPC状态异常,其他端口判断逻辑一样。状态检查模块返回一个字典集,字典存在“正常设备组”和“异常设备组”两种键值,每种键值均对应一个包含VPC PEER组地址对的字典的列表。键值对应的字典中亦有键值,健值中除了异常端口列表还保存VPC主备状态标识,如表二所示。状态检查模块完成所有设备检查后,将对应设备组异常端口列表返回给配置核查模块,其中每个设备组合下的异常端口列表可以为多个。
表一 VPC状态信息表
表二 VPC状态主备信息表
在步骤302的一个实施中,所述第一配置模板是根据所述预设区域中具有同一型号的端口正常的多个交换机组合得到的,包括:获取所述多个交换机组合中的各主交换机的配置数据;针对配置数据中的任一配置模块,从所述各主交换机的配置数据中确定出符合第一设定条件的同一类别的各命令行结构;所述同一类别的各命令行结构具有相同的命令行行数,且对于同一行命令行具有相同的行首关键字;针对所述同一类别的各命令行结构,通过比对任意两个命令行结构,得到所述配置模块在满足第二设定条件下的子配置模板;所述子配置模板用于指示所述同一类别的各命令行结构应当具有的命令行固定参数和命令行变化参数,所述命令行固定参数不依赖于配置对象改变,所述命令行变化参数依赖于配置对象而改变;根据各配置模块分别对应的子配置模板,得到所述第一配置模板。
举个例子,假设当前时刻,检查服务器接收到一则告警信息,该则告警信息是由机房中的A型号的1号交换机发送的,且该1号交换机是它所在跨设备链路聚合系统中的主交换机。此时,检查服务器可以基于本地存储的该机房中的A型号的形成跨设备链路聚合的各个主交换机的标识而分别去各个主交换的本地数据库中获取主交换机的状态数据,并从中确定出端口正常的交换机,然后依据该些端口正常的主交换机各自具有的配置数据,对该些A型号的、端口正常的交换机的配置数据进行处理。其中,处理过程可以包括:
由于技术人员初始在对主交换机进行配置时,可涉及到对多个不同对象的配置,也即主交换机的配置数据可以包括多个配置模块。则,针对任一个配置模块,确定该些A型号的、端口正常的主交换机在该配置模块下的命令行结构是否属于同一类别的命令行结构;如果它们可以被划分成多个类别的命令行结构的话,那么针对每个类别的命令行结构,在该类别的命令行结构下可以包括有多少个主交换机,也即确定有多少个端口正常的A型号的主交换机属于同一类别的命令行结构,然后将满足第一预设条件的某一类别的多个命令行结构作为研究对象,通过将这些同一类别的多个命令行结构进行两两比较,从而可以得到每一个配置模块在满足第二设定条件下的子配置模板;最后,将多个子配置模板进行拼接,从而得到用于确定发送告警信息的主交换机是否发生异常的第一配置模板。
其中,同一类别的命令行结构指的是针对同一个配置模块,任意两个命令行结构具有相同的命令行行数,且针对同一行的命令行,二者的行首关键字相同。如图4所示,为本申请实施例提供的命令行结构示意图,参考图4,图中的第一列(从左往右数)、第二列和第三列的命令行都是用于对同一个配置模块进行配置时而生成的命令行;其中,第一列的“命令行结构一”与第二列的“命令行结构二”为同一类别的命令行结构,因为二者均有6行命令行,且针对同一行的命令行,二者的行首关键字相同;相比之下,第三列的“命令行结构三”则是与“命令行结构一”和/或“命令行结构二”不属于同一类别的命令行结构,因为它们的命令行行数不相同。
其中,命令行固定参数不依赖于配置对象改变,命令行变化参数依赖于配置对象而改变。参考图5,为本申请实施例提供的一种配置模板框架的示意图,其中,图5中的配置模板框架是基于图4中所示意的3个命令行结构而确定的。在图5中,第一列(从左往右数)中的“配置模板框架一”和第二列中的“配置模板框架二”是基于图4第一列中的“命令行结构一”和第二列中的“命令行结构二”确定的,其中,通过比较“命令行结构一”与“命令行结构二”,确定二者相同位置上的诸如“peer-keepalive”、“destination”等字段并不依赖于二者是不同的两台交换机而不同,因此该些字段用于表示命令行固定参数;相比之下,通过比较“命令行结构一”与“命令行结构二”,确定二者相同位置上的诸如“1.1.1.1”与“2.2.2.1”等字段依赖于二者是不同的两台交换机而不同,因此该些字段的位置使用了横线进行表示,横线用于表示命令行变化参数。
基于同样的道理,可以确定第二配置模板,该第二配置模板用于对与发送告警信息的主交换机组成跨设备链路聚合的备交换机的配置数据进行检查。
在本申请的某些实施例中,所述针对所述同一类别的各命令行结构,通过比对任意两个命令行结构,得到所述配置模块在满足第二设定条件下的子配置模板,包括:将同一类别的各命令行结构排序;针对所述各命令行结构中的任一第一命令行结构,将所述第一命令行结构与排序位于所述第一命令行结构之前的任一第二命令行结构进行匹配,将所述第一命令行结构与所述第二命令行结构之间的重叠部分作为待选子配置模板;将各命令行结构的待选子配置模板中符合所述第二设定条件的待选子配置模板作为所述子配置模板。
在本申请的某些实施例中,所述第一设定条件为针对各主交机的同一配置模块,属于同一类别的命令行结构中数量最大的;所述第二设定条件为各待选子配置模板中数量最大的。
举个例子,前述的A型号的1号交换机(主交换机)向检查服务器发送了告警信息,从而检查服务器通过获取1号交换机所在机房中的A型号的、属性为主交换机的3、5……199号交换机的状态数据,并确定这99个A型号的主交换机的端口均为正常,如此检查服务器可以对这99个A型号的主交换机的配置数据进行处理,如针对任一个配置模块,确定该配置模块下,存在有多少个类别的命令行结构,并将主交换机数目最多的一个类别的多个命令行结构确定为研究对象,并将该类别的多个命令行结构,依次排序。
如图6所示,为本申请实施例提供的一种子配置模板的确定示意图。参考图6,设第一列(从左往右数)的“命令行结构A1”、第二列的“命令行结构 A2”和第三列的“命令行结构A3”分别为上述的99个A型号、端口正常的主交换机的在某一配置模块下所确定出的主交换机数目最多的同一个类别的命令行结构,并已经进行排序。如此,定义第一列中的“配置模板框架A11”是第一列中的“命令行结构A1”自身;将第二列中的“命令行结构A2”与第一列中的“命令行结构A1”比较,得到二者的重叠部分,并记为“配置模板框架A21”;将第三列中的“命令行结构A3”与第一列中的“命令行结构A1”比较,得到二者的重叠部分,并记为“配置模板框架A31”,以及将第三列中的“命令行结构A3”与第二列中的“命令行结构A2”比较,得到二者的重叠部分,并记为“配置模板框架A32”,其中配置模板框架A11、A21、A31和 A32均可称为待选子配置模板。接着,针对每一列中的配置模板框架,进行域内去重,如针对第一列中的“配置模板框架A11”,通过将“配置模板框架A11”与自身相比较,去重后得到A11;针对第二列中的“配置模板框架A21”,通过将“配置模板框架A21”与自身相比较,去重后得到A21;针对第三列中的“配置模板框架A31”和“配置模板框架A32”相比较,由于两者不一致,因此去重后得到它们本身,即A31和A32。最后,将域内去重后得到的配置模板框架A11、A21、A31和A32再进行域间去重,也即将A21与A11进行比较,将A31与A11进行比较,将A32与A11进行比较,将A31与A21进行比较,将A32与A21进行比较,确定只有A21和A32相同(重合),则删除配置模板框架A32并记录A21的重合数为2,A11\A31和其他配置模板框架均不重合则记录重合数为1。最终以重合数最高(此处为2)的配置模板框架A32为子配置模板。
基于上述的方法,可以确定主交换机在各个配置模块下的子配置模板,然后对各个子配置模板进行拼接,从而可以得到用于对发送告警信息的主交换机的配置数据进行检查的第一配置模板。
在上述步骤303的一个实施中,所述基于所述第一配置模板对所述主交换机的配置数据进行检查,包括:确定所述主交换机的配置数据中的第i行与所述第一配置模板中的第i行是否符合同一标准;所述同一标准为命令行固定参数相同、命令行变化参数不同;确定所述主交换机的配置数据中的命令行变化参数是否符合配置要求;若所述主交换机的配置数据中的各命令行均符合所述同一标准且命令行变化参数符合配置要求,则确定所述主交换机的配置数据的配置正常。
例如,在使用第一配置模板对发送告警信息的主交换机的配置数据进行检查的过程中,可以依据第一配置模板对应的命令行、逐行地对该主交换机的命令行进行检查,关于同一行的命令行,确定该主交换机的命令行固定参数是否与第一配置模板的命令行固定参数一致,而仅是该主交换机的命令行变换参数与第一配置模板不同;若是的话,则继续确定该行中的命令行变化参数是否符合配置要求,如命令行变化参数理应被配置为IP地址,则该命令行变化参数应该被表示成xx.xx.xx.xx的格式,而非xx.xx.xx的格式,最后,当且仅当该主交换机的每一行的命令行固定参数与第一配置模板相同,且命令行变化参数符合配置要求,则说明该主交换机的配置数据是正常的。
在步骤203的一个实施中,向所述主交换机、所述备交换机以及与所述主交换机、所述备交换机形成跨设备链路聚合的服务器发送指标采集指令;所述指标采集指令用于获取所述主交换机与所述服务器,所述备交换机与所述服务器之间进行数据交互时的数据包的发送状态;根据所述指标采集指令返回的指标结果,确定所述主交换机、所述备交换机和所述服务器是否发生异常。
举个例子,对于本次主交换机发送的告警信息,若经过检查服务器的对主、备交换机的配置数据进行检查后,无论确定其中存在有配置数据异常的交换机与否,检查服务器均可以调用本地的协商核查模块来对主交换机与服务器之间的数据交互时候的数据包发送状态进行检查,以及对备交换机与服务器之间的数据交互时候的数据包发送状态进行检查,来确定三个设备中是否存在异常的设备。其中,若检查服务器是在确定交换机的配置数据有异常时而继续调用的协商核查模块,则表示检查服务器是为了进一步确定交换机除了发生配置数据的异常以外,是否还会存在着数据包发送异常的情况,如此可以提升确定异常设备的效果;若检查服务器是在确定交换机的配置数据无异常时而继续调用的协商核查模块,则表示检查服务器是为了确认导致本次告警信息的原因是否为数据包在发送过程中存在异常。
其中,协商核查模块用来判断VPC协议协商过程中交互出现的问题,常常使用在配置正确而VPC无法连接起来的场景。该模块用来排查接口单播、组播报文交互情况、VPC协商报文收发情况来判断报文交互过程。协商核查模块通过在一定时间段内对设备多次下发采集信息,获取收发报文增量关系,可以判断是本端设备模块故障,或者是对端设备故障。具体以单播报文交互情况为例判断说明,当本端端口单播报文在出方向一直有增加而入方向未增加,则说明对端设备未能识别本端设备报文或正确处理本端设备报文,此时可以判定为对端设备故障而导致链路聚合异常。
在本申请的某些实施例中,若确定所述主交换机、所述备交换机和所述服务器并未发生异常,则分别对所述主交换机与所述服务器之间的第一协议报文、所述备交换机与所述服务器之间的第二协议报文进行检查,并分别得到第一检查结果和第二检查结果;根据所述第一检查结果和所述第二检查结果,确定所述主交换机、所述备交换机和所述服务器中是否发生异常。
举个例子,对于本次主交换机发送的告警信息,若经过检查服务器对主交换机与服务器之间、以及备交换机与服务器之间的数据交互时候的数据发送状态进行检查后,无论确定其中是否存在发生异常的设备,检查服务器均可以调用本地的抓包核查模块来对主交换机与服务器之间的第一协议报文、以及备交换机与服务器之间的第二协议报文进行检查,并根据检查结果确定三者中是否存在发生异常的设备。其中,若检查服务器是在确定配置数据有异常和/或数据包发送过程存在异常而调用的抓包核查模块,则表示检查服务器在进一步判断是否还会存在着协议报文发生异常的情况,如此可以提升确定异常设备的效果;若检查服务器是在确定交换机的配置数据无异常且数据包发送过程中无异常而调用的抓包核查模块,则表示检查服务器是为了确认导致本次告警的原因具体为哪个协议报文发生了异常。
其中,抓包核查模块用来在复杂的故障场景下,需要通过对报文交互的内容正确性进行判断。该模块通过下发设备接口抓包命令,实现对报文交互内容的获取。通过对VPC协议的解析,实现更深层次的问题核查。
基于同样的构思,本申请实施例提供一种设备的检查装置,如图7所示,该装置包括:
异常确定单元701,用于确定预设区域中形成跨设备链路聚合的交换机组合的端口异常;其中,所述交换机组合包括主交换机和备交换机;
配置模板确定单元702,用于获取所述预设区域中针对所述主交换机的第一配置模板和针对所述备交换机的第二配置模板;所述第一配置模板和所述第二配置模板是根据所述预设区域中具有同一型号的端口正常的多个交换机组合得到的;
检查单元703,用于分别基于所述第一配置模板和所述第二配置模板,对所述主交换机的配置数据和所述备交换机的配置数据分别进行检查,以确定配置数据是否异常。
进一步的,对于该装置,配置模板确定单元702,具体用于:获取所述多个交换机组合中的各主交换机的配置数据;针对配置数据中的任一配置模块,从所述各主交换机的配置数据中确定出符合第一设定条件的同一类别的各命令行结构;所述同一类别的各命令行结构具有相同的命令行行数,且对于同一行命令行具有相同的行首关键字;针对所述同一类别的各命令行结构,通过比对任意两个命令行结构,得到所述配置模块在满足第二设定条件下的子配置模板;所述子配置模板用于指示所述同一类别的各命令行结构应当具有的命令行固定参数和命令行变化参数,所述命令行固定参数不依赖于配置对象改变,所述命令行变化参数依赖于配置对象而改变;根据各配置模块分别对应的子配置模板,得到所述第一配置模板。
进一步的,对于该装置,配置模板确定单元702,具体用于:将同一类别的各命令行结构排序;针对所述各命令行结构中的任一第一命令行结构,将所述第一命令行结构与排序位于所述第一命令行结构之前的任一第二命令行结构进行匹配,将所述第一命令行结构与所述第二命令行结构之间的重叠部分作为待选子配置模板;将各命令行结构的待选子配置模板中符合所述第二设定条件的待选子配置模板作为所述子配置模板。
进一步的,对于该装置,所述第一设定条件为针对各主交机的同一配置模块,属于同一类别的命令行结构中数量最大的;所述第二设定条件为各待选子配置模板中数量最大的。
进一步的,对于该装置,检查单元703,具体用于:确定所述主交换机的配置数据中的第i行与所述第一配置模板中的第i行是否符合同一标准;所述同一标准为命令行固定参数相同、命令行变化参数不同;确定所述主交换机的配置数据中的命令行变化参数是否符合配置要求;若所述主交换机的配置数据中的各命令行均符合所述同一标准且命令行变化参数符合配置要求,则确定所述主交换机的配置数据的配置正常。
进一步的,对于该装置,异常确定单元701,具体用于:基于所述交换机组合中任意交换机发送的告警信息,确定所述主交换机的地址信息和所述备交换机的地址信息;或基于周期性检查,从预设的交换机组合的地址信息中确定所述主交换机的地址信息和所述备交换机的地址信息;根据所述主交换机的地址信息和所述备交换机的地址信息,分别从所述主交换机和所述备交换机获取交换机间的各端口的状态信息从而确定所述交换机组合的端口异常。
进一步的,对于该装置,所述告警信息是所述交换机组合中的所述主交换机发送的;异常确定单元701,还用于:接收所述主交换机发送的告警信息;所述告警信息是所述主交换机与所述跨设备链路聚合中的服务器相连接的第一端口断开时发送的,所述告警信息包括所述主交换机的地址信息;基于所述主交换机的地址信息,向所述主交换机发送端口信息获取命令;所述端口信息获取命令用于获取所述主交换机的第二端口,所述第二端口用于表示所述主交换机通过所述第二端口与所述备交换机相连从而形成设备链路聚合;对所述第二端口下发对端设备地址信息获取命令,得到所述备交换机的地址信息。
进一步的,对于该装置,异常确定单元701,还用于:向所述主交换机、所述备交换机以及与所述主交换机、所述备交换机形成跨设备链路聚合的服务器发送指标采集指令;所述指标采集指令用于获取所述主交换机与所述服务器,所述备交换机与所述服务器之间进行数据交互时的数据包的发送状态;根据所述指标采集指令返回的指标结果,确定所述主交换机、所述备交换机和所述服务器是否发生异常。
进一步的,对于该装置,异常确定单元701,还用于:若确定所述主交换机、所述备交换机和所述服务器并未发生异常,则分别对所述主交换机与所述服务器之间的第一协议报文、所述备交换机与所述服务器之间的第二协议报文进行检查,并分别得到第一检查结果和第二检查结果;根据所述第一检查结果和所述第二检查结果,确定所述主交换机、所述备交换机和所述服务器中是否发生异常。
本申请实施例还提供了一种计算设备,该计算设备具体可以为桌面计算机、便携式计算机、智能手机、平板电脑、个人数字助理(Personal Digital Assistant, PDA)等。该计算设备可以包括中央处理器(Center Processing Unit,CPU)、存储器、输入/输出设备等,输入设备可以包括键盘、鼠标、触摸屏等,输出设备可以包括显示设备,如液晶显示器(Liquid Crystal Display,LCD)、阴极射线管(Cathode Ray Tube,CRT)等。
存储器,可以包括只读存储器(ROM)和随机存取存储器(RAM),并向处理器提供存储器中存储的程序指令和数据。在本申请实施例中,存储器可以用于存储设备的检查方法的程序指令;
处理器,用于调用所述存储器中存储的程序指令,按照获得的程序执行设备的检查方法。
如图8所示,为本申请实施例提供的一种计算设备的示意图,该计算设备包括:
处理器801、存储器802、收发器803、总线接口804;其中,处理器801、存储器802与收发器803之间通过总线805连接;
所述处理器801,用于读取所述存储器802中的程序,执行上述设备的检查。
处理器801可以是中央处理器(central processing unit,简称CPU),网络处理器(network processor,简称NP)或者CPU和NP的组合。还可以是硬件芯片。上述硬件芯片可以是专用集成电路(application-specific integrated circuit,简称ASIC),可编程逻辑器件(programmable logic device,简称PLD)或其组合。上述PLD可以是复杂可编程逻辑器件(complex programmable logic device,简称CPLD),现场可编程逻辑门阵列(field-programmable gate array,简称 FPGA),通用阵列逻辑(generic array logic,简称GAL)或其任意组合。
所述存储器802,用于存储一个或多个可执行程序,可以存储所述处理器 801在执行操作时所使用的数据。
具体地,程序可以包括程序代码,程序代码包括计算机操作指令。存储器 802可以包括易失性存储器(volatile memory),例如随机存取存储器 (random-access memory,简称RAM);存储器802也可以包括非易失性存储器(non-volatile memory),例如快闪存储器(flash memory),硬盘(hard disk drive,简称HDD)或固态硬盘(solid-state drive,简称SSD);存储器802还可以包括上述种类的存储器的组合。
存储器802存储了如下的元素,可执行模块或者数据结构,或者它们的子集,或者它们的扩展集:
操作指令:包括各种操作指令,用于实现各种操作。
操作系统:包括各种系统程序,用于实现各种基础业务以及处理基于硬件的任务。
总线805可以是外设部件互连标准(peripheral component interconnect,简称PCI)总线或扩展工业标准结构(extended industry standard architecture,简称EISA)总线等。总线可以分为地址总线、数据总线、控制总线等。为便于表示,图8中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。
总线接口804可以为有线通信接入口,无线总线接口或其组合,其中,有线总线接口例如可以为以太网接口。以太网接口可以是光接口,电接口或其组合。无线总线接口可以为WLAN接口。
本申请实施例还提供了一种计算机可读存储介质,所述计算机可读存储介质存储有计算机可执行指令,所述计算机可执行指令用于使计算机执行设备的检查方法。
本领域内的技术人员应明白,本申请的实施例可提供为方法、或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、 CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本申请是参照根据本申请实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和 /或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/ 或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
尽管已描述了本申请的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例作出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本申请范围的所有变更和修改。
显然,本领域的技术人员可以对本申请进行各种改动和变型而不脱离本申请的精神和范围。这样,倘若本申请的这些修改和变型属于本申请权利要求及其等同技术的范围之内,则本申请也意图包含这些改动和变型在内。
Claims (11)
1.一种设备的检查方法,其特征在于,包括:
确定预设区域中形成跨设备链路聚合的交换机组合的端口异常;其中,所述交换机组合包括主交换机和备交换机;
获取所述预设区域中针对所述主交换机的第一配置模板和针对所述备交换机的第二配置模板;所述第一配置模板和所述第二配置模板是根据所述预设区域中具有同一型号的端口正常的多个交换机组合得到的;
分别基于所述第一配置模板和所述第二配置模板,对所述主交换机的配置数据和所述备交换机的配置数据分别进行检查,以确定配置数据是否异常。
2.如权利要求1所述的方法,其特征在于,
所述第一配置模板是根据所述预设区域中具有同一型号的端口正常的多个交换机组合得到的,包括:
获取所述多个交换机组合中的各主交换机的配置数据;
针对配置数据中的任一配置模块,从所述各主交换机的配置数据中确定出符合第一设定条件的同一类别的各命令行结构;所述同一类别的各命令行结构具有相同的命令行行数,且对于同一行命令行具有相同的行首关键字;
针对所述同一类别的各命令行结构,通过比对任意两个命令行结构,得到所述配置模块在满足第二设定条件下的子配置模板;所述子配置模板用于指示所述同一类别的各命令行结构应当具有的命令行固定参数和命令行变化参数,所述命令行固定参数不依赖于配置对象改变,所述命令行变化参数依赖于配置对象而改变;
根据各配置模块分别对应的子配置模板,得到所述第一配置模板。
3.如权利要求2所述的方法,其特征在于,
所述针对所述同一类别的各命令行结构,通过比对任意两个命令行结构,得到所述配置模块在满足第二设定条件下的子配置模板,包括:
将同一类别的各命令行结构排序;
针对所述各命令行结构中的任一第一命令行结构,将所述第一命令行结构与排序位于所述第一命令行结构之前的任一第二命令行结构进行匹配,将所述第一命令行结构与所述第二命令行结构之间的重叠部分作为待选子配置模板;
将各命令行结构的待选子配置模板中符合所述第二设定条件的待选子配置模板作为所述子配置模板。
4.如权利要求2所述的方法,其特征在于,
所述第一设定条件为针对各主交机的同一配置模块,属于同一类别的命令行结构中数量最大的;
所述第二设定条件为各待选子配置模板中数量最大的。
5.如权利要求2所述的方法,其特征在于,
所述基于所述第一配置模板对所述主交换机的配置数据进行检查,包括:
确定所述主交换机的配置数据中的第i行与所述第一配置模板中的第i行是否符合同一标准;所述同一标准为命令行固定参数相同、命令行变化参数不同;
确定所述主交换机的配置数据中的命令行变化参数是否符合配置要求;
若所述主交换机的配置数据中的各命令行均符合所述同一标准且命令行变化参数符合配置要求,则确定所述主交换机的配置数据的配置正常。
6.如权利要求1所述的方法,其特征在于,
所述确定预设区域中形成跨设备链路聚合的交换机组合的端口异常,包括:
基于所述交换机组合中任意交换机发送的告警信息,确定所述主交换机的地址信息和所述备交换机的地址信息;或基于周期性检查,从预设的交换机组合的地址信息中确定所述主交换机的地址信息和所述备交换机的地址信息;
根据所述主交换机的地址信息和所述备交换机的地址信息,分别从所述主交换机和所述备交换机获取交换机间的各端口的状态信息从而确定所述交换机组合的端口异常。
7.如权利要求6所述的方法,其特征在于,所述告警信息是所述交换机组合中的所述主交换机发送的;
所述基于所述交换机组合中任意交换机发送的告警信息,确定所述主交换机的地址信息和所述备交换机的地址信息,包括:
接收所述主交换机发送的告警信息;所述告警信息是所述主交换机与所述跨设备链路聚合中的服务器相连接的第一端口断开时发送的,所述告警信息包括所述主交换机的地址信息;
基于所述主交换机的地址信息,向所述主交换机发送端口信息获取命令;所述端口信息获取命令用于获取所述主交换机的第二端口,所述第二端口用于表示所述主交换机通过所述第二端口与所述备交换机相连从而形成设备链路聚合;
对所述第二端口下发对端设备地址信息获取命令,得到所述备交换机的地址信息。
8.如权利要求1-6任一项所述的方法,其特征在于,所述方法还包括:
向所述主交换机、所述备交换机以及与所述主交换机、所述备交换机形成跨设备链路聚合的服务器发送指标采集指令;所述指标采集指令用于获取所述主交换机与所述服务器,所述备交换机与所述服务器之间进行数据交互时的数据包的发送状态;
根据所述指标采集指令返回的指标结果,确定所述主交换机、所述备交换机和所述服务器是否发生异常。
9.如权利要求8所述的方法,其特征在于,所述方法还包括:
若确定所述主交换机、所述备交换机和所述服务器并未发生异常,则分别对所述主交换机与所述服务器之间的第一协议报文、所述备交换机与所述服务器之间的第二协议报文进行检查,并分别得到第一检查结果和第二检查结果;
根据所述第一检查结果和所述第二检查结果,确定所述主交换机、所述备交换机和所述服务器中是否发生异常。
10.一种设备的检查装置,其特征在于,包括:
异常确定单元,用于确定预设区域中形成跨设备链路聚合的交换机组合的端口异常;其中,所述交换机组合包括主交换机和备交换机;
配置模板确定单元,用于获取所述预设区域中针对所述主交换机的第一配置模板和针对所述备交换机的第二配置模板;所述第一配置模板和所述第二配置模板是根据所述预设区域中具有同一型号的端口正常的多个交换机组合得到的;
检查单元,用于分别基于所述第一配置模板和所述第二配置模板,对所述主交换机的配置数据和所述备交换机的配置数据分别进行检查,以确定配置数据是否异常。
11.一种计算机可读存储介质,其特征在于,所述存储介质存储有计算机可执行指令,所述计算机可执行指令用于使计算机执行如权利要求1-9任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011493127.3A CN112637010B (zh) | 2020-12-17 | 2020-12-17 | 一种设备的检查方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011493127.3A CN112637010B (zh) | 2020-12-17 | 2020-12-17 | 一种设备的检查方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112637010A true CN112637010A (zh) | 2021-04-09 |
CN112637010B CN112637010B (zh) | 2024-09-03 |
Family
ID=75316764
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202011493127.3A Active CN112637010B (zh) | 2020-12-17 | 2020-12-17 | 一种设备的检查方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112637010B (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113434215A (zh) * | 2021-06-28 | 2021-09-24 | 青岛海尔科技有限公司 | 信息的加载方法、装置、存储介质及处理器 |
CN113660136A (zh) * | 2021-08-12 | 2021-11-16 | 中国工商银行股份有限公司 | 双路交换机端口可用性检查方法、装置、设备及存储介质 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104219107A (zh) * | 2014-08-26 | 2014-12-17 | 华为技术有限公司 | 一种通信故障的检测方法、装置及系统 |
CN105227456A (zh) * | 2015-09-07 | 2016-01-06 | 浙江宇视科技有限公司 | 一种聚合链路故障恢复传输的方法及装置 |
US20160112252A1 (en) * | 2014-10-15 | 2016-04-21 | Cisco Technology, Inc. | Deployment and upgrade of network devices in a network environment |
CN111261271A (zh) * | 2018-11-30 | 2020-06-09 | 浙江宇视科技有限公司 | 一种针对视频监控环境的业务可用性诊断方法及装置 |
-
2020
- 2020-12-17 CN CN202011493127.3A patent/CN112637010B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104219107A (zh) * | 2014-08-26 | 2014-12-17 | 华为技术有限公司 | 一种通信故障的检测方法、装置及系统 |
US20160112252A1 (en) * | 2014-10-15 | 2016-04-21 | Cisco Technology, Inc. | Deployment and upgrade of network devices in a network environment |
CN105227456A (zh) * | 2015-09-07 | 2016-01-06 | 浙江宇视科技有限公司 | 一种聚合链路故障恢复传输的方法及装置 |
CN111261271A (zh) * | 2018-11-30 | 2020-06-09 | 浙江宇视科技有限公司 | 一种针对视频监控环境的业务可用性诊断方法及装置 |
Non-Patent Citations (1)
Title |
---|
李娜娜;胡术;杨凯;吴昊;: "ATC中基于交换机的自动查线研究与实现", 微计算机信息, no. 03, 25 January 2009 (2009-01-25), pages 91 - 93 * |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113434215A (zh) * | 2021-06-28 | 2021-09-24 | 青岛海尔科技有限公司 | 信息的加载方法、装置、存储介质及处理器 |
CN113434215B (zh) * | 2021-06-28 | 2023-06-16 | 青岛海尔科技有限公司 | 信息的加载方法、装置、存储介质及处理器 |
CN113660136A (zh) * | 2021-08-12 | 2021-11-16 | 中国工商银行股份有限公司 | 双路交换机端口可用性检查方法、装置、设备及存储介质 |
CN113660136B (zh) * | 2021-08-12 | 2023-11-21 | 中国工商银行股份有限公司 | 双路交换机端口可用性检查方法、装置、设备及存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN112637010B (zh) | 2024-09-03 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US9998215B2 (en) | Diagnostic port for inter-switch link testing in electrical, optical and remote loopback modes | |
US8270306B2 (en) | Fault management apparatus and method for identifying cause of fault in communication network | |
CN112637010B (zh) | 一种设备的检查方法及装置 | |
CN109039763A (zh) | 一种基于回溯法的网络故障节点检测方法及网络管理系统 | |
CN103138988B (zh) | 网络故障的定位处理方法及装置 | |
JPWO2008133231A1 (ja) | Vlan通信検査システム、方法、およびプログラム | |
CN109120522B (zh) | 一种多路径状态监测方法及装置 | |
CN110708715B (zh) | 一种5g基站业务故障查找方法及装置 | |
CN113746686A (zh) | 一种网络流量的状态确定方法、计算设备及存储介质 | |
CN101800672B (zh) | 设备检测方法和设备 | |
CN112311574A (zh) | 网络拓扑连线的检查方法、装置及设备 | |
CN109150602A (zh) | 一种适配存储设备的方法、装置、计算机存储介质及终端 | |
CN108512675B (zh) | 一种网络诊断的方法、装置、控制节点和网络节点 | |
CN112532447A (zh) | 一种rdma参数配置的方法、装置及存储介质 | |
US20070055913A1 (en) | Facilitating detection of hardware service actions | |
CN115686921A (zh) | 一种多路径异常检测修复方法、装置、设备及介质 | |
CN114095394B (zh) | 网络节点故障检测方法、装置、电子设备及存储介质 | |
CN115373916A (zh) | 异常检测方法、装置、电子设备及计算机可读存储介质 | |
JP6052150B2 (ja) | 中継装置 | |
CN109542692A (zh) | Greenplum集群监控方法和装置 | |
CN112564845B (zh) | 一种确定逻辑连接的方法和相关设备 | |
CN114710400B (zh) | 故障设备定位方法、装置、电子设备和介质 | |
US20230300019A1 (en) | Dynamic customization of network controller data path based on controller internal state awareness | |
CN111641538A (zh) | Mac地址表容量测试方法、设备、电子设备及可读存储介质 | |
CN118784603A (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 |