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

基于通信数据包的多节点系统性能分析方法及系统、存储介质与流程

2022-02-19 05:44:29 来源:中国专利 TAG:


1.本发明涉及软件性能测试技术领域,尤其涉及基于通信数据包的多节点系统性能分析方法及系统、存储介质。


背景技术:

2.在软件性能测试中,当被测系统是由多节点即多个服务器构成的系统的情况下,若对其进行测试的过程发现系统存在响应慢的情况需要进行节点定位时,往往会存在定位困难的问题,传统的做法一般是根据响应慢的业务逻辑进行分析,分析出其涉及的服务器节点,再针对涉及的服务器节点逐一进行各种信息查找分析,最终才能定位出响应慢在哪些服务器节点,而这种方式需要进行分析业务逻辑进而一步一步定位,如果系统涉及的节点数更多、业务逻辑更为复杂时,这种传统做法相应的难度及耗时就更加明显了,随之也将影响定位效率。


技术实现要素:

3.有鉴于此,本发明的目的在于提出一种效率高、降低定位处理难度且实施可靠的基于通信数据包的多节点系统性能分析方法及系统、存储介质。
4.为了实现上述的技术目的,本发明所采用的技术方案为:
5.一种基于通信数据包的多节点系统性能分析方法,其包括:
6.s01、对服务器节点进行抓包,生成至少一个系统通信数据包,所述系统通信数据包与服务器节点一一对应,所述系统通信数据包内具有若干条通信数据;
7.s02、将系统通信数据包以预设格式内容导出;
8.s03、获取系统通信数据包,对每个系统通信数据包进行单独处理,按预设条件对系统通信数据包中的通信数据进行判断和整合,获得系统通信数据包中对应服务器节点之间的通信流;
9.s04、获取通信流,按照预设条件对该通信流进行处理,获得该通信流对应服务器节点之间的数据流向和对应数据流向的耗时数据,所述耗时数据包括网络耗时和服务器耗时;
10.s05、获取服务器所有节点的系统通信数据包所对应的数据流向和对应数据流向的耗时数据,按预设条件和格式内容处理后,将服务器所有节点下的数据流向、网络耗时和服务器耗时输出,完成分析。
11.本方案中,若具有多个服务器时,可以根据需要或者按预定方式,对所有服务器所有节点进行抓包,但本方案并不局限于此,还可以针对性对部分服务器的部分节点进行抓包。
12.作为一种可能的实施方式,进一步,步骤s02中,将系统通信数据包按照预设格式内容进行导出,经导出的系统通信数据包中的通信数据均单独罗列,且通信数据包括通信
时间戳、源ip、目标ip、源端口和目标端口,其中,所述通信时间戳用于标识该通信数据的送达时间。
13.作为一种较优的实施选择,优选的,步骤s02中,经导出的系统通信数据包中的每条通信数据均单独罗列成一行,且每行的内容依次为通信时间戳、源ip、目标ip、源端口和目标端口。
14.作为一种较优的实施选择,优选的,s03具体包括:
15.s031、获取以预设格式内容导出的系统通信数据包;
16.s032、对每个系统通信数据包进行单独处理,将源ip、源端口、目标ip和目标端口一致的通信数据归集为同一通信流,获得系统通信数据包对应服务器节点与其他节点通信的通信流。
17.作为一种较优的实施选择,优选的,s04具体包括:
18.s041、获取通信流,根据通信流中通信数据的源ip、源端口、目标ip和目标端口,获得该通信流中源ip和目标ip对应服务器节点之间的数据流向;
19.s042、将通信流中最后一个由源ip发起的通信数据对应的通信时间戳与第一个由源ip发起的通信数据的通信时间戳进行差值计算,获得该通信流的源ip到目标ip的网络耗时;
20.s043、将通信流中第一个由目标ip发起的通信数据对应的通信时间戳与最后一个由源ip发起的通信数据的通信时间戳进行差值计算,获得该通信流的目标ip到源ip的服务器耗时。
21.作为一种较优的实施选择,优选的,s05具体包括:
22.s051提取相互数据通信的两个服务器节点的系统通信数据包,确定两个服务器节点通信产生的同一数据流向的通信流;所述系统通信数据包具有利用节点对应的时间戳系统生成通信数据的时间戳;
23.s052累加所述同一数据流向的通信流,并计算均值,得到相互数据通信的两个服务器节点的耗时数据;
24.s053、按预设格式内容,将所有服务器所有节点下的数据流向、网络耗时和服务器耗时输出,完成分析。
25.作为一种较优的实施选择,优选的,步骤s053中,按每个数据流向一行,每行依序记录通信数据传递的ip流向、网络耗时、服务器耗时的格式内容将所有服务器所有节点下的数据流向、网络耗时和服务器耗时输出,完成分析。
26.作为一种较优的实施选择,优选的,步骤s053还包括,可视化显示每个服务器节点的网络耗时和服务器耗时。
27.作为一种较优的实施选择,优选的,步骤s05中所述的网络耗时和服务器耗时的单位均为秒。
28.基于上述方法,本发明还提供一种基于通信数据包分析的多节点系统性能情况快速分析系统,其包括:
29.抓包单元,配置成用于对服务器节点进行抓包,生成至少一个系统通信数据包,所述系统通信数据包与服务器节点一一对应,所述系统通信数据包内具有若干条通信数据;
30.数据包导出单元,配置成用于将系统通信数据包以预设格式内容导出;
31.数据整合单元,配置成用于获取系统通信数据包,对每个系统通信数据包进行单独处理,按预设条件对系统通信数据包中的通信数据进行判断和整合,获得系统通信数据包中对应服务器节点之间的通信流;
32.分析计算单元,配置成用于获取通信流,按照预设条件对该通信流进行处理,获得该通信流对应服务器节点之间的数据流向和对应数据流向的耗时数据,所述耗时数据包括网络耗时和服务器耗时,还配置成用于获取服务器所有节点的系统通信数据包所对应的数据流向和对应数据流向的耗时数据,并按预设条件处理;
33.分析数据输出单元,配置成用于按预设格式内容将服务器所有节点下的数据流向、网络耗时和服务器耗时输出,完成分析。
34.基于上述方法,本发明还提供一种计算机可读的存储介质,所述的存储介质中存储有至少一条指令、至少一段程序、代码集或指令集,所述的至少一条指令、至少一段程序、代码集或指令集由处理器加载并执行实现上述所述的基于通信数据包的多节点系统性能分析方法。
35.采用上述的技术方案,本发明与现有技术相比,其具有的有益效果为:本方案巧妙地通过抓包的方式对所有服务器所有节点进行抓包,然后将抓包获得的系统通信数据包以特定格式导出,在该基础上,通过按预设方法对系统通信数据包下的通信流进行分析获取数据流向,同时,将通信流对应的通信数据的时间戳进行差值计算处理,以获得通信流对应通信服务器节点之间的网络耗时和服务器耗时,以此对被抓包的所有服务器所有节点进行,然后将获得的所有服务器所有节点的系统通信数据包所对应的数据流向和对应数据流向的网络耗时和服务器耗时进行输出,使得维护人员直接根据数据流向、网络耗时和服务器耗时信息即可快速定位系统响应慢的服务器节点,大大提高了排查效率,大幅度降低了排查难度。
附图说明
36.为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
37.图1是本发明快速分析方法的简要实施流程示意图;
38.图2是本发明方法中在实际操中通过可视化工具对系统通信数据包中的通信数据进行查看的示意图;
39.图3是基于本发明方法的其中一种实施系统示意图;
40.图4是基于本发明方法的其中一种应用实施流程示意图。
具体实施方式
41.下面结合附图和实施例,对本发明作进一步的详细描述。特别指出的是,以下实施例仅用于说明本发明,但不对本发明的范围进行限定。同样的,以下实施例仅为本发明的部分实施例而非全部实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其它实施例,都属于本发明保护的范围。
42.如图1所示,本方案基于通信数据包的多节点系统性能分析方法,其包括:
43.s01、对服务器节点进行抓包,生成至少一个系统通信数据包,所述系统通信数据包与服务器节点一一对应,所述系统通信数据包内具有若干条通信数据;
44.s02、将系统通信数据包以预设格式内容导出;
45.s03、获取系统通信数据包,对每个系统通信数据包进行单独处理,按预设条件对系统通信数据包中的通信数据进行判断和整合,获得系统通信数据包中对应服务器节点之间的通信流;
46.s04、获取通信流,按照预设条件对该通信流进行处理,获得该通信流对应服务器节点之间的数据流向和对应数据流向的耗时数据,所述耗时数据包括网络耗时和服务器耗时;
47.s05、获取服务器所有节点的系统通信数据包所对应的数据流向和对应数据流向的耗时数据,按预设条件和格式内容处理后,将服务器所有节点下的数据流向、网络耗时和服务器耗时输出,完成分析。
48.其中,本方案对所有服务器所有节点进行抓包的抓包过滤条件均一样,均为无其它过滤条件的抓取非本地回环的所有包,而抓包工具可以依据服务器系统而定,使用系统支持的现有抓包方式即可。
49.另外,若具有多个服务器时,可以根据需要或者按预定方式,对所有服务器所有节点进行抓包,但本方案并不局限于此,还可以针对性对部分服务器的部分节点进行抓包。
50.为了方便对数据进行统一快速处理,本方案中,作为一种可能的实施方式,进一步,步骤s02中,将系统通信数据包按照预设格式内容进行导出,经导出的系统通信数据包中的通信数据均单独罗列,且通信数据包括通信时间戳、源ip、目标ip、源端口和目标端口,其中,所述通信时间戳用于标识该通信数据的送达时间;而作为一种实施选择举例,步骤s02中,经导出的系统通信数据包中的每条通信数据均单独罗列成一行,且每行的内容依次为通信时间戳、源ip、目标ip、源端口和目标端口。
51.本方案中,作为一种较优的实施选择,优选的,s03具体包括:
52.s031、获取以预设格式内容导出的系统通信数据包;
53.s032、对每个系统通信数据包进行单独处理,将源ip、源端口、目标ip和目标端口一致的通信数据归集为同一通信流,获得系统通信数据包对应服务器节点与其他节点通信的通信流。
54.通过该方式,可以有效地将同一通信流下的通信数据进行整合,然后形成特定格式内容,以便于统一分析处理。
55.本方案中,作为一种较优的实施选择,优选的,s04具体包括:
56.s041、获取通信流,根据通信流中通信数据的源ip、源端口、目标ip和目标端口,获得该通信流中源ip和目标ip对应服务器节点之间的数据流向;
57.s042、将通信流中最后一个由源ip发起的通信数据对应的通信时间戳与第一个由源ip发起的通信数据的通信时间戳进行差值计算,获得该通信流的源ip到目标ip的网络耗时;
58.s043、将通信流中第一个由目标ip发起的通信数据对应的通信时间戳与最后一个由源ip发起的通信数据的通信时间戳进行差值计算,获得该通信流的目标ip到源ip的服务
器耗时。
59.其中,在网络耗时的计算处理中,每个通信流的最后一个由源ip发起的通信数据与第一个由源ip发起的通信数据的通信时间戳差值计算为当前流的源ip到目标ip的网络耗时;而目标ip到源ip的网络耗时计算方式同理,便不再赘述。网络耗时计算原理为服务器处理完毕之后,相应的通信数据才会开始进行通信数据发送,因此不含服务器耗时,另外,通信时间戳代表的是通信数据送达的时刻,使用最后一个通信数据的通信时间戳减去第一个通信数据的通信时间戳,虽然得到的数据还缺少第一个通信数据的网络耗时,但由于每个流一般包含几十个通信数据,因此第一个通信数据的网络耗时可忽略不计,其对整体时间影响不大。
60.另外,在服务器耗时的计算中,其原理为基于服务器数据接收完毕才会开始进行服务器处理,当处理完毕后才会开始进行通信数据发送,因此目标ip发起的最后一个通信数据送达的时刻为源ip服务器开始处理的时间,源ip服务器送达第一个通信数据的时刻代表其已完成服务器处理,这之间的差值为服务器耗时,另外,本方案中,同样将源ip服务器发送的第一个通信数据的网络耗时进行忽略处理。基于该计算原理可获知,服务器耗时在一个通信流里只存在于一个通信方向里,因此没有另外一个方向的服务器耗时。
61.本方案中,作为一种较优的实施选择,优选的,s05具体包括:
62.s051提取相互数据通信的两个服务器节点的系统通信数据包,确定两个服务器节点通信产生的同一数据流向的通信流;所述系统通信数据包具有利用节点对应的时间戳系统生成通信数据的时间戳;
63.s052累加所述同一数据流向的通信流,并计算均值,得到相互数据通信的两个服务器节点的耗时数据;
64.s053、按预设格式内容,将所有服务器所有节点下的数据流向、网络耗时和服务器耗时输出,完成分析。
65.作为一种实施选择举例,步骤s053中,按每个数据流向一行,每行依序记录通信数据传递的ip流向、网络耗时、服务器耗时的格式内容将所有服务器所有节点下的数据流向、网络耗时和服务器耗时输出,完成分析。
66.为了便于直观地对输出的结果进行分析和统计,步骤s053还包括,可视化显示每个服务器节点的网络耗时和服务器耗时;同时,步骤s053中,按每个数据流向一行,每行依序记录通信数据传递的ip流向、网络耗时、服务器耗时的格式内容将所有服务器所有节点下的数据流向、网络耗时和服务器耗时输出,完成分析;作为一种较优的实施选择,优选的,步骤s05中所述的网络耗时和服务器耗时的单位均为秒。作为一种输出举例,其中一分析数据结果为:192.168.1.3

