CN111371639B - 网络延时分析方法、装置、存储介质和计算机设备 - Google Patents

网络延时分析方法、装置、存储介质和计算机设备 Download PDF

Info

Publication number
CN111371639B
CN111371639B CN202010109025.0A CN202010109025A CN111371639B CN 111371639 B CN111371639 B CN 111371639B CN 202010109025 A CN202010109025 A CN 202010109025A CN 111371639 B CN111371639 B CN 111371639B
Authority
CN
China
Prior art keywords
packet
data
port
heartbeat
client
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.)
Active
Application number
CN202010109025.0A
Other languages
English (en)
Other versions
CN111371639A (zh
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.)
Tencent Technology Shenzhen Co Ltd
Original Assignee
Tencent Technology Shenzhen 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 Tencent Technology Shenzhen Co Ltd filed Critical Tencent Technology Shenzhen Co Ltd
Priority to CN202010109025.0A priority Critical patent/CN111371639B/zh
Publication of CN111371639A publication Critical patent/CN111371639A/zh
Application granted granted Critical
Publication of CN111371639B publication Critical patent/CN111371639B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

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
    • H04L43/0852Delays
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/14Network analysis or design
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/10Active monitoring, e.g. heartbeat, ping or trace-route
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/14Arrangements for monitoring or testing data switching networks using software, i.e. software packages

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Security & Cryptography (AREA)
  • Environmental & Geological Engineering (AREA)
  • Health & Medical Sciences (AREA)
  • Cardiology (AREA)
  • General Health & Medical Sciences (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

本申请涉及一种网络延时分析方法、装置、计算机可读存储介质和计算机设备,方法包括:侦听客户端启动信号,提取客户端启动信号中携带的目标客户端标识,并获取目标客户端收发的数据包,读取预存的与所述目标客户端对应的心跳包策略,获取所述心跳包策略中的服务器端口标识和发包间隔要求,其中,心跳包策略基于具有心跳包行为和多端口交互行为的数据包生成,获取各数据包对应的端口标识,从数据包中筛选出端口标识与服务器端口标识匹配的目标数据包,当各目标数据包的发包时间间隔符合发包间隔要求时,计算目标数据包的平均延时数据,得到网络延时数据。上述方法不仅提高了网络延时分析结果准确性而且提高了分析效率,扩大了适用范围。

Description

网络延时分析方法、装置、存储介质和计算机设备
技术领域
本申请涉及计算机技术领域,特别是涉及一种网络延时分析方法、装置、计算机可读存储介质和计算机设备。
背景技术
随着计算机技术的发展,出现了网络测速技术,而网络测速技术中的服务器的延时和稳定性的分析是关键的处理过程。
传统技术中,对于服务器的延时分析的方式主要是通过因特网包探索器侦听一个部署广泛的源站如百度或者游戏源站周边的网关IP,用近似和替代的方式计算游戏服务器延时和稳定性,存在误差较大的问题。
为解决误差大的问题,提出了一种实时获取应用显示的延时数据,通过OCR、图像识别等技术获取延时数值的方式,减小了数据分析误差,但这种分析方式可用范围小,只能用于本地测试,无法布局线上用户,且实际操作流程复杂,数据量偏大,数据处理需要进行离线计算,分析效率低。
发明内容
基于此,有必要针对误差分析效率低的技术问题,提供一种高效的网络延时分析方法、装置、计算机可读存储介质和计算机设备。
一种网络延时分析方法,包括:
侦听客户端启动信号,提取客户端启动信号中携带的目标客户端标识,并获取目标客户端收发的数据包;
读取预存的与目标客户端对应的心跳包策略,获取心跳包策略中的服务器端口标识和发包间隔要求,其中,心跳包策略基于具有心跳包行为和多端口交互行为的数据包生成;
获取各数据包对应的端口标识,从数据包中筛选出端口标识与服务器端口标识匹配的目标数据包;
当各目标数据包的发包时间间隔符合发包间隔要求时,计算目标数据包的平均延时数据,得到网络延时数据。
在一个实施例中,网络延时分析方法,还包括:
侦听测试机中客户端的启动信号,根据待分析客户端各功能模块的网络要求等级,启动网络要求等级最高的目标功能模块;
通过测试机中的抓包软件,抓取目标功能模块的数据包;
根据各所述数据包的收发时间,筛选具有心跳包行为的目标数据包,得到发包时间间隔,并根据各数据包的收发端口,判断是否具有多端口交互行为;
当存在多端口交互行为时,生成包含目标数据包的发送端口标识和发包时间间隔的心跳包策略;
预存各客户端对应的心跳包策略,构建心跳包策略集。
一种游戏中的网络延时分析装置,装置包括:
数据包获取模块,用于侦听客户端启动信号,提取客户端启动信号中携带的目标客户端标识,并获取目标客户端收发的数据包;
策略信息获取模块,用于读取预存的与目标客户端对应的心跳包策略,获取心跳包策略中的服务器端口标识和发包间隔要求,其中,心跳包策略基于具有心跳包行为和多端口交互行为的数据包生成;
数据包筛选模块,用于获取各数据包对应的端口标识,从数据包中筛选出端口标识与服务器端口标识匹配的目标数据包;
第一网络延时分析模块,用于当各目标数据包的发包时间间隔符合发包间隔要求时,计算目标数据包的平均延时数据,得到网络延时数据。
一种计算机可读存储介质,存储有计算机程序,计算机程序被处理器执行时,使得处理器执行以下步骤:
侦听客户端启动信号,提取客户端启动信号中携带的目标客户端标识,并获取目标客户端收发的数据包;
读取预存的与目标客户端对应的心跳包策略,获取心跳包策略中的服务器端口标识和发包间隔要求,其中,心跳包策略基于具有心跳包行为和多端口交互行为的数据包生成;
获取各数据包对应的端口标识,从数据包中筛选出端口标识与服务器端口标识匹配的目标数据包;
当各目标数据包的发包时间间隔符合发包间隔要求时,计算目标数据包的平均延时数据,得到网络延时数据。
一种计算机设备,包括存储器和处理器,存储器存储有计算机程序,计算机程序被处理器执行时,使得处理器执行以下步骤:
侦听客户端启动信号,提取客户端启动信号中携带的目标客户端标识,并获取目标客户端收发的数据包;
读取预存的与目标客户端对应的心跳包策略,获取心跳包策略中的服务器端口标识和发包间隔要求,其中,心跳包策略基于具有心跳包行为和多端口交互行为的数据包生成;
获取各数据包对应的端口标识,从数据包中筛选出端口标识与服务器端口标识匹配的目标数据包;
当各目标数据包的发包时间间隔符合发包间隔要求时,计算目标数据包的平均延时数据,得到网络延时数据。
上述网络延时分析方法、装置、计算机可读存储介质和计算机设备,通过侦听客户端启动信号,通过确定客户端启动信号对应的目标客户端标识,获取目标客户端收发的数据包,获取与目标客户端标识对应的心跳包策略,由于预存的心跳包策略均为基于具有心跳包行为和多端口交互行为的数据包生成的,读取到与目标客户端标识的心跳包策略,表征该客户端同样具有心跳包行为和多端口交互行为,通过获取各数据包对应的端口标识,从数据包中筛选出端口标识与心跳包策略中的服务器端口标识相同的目标数据包,可确定该目标数据包具有心跳包行为,当各目标数据包的发包时间间隔符合心跳包策略中的发包间隔要求时,确定客户端命中该心跳包策略,计算目标数据包即心跳包的平均延时数据,得到网络延时数据,利用数据包的心跳包行为和多端口交互行为作为网络延时分析条件,通过分析心跳包的延时来得到网络延时数据,不仅提高了数据准确性而且提高了网络延时分析效率,扩大了适用范围。
附图说明
图1为一个实施例中网络延时分析方法的应用环境图;
图2为一个实施例中网络延时分析方法的流程示意图;
图3为一个实施例中网络延时分析方法中的界面示意图;
图4为另一个实施例中网络延时分析方法的流程示意图;
图5为又一个实施例中网络延时分析方法的流程示意图;
图6为一个实施例中网络延时分析方法的流程图;
图7为还一个实施例中网络延时分析方法的流程示意图;
图8为一个实施例中网络延时分析装置的结构框图;
图9为一个实施例中计算机设备的结构框图。
具体实施方式
为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。
在一个实施例中,提供了一种网络延时分析方法,本实施例以该方法应用于终端进行举例说明,终端上安装有客户端,当终端侦听到客户端启动信号时,确定客户端启动信号对应的目标客户端标识,并获取目标客户端收发的数据包。终端中预先存储有心跳包策略集,心跳包策略集中的各心跳包策略基于具有心跳包行为和多端口交互行为的数据包生成,读取预存的与目标客户端对应的心跳包策略,获取心跳包策略中的服务器端口标识和发包间隔要求;终端通过获取各数据包对应的端口标识,从数据包中筛选出端口标识与服务器端口标识匹配的目标数据包;当各目标数据包的发包时间间隔符合发包间隔要求时,计算目标数据包的平均延时数据,得到网络延时数据。
可以理解的是,该方法还可以应用于包括终端和服务器的系统,并通过终端和服务器的交互实现。
图1为一个实施例中网络延时分析方法的应用环境图。参照图1,以该网络延时分析方法应用于游戏网络延时监测系统为例进行说明。该游戏网络延时监测系统包括终端110和服务器120。终端110和服务器120通过网络连接。终端110上安装有客户端,以安装的客户端可以是游戏客户端,当终端110侦听到客户端启动信号时,确定客户端启动信号对应的目标客户端标识,并获取目标客户端收发的数据包,服务器120中预存有心跳包策略集,终端110向服务器120发送心跳包策略获取请求,当服务器120中的预存的心跳包策略集中存在与目标客户端标识对应的心跳包策略时,获取心跳包策略中的服务器端口标识和发包间隔要求并反馈至终端110,其中,预存的心跳包策略集中的各心跳包策略基于具有心跳包行为和多端口交互行为的数据包生成;终端110获取各数据包对应的端口标识,从数据包中筛选出端口标识与服务器端口标识匹配的目标数据包;当各目标数据包的发包时间间隔符合发包间隔要求时,计算目标数据包的平均延时数据,得到网络延时数据。终端110具体可以是台式终端或移动终端,移动终端具体可以是手机、平板电脑、笔记本电脑等中的至少一种。服务器120可以用独立的服务器或者是多个服务器组成的服务器集群来实现,在一个实施例中,服务器120可以是云服务器。
如图2所示,在一个实施例中,提供了一种网络延时分析方法。本实施例主要以该方法应用于终端来举例说明。参照图2,该网络延时分析方法具体包括如下步骤S210至S240。
S210,侦听客户端启动信号,提取客户端启动信号中携带的目标客户端标识,并获取目标客户端收发的数据包。
客户端是指与服务器相对应,为客户提供本地服务的程序。在实施例中,客户端是多个通过服务器进行交互的其中一个交互对象,例如多个游戏客户端在游戏对战过程中的其中一个客户端。在交互过程中,数据包要从客户端所在的终端发送到服务器,中间要经过基站和公用网络的中转传输,而在中转传输过程中导致的数据送达延时的现象即为网络延时。终端具有对安装的所有程序(即客户端)具有程序启动侦听功能。在一个实施例中,终端侦听到客户端启动信号,具体可以是终端的程序启动侦听功能一直处于开启状态,当客户端被触发启动时,即可侦听到客户端启动信号,在另一个实施例中,终端的程序启动侦听功能具有启动和关闭控制功能,当程序启动侦听功能被启动时,获取待侦听的客户端的启动状态,当该客户端的启动状态为已启动时,即为侦听到客户端启动信号。客户端在安装时具有对应的程序包,程序包可以确定程序名称和版本信息,程序名称和版本信息即为客户端标识。以游戏客户端为例,游戏客户端标识包括游戏包名和版本信息。具体来说,不同游戏,或是同一游戏的不同版本,其与游戏服务器的交互频率可能存在差异,因此,针对不同客户端或是同一客户端的不同版本,都对应不同的客户端标识。
目标客户端收发的数据包是指客户端与其对应的服务器以及其他通过服务器交互的客户端在交互过程中接收或发送的数据包。其中,客户端收发的数据包可以通过抓包工具获取,也可以通过开启终端的VPN服务来获取。
在一个实施例中,侦听客户端启动信号,提取客户端启动信号中携带的目标客户端标识,并获取目标客户端收发的数据包包括:侦听客户端启动信号,提取客户端启动信号中携带的目标客户端标识,并启动虚拟专用网络,获取目标客户端通过侦听客户端启动信号虚拟专用网络的网络层传输的数据包。
虚拟专用网络(VPN)是一种虚拟网卡技术,使用专有通道传输网络数据,通过虚拟专用网络,可以获取客户端收发的数据包在网络层的传输信息,其中传输信息包括收发的IP、端口以及时间信息等,还可以获取到传输的数据包,通过VPN服务,简化了传输信息的获取方式,提高了传输信息的获取效率。
在其中一个实施例中,获取各数据包对应的端口标识,从数据包中筛选出端口标识与服务器端口标识匹配的目标数据包包括:根据网络层的数据传输协议,获取网络层传输的各数据包对应的IP头部信息和UDP头部信息。根据IP头部信息,确定数据包对应的服务器IP,并根据UDP头部信息,确定数据包对应的服务器端口标识。识别各数据包中服务器端口标识与心跳包策略中的服务器端口标识相同的目标数据包。
通过分解基于VPN服务获取到的IP头部信息和UDP头部信息,根据IP头部信息和UDP头部信息中的数据字段,获取到数据包对应的服务器IP以及对应的服务器端口标识,实现了目的性的信息获取,避免了其他无关数据的干扰。
S220,读取预存的与目标客户端对应的心跳包策略,获取心跳包策略中的服务器端口标识和发包间隔要求。
其中,心跳包策略可以从预存的心跳包策略集中读取,心跳包策略集中的各心跳包策略基于具有心跳包行为和多端口交互行为的数据包生成,各心跳包策略携带有与数据包对应的客户端标识。
在一个实施例中,构建心跳包策略集的过程包括:侦听测试机中客户端的启动信号,根据待分析客户端各功能模块的网络要求等级,启动网络要求等级最高的目标功能模块;通过测试机中的抓包软件,抓取目标功能模块的数据包;根据各所述数据包的收发时间,筛选具有心跳包行为的目标数据包,得到发包时间间隔,并根据各数据包的收发端口,判断是否具有多端口交互行为;当存在多端口交互行为时,生成包含目标数据包的发送端口标识和发包时间间隔的心跳包策略;预存各客户端对应的心跳包策略,构建心跳包策略集。
具体来说,可以通过在前期准备的测试机来生成客户端对应的心跳包策略,以测试机为Android手机为例,该手机可获取最高root权限,并安装Tcpdump网络抓包工具。启动游戏客户端,进入游戏对网络要求高的功能模块,如某竞技游戏中的5V5竞技模块,用Root权限启动Tcpdump抓包工具,抓包工具会获取游戏网络数据,并写入到手机存储空间的pcap格式文件中,游戏运行一段时间后,停止抓包并导出pcap格式文件,分析pcap格式文件,找出有心跳包行为的网络数据包,如每X秒发送一个数据包,并且会收到响应回包。其中,找出有心跳包行为的网络数据包还可以通过vpn获取的数据包进行分析得到。然后,确定心跳包对应的目标服务器Sa,目标端口Pa,判断客户端是否存在向目标服务器Sa的另一端口Pb频繁发送数据包的多端口交互行为,若有,则确定目标服务器Sa是要找的服务器,该目标端口Pa是要找的端口,然后根据心跳包目标服务器端口Pa、发包间隔规律等信息形成该客户端对应的心跳包策略,最后预存各客户端对应的心跳包策略,构建心跳包策略集。
预存的心跳包策略集中包括多个心跳包策略,当预存的心跳包策略集中存在与目标客户端对应的心跳包策略时,可以从预存的心跳包策略集中读取到与目标客户端对应的心跳包策略。心跳包策略是指通过测试终端,通过分析基于具有心跳包行为和多端口交互行为的数据包生成的策略,其中,心跳包行为是指每隔大致相同的时长发送一个数据包,并且会收到响应回包的行为。其中,大致相同的时长例如每隔1s、5s、10s等,之所以是大致相同的时长,是因为在实际收发过程中存在网络延时。例如,存在多个向同一服务器的同一端口发送的多个数据包,其中,第一个数据包的发送时间为0.0000,第二个数据包的发送时间为5.0001,第三个数据包的发送时间为14.9999,第四个数据包的发送时间为20.0001,第五个数据包的发送时间为24.9999,……,若按发送时间顺序排列后的任意两个数据包的发送时间间隔均为5s左右,则可判断上述数据包具有心跳包行为。多端口交互行为是指除了心跳包对应服务器端口进行交互以外,还与服务器的其他端口具有多次交互行为,这里的额多次交互行为可以是数据包发送,也可以是数据包的发送和接收。通过大量的实验研究发现,对于同时具有心跳包行为和多端口交互行为的数据包,其对应客户端与服务器之间的网络延时可以通过心跳包的收发延时来分析得到。
心跳包策略携带有客户端标识,且包括心跳包对应服务器端口的端口标识和心跳包的发包间隔要求。当预存的心跳包策略集中存在与目标客户端标识对应的心跳包策略时,获取心跳包策略中的服务器端口标识和发包间隔要求,以便确定启动的客户端是否命中已有的心跳包策略。
S230,获取各数据包对应的端口标识,从数据包中筛选出端口标识与服务器端口标识匹配的目标数据包。
每一个数据包对应有一条传输信息,传输信息具体包括发送/接收时间、发送IP、接收IP、协议类别、发送端口以及接收端口等。通过获取数据包的传输信息即可获得数据包对应的端口标识,这里的端口标识是指传输数据中的接收IP对应的接收端口。
对游戏客户端的数据包传输信息获取为例,数据包的传输信息的获取方法包括:开启终端的VPN服务,该VPN服务不限存在于android、ios终端系统。终端VPN模块会在网络层获取传输的游戏网络数据包,根据网络层数据传输格式,可以获取到游戏网络数据包的IP头部以及TCP/UDP头部信息,参见图3,以IPV4协议为例,根据图3(a)所示的IPV4协议头部字段示意图可知,通过protocol字段可以区分传输层的包是TCP还是UDP,还可以通过Destination IPAddress找到目标服务器IP,根据图3(b)所示的UDP协议头部字段示意图可知,通过Destination port字段可以找到目标服务器端口,从而得到游戏客户端的收发数据包的传输信息。
S240,当各目标数据包的发包时间间隔符合发包间隔要求时,计算目标数据包的平均延时数据,得到网络延时数据。
当预存的心跳包策略集中存在与目标客户端标识对应的心跳包策略时,说明该客户端满足具有符合心跳包行为和多端口交互行为的条件,通过确定各目标数据包的发包时间间隔是否符合发包间隔要求,确定该目标数据包即为用于分析网络延时的对象,通过计算目标数据包的平均延时数据,得到网络延时数据。
在一个实施例中,计算目标数据包的平均延时数据具体包括:获取目标数据包的收发时间,确定心跳包行为对应的数据包组合,数据包组合包括发送的请求包和接收的响应包,获取数据包组合中请求包的发送时间和响应包的接收时间,根据数据包组合的发送时间和接收时间的收发时间差,得到数据包组合的延时数据,计算每一组数据包组合的延时数据的平均值,得到网络延时数据。
具体来说,获取每一组心跳包中发送请求包的发送时间和接收响应包的接收时间,根据每一组心跳包的收发时间差,得到该组心跳包的延时数据,通过计算每一组心跳包的延时数据的平均值,得到目标数据包的平均延时数据,从而得到客户端与服务器的数据传输过程中的网络延时数据。通过将心跳包的延时作为客户端与服务器的数据传输过程中的网络延时数据,提高了延时数据分析准确性和网络延时分析效率。
在一个实施例中,方法还包括,获取网络稳定性等级范围数据,根据计算得到的网络延时数据所属的等级,确定网络稳定性,其中网络稳定性等级范围数据可以按延时数据0-100毫秒、100-240毫秒、240-460毫秒,大于460毫秒进行分类统计得到。
上述网络延时分析方法,通过侦听客户端启动信号,通过确定客户端启动信号对应的目标客户端标识,获取目标客户端收发的数据包,获取与目标客户端标识对应的心跳包策略,由于预存的心跳包策略均为基于具有心跳包行为和多端口交互行为的数据包生成的,读取到与目标客户端标识的心跳包策略,表征该客户端同样具有心跳包行为和多端口交互行为,通过获取各数据包对应的端口标识,从数据包中筛选出端口标识与心跳包策略中的服务器端口标识相同的目标数据包,可确定该目标数据包具有心跳包行为,当各目标数据包的发包时间间隔符合心跳包策略中的发包间隔要求时,确定客户端命中该心跳包策略,计算目标数据包即心跳包的平均延时数据,得到网络延时数据,利用数据包的心跳包行为和多端口交互行为作为网络延时分析条件,通过分析心跳包的延时来得到网络延时数据,不仅提高了数据准确性而且提高了网络延时分析效率,扩大了适用范围。
在一个实施例中,如图4所示,步骤S210,侦听客户端启动信号,提取客户端启动信号中携带的目标客户端标识,并获取目标客户端收发的数据包之后,还包括步骤S410至S460。
S410,当未成功读取到与目标客户端对应的心跳包策略时,获取各数据包的收发时间。
S420,根据各数据包的收发时间,筛选具有心跳包行为的同类数据包。
S430,识别同类数据包对应的第一端口以及第一端口所在的服务器。
S440,判断收发的数据包中是否存在多个向服务器中的第二端口发送的数据包。
S450,若判断结果为否,则舍弃从数据包中筛选出的同类数据包,并返回步骤S420。
S460,若判断结果为是,则计算同类数据包的平均延时数据,得到网络延时数据。
其中,第二端口与第一端口为不同端口。心跳包策略可以从预存的心跳包策略集中读取,心跳包策略集中的每一个心跳包策略都需要基于对客户端的数据包进行测试得到,对于应用过程中未进行过测试的客户端或是测试过程中待测试处理的客户端,预存的心跳包策略集中暂时没有与目标客户端标识对应的心跳包策略,存在读取不成功的情况。在获取到客户端收发的数据包之后,首先获取各数据包的传输数据,得到各数据包的收发时间,然后根据各数据包的收发时间,从各收发的数据包中筛选具有心跳包行为的同类数据包,具体来说,根据各数据包中的传输数据中的接收IP对数据包进行分类,对于同一接收IP的数据包,筛选出具有相同接收端口的数据包且按时间先后顺序对筛选的数据包进行排序,根据相邻数据包的时间间隔,确定各数据包是否构成心跳包行为,当各数据包不构成心跳包行为时,跳转至下一个接收IP对应的数据包。当各数据包构成心跳包行为时,确定该接收端口为第一端口,并确定第一端口所在的服务器,以该服务器为查找对象,查找客户端收发的数据包中是否存在多个向该服务器中除第一端口以外的第二端口发送的数据包,当存在时,即为该客户端存在多端口交互行为。此时,通过同样的计算方法,通过对心跳包的延时分析,计算目标数据包即心跳包的平均延时数据,得到网络延时数据,具体来说,从各数据包中查找具有心跳包行为的同类数据包,以具有心跳包行为作为网络延时数据的第一个分析条件,此外,还根据心包跳行为对应服务器的交互行为,确定与服务器的交互出心跳包还有其他的交互数据,以此为网络延时数据的第二个分析条件,在同时满足这两个条件的情况下,可以锁定服务器就是进行数据传输的目标服务器,此时,心跳包的时差即可作为客户端与目标服务器之间进行数据传输的网络延时,通过分析心跳包的收发时差,从而得到网络延时数据。通过上述处理,解决了不具有与客户端标识对应心跳包策略的情况的网络延时分析,可以应用于每个具有不同客户端标识的客户端的第一次网络延时分析,也可以应用于各客户端的实时分析以及分析频率较低的各类客户端。
在一个实施例中,根据各数据包的收发时间,筛选具有心跳包行为的同类数据包,具体包括:从获取的各数据包中筛选向同一个IP地址的同一端口发送请求包并接收响应包的数据包组合。将数据包组合中的发送请求包按时间排列,当各相邻的发送请求包之间的发包时间间隔均符合心跳包规则时,确定筛选得到的数据包组合为具有心跳包行为的同类数据包。
从获取的各数据包中筛选向同一个IP地址的同一端口发送请求包并接收响应包的数据包组合,将各数据包组合作为判断心跳包组合的判断数据,通过将发送请求包按时间排列,并判断各相邻的发送请求包之间的发包时间间隔是否均符合心跳包规则时,当判断结果为符合心跳包规则时,确定筛选得到的数据包组合为具有心跳包行为的同类数据包。通过数据包的筛选和发包时间间隔的双重判断,确保筛选出的同类数据包的可靠性。
在一个实施例中,当数据包中存在多个向服务器中的第二端口发送的数据包时,计算目标数据包的平均延时数据,得到网络延时数据包括:从收发的数据包中提取与服务器交互的数据包。获取各数据包对应的端口标识,当各端口标识中存在与第一端口的端口标识不同的第二端口标识时,确定第二端口标识对应的数据包的数量。当第二端口标识对应的数据包的数量为多个时,计算目标数据包的平均延时数据,得到网络延时数据。
以游戏过程为例,只有当交互对象包括与第一端口不同的第二端口时,确定存在与客户端进行交互的另一客户端,即存在游戏对战行为。以游戏玩家5v5、3v3等对局为例,通过获取数据包文件,打开文件后,里有很多传输信息,但仔细分析可以发现,游戏客户端会朝一个IP(180.90.110.140)的固定5008端口每5秒发送一个UDP包,属于典型的心跳包行为,游戏客户端还会朝这个IP的另一个端口31800,发送实时对战UDP数据,即为第二端口标识对应的多个数据包,属于多端口交互行为,这两个行为模式确定下来,就可以锁定这个IP就是游戏对局IP,游戏对局IP的心跳包延时情况完全可以代表游戏服务器的延时情况。
在一个实施例中,计算同类数据包的平均延时数据,得到网络延时数据包括:获取数据包组合中请求包的发送时间和响应包的接收时间。根据数据包组合的发送时间和接收时间的收发时间差,得到数据包组合的延时数据。计算每一组数据包组合的延时数据的平均值,得到网络延时数据。
其中,每一个数据包组合构成一组心跳包,通过获取每一组心跳包中发送请求包的发送时间和接收响应包的接收时间,根据每一组心跳包的收发时间差,得到该组心跳包的延时数据,通过计算每一组心跳包的延时数据的平均值,得到同类数据包的平均延时数据,从而得到客户端与服务器的数据传输过程中的网络延时数据。通过将心跳包的延时作为客户端与服务器的数据传输过程中的网络延时数据,提高了延时数据分析准确性和网络延时分析效率。
在一个实施例中,如图5所示,当收发的数据包中存在多个向服务器中的第二端口发送的数据包时,还包括步骤S510至S540。
S510,根据同类数据包的心跳包行为,得到发包时间间隔。
S520,生成包含第一端口的端口标识和发包时间间隔的心跳包策略。
S530,根据数据包对应程序的程序包名和版本信息,生成客户端标识,将携带有客户端标识的心跳包策略添加到预存的心跳包策略集。
根据同类数据包构成的心跳包行为,确定该心跳包行为对应的发包时间间隔,根据心跳包对应服务器端口,即第一端口的端口标识和发包时间间隔,生成以客户端对应的心跳包策略。由于不同客户端以及相同客户端的不同版本具有不同的心跳包策略,通过获取数据包对应程序的程序包名和版本信息,生成客户端标识,然后将将客户端标识作为心跳包策略的标签,生成携带有客户端标识的心跳包策略,将携带有客户端标识的心跳包策略添加到预存的心跳包策略集。通过将新生成的心跳包策略添加到预存的心跳包策略集,便于后续在处理过程中,在遇到客户端标识相同的客户端时,可直接通过获取心跳包策略进行网络延时分析,提高了后续网络延时分析的效率。
在一个实施例中,网络延时分析方法的流程,如图6所示,具体分为三部分,第一部分是心跳包策略的生成,第二部分是心跳包策略的存储,第三部分是心跳包策略在网络延时分析中的应用。
以游戏客户端为例,在心跳包策略的生成过程,首先前期准备Android测试手机,该手机可获取最高root权限,并安装有Tcpdump网络抓包工具,在测试手机上启动游戏客户端,进入游戏对网络要求高的功能模块,如5V5竞技模块,用Root权限启动Tcpdump抓包工具,抓包工具会获取游戏网络数据,并写入到手机存储空间的pcap格式文件中,游戏运行一段时间后,停止抓包并导出pcap格式文件,分析文件,找出有心跳包行为的网络数据包,如每X秒发送一个数据包,并且会收到响应回包;找出心跳包对应的服务器Sa,端口Pa,并判断是否存在终端向服务器Sa的另一端口Pb频繁发送数据包行为;若有,则判断此心跳包对应的服务器Sa是目标服务器。整理心跳包目标服务器端口Pa、心跳包的发包间隔规律等信息形成心跳包策略,然后将心跳包策略上传至云端服务器,云端服务器用于管理心跳包策略,支持心跳包策略存储以及用户侧拉取心跳包策略。在应用过程中,终端开启游戏后,同时开启VPN系统服务,VPN获取的游戏网络数据并从云端服务器拉取与游戏标识对应的心跳包策略,寻找游戏网络数据中端口与心跳包策略中目服务器标端口相同的数据包,分析其发包行为是否符合心跳包策略中的发包间隔指标。命中规则后,则认定可以进行测速了。计算出这类UDP包的平均延时,延时数据再按0-100毫秒、100-240毫秒、240-460毫秒,大于460毫秒进行分类统计,输出稳定性数据。
图7为一个实施例中网络延时分析方法的流程示意图,具体包括步骤S702至步骤S730。
S702,侦听客户端启动信号,提取客户端启动信号中携带的目标客户端标识,并启动虚拟专用网络,获取目标客户端通过侦听客户端启动信号虚拟专用网络的网络层传输的数据包。
S704,从预存的心跳包策略集中读取与目标客户端标识对应的心跳包策略,当读取成功时,进入步骤S706,当读取失败时,进入步骤S714。
S706,获取心跳包策略中的服务器端口标识和发包间隔要求,根据网络层的数据传输协议,获取网络层传输的各数据包对应的IP头部信息和UDP头部信息。
S708,根据IP头部信息,确定数据包对应的服务器IP,并根据UDP头部信息,确定数据包对应的服务器端口标识。
S710,识别各数据包中服务器端口标识与心跳包策略中的服务器端口标识相同的目标数据包。
S712,当各目标数据包的发包时间间隔符合发包间隔要求时,计算目标数据包的平均延时数据,得到网络延时数据。
S714,获取各数据包的收发时间。
S716,从获取的各数据包中筛选向同一个IP地址的同一端口发送请求包并接收响应包的数据包组合。
S718,将数据包组合中的发送请求包按时间排列,当各相邻的发送请求包之间的发包时间间隔均符合心跳包规则时,确定筛选得到的数据包组合为具有心跳包行为的同类数据包。
S720,识别同类数据包对应的第一端口以及第一端口所在的服务器。
S722,从收发的数据包中提取与第一端口所在的服务器交互的数据包。
S724,获取各与服务器交互的数据包对应的端口标识,当各端口标识中存在与第一端口的端口标识不同的第二端口标识时,确定第二端口标识对应的数据包的数量。
S726,当第二端口标识对应的数据包的数量为多个时,计算同类数据包的平均延时数据,得到网络延时数据,并根据同类数据包的心跳包行为,得到发包时间间隔。
S728,生成包含第一端口的端口标识和发包时间间隔的心跳包策略。
S730,根据数据包对应程序的程序包名和版本信息,生成客户端标识,将携带有客户端标识的心跳包策略添加到预存的心跳包策略集。
图7为一个实施例中网络延时分析方法的流程示意图。应该理解的是,虽然图7的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,图7中的至少一部分步骤可以包括多个子步骤或者多个阶段,这些子步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些子步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤的子步骤或者阶段的至少一部分轮流或者交替地执行。
在一个实施例中,如图8所示,提供了一种网络延时分析装置800,装置包括数据包获取模块810、策略信息获取模块820、数据包筛选模块830以及第一网络延时分析模块840。其中:
数据包获取模块810,用于侦听客户端启动信号,提取客户端启动信号中携带的目标客户端标识,并获取目标客户端收发的数据包。
策略信息获取模块820,用于预存的心跳包策略集预存的心跳包策略集读取预存的与目标客户端对应的心跳包策略,获取心跳包策略中的服务器端口标识和发包间隔要求,其中,心跳包策略基于具有心跳包行为和多端口交互行为的数据包生成。
数据包筛选模块830,用于获取各数据包对应的端口标识,从数据包中筛选出端口标识与服务器端口标识匹配的目标数据包。
第一网络延时分析模块840,用于当各目标数据包的发包时间间隔符合发包间隔要求时,计算目标数据包的平均延时数据,得到网络延时数据。
在一个实施例中,网络延时分析装置还包括:
收发时间获取模块,用于当未成功读取到与目标客户端对应的心跳包策略时,获取各数据包的收发时间预存的心跳包策略集。
同类数据包筛选模块,用于根据各数据包的收发时间,筛选具有心跳包行为的同类数据包。
端口与服务器识别模块,用于识别同类数据包对应的第一端口以及第一端口所在的服务器。
第二网络延时分析模块,当收发的数据包中存在多个向服务器中的第二端口发送的数据包时,计算同类数据包的平均延时数据,得到网络延时数据。
在一个实施例中,网络延时分析装置还包括心跳包策略生成模块,用于根据同类数据包的心跳包行为,得到发包时间间隔。生成包含第一端口的端口标识和发包时间间隔的心跳包策略。根据数据包对应程序的程序包名和版本信息,生成客户端标识,将携带有客户端标识的心跳包策略添加到预存的心跳包策略集。
在一个实施例中,同类数据包筛选模块,还用于从获取的各数据包中筛选向同一个IP地址的同一端口发送请求包并接收响应包的数据包组合。将数据包组合中的发送请求包按时间排列,当各相邻的发送请求包之间的发包时间间隔均符合心跳包规则时,确定筛选得到的数据包组合为具有心跳包行为的同类数据包。
在一个实施例中,第二网络延时分析模块还用于从收发的数据包中提取与服务器交互的数据包。获取各数据包对应的端口标识,当各端口标识中存在与第一端口的端口标识不同的第二端口标识时,确定第二端口标识对应的数据包的数量。当第二端口标识对应的数据包的数量为多个时,计算目标数据包的平均延时数据,得到网络延时数据。
在一个实施例中,数据包获取模块还用于侦听客户端启动信号,提取客户端启动信号中携带的目标客户端标识,并启动虚拟专用网络,获取目标客户端通过侦听客户端启动信号虚拟专用网络的网络层传输的数据包。
在一个实施例中,数据包筛选模块还用于获取各数据包对应的IP头部信息和UDP头部信息。根据IP头部信息,确定数据包对应的服务器IP,并根据UDP头部信息,确定数据包对应的服务器端口标识。识别各数据包中服务器端口标识与心跳包策略中的服务器端口标识相同的目标数据包。
上述网络延时分析装置,通过侦听客户端启动信号,通过确定客户端启动信号对应的目标客户端标识,获取目标客户端收发的数据包,获取与目标客户端标识对应的心跳包策略,由于预存的心跳包策略均为基于具有心跳包行为和多端口交互行为的数据包生成的,读取到与目标客户端标识的心跳包策略,表征该客户端同样具有心跳包行为和多端口交互行为,通过获取各数据包对应的端口标识,从数据包中筛选出端口标识与心跳包策略中的服务器端口标识相同的目标数据包,可确定该目标数据包具有心跳包行为,当各目标数据包的发包时间间隔符合心跳包策略中的发包间隔要求时,确定客户端命中该心跳包策略,计算目标数据包即心跳包的平均延时数据,得到网络延时数据,利用数据包的心跳包行为和多端口交互行为作为网络延时分析条件,通过分析心跳包的延时来得到网络延时数据,不仅提高了数据准确性而且提高了网络延时分析效率,扩大了适用范围。
图9示出了一个实施例中计算机设备的内部结构图。该计算机设备具体可以是图1中的终端110。如图9所示,该计算机设备包括该计算机设备包括通过系统总线连接的处理器、存储器、网络接口、输入装置和显示屏。其中,存储器包括非易失性存储介质和内存储器。该计算机设备的非易失性存储介质存储有操作系统,还可存储有计算机程序,该计算机程序被处理器执行时,可使得处理器实现网络延时分析方法。该内存储器中也可储存有计算机程序,该计算机程序被处理器执行时,可使得处理器执行网络延时分析方法。计算机设备的显示屏可以是液晶显示屏或者电子墨水显示屏,计算机设备的输入装置可以是显示屏上覆盖的触摸层,也可以是计算机设备外壳上设置的按键、轨迹球或触控板,还可以是外接的键盘、触控板或鼠标等。
本领域技术人员可以理解,图9中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的计算机设备的限定,具体的计算机设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
在一个实施例中,本申请提供的网络延时分析装置可以实现为一种计算机程序的形式,计算机程序可在如图9所示的计算机设备上运行。计算机设备的存储器中可存储组成该网络延时分析装置的各个程序模块,比如,图8所示的数据包获取模块810、策略信息获取模块820、数据包筛选模块830以及第一网络延时分析模块840。各个程序模块构成的计算机程序使得处理器执行本说明书中描述的本申请各个实施例的网络延时分析方法中的步骤。
例如,图9所示的计算机设备可以通过如图8所示的网络延时分析装置中的数据包获取模块810执行侦听客户端启动信号,提取客户端启动信号中携带的目标客户端标识,并获取目标客户端收发的数据包。计算机设备可通过策略信息获取模块820执行预存的心跳包策略集预存的心跳包策略集读取预存的与目标客户端对应的心跳包策略,获取心跳包策略中的服务器端口标识和发包间隔要求,其中,心跳包策略基于具有心跳包行为和多端口交互行为的数据包生成。计算机设备可通过数据包筛选模块830执行获取各数据包对应的端口标识,从数据包中筛选出端口标识与服务器端口标识匹配的目标数据包。计算机设备可通过第一网络延时分析模块840执行当各目标数据包的发包时间间隔符合发包间隔要求时,计算目标数据包的平均延时数据,得到网络延时数据。
在一个实施例中,提供了一种计算机设备,包括存储器和处理器,存储器存储有计算机程序,计算机程序被处理器执行时,使得处理器执行上述网络延时分析方法的步骤。此处网络延时分析方法的步骤可以是上述各个实施例的网络延时分析方法中的步骤。
在一个实施例中,提供了一种计算机可读存储介质,存储有计算机程序,计算机程序被处理器执行时,使得处理器执行上述网络延时分析方法的步骤。此处网络延时分析方法的步骤可以是上述各个实施例的网络延时分析方法中的步骤。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,计算机程序可存储于一非易失性计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的各实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和/或易失性存储器。非易失性存储器可包括只读存储器(ROM)、可编程ROM(PROM)、电可编程ROM(EPROM)、电可擦除可编程ROM(EEPROM)或闪存。易失性存储器可包括随机存取存储器(RAM)或者外部高速缓冲存储器。作为说明而非局限,RAM以多种形式可得,诸如静态RAM(SRAM)、动态RAM(DRAM)、同步DRAM(SDRAM)、双数据率SDRAM(DDRSDRAM)、增强型SDRAM(ESDRAM)、同步链路(Synchlink)DRAM(SLDRAM)、存储器总线(Rambus)直接RAM(RDRAM)、直接存储器总线动态RAM(DRDRAM)、以及存储器总线动态RAM(RDRAM)等。
以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
以上实施例仅表达了本申请的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对本申请专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本申请构思的前提下,还可以做出若干变形和改进,这些都属于本申请的保护范围。因此,本申请专利的保护范围应以所附权利要求为准。

Claims (18)

1.一种网络延时分析方法,包括:
侦听客户端启动信号,提取所述客户端启动信号中携带的目标客户端标识,并获取目标客户端收发的数据包;
读取预存的与所述目标客户端对应的心跳包策略,获取所述心跳包策略中的服务器端口标识和发包间隔要求,其中,所述心跳包策略基于具有心跳包行为和多端口交互行为的数据包生成,所述心跳包策略中的发包间隔等于具有心跳包行为的同类数据包的发包时间间隔;
获取各所述数据包对应的端口标识,从所述数据包中筛选出所述端口标识与所述服务器端口标识匹配的目标数据包;
当各所述目标数据包的发包时间间隔符合所述发包间隔要求时,计算所述目标数据包的平均延时数据,得到网络延时数据。
2.根据权利要求1所述的方法,其特征在于,还包括:
当未成功读取到与目标客户端对应的心跳包策略时,获取各所述数据包的收发时间;
根据各所述数据包的收发时间,筛选具有心跳包行为的同类数据包;
识别所述同类数据包对应的第一端口以及所述第一端口所在的服务器;
当所述收发的数据包中存在多个向所述服务器中的第二端口发送的数据包时,计算所述同类数据包的平均延时数据,得到网络延时数据,其中,所述第二端口与所述第一端口为不同端口。
3.根据权利要求2所述的方法,其特征在于,所述当所述收发的数据包中存在多个向所述服务器中的第二端口发送的数据包时,还包括:
根据所述同类数据包的心跳包行为,得到发包时间间隔;
生成包含所述第一端口的端口标识和所述发包时间间隔的心跳包策略;
根据所述数据包对应程序的程序包名和版本信息,生成客户端标识,将携带有客户端标识的心跳包策略添加到预存的心跳包策略集。
4.根据权利要求2所述的方法,其特征在于,所述根据各所述数据包的收发时间,筛选具有心跳包行为的同类数据包包括:
从获取的各数据包中筛选向同一个IP地址的同一端口发送请求包并接收响应包的数据包组合;
将所述数据包组合中的发送请求包按时间排列,当各相邻的发送请求包之间的发包时间间隔均符合心跳包规则时,确定筛选得到的数据包组合为具有心跳包行为的同类数据包。
5.根据权利要求4所述的方法,其特征在于,所述计算所述同类数据包的平均延时数据,得到网络延时数据包括:
获取数据包组合中请求包的发送时间和响应包的接收时间;
根据所述数据包组合的发送时间和接收时间的收发时间差,得到所述数据包组合的延时数据;
计算每一组所述数据包组合的延时数据的平均值,得到网络延时数据。
6.根据权利要求1所述的方法,其特征在于,所述侦听客户端启动信号,提取所述客户端启动信号中携带的目标客户端标识,并获取目标客户端收发的数据包包括:
侦听客户端启动信号,提取所述客户端启动信号中携带的目标客户端标识,并启动虚拟专用网络,获取目标客户端通过所述虚拟专用网络的网络层传输的数据包。
7.根据权利要求6所述的方法,其特征在于,所述获取各所述数据包对应的端口标识,从所述数据包中筛选出所述端口标识与所述服务器端口标识匹配的目标数据包包括:
根据网络层的数据传输协议,获取所述网络层传输的各数据包对应的IP头部信息和UDP头部信息;
根据所述IP头部信息,确定所述数据包对应的服务器IP,并根据所述UDP头部信息,确定所述数据包对应的服务器端口标识;
识别各所述数据包中服务器端口标识与所述心跳包策略中的服务器端口标识相同的目标数据包。
8.根据权利要求1所述的方法,其特征在于,所述方法还包括:
侦听测试机中客户端的启动信号,根据待分析客户端各功能模块的网络要求等级,启动网络要求等级最高的目标功能模块;
通过测试机中的抓包软件,抓取目标功能模块的数据包;
根据各所述数据包的收发时间,筛选具有心跳包行为的目标数据包,得到发包时间间隔,并根据各数据包的收发端口,判断是否具有多端口交互行为;
当存在多端口交互行为时,生成包含目标数据包的发送端口标识和发包时间间隔的心跳包策略;
预存各客户端对应的心跳包策略,构建心跳包策略集。
9.一种游戏中的网络延时分析装置,其特征在于,所述装置包括:
数据包获取模块,用于侦听客户端启动信号,提取所述客户端启动信号中携带的目标客户端标识,并获取目标客户端收发的数据包;
策略信息获取模块,用于读取预存的与所述目标客户端对应的心跳包策略,获取所述心跳包策略中的服务器端口标识和发包间隔要求,其中,所述心跳包策略基于具有心跳包行为和多端口交互行为的数据包生成,所述心跳包策略中的发包间隔等于具有心跳包行为的同类数据包的发包时间间隔;
数据包筛选模块,用于获取各所述数据包对应的端口标识,从所述数据包中筛选出所述端口标识与所述服务器端口标识匹配的目标数据包;
第一网络延时分析模块,用于当各所述目标数据包的发包时间间隔符合所述发包间隔要求时,计算所述目标数据包的平均延时数据,得到网络延时数据。
10.根据权利要求9所述的装置,其特征在于,所述装置还包括:
收发时间获取模块,用于当未成功读取到与目标客户端对应的心跳包策略时,获取各所述数据包的收发时间;
同类数据包筛选模块,用于根据各所述数据包的收发时间,筛选具有心跳包行为的同类数据包;
端口与服务器识别模块,用于识别所述同类数据包对应的第一端口以及所述第一端口所在的服务器;
第二网络延时分析模块,当所述收发的数据包中存在多个向所述服务器中的第二端口发送的数据包时,计算所述同类数据包的平均延时数据,得到网络延时数据,其中,所述第二端口与所述第一端口为不同端口。
11.根据权利要求10所述的装置,其特征在于,所述装置还包括:
心跳包策略生成模块,用于根据所述同类数据包的心跳包行为,得到发包时间间隔;生成包含所述第一端口的端口标识和所述发包时间间隔的心跳包策略;根据所述数据包对应程序的程序包名和版本信息,生成客户端标识,将携带有客户端标识的心跳包策略添加到预存的心跳包策略集。
12.根据权利要求10所述的装置,其特征在于,所述同类数据包筛选模块,还用于从获取的各数据包中筛选向同一个IP地址的同一端口发送请求包并接收响应包的数据包组合;将所述数据包组合中的发送请求包按时间排列,当各相邻的发送请求包之间的发包时间间隔均符合心跳包规则时,确定筛选得到的数据包组合为具有心跳包行为的同类数据包。
13.根据权利要求12所述的装置,其特征在于,所述第二网络延时分析模块还用于获取数据包组合中请求包的发送时间和响应包的接收时间;根据所述数据包组合的发送时间和接收时间的收发时间差,得到所述数据包组合的延时数据;计算每一组所述数据包组合的延时数据的平均值,得到网络延时数据。
14.根据权利要求9所述的装置,其特征在于,所述数据包获取模块还用于侦听客户端启动信号,提取所述客户端启动信号中携带的目标客户端标识,并启动虚拟专用网络,获取目标客户端通过所述虚拟专用网络的网络层传输的数据包。
15.根据权利要求9所述的装置,其特征在于,所述数据包筛选模块还用于根据网络层的数据传输协议,获取所述网络层传输的各数据包对应的IP头部信息和UDP头部信息;根据所述IP头部信息,确定所述数据包对应的服务器IP,并根据所述UDP头部信息,确定所述数据包对应的服务器端口标识;识别各所述数据包中服务器端口标识与所述心跳包策略中的服务器端口标识相同的目标数据包。
16.根据权利要求9所述的装置,其特征在于,所述装置还包括:
心跳包策略集构建模块,用于侦听测试机中客户端的启动信号,根据待分析客户端各功能模块的网络要求等级,启动网络要求等级最高的目标功能模块;通过测试机中的抓包软件,抓取目标功能模块的数据包;根据各所述数据包的收发时间,筛选具有心跳包行为的目标数据包,得到发包时间间隔,并根据各数据包的收发端口,判断是否具有多端口交互行为;当存在多端口交互行为时,生成包含目标数据包的发送端口标识和发包时间间隔的心跳包策略;预存各客户端对应的心跳包策略,构建心跳包策略集。
17.一种计算机可读存储介质,存储有计算机程序,所述计算机程序被处理器执行时,使得所述处理器执行如权利要求1至8中任一项所述方法的步骤。
18.一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,所述计算机程序被所述处理器执行时,使得所述处理器执行如权利要求1至8中任一项所述方法的步骤。
CN202010109025.0A 2020-02-21 2020-02-21 网络延时分析方法、装置、存储介质和计算机设备 Active CN111371639B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010109025.0A CN111371639B (zh) 2020-02-21 2020-02-21 网络延时分析方法、装置、存储介质和计算机设备

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010109025.0A CN111371639B (zh) 2020-02-21 2020-02-21 网络延时分析方法、装置、存储介质和计算机设备

Publications (2)

Publication Number Publication Date
CN111371639A CN111371639A (zh) 2020-07-03
CN111371639B true CN111371639B (zh) 2021-12-14

Family

ID=71208199

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010109025.0A Active CN111371639B (zh) 2020-02-21 2020-02-21 网络延时分析方法、装置、存储介质和计算机设备

Country Status (1)

Country Link
CN (1) CN111371639B (zh)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112333044B (zh) * 2020-10-29 2022-07-15 北京锐安科技有限公司 分流设备性能测试方法、装置、系统、电子设备以及介质
CN114650243B (zh) * 2020-12-18 2024-02-06 北京小米移动软件有限公司 网络延时检测方法及装置、移动终端及存储介质
CN114125030B (zh) * 2021-11-30 2024-07-19 北京天融信网络安全技术有限公司 连接跟踪方法、装置、电子设备和计算机可读存储介质
CN117041100B (zh) * 2023-10-07 2024-03-12 之江实验室 一种分布式系统应用间网络包延迟检测方法和装置
CN117650965B (zh) * 2024-01-26 2024-04-19 北京天维信通科技股份有限公司 基于uCPE原有端口实现SD-WAN管理网络的方法及装置

Citations (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102572939A (zh) * 2011-01-04 2012-07-11 中国移动通信有限公司 一种心跳数据包发送方法、装置及系统
CN102790776A (zh) * 2012-08-03 2012-11-21 中国联合网络通信集团有限公司 心跳连接归一处理方法、终端、服务器及通信系统
CN103096435A (zh) * 2011-10-31 2013-05-08 中国移动通信集团公司 连接保持方法、装置、移动终端及数据传输方法
CN103945455A (zh) * 2014-04-25 2014-07-23 中国联合网络通信集团有限公司 一种实现自适应心跳数据包发送的方法及装置
WO2014194333A1 (en) * 2013-05-31 2014-12-04 Seven Networks, Inc. Optimizing traffic by controlling keep-alives
CN104486243A (zh) * 2014-11-27 2015-04-01 网易(杭州)网络有限公司 数据传输方法、设备及系统
CN104796445A (zh) * 2014-01-21 2015-07-22 航天信息股份有限公司 服务器节点进行资源同步的方法、装置
CN107204999A (zh) * 2016-03-16 2017-09-26 阿里巴巴集团控股有限公司 一种实现心跳的方法和装置
CN109286593A (zh) * 2017-07-19 2019-01-29 腾讯科技(深圳)有限公司 传输重连的方法及装置、计算机设备及存储介质
CN109361532A (zh) * 2018-09-11 2019-02-19 上海天旦网络科技发展有限公司 网络数据分析的高可用系统和方法及计算机可读存储介质
CN109862038A (zh) * 2019-03-22 2019-06-07 江苏睿鸿网络技术有限公司 一种流媒体协议中数据延时及丢包的处理方法
CN109889775A (zh) * 2018-12-26 2019-06-14 视联动力信息技术股份有限公司 一种数据超时处理的方法和装置
US10386457B2 (en) * 2011-08-05 2019-08-20 TrackThings LLC Apparatus and method to automatically set a master-slave monitoring system
CN110221998A (zh) * 2019-06-13 2019-09-10 南京紫图科技有限公司 数据采集方法、装置及系统、计算机存储介质
CN110247853A (zh) * 2018-03-09 2019-09-17 网宿科技股份有限公司 Tcp拥塞控制方法、系统、存储介质及网络服务器
CN110557301A (zh) * 2019-08-23 2019-12-10 福建科立讯通信有限公司 一种降低功耗的服务器端心跳探测机制的实现方法

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5778882A (en) * 1995-02-24 1998-07-14 Brigham And Women's Hospital Health monitoring system
WO2009018768A1 (fr) * 2007-08-07 2009-02-12 Huawei Technologies Co., Ltd. Procédé et appareil de réacheminement de paquet de données, appareil de génération de paquet de données et système de communication
CN101364939B (zh) * 2007-08-07 2012-08-15 华为技术有限公司 数据包转发方法及装置、数据包生成装置和通信系统
US10084678B2 (en) * 2016-04-19 2018-09-25 International Business Machines Corporation Managing connections for data communications using heartbeat messaging
US10579607B2 (en) * 2017-04-28 2020-03-03 Splunk Inc. Single point of dispatch for hybrid cloud deployment for indexer clusters
US10860618B2 (en) * 2017-09-25 2020-12-08 Splunk Inc. Low-latency streaming analytics
CN108650301A (zh) * 2018-04-17 2018-10-12 厦门睿洽科技有限公司 基于安卓系统的保持udp长连接的方法

Patent Citations (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102572939A (zh) * 2011-01-04 2012-07-11 中国移动通信有限公司 一种心跳数据包发送方法、装置及系统
US10386457B2 (en) * 2011-08-05 2019-08-20 TrackThings LLC Apparatus and method to automatically set a master-slave monitoring system
CN103096435A (zh) * 2011-10-31 2013-05-08 中国移动通信集团公司 连接保持方法、装置、移动终端及数据传输方法
CN102790776A (zh) * 2012-08-03 2012-11-21 中国联合网络通信集团有限公司 心跳连接归一处理方法、终端、服务器及通信系统
WO2014194333A1 (en) * 2013-05-31 2014-12-04 Seven Networks, Inc. Optimizing traffic by controlling keep-alives
CN104796445A (zh) * 2014-01-21 2015-07-22 航天信息股份有限公司 服务器节点进行资源同步的方法、装置
CN103945455A (zh) * 2014-04-25 2014-07-23 中国联合网络通信集团有限公司 一种实现自适应心跳数据包发送的方法及装置
CN104486243A (zh) * 2014-11-27 2015-04-01 网易(杭州)网络有限公司 数据传输方法、设备及系统
CN107204999A (zh) * 2016-03-16 2017-09-26 阿里巴巴集团控股有限公司 一种实现心跳的方法和装置
CN109286593A (zh) * 2017-07-19 2019-01-29 腾讯科技(深圳)有限公司 传输重连的方法及装置、计算机设备及存储介质
CN110247853A (zh) * 2018-03-09 2019-09-17 网宿科技股份有限公司 Tcp拥塞控制方法、系统、存储介质及网络服务器
CN109361532A (zh) * 2018-09-11 2019-02-19 上海天旦网络科技发展有限公司 网络数据分析的高可用系统和方法及计算机可读存储介质
CN109889775A (zh) * 2018-12-26 2019-06-14 视联动力信息技术股份有限公司 一种数据超时处理的方法和装置
CN109862038A (zh) * 2019-03-22 2019-06-07 江苏睿鸿网络技术有限公司 一种流媒体协议中数据延时及丢包的处理方法
CN110221998A (zh) * 2019-06-13 2019-09-10 南京紫图科技有限公司 数据采集方法、装置及系统、计算机存储介质
CN110557301A (zh) * 2019-08-23 2019-12-10 福建科立讯通信有限公司 一种降低功耗的服务器端心跳探测机制的实现方法

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
Forecasting Heartbeat Delay for Failure Detection over Internet Using Nonlinear System;Zhao Hai-jun;《2009 WRI World Congress on Computer Science and Information Engineering》;20090724;全文 *
TIME DELAY BETWEEN RR AND RT HEART BEAT INTERVALS ASSESSED BY TREND EXTRACTION OF EXERCISE TEST DATA;CAMILLO CAMMAROTA;《luctuation and Noise Letters》;20121215;全文 *
基于手游帧同步智能预调度算法的王者荣耀体验时延优化研究;付涛;《中国新通信》;20210205;全文 *

Also Published As

Publication number Publication date
CN111371639A (zh) 2020-07-03

Similar Documents

Publication Publication Date Title
CN111371639B (zh) 网络延时分析方法、装置、存储介质和计算机设备
USRE49126E1 (en) Real-time adaptive processing of network data packets for analysis
CN106921637B (zh) 网络流量中的应用信息的识别方法和装置
CN110213212B (zh) 一种设备的分类方法和装置
Comparetti et al. Prospex: Protocol specification extraction
CN102307123B (zh) 基于传输层流量特征的nat流量识别方法
US10218733B1 (en) System and method for detecting a malicious activity in a computing environment
WO2009093226A2 (en) A method and apparatus for fingerprinting systems and operating systems in a network
CN105635064B (zh) Csrf攻击检测方法及装置
CN111028085A (zh) 一种基于主被动结合的网络靶场资产信息采集方法及装置
CN114389792B (zh) 一种web日志nat前后关联方法及系统
CN111130936B (zh) 一种负载均衡算法的测试方法及装置
CN104333538B (zh) 一种网络设备准入方法
US10419351B1 (en) System and method for extracting signatures from controlled execution of applications and application codes retrieved from an application source
WO2019043804A1 (ja) ログ分析装置、ログ分析方法及びコンピュータ読み取り可能記録媒体
CN111953810B (zh) 识别代理互联网协议地址的方法、装置及存储介质
CN112822208A (zh) 一种基于区块链的物联网设备识别方法及系统
CN116996262A (zh) 低资源高仿真漏洞蜜罐方法及系统
CN113162892A (zh) 一种poc验证环境快速生成方法、可读介质及设备
CN114760216B (zh) 一种扫描探测事件确定方法、装置及电子设备
CN114462588B (zh) 检测网络入侵用神经网络模型的训练方法、系统及设备
CN116074280B (zh) 应用入侵防御系统识别方法、装置、设备和存储介质
CN112165466B (zh) 一种误报识别的方法、装置、电子装置和存储介质
CN115499179A (zh) 一种面向主干网中DoH隧道流量的检测方法
CN111669376B (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