一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

数据分析方法、系统、设备及存储介质与流程

2022-02-20 12:31:39 来源:中国专利 TAG:
本申请涉及计算机
技术领域
:,尤其涉及数据分析方法、系统、设备及存储介质。
背景技术
:随着云计算技术的发展,在云容器化场景中,会以一组计算节点组成集群网络的形态,共同提供服务。相应所形成的集群规模也变的更加庞大且复杂。在实际应用中,为了确保集群网络的安全运行,常通过配置拦截过滤规则、NAT规则等,实现集群网络中的访问控制、透明服务发现、流量负载均衡。随着云容器集群需求发展,相应的集群网络结构变得更加复杂。在使用过程中,不可避免的会出现一些网络故障。在进行网络故障排查的时候,通常对计算节点进行关键配置,比如添加防火墙规则、加载内核模块、日志模块等等。由于计算节点中链路路径繁杂,而且每个链路中的规则也比较多,在计算节点相关参数配置以及故障过程中,需要消耗大量人力,故障排查效率低。技术实现要素:为解决或改善现有技术中存在的问题,本申请各实施例提供了数据分析方法、系统、设备及存储介质。第一方面,在本申请的一个实施例中,提供了一种数据分析方法。该方法包括:获取源端地址信息及目的端地址信息;基于所述源端地址信息及目的端地址信息,确定所述源端地址信息至目的端地址信息之间的链路数据;其中,所述链路数据包括:多个链路及链路上的规则;基于所述链路数据执行仿真计算,以收集仿真数据分别在所述多个链路上匹配到的目标规则以及所述仿真数据流向信息;输出匹配到的多个所述目标规则以及所述仿真数据流向信息。第二方面,在本申请的一个实施例中,提供了另一种数据分析方法。该方法包括:诊断工具生成测试包;其中,测试包包括:源端地址信息、目的端地址信息;确定所述测试包所经过的多个链路分别反馈的所述测试包匹配到的目标规则;其中,所述多个链路是源端地址信息及目的端地址信息之间基于所述目标规则进行数据流转的路径节点;获取所述测试包在所述多个链路中流转的数据流向信息;基于匹配到的多个所述目标规则以及所述数据流向信息,分析所述多个链路的故障原因。第三方面,在本申请的一个实施例中,提供了一种数据分析系统。所述系统包括:诊断模块,用于获取源端地址信息及目的端地址信息;基于所述源端地址信息及目的端地址信息,确定所述源端地址信息至目的端地址信息之间的链路数据;其中,所述链路数据包括:多个链路及链路上的规则;基于所述链路数据执行仿真计算,以收集仿真数据分别在所述多个链路上匹配到的目标规则以及所述仿真数据流向信息;采集模块,用于基于所述源端地址信息及目的端地址信息收集所述多个链路上的规则;显示模块,用于输出匹配到的多个所述目标规则以及所述仿真数据流向信息。第四方面,在本申请的一个实施例中,提供了一种电子设备,包括存储器及处理器;其中,所述存储器,用于存储程序;所述处理器,与所述存储器耦合,用于执行所述存储器中存储的所述程序,以用于实现第一方面所述的一种数据分析方法或第二方面所述的另一种数据分析方法。第五方面,在本申请的一个实施例中,提供了一种非暂时性机器可读存储介质,所述非暂时性机器可读存储介质上存储有可执行代码,当所述可执行代码被电子设备的处理器执行时,使所述处理器执行如第一方面所述的方法或第二方面所述的方法。第六方面,在本申请的一个实施例中,提供了一种计算机程序产品,包括计算机程序/指令,当所述计算机程序/指令被处理器执行时,致使所述处理器能够实现第一方面所述的方法或第二方面所述的方法。本申请实施例提供的技术方案,在获取到远端地址信息和目的端地址信息之后,可以确定链路数据。进而,基于链路数据执行仿真计算,收集仿真数据对应的目标规则和对应的仿真数据流向信息。进而,基于收集到的目标规则以及流向信息。利用仿真环境以及仿真数据进行目标规则的匹配工作以及仿真实际的按照目标规则进行仿真数据处理后的流向信息,而不需要构造真实的数据包,也不需要对数据包实际运行的生产环境进行配置参数的修改,从而实现了简单、快速的链路问题的排查。附图说明为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。图1为本申请实施例提供的基于规则的数据包传输过程示意图;图2为本申请实施例提供的数据分析方法的流程示意图;图3为本申请实施例提供的仿真环境的结构示意图;图4为本申请实施例提供的仿真计算方法的流程示意图;图5为本申请实施例提供的规则表的示意图;图6为本申请实施例提供的另一种数据分析方法的流程示意图;图7为本申请实施例提供的数据分析系统结构示意图;图8为本申请实施例提供的一种数据分析装置的结构示意图;图9为本申请实施例提供的一种电子设备的结构示意图;图10为本申请实施例提供的另一种数据分析装置的结构示意图;图11为本申请实施例提供的另一种电子设备的结构示意图。具体实施方式在云容器服务集群场景中,为了确保网络安全,iptables规则有广泛使用。常用于配置拦截过滤规则、NAT规则,进而能够实现访问控制、透明服务的发现以及流量负载均衡。在一个集群内包含有很多个计算节点,每个计算节点上会配置大量的iptables规则,用于数据处理。为了便于理解,下面对基于iptables规则进行数据包处理过程进行举例说明。如图1为本申请实施例提供的基于规则的数据包传输过程示意图。从图1中可以看到,一共包括5个链路,分别是input、output、Forward、prerouting、postrouting。在每个链路中由包含有各自的规则,这些iptables规则包括:raw、mangle、nat、filter。当有数据包需要进行传输的时候,首先,由网络中网卡接收数据包。该数据包首先进入prerouting链路,从图1中可以看到,在prerouting链路中关联有nat规则、mangle规则和raw规则。接下来会对数据包中包含的目的端地址进行判断,判断在数据包中的目的地址是否是本机地址,如果是,则会进入本机,沿着图1中向下的方向。当数据包进入到input链路之后,从图1中可以看到在input链路中关联有filter规则和mangle规则。本机上运行的程序还可以发送数据包,这些数据包经过output链路发送到下一个链路,在output链路中关联有filter规则、nat规则、mangle规则和raw规则。进一步地,数据包经过上一个链路上的规则处理后到达postrouting链路,在postrouting链路上关联有nat规则、raw规则和mangle规则。如果经过判断在数据包中的目的地址并不是本机地址,则将数据包转发出去,数据包会沿着图1中右侧方向移动,经过forward链路,在该forward链路中关联有filter规则、mangle规则。然后将给数据包继续发送到postrouting链路,在postrouting链路上关联有nat规则、raw规则和mangle规则。一旦出现网络链接失败问题,需要对访问链路进行排查,排查过程需要大量人力、时间对iptables进行分析。在常规应用中,对iptables规则的分析主要依赖于iptables规则的动态调试方式。这种方式首先要对计算节点上iptables规则、内核模块、日志模块等进行调试配置,通过在iptables规则中配置TRACE规则来捕捉需要进行调试的数据包。进而实现对链路故障的定位以及进一步的分析。然而,在进行内核规模、日志模块等配置参数的修改,会对生成环境产生直接影响。由于需要对每个计算节点都采用这样的调试方式,为了能够实现对每个计算节点的彻底排查,需要耗费大力人力和时间。因此,需要一种能够替代传统人工检查方式,实现对网络中链路故障问题的快速排查诊断。在本申请技术方案中,具体工作过程,将在下述实施例中说明。为了使本
技术领域
:的人员更好地理解本申请方案,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述。在本申请的说明书、权利要求书及上述附图中描述的一些流程中,包含了按照特定顺序出现的多个操作,这些操作可以不按照其在本文中出现的顺序来执行或并行执行。操作的序号如101、102等,仅仅是用于区分各个不同的操作,序号本身不代表任何的执行顺序。另外,这些流程可以包括更多或更少的操作,并且这些操作可以按顺序执行或并行执行。需要说明的是,本文中的“第一”、“第二”等描述,是用于区分不同的消息、设备、模块等,不代表先后顺序,也不限定“第一”和“第二”是不同的类型。此外,下文描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。如图2为本申请实施例提供的数据分析方法的流程示意图。在实际应用场景中,该方法的执行主体可以是运行在计算机上的仿真工具。该方法具体包括如下步骤:201:获取源端地址信息及目的端地址信息。202:基于所述源端地址信息及目的端地址信息,确定所述源端地址信息至目的端地址信息之间的链路数据;其中,所述链路数据包括:多个链路及链路上的规则。203:基于所述链路数据执行仿真计算,以收集仿真数据分别在所述多个链路上匹配到的目标规则以及所述仿真数据流向信息。204:输出匹配到的多个所述目标规则以及所述仿真数据流向信息。需要说明的是,这里所说的源端地址信息包括:源端地址(源端IP地址)、源端端口;这里所说的目的端地址信息包括:目的端地址(目的IP地址)、目的端口。这里所说的规则可以理解为iptables规则。本申请技术方案中,可以创建一个仿真环境。如图3为本申请实施例提供的仿真环境的结构示意图。从图3中可以看到,在该仿真环境中包括诊断工具、采集模块。采集模块用于采集集群网络中各个计算节点中的iptables规则。利用在仿真环境中,诊断工具对存在问题的链路进行仿真分析。当网络出现故障的时候,将出现网络故障的源端地址信息和对应的目的端地址信息作为诊断网络问题的输入信息。根据源端地址信息和对应的目的端地址信息可以确定相关链路路径,以及在链路路径上的链路数据。在进行仿真计算的时候,基于链路数据确定的仿真数据进行仿真计算就可以,而不需要输入真实是数据包。而且,由于进行问题排查的时候是在仿真环境中进行的,也就不需要对生产环境中的配置参数进行修改,不会影响生产环境的稳定运行。在实际应用中,为了实现对网络集群的稳定运行进行有效监控,通常对集群中各个计算节点运行状态进行监测,当监测到有计算节点发生异常事件后,可以自动触发部署在计算节点上的采集模块进行地址信息(包括源端地址信息和目的端地址信息)的采集。以便诊断工具能够很快基于源端地址信息和目的端地址信息进行多个所述目标规则以及所述仿真数据流向信息匹配并输出,进而针对异常事件进行故障的排查。此外,在对集群中计算节点运行状态进行监测,并且发现异常事件后。可以由工作人员对异常事件进行初步分析,若分析发现异常事件为误报警,则可以忽略该异常事件。若分析发现该异常事件为真实的,则可以由工作人员触发对该异常事件的分析控件。进而,响应于工作人员的触发操作,触发部署在计算节点上的采集模块进行地址信息的采集,以便诊断工具能够很快根据源端地址信息和目的端地址信息进行多个所述目标规则以及所述仿真数据流向信息匹配并输出,进而实现对异常事件进行故障的排查。在进行仿真计算的时候,是利用仿真数据按照链路路径中多个链路的顺序进行处理,获取到仿真数据匹配的目标规则以及仿真数据流转信息,进而由用户根据获取到的目标规则以及流向信息判断当前链路路径中是否存在问题。比如,用户预期某个具有仿真数据的数据包应该顺利通过链路路径最终发送到目的端地址,但是,利用仿真数据进行仿真计算后发现,仿真数据流向信息在某个链路中被丢弃,而且经核实,在目标规则中确实在该链路中通过某一个规则对该仿真数据执行了丢弃动作。则可以确定在该链路路径中存在某些问题,从而为用户提供指示信息,以便用户进一步排查问题根源,比如,规则设置错误等等。在本申请一个或者多个实施例中,所述基于所述源端地址信息及目的端地址信息,确定所述源端地址信息至目的端地址信息之间的链路数据,包括:基于所述源端地址信息及目的端地址信息,确定对应的链路路径;对所述链路路径中包含的多个链路分别进行解析,生成各所述链路分别对应的链路元数据;其中,所述链路元数据包括:所述源端地址信息、所述目的端地址信息、链路数据类型。在实际应用中,当网络发生故障之后,可以根据故障提示信息知道发生故障的网络基本信息,比如,发生故障的源端地址信息包括:源端地址、源端端口;目的端地址信息包括:目的端地址、目的端端口等。进而,基于源端地址信息以及目的端地址信息,可以直接准确的确定对应的至少一条链路路径。在该链路路径中包含有前文所是的链路,在进行仿真计算的时候,需要考虑任何一条有可能经过的链路路径。例如,当目的端地址信息与当前待排查链路路径对应的本地地址相同,则通过本机链路进行处理,若目的端地址信息与当前待排查链路路径对应的本地地址不同,则会通过路由转发。因此,为了避免有遗漏,需要对其中的所有可能的链路路径都进行仿真计算。在确定链路路径之后,需要对链路路径进行分析,从而得到各链路中包含的链路元数据。该链路元数据包括比如,源端地址信息、所述目的端地址信息、链路数据类型。其中,这里所说的链路数据类型比如可以是通信方式(如TCP、UDP或ICMP)、以及其他相关协议参数(比如,hostname、networkname等)。这里所说的源端地址信息比如可以分别是源端地址192.168.0.2,源端端口65500;目的端地址信息比如可以是目的端地址192.168.0.15,目的端端口8080.在进行仿真计算的时候,需要通过链路本身分析得到的链路元数据进行仿真计算,因为不同链路通过解析得到的链路元数据可能不完全相同。在本申请一个或者多个实施例中,所述基于所述源端地址信息及目的端地址信息,确定所述源端地址信息至目的端地址信息之间的链路数据,包括:基于所述源端地址信息及目的端地址信息,确定对应的链路路径。收集所述链路路径中包含的多个链路上的规则。基于源端地址信息以及目的端地址信息,可以直接准确的确定对应的至少一条链路路径。例如,当目的端地址信息与当前待排查链路路径对应的本地地址相同,则通过本机链路进行处理,若目的端地址信息与当前待排查链路路径对应的本地地址不同,则会通过路由转发。因此,在确定链路路径的时候,要充分考虑到每一条可能的链路路径。需要说明的是,在不同链路路径中、以及不同的链路中可能包含有相同类型的规则,比如,虽然在多个链路中都关联有nat规则,但是具体规则对应的参数或者动作类型不同。因此,在进行规则收集的时候,不仅要收集到链路中的规则类型还需要具体收集规则相信信息。例如,在集群网络中包含有多条链路路径,而且这些链路路径涉及多个计算节点。可以在集群内各个计算节点上批量部署用于实现规则相关信息采集进程,收集集群中全部必要规则相关信息。不再需要用户参与到规则相关信息的收集工作当中,能够有效减轻工作人员收集规则的负担,而且具有更高的收集效率和准确性。在本申请一个或者多个实施例中,所述收集所述链路路径中包含的多个链路上的规则,还包括:收集所述链路路径中包含的多个链路上的规则。对所述规则进行分析,生成至少一个规则表;所述规则表中包含有源端地址信息、目的端地址信息、规则数据类型、动作类型。如前文所述,在不同的链路中所关联有的规则不同。在利用采集模块采集到多个计算节点中相关链路中的规则相关信息之后,还需要进行进一步的分析。这里分析的目的是需要对规则相关信息进行处理,生成与仿真计算相关的规则表。在该规则表中包含有源端地址信息、目的端地址信息、规则数据类型、动作类型。这里所说的规则表中,可以根据规则类型进行划分,比如,可以划分为5个表,分别是raw、mangle、nat、filter。在每个表当中,可能同时包含有多个链路相关的规则,在这些规则表当中的规则,有一些是能够与路径元数据匹配的目标规则,有一些则是无法匹配的不相关规则。在一个规则表(比如,nat规则表中),包含有很多个规则,在进行匹配的时候,按照规则表中规则的顺序进行匹配。能够仿真数据包在生产环境中链路上的处理过程,从而更加真实的模拟生产环境的数据处理过程,进而准确确定网络问题。其中,这里所说的源端地址信息和目的端地址信息是指在规则中设定的源端地址信息和目的端地址信息。进一步地,该源端地址信息包括源端地址和源端端口,目的端地址信息包括目的端地址和目的端端口。需要说明的是,规则中的源端地址信息、目的端地址信息与链路中的源端地址信息、目的端地址信息可能相同也可能不同,需要通过匹配确定。对应的规则数据类型可以是通信方式(如TCP、UDP或ICMP)、服务类型(如HTTP、FTP和SMTP)等。这里所说的动作类型,在iptables规则中可以分为基本动作和扩展动作。比如包括,accept:允许数据包通过。drop:直接丢弃数据包,不给任何回应信息,过了超时时间才会有反应信息。reject:拒绝数据包通过,必要时会给数据发送端一个响应的信息,客户端刚请求就会收到拒绝的信息。snat:源地址转换,解决内网用户用同一个公网地址上网的问题。masquerade:是sant的一种特殊形式,适用于动态的、临时会变的ip上。dnat:目标地址转换。redirect:在本机做端口映射。log:在/var/log/messages文件中记录日志信息,然后将数据包传递给下一条规则,也就是说除了记录以外不对数据包做任何其他操作,仍然让下一条规则去匹配。在本申请一个或者多个实施例中,如图4为本申请实施例提供的仿真计算方法的流程示意图。所述基于所述链路数据执行仿真计算,以收集仿真数据分别在所述多个链路上匹配到的目标规则以及所述仿真数据流向信息,具体包括如下步骤:401:将所述链路元数据作为所述仿真数据,按照所述规则表中顺序记录的规则,进行仿真计算。402:确定与所述仿真数据具有匹配关系的所述规则表中的所述目标规则。403:确定所述仿真数据执行所述目标规则所生成的所述仿真数据流向信息。这里所说的仿真数据是通过链路解析得到的链路元数据。在规则表中,所记录的规则都是按照实际生产环境中规则执行顺序进行记录的,从而可以基于规则表实现更加真实的仿真计算。比如,如图5为本申请实施例提供的规则表的示意图。从图5中可以看到规则表中记录的内容有,raw表对应的链路包括prerouting链路和output链路,在进行仿真计算的时候,也会按照规则表中的顺序进行仿真计算。在mangle表中对应的链路包括规则顺序为prerouting链路、postrouting链路、input链路、output链路和forward链路。在nat表中对应的链路包括规则顺序为prerouting链路、postrouting链路、output链路。在filter表中对应的规则顺序为input链路、forward链路和output链路。从图5中可以看到,在input链路中关联有第1条规则、第2条规则、第3条规则。在对仿真数据进行仿真计算的时候,按照规则对生产环境中对数据包处理数据的方式进行仿真数据的计算处理。这里所说的仿真计算包括对仿真数据与规则进行匹配计算,确定出目标规则,以及仿真计算出该仿真数据执行对应目标规则之后得到的仿真数据流向信息。在进行匹配计算的时候,基于仿真数据中包含的源端地址、源端端口、目的端地址、目的端端口和链路数据类型与规则表中的规则按照规则顺序进行匹配。在规则表中记录了所有规则相关信息。在进行匹配计算的时候,需要将源端地址信息和目的端地址信息以及数据类型进行全面比较。若完全相同,则确定该规则为规则表中的目标规则。反之,通过上述匹配计算之后,发现源端地址不同,则不会记录该条规则。在本申请一个或者多个实施例中,所述确定所述仿真数据执行所述目标规则所生成的所述仿真数据流向信息,包括:根据所述规则表中包含的与所述目标规则对应的所述动作类型,对所述仿真数据进行处理,得到的数据处理结果。基于所述数据处理结果,生成的所述仿真数据流向信息。如前文所述可知,本申请技术方案中,是基于仿真环境进行网络故障排查的。因此,在输入仿真数据并确定对应的目标规则之后,需要进一步利用目标规则对仿真数据进行对应的处理,尽可能真实的模拟实际数据包的处理过程和效果。并将每个链路中对仿真数据的处理结果记录下来。进而,基于链路路径中多个路径的数据处理结果生成仿真数据流向信息。将仿真数据流向信息按照生成的顺序汇总到一个表当中,方便用户能够直接了解到整个链路路径中各个链路处理结果,从而实现对网络故障的快速诊断。例如,在forward链路中,匹配到filter规则,具体地,在该filter规则中,设定的动作类型为“drop(丢弃)”,则会对仿真数据执行丢弃动作,这个“丢弃”动作就可以称为数据处理过程,将“丢弃”的执行结果存到仿真数据流向信息。然后继续执行forward链路中其他规则。仿真数据将按照链路路径中各链路的关系依次传输(当然可能其中某个链路将仿真数据做“丢弃”处理),然后在每个链路中按照规则顺序依次对仿真数据进行处理。基于上述实施例获取到匹配的目标规则和仿真数据流向信息,用户可以根据自己的经验进行判断。在一可选方案中,可以通过输入模块,向诊断工具中输入用户预先指定的预期结果,比如用户预期的数据包正确处理结果是在forward链路执行filter规则中的drop丢弃动作。在通过上述实施例获取到目标规则和数据流向信息之后,根据用户预先指定的预期结果,对目标规则和数据流向信息进行综合判断。比如若仿真计算后的结果发现仿真数据的实际流向信息为在forward链路执行到链路中第二个规则filter规则中的drop丢弃动作,恰好与预先输入的预期动作完全一致,则确认当前链路路径不存在网络故障,需要进一步对根据源端地址信息和目的端地址信息确定的其他链路进行仿真计算。若仿真计算后的结果发现仿真数据的实际流向信息为在output链路正常输出,也就是在forward链路并没有执行filter规则中的drop丢弃动作,则表示当前在排查的forward链路存在问题,或者在forward链路中的规则设定存在问题,导致实际执行的仿真数据流向信息与预期的不同。基于相同的思路,本申请实施例还提供一种数据分析方法。如图6为本申请实施例提供的另一种数据分析方法的流程示意图。该方法可用于与生产环境关联的诊断工具,能够在不影响生产环境的情况下对问题进行排查。所述方法包括:601:诊断工具生成测试包;其中,测试包包括:源端地址信息、目的端地址信息。602:确定所述测试包所经过的多个链路分别反馈的所述测试包匹配到的目标规则;其中,所述多个链路是源端地址信息及目的端地址信息之间基于所述目标规则进行数据流转的路径节点。603:获取所述测试包在所述多个链路中流转的数据流向信息。604:基于匹配到的多个所述目标规则以及所述数据流向信息,分析所述多个链路的故障原因。在本申请实施例中,还可以在不建立仿真环境的情况下,利用诊断工具对网络问题进行诊断。比如,可以在网络中预先设置诊断工具。当网络发生故障的时候,可以根据故障提示信息快速获取到发生故障的源端地址信息和目的端地址信息。并基于源端地址信息和目的端地址信息生产测试包,以便能够基于该测试包对网络故障进行排查。该诊断工具也不需要对原生产环境中的配置参数等信息进行修改,也不会影响原生产环境的稳定运行。在实际应用中,为了实现对网络集群的稳定运行进行有效监控,通常对集群中各个计算节点运行状态进行监测,当监测到有计算节点发生异常事件后,会及时进行报警提示。进而,可以自动触发部署在计算节点上的采集模块进行地址信息(包括源端地址信息和目的端地址信息)的采集,并生成测试包。此外,在对集群中计算节点运行状态进行监测,并且发现异常事件后,可以由工作人员对异常事件进行初步分析,若分析发现异常事件为误报警,则可以忽略该异常事件。若分析发现该异常事件为真实的,则可以由工作人员触发对该异常事件的分析控件。进而,响应于工作人员的触发操作,触发部署在计算节点上的采集模块进行地址信息的采集,并生成测试包。进而,确定在链路路径当中各个链路上的与测试包匹配的目标规则。如前述实施例可知,在每个链路上都关联有各至少一个规则,并且这些规则中都设置有特定的参数信息,比如,每个规则中设定有源端地址信息、目的端地址信息、动作类型、链路数据类型。不同的链路当中可能具有相同类型的规则,但是具体的规则的特定的参数信息可能不完全相同。因此,在利用诊断工具进行诊断的时候,需要将多个链路中的源端地址信息、目的端地址信息分别与各个规则进行匹配,只有匹配上的规则才被称作为目标规则,进而基于目标规则对测试包进行测试处理,比如按照目标规则中的参数信息对数据包进行转发、丢弃、修改等处理。将多个链路分别对应的数据处理结果进行输出,作为多个链路分别对应的数据流向信息。通过数据流向信息能够情况的看到各个链路中测试包的流转信息,以及通过目标规则可以知道对测试包所采取的处理规则。进而,对上述实施例得到的多个目标规则以及数据流向信息进行汇总,分析出当前链路路径中哪个链路或者哪个链路中的规则出现问题,导致出现网络故障。在本申请一个或者多个实施例中,所述确定所述测试包所经过的多个链路分别反馈的所述测试包匹配到的目标规则,包括:接收采集工具根据所述测试包收集到的所述多个链路上的规则;对所述规则进行分析,生成至少一个规则表;所述规则表中包含有源端地址信息、目的端地址信息、规则数据类型、动作类型;确定与所述测试包具有匹配关系的所述规则表中的所述目标规则。在网络生产环境比较复杂的情况下,可以采用预设进程作为采集工具,能够及时采集到各个计算节点中链路上的规则。这样采集到规则比较繁杂,为了便于后续的分析以及匹配计算,可进一步地对规则进行处理生成规则表,换言之,将后续匹配计算工作中需要用到的参数信息保留,不相关的信息进行剔除,生成比较规范的规则表。在一个规则表当中,含有一个类型的规则,但是同一个规则表当中的同类型规则的参数信息可能不同(比如,可能具有不同的动作类型、数据类型等等)。需要说明的是,在进行规则与测试包匹配的时候,需要根据规则表中规则的顺序进行依次匹配。因为前一个规则的处理结果可能会影响到下个规则的执行情况。在经过匹配之后,将能够匹配上的规则称为目标规则。具体匹配计算的过程,可以参考图1至图5对应的各实施例,这里就不再重复赘述。在本申请一个或者多个实施例中,所述获取所述测试包在所述多个链路中流转的数据流向信息,包括:根据所述规则表中包含的与所述目标规则对应的所述动作类型,对所述测试包进行处理,得到数据处理结果;基于所述数据处理结果,生成的所述数据流向信息。容易理解的是,通过上述进行规则匹配计算之后获取到多个目标规则。进而,需要在对应链路当中采用目标规则对测试包进行相应的处理,在处理的时候,需要根据目标规则中设定的动作类型进行。进而能够得到当前链路对应的数据处理结果,将链路路径当中多个链路的数据处理结果进行汇总,得到数据流向信息。例如,在forward链路中有filter规则执行drop丢弃动作,将测试包进行丢弃处理,在后续的链路当中接收不到测试数据包,则其他链路不会有对测试包进行处理的数据处理结果,则可以在汇总的时候标记为空的状态。在本申请一个或者多个实施例中,所述基于匹配到的多个所述目标规则以及所述仿真数据流向信息,分析所述多个链路的故障原因,包括:若所述数据流向信息与预设流向不同,且存在所述链路执行所述目标规则的动作类型与预设规则不同,则确定所述链路为故障链路。在进行故障分析的时候,可以由用户预先输入数据包正常执行情况下的预期规则和预期流向信息。在进行故障分析的时候,可以通过预期规则、预期流向信息,与获取到的目标规则、数据流向信息进行比对。若不同,则标记出哪里不同,并将比较结果进行输出,以便给用户更加直接的提示信息,不仅提示用户网络故障,而且还能进一步为用户提供一个初步的问题定位结果,方便引导用户快速解决问题。基于同样的思路,本申请实施例还提供一种数据分析系统。如图7为本申请实施例提供的数据分析系统结构示意图。从图7中可以看到,该系统包括:诊断模块71,用于获取源端地址信息及目的端地址信息;基于所述源端地址信息及目的端地址信息,确定所述源端地址信息至目的端地址信息之间的链路数据;其中,所述链路数据包括:多个链路及链路上的规则;基于所述链路数据执行仿真计算,以收集仿真数据分别在所述多个链路上匹配到的目标规则以及所述仿真数据流向信息;采集模块72,用于基于所述源端地址信息及目的端地址信息收集所述多个链路上的规则;显示模块73,用于输出匹配到的多个所述目标规则以及所述仿真数据流向信息。基于同样的思路,本申请实施例还提供一种数据分析装置。如图8为本申请实施例提供的一种数据分析装置的结构示意图。该数据分析装置包括:获取模块81,用于获取源端地址信息及目的端地址信息。确定模块82,用于基于所述源端地址信息及目的端地址信息,确定所述源端地址信息至目的端地址信息之间的链路数据;其中,所述链路数据包括:多个链路及链路上的规则。仿真模块83,用于基于所述链路数据执行仿真计算,以收集仿真数据分别在所述多个链路上匹配到的目标规则以及所述仿真数据流向信息;输出模块84,用于输出匹配到的多个所述目标规则以及所述仿真数据流向信息。可选地,确定模块82,还用于基于所述源端地址信息及目的端地址信息,确定对应的链路路径;对所述链路路径中包含的多个链路分别进行解析,生成各所述链路分别对应的链路元数据;其中,所述链路元数据包括:所述源端地址信息、所述目的端地址信息、链路数据类型。可选地,确定模块82,还用于基于所述源端地址信息及目的端地址信息,确定对应的链路路径;收集所述链路路径中包含的多个链路上的规则。可选地,还包括收集模块85,还用于收集所述链路路径中包含的多个链路上的规则;对所述规则进行分析,生成至少一个规则表;所述规则表中包含有源端地址信息、目的端地址信息、规则数据类型、动作类型。可选地,仿真模块83,还用于将所述链路元数据作为所述仿真数据,按照所述规则表中顺序记录的规则,进行仿真计算;确定与所述仿真数据具有匹配关系的所述规则表中的所述目标规则;确定所述仿真数据执行所述目标规则所生成的所述仿真数据流向信息。可选地,仿真模块83,还用于根据所述规则表中包含的与所述目标规则对应的所述动作类型,对所述仿真数据进行处理,得到的数据处理结果;基于所述数据处理结果,生成的所述仿真数据流向信息。本申请一个实施例还提供一种电子设备。该电子设备为计算单元中主节点电子设备。如图9为本申请实施例提供的一种电子设备的结构示意图。该电子设备包括存储器901、处理器902及通信组件903;其中,所述存储器901,用于存储程序;所述处理器902,与所述存储器耦合,用于执行所述存储器中存储的所述程序,以用于:获取源端地址信息及目的端地址信息;基于所述源端地址信息及目的端地址信息,确定所述源端地址信息至目的端地址信息之间的链路数据;其中,所述链路数据包括:多个链路及链路上的规则;基于所述链路数据执行仿真计算,以收集仿真数据分别在所述多个链路上匹配到的目标规则以及所述仿真数据流向信息;输出匹配到的多个所述目标规则以及所述仿真数据流向信息。处理器902还用于基于所述源端地址信息及目的端地址信息,确定对应的链路路径;对所述链路路径中包含的多个链路分别进行解析,生成各所述链路分别对应的链路元数据;其中,所述链路元数据包括:所述源端地址信息、所述目的端地址信息、链路数据类型。处理器902还用于基于所述源端地址信息及目的端地址信息,确定对应的链路路径;收集所述链路路径中包含的多个链路上的规则。处理器902还用于收集所述链路路径中包含的多个链路上的规则;对所述规则进行分析,生成至少一个规则表;所述规则表中包含有源端地址信息、目的端地址信息、规则数据类型、动作类型。处理器902还用于将所述链路元数据作为所述仿真数据,按照所述规则表中顺序记录的规则,进行仿真计算;确定与所述仿真数据具有匹配关系的所述规则表中的所述目标规则;确定所述仿真数据执行所述目标规则所生成的所述仿真数据流向信息。处理器902还用于根据所述规则表中包含的与所述目标规则对应的所述动作类型,对所述仿真数据进行处理,得到的数据处理结果;基于所述数据处理结果,生成的所述仿真数据流向信息。上述存储器901可被配置为存储其它各种数据以支持在电子设备上的操作。这些数据的示例包括用于在电子设备上操作的任何应用程序或方法的指令。存储器可以由任何类型的易失性或非易失性存储设备或者它们的组合实现,如静态随机存取存储器(SRAM),电可擦除可编程只读存储器(EEPROM),可擦除可编程只读存储器(EPROM),可编程只读存储器(PROM),只读存储器(ROM),磁存储器,快闪存储器,磁盘或光盘。进一步地,本实施例中的所述处理器902可以具体是:可编程交换处理芯片,该可编程交换处理芯片中配置有数据复制引擎,能对接收到的数据进行复制。上述处理器902在执行存储器中的程序时,除了上面的功能之外,还可实现其它功能,具体可参见前面各实施例的描述。进一步,如图9所示,电子设备还包括:电源组件904等其它组件。本申请实施例还提供一种非暂时性机器可读存储介质,所述非暂时性机器可读存储介质上存储有可执行代码,当所述可执行代码被电子设备的处理器执行时,使所述处理器执行图1至图5对应实施例所述的方法。基于同样的思路,本申请实施例还提供一种数据分析装置。如图10为本申请实施例提供的另一种数据分析装置的结构示意图。该数据分析装置包括:生成模块1001,用于诊断工具生成测试包;其中,测试包包括:源端地址信息、目的端地址信息。确定模块1002,用于确定所述测试包所经过的多个链路分别反馈的所述测试包匹配到的目标规则;其中,所述多个链路是源端地址信息及目的端地址信息之间基于所述目标规则进行数据流转的路径节点。获取模块1003,用于获取所述测试包在所述多个链路中流转的数据流向信息。分析模块1004,用于基于匹配到的多个所述目标规则以及所述数据流向信息,分析所述多个链路的故障原因。可选地,确定模块1002,还用于接收采集工具根据所述测试包收集到的所述多个链路上的规则。对所述规则进行分析,生成至少一个规则表;所述规则表中包含有源端地址信息、目的端地址信息、规则数据类型、动作类型。确定与所述测试包具有匹配关系的所述规则表中的所述目标规则。可选地,获取模块1003,还用于根据所述规则表中包含的与所述目标规则对应的所述动作类型,对所述测试包进行处理,得到数据处理结果;基于所述数据处理结果,生成的所述数据流向信息。可选地,分析模块1004,还用于若所述数据流向信息与预设流向不同,且存在所述链路执行所述目标规则的动作类型与预设规则不同,则确定所述链路为故障链路。本申请实施例还提供一种计算机程序产品,包括计算机程序/指令,当所述计算机程序/指令被处理器执行时,致使所述处理器能够实现图6对应实施例所述的方法。本申请一个实施例还提供一种电子设备。该电子设备为计算单元中备节点电子设备。如图11为本申请实施例提供的另一种电子设备的结构示意图。该电子设备包括存储器1101、处理器1102及通信组件1103;其中,所述存储器1101,用于存储程序;所述处理器1102,与所述存储器耦合,用于执行所述存储器中存储的所述程序,以用于:诊断工具生成测试包;其中,测试包包括:源端地址信息、目的端地址信息;确定所述测试包所经过的多个链路分别反馈的所述测试包匹配到的目标规则;其中,所述多个链路是源端地址信息及目的端地址信息之间基于所述目标规则进行数据流转的路径节点;获取所述测试包在所述多个链路中流转的数据流向信息;基于匹配到的多个所述目标规则以及所述数据流向信息,分析所述多个链路的故障原因。处理器1102,还用于接收采集工具根据所述测试包收集到的所述多个链路上的规则。对所述规则进行分析,生成至少一个规则表;所述规则表中包含有源端地址信息、目的端地址信息、规则数据类型、动作类型。确定与所述测试包具有匹配关系的所述规则表中的所述目标规则。处理器1102,还用于根据所述规则表中包含的与所述目标规则对应的所述动作类型,对所述测试包进行处理,得到数据处理结果;基于所述数据处理结果,生成的所述数据流向信息。处理器1102,还用于若所述数据流向信息与预设流向不同,且存在所述链路执行所述目标规则的动作类型与预设规则不同,则确定所述链路为故障链路。上述存储器1101可被配置为存储其它各种数据以支持在电子设备上的操作。这些数据的示例包括用于在电子设备上操作的任何应用程序或方法的指令。存储器可以由任何类型的易失性或非易失性存储设备或者它们的组合实现,如静态随机存取存储器(SRAM),电可擦除可编程只读存储器(EEPROM),可擦除可编程只读存储器(EPROM),可编程只读存储器(PROM),只读存储器(ROM),磁存储器,快闪存储器,磁盘或光盘。进一步地,本实施例中的所述处理器1102可以具体是:可编程交换处理芯片,该可编程交换处理芯片中配置有数据复制引擎,能对接收到的数据进行复制。上述处理器1102在执行存储器中的程序时,除了上面的功能之外,还可实现其它功能,具体可参见前面各实施例的描述。进一步,如图11所示,电子设备还包括:电源组件1104等其它组件。本申请实施例还提供一种非暂时性机器可读存储介质,所述非暂时性机器可读存储介质上存储有可执行代码,当所述可执行代码被电子设备的处理器执行时,使所述处理器执行图6对应实施例所述的方法。本申请实施例还提供一种计算机程序产品,包括计算机程序/指令,当所述计算机程序/指令被处理器执行时,致使所述处理器能够实现图6对应实施例所述的方法。基于上述实施例,在获取到远端地址信息和目的端地址信息之后,可以确定链路数据。进而,基于链路数据执行仿真计算,收集仿真数据对应的目标规则和对应的仿真数据流向信息。进而,基于收集到的目标规则以及流向信息。利用仿真环境以及仿真数据进行目标规则的匹配工作以及仿真实际的按照目标规则进行仿真数据处理后的流向信息,而不需要构造真实的数据包,也不需要对数据包实际运行的生产环境进行配置参数的修改,从而实现了简单、快速的链路问题的排查。能够在无需对网络关键配置进行修改的情况下,简单、快速的进行网络故障的排查,也不会对网络环境产生负面影响。以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性的劳动的情况下,即可以理解并实施。通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到各实施方式可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件。基于这样的理解,上述技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在计算机可读存储介质中,如ROM/RAM、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行各个实施例或者实施例的某些部分所述的方法。最后应说明的是:以上实施例仅用以说明本申请的技术方案,而非对其限制;尽管参照前述实施例对本申请进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本申请各实施例技术方案的精神和范围。当前第1页12当前第1页12
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献