192.168.1.4,1.23,1.34,代表ip为192.168.1.3的节点到ip为192.168.1.4的节点网络耗时为1.23秒,服务器耗时为1.34秒。由于本方案分析方法是在所有服务器所有节点进行抓包,因此相互通信的两个节点所抓到的系统通信数据包中的通信数据会存在重复,比如在节点a上能抓到a

b的通信数据,在b上也同样能抓到一份a

b的通信数据,因此在输出耗时数据时均已经是进行二次处理除以2之后的准确数据;该分析数据含各个服务器节点间的网络耗时及服务器耗时,因此,通过该分析数据即可快速定位出响应慢在哪个服务器节点。
67.需要说明的是,本方案中,ip是internet protocol(网际互连协议)的缩写,不同
地址间的数据交互一般通过通信数据流的方式进行传输,每个通信数据流包含多次通信,即需要多次通信才能将通信数据流要传输的数据传输完毕,每次通信只发送一小块数据。通信数据流的定义为,源ip、源端口、目标ip、目标端口一样的通信属于同一个通信数据流,同一个通信数据流里数据流向是双向的,源ip端口可以往目标ip端口发通信数据,目标ip端口也可以向源ip端口发通信数据。抓包方式获取的数据包里通信数据流的个数没有限制,取决于抓取的机器与其它机器交互建立的ip连接;具体图解如图2所示,其示出了采用可视化工具查看抓包数据的示意,可获知,一条为一次通信,按时间顺序排列。
68.另外,本方案中,源ip、源端口、目标ip、目标端口一样的通信数据属于同一个通信数据流,同一个通信数据流里数据流向为双向,即,源ip端口可以往目标ip端口发通信数据,目标ip端口也可以向源ip端口发通信数据。
69.如图3所示,基于上述方法,本发明还提供一种基于通信数据包分析的多节点系统性能情况快速分析系统,其包括:
70.抓包单元,配置成用于对服务器节点进行抓包,生成至少一个系统通信数据包,所述系统通信数据包与服务器节点一一对应,所述系统通信数据包内具有若干条通信数据;
71.数据包导出单元,配置成用于将系统通信数据包以预设格式内容导出;
72.数据整合单元,配置成用于获取系统通信数据包,对每个系统通信数据包进行单独处理,按预设条件对系统通信数据包中的通信数据进行判断和整合,获得系统通信数据包中对应服务器节点之间的通信流;
73.分析计算单元,配置成用于获取通信流,按照预设条件对该通信流进行处理,获得该通信流对应服务器节点之间的数据流向和对应数据流向的耗时数据,所述耗时数据包括网络耗时和服务器耗时,还配置成用于获取服务器所有节点的系统通信数据包所对应的数据流向和对应数据流向的耗时数据,并按预设条件处理;
74.分析数据输出单元,配置成用于按预设格式内容将服务器所有节点下的数据流向、网络耗时和服务器耗时输出,完成分析。
75.图3所示的数据整合单元、分析计算单元可整合成分析工具模块进行对数据包导出单元所导出的格式数据进行处理,在该情况下,其处理流程如图4所示。
76.另外,在本发明各个实施方式中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
77.集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)或处理器(processor)执行本发明各个实施方式方法的全部或部分步骤。而前述的存储介质包括:u盘、移动硬盘、只读存储器(rom,read

only memory)、随机存取存储器(ram,random access memory)、磁碟或者光盘等各种可以存储程序代码的介质。
78.以上所述仅为本发明的部分实施例,并非因此限制本发明的保护范围,凡是利用本发明说明书及附图内容所作的等效装置或等效流程变换,或直接或间接运用在其他相关
的技术领域,均同理包括在本发明的专利保护范围内。
再多了解一些

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

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

相关文献