CN113507394A - 网络性能检测方法、装置、电子设备及存储介质 - Google Patents
网络性能检测方法、装置、电子设备及存储介质 Download PDFInfo
- Publication number
- CN113507394A CN113507394A CN202110648020.XA CN202110648020A CN113507394A CN 113507394 A CN113507394 A CN 113507394A CN 202110648020 A CN202110648020 A CN 202110648020A CN 113507394 A CN113507394 A CN 113507394A
- Authority
- CN
- China
- Prior art keywords
- message
- handshake
- port
- data
- time delay
- 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
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
- H04L43/0852—Delays
-
- 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/04—Processing captured monitoring data, e.g. for logfile generation
-
- 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
- H04L43/0823—Errors, e.g. transmission errors
- H04L43/0829—Packet loss
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Environmental & Geological Engineering (AREA)
- Data Mining & Analysis (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本申请公开了一种网络性能检测方法、装置、电子设备及存储介质,网络性能检测方法包括:响应于网络协议栈获取到预设格式的第一报文,获取第一报文的类型;响应于第一报文为握手报文,获取握手报文从源端口至目的端口的时延并存储至时延数据表中;响应于第一报文为回显报文,获取回显报文对应的源端口和目的端口,将源端口和目的端口之间对应的数值递加并存储至计数表中;响应于源端口发送握手报文后查询时延数据表以获得握手报文对应的时延,响应于源端口向目的端口发送第一数值的回显报文后,查询计数表以获得回显报文在源端口和目的端口之间的丢帧率。上述方案,能够减少网络性能检测的网络开销,并提高网络性能检测的效率。
Description
技术领域
本申请涉及计算机技术领域,特别是涉及一种网络性能检测方法、装置、电子设备及存储介质。
背景技术
随着信息时代的来临,对计算机网络性能的检测要求也在不断提高,对于网络性能的参考指标主要是网络延迟和丢帧率,如何通过低消耗的方式实现对网络性能的检测成为了新的研究方向。
现有网络延迟、丢帧测量方案主要通过监听套接字并将套接字相关的所有数据拷贝到用户端并在用户端进行解析,当计算机上的流量较大时,数据拷贝会消耗大量的计算机性能,导致网络性能检测的网络开销大,且检测效率低。有鉴于此,如何减少网络性能检测的网络开销,并提高网络性能检测的效率成为亟待解决的问题。
发明内容
本申请主要解决的技术问题是提供一种网络性能检测方法、装置、电子设备及存储介质,能够减少网络性能检测的网络开销,并提高网络性能检测的效率。
为解决上述技术问题,本申请第一方面提供一种网络性能检测方法,所述网络性能检测方法包括:响应于网络协议栈获取到预设格式的第一报文,获取所述第一报文的类型;响应于所述第一报文为握手报文,获取所述握手报文从源端口至目的端口的时延并存储至时延数据表中;响应于所述第一报文为回显报文,获取所述回显报文对应的源端口和目的端口,将所述源端口和所述目的端口之间对应的数值递加并存储至计数表中;响应于所述源端口发送所述握手报文后查询所述时延数据表以获得所述握手报文对应的时延,响应于所述源端口向所述目的端口发送第一数值的所述回显报文后,查询所述计数表以获得所述回显报文在所述源端口和所述目的端口之间的丢帧率。
为解决上述技术问题,本申请第二方面提供一种网络性能检测装置,所述网络性能检测装置包括:报文获取模块,用于响应于网络协议栈获取到预设格式的第一报文,获取所述第一报文的类型;时延获取模块,用于响应于所述第一报文为握手报文,获取所述握手报文从源端口至目的端口的时延并存储至时延数据表中;丢帧获取模块,用于响应于所述第一报文为回显报文,获取所述回显报文对应的源端口和目的端口,将所述源端口和所述目的端口之间对应的数值递加并存储至计数表中;数据查询模块,用于响应于所述源端口发送所述握手报文后查询所述时延数据表以获得所述握手报文对应的时延,响应于所述源端口向所述目的端口发送第一数值的所述回显报文后,查询所述计数表以获得所述回显报文在所述源端口和所述目的端口之间的丢帧率。
为解决上述技术问题,本申请第三方面提供一种电子设备,包括相互耦接的存储器和处理器,其中,所述存储器存储有程序指令,所述处理器调用所述程序指令以实现上述第一方面的网络性能检测方法。
为解决上述技术问题,本申请第四方面提供一种计算机可读存储介质,其上存储有程序指令,所述程序指令被处理器执行时实现上述第一方面的网络性能检测方法。
本申请的有益效果是:本申请在网络协议栈获取到预设格式的第一报文后,判断第一报文的类型,当第一报文为握手报文,则将握手报文从源端口到目的端口的时延存储至时延数据表中,当第一报文为回显报文,则获取回显报文的源端口和目的端口并将对应的数值递加进而存储至计数表中,通过查询时延数据表即可获得握手报文对应的时延通过查询计数表即可获得回显报文的丢帧率。故此,通过在网络协议栈内计算握手报文的时延,提高时延计算的准确率和效率,通过时延数据表和计数表的共享,避免数据拷贝造成的计算机性能消耗,从而减少网络性能检测的网络开销,并提高网络性能检测的效率。
附图说明
为了更清楚地说明本申请实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。其中:
图1是本申请网络性能检测方法一实施例的流程示意图;
图2是本申请网络性能检测方法另一实施例的流程示意图;
图3是本申请网络性能检测装置一实施例的框架示意图;
图4是本申请电子设备一实施例的框架示意图;
图5是本申请计算机可读存储介质一实施例的框架示意图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性的劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
本文中术语“系统”和“网络”在本文中常被可互换使用。本文中术语“和/或”,仅仅是一种描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。另外,本文中字符“/”,一般表示前后关联对象是一种“或”的关系。此外,本文中的“多”表示两个或者多于两个。
请参阅图1,图1是本申请网络性能检测方法一实施例的流程示意图。具体而言,可以包括如下步骤:
S101:响应于网络协议栈获取到预设格式的第一报文,获取第一报文的类型。
具体地,第一报文以预设的格式传递到网络协议栈,获取到预设格式的第一报文后,根据传输协议判断第一报文的类型,若第一报文为握手报文则进入步骤S102,若第一报文为回显报文则进入步骤S103。
在一应用方式中,预设格式为sk_buff格式,sk_buff格式为Linux系统在网络协议栈中传送的结构体,包含各层协议的头部信息。编写基于套接字过滤程序以及预设的传输协议的源码,利用Clang编译器(C语言、C++的轻量级编译器)编译生成字节码,将字节码加载到内核网络协议栈的原始套接字上,套接字上收到的所有数据报文都以sk_buff的形式传输,进而,当网络协议栈接收到预设格式的第一报文后,基于约定的传输协议获取第一报文的类型,从而确定第一报文是握手报文还是回显报文。
S102:响应于第一报文为握手报文,获取握手报文从源端口至目的端口的时延并存储至时延数据表中。
具体地,当第一报文为握手报文时,获取握手报文从源端口到目的端口的时延,将源端口和目的端口之间的时延存储至时延数据表中,通过在网络协议栈抓取握手报文,从而提高获取握手报文在源端口和目的端口对应的时间的准确率,进而提高获取握手报文对应的时延的准确率。
在一应用方式中,当握手报文为握手请求报文时,则将握手请求报文对应的源端口保存,并记录握手请求报文的发送时间,当握手报文为握手应答报文时,则查找与握手应答报文对应的握手请求报文,将当前时间减去握手请求报文的发送时间,以获得握手报文从源端口到目的端口的时延。
S103:响应于第一报文为回显报文,获取回显报文对应的源端口和目的端口,将源端口和目的端口之间对应的数值递加并存储至计数表中。
具体地,当第一报文为回显报文时,获取回显报文对应的源端口和目的端口,获取计数表中回显报文对应的源端口和目的端口对应的数值,将该数值递加1。
在一应用方式中,当第一报文为回显报文时,获取回显报文对应的源端口和目的端口,若回显报文对应的源端口和目的端口对应的数值为0,则将回显报文对应的源端口和目的端作为key保存至计数表中,进而将回显报文对应的源端口和目的端口对应的数值从0递加为1,若回显报文对应的源端口和目的端口对应的数值不为0,则将回显报文对应的源端口和目的端口对应的数值递加后保存。
S104:响应于源端口发送握手报文后查询时延数据表以获得握手报文对应的时延,响应于源端口向目的端口发送第一数值的回显报文后,查询计数表以获得回显报文在源端口和目的端口之间的丢帧率。
具体地,当源端口发送握手报文后,通过查询时延数据表即可获得握手报文对应的时延,当源端口向目的端口发送第一数值的回显报文后,查询计数表中回显报文的源端口和目标端口对应的计数值,进而基于计数值与第一数值的比值获取源端口和目的端口之间的丢帧率。
进一步地,通过时延数据表和计数表将内核协议栈中抓取到的时延和回显报文的数量进行保存和共享,进而在进行网络延迟和丢帧率的分析时,避免了将数据从内核网络协议栈拷贝到用户端进行分析对计算机性能的消耗。
上述方案,在网络协议栈获取到预设格式的第一报文后,判断第一报文的类型,当第一报文为握手报文,则将握手报文从源端口到目的端口的时延存储至时延数据表中,当第一报文为回显报文,则获取回显报文的源端口和目的端口并将对应的数值递加进而存储至计数表中,通过查询时延数据表即可获得握手报文对应的时延通过查询计数表即可获得回显报文的丢帧率。故此,通过在网络协议栈内计算握手报文的时延,提高时延计算的准确率和效率,通过时延数据表和计数表的共享,避免数据拷贝造成的计算机性能消耗,从而减少网络性能检测的网络开销,并提高网络性能检测的效率。
请参阅图2,图2是本申请网络性能检测方法另一实施例的流程示意图。具体而言,可以包括如下步骤:
S201:响应于网络协议栈获取到预设格式的第一报文,获取第一报文的类型。
具体地,响应于网络协议栈获取到预设格式的第一报文,解析第一报文的帧头,基于第一报文对应的传输协议以确定第一报文的类型。
其中,网络协议栈中设置有预先定义的关于第一报文的传输协议,进而在获取到预设格式的第一报文后,解析第一报文中帧头,利用第一报文对应的传输协议对第一报文进行过滤,以滤除帧头不满足传输协议的报文,提高对第一报文进行解析的效率,进而基于传输协议对第一报文进行判断,确定第一报文的类型,赋能后续步骤。
在一应用方式中,第一报文以预设的sk_buff格式在以太网上传递到网络协议栈,解析以太网帧头,根据传输协议确定该第一报文是否为IP数据报文,若是,则解析IP头,根据传输协议确定IP数据报文是否为握手报文,若是,则进入步骤S202,若否,则进入步骤S205。
S202:响应于第一报文为握手报文,获取握手报文的类型和握手报文对应的第一端口数据。
具体地,当第一报文为握手报文时,获取握手报文对应的第一端口数据,第一端口数据包括第一报文中包含的源地址和目的地址,其中,源地址为源端口对应的地址,目的地址为目的端口对应的地址,进而基于第一端口数据判断握手报文是发送给网络协议栈对应的本地设备的报文,还是由网络协议栈对应的本地设备发送出去的报文,从而获得握手报文的类型。
在一应用方式中,网络协议栈对应的本地设备的IP地址预先存储在IP地址表中,获取握手报文的类型和握手报文对应的第一端口数据的步骤,包括:基于第一端口数据查询IP地址表,以确定握手报文是否是由本地设备发出的握手请求报文或是发送给本地设备的握手应答报文。
具体地,网络协议栈对应的本地设备的IP地址预先存储在IP地址表中,当获取到握手报文后,以握手报文的目的地址查询IP地址表中是否包括该目的地址,若包括,则判定握手报文为发送给本地设备的握手应答报文,否则,以握手报文的源地址查询IP地址表中是否包括该源地址,若包括,则判定握手报文是由本地设备发出的握手应答报文。
其中,通过将网络协议栈对应的本地设备的IP地址保存在IP地址表中,并将IP地址表进行共享,从而在获得握手报文后,可高效地判断出握手报文的类型,从而及时计算握手报文对应的时延。
可选地,握手报文设置有预设端口区间,获取握手报文的类型和握手报文对应的第一端口数据的步骤之前,还包括:将预设端口区间内的握手报文提取出来,从而进入获取握手报文的类型和握手报文对应的第一端口数据的步骤。
其中,整个计算机网络由不同的终端使用,网络协议栈可能接收到不同终端发送过来的报文,通过预先约定的端口区间来过滤接收到的握手报文,提高报文过滤的准确率,将符合端口区间的报文作为本地设备对应的握手报文并将其用于时延测量,将不符合端口区间的报文剔除,提高后续对握手报文进行解析的效率。
S203:响应于握手报文为握手请求报文,将握手请求报文对应的第一端口数据,以及发送握手请求报文的时间存储至握手报文数据表中。
具体地,当握手报文为握手请求报文时,则将握手请求报文对应的第一端口数据以及当前的时间存储至握手报文数据表中。
在一应用方式中,当确定握手报文为本地设备发出的报文后,判定握手报文为握手请求报文,将握手请求报文对应的源地址和目的地址存储至握手报文数据表中,将当前的时间作为握手请求报文的发送时间也存储至握手报文数据表中,以使握手请求报文的数据在握手报文数据表中存储并共享,以便调用。
S204:响应于握手报文为握手应答报文,基于握手应答报文对应的第一端口数据在握手报文数据表中查找对应的握手请求报文,将握手应答报文与握手请求报文之间的时间差值作为握手报文的时延,存入时延数据表中。
具体地,当握手报文为握手应答报文时,获取握手应答报文对应的第一端口数据,其中,第一端口数据包括握手应答报文对应的源地址和目的地址,其中,握手应答报文是对同一第一端口数据对应的握手请求报文的回复,同一第一端口数据对应的握手应答报文的源地址即为握手请求报文的目的地址,握手应答报文的目的地址即为握手请求报文的源地址。
进一步地,基于握手应答报文对应的第一端口数据从握手报文数据表中查找到对应的握手请求报文,进而获取对应的握手请求报文的报文发送时间,将握手应答报文对应的当前时间与握手请求报文对应的发送时间之间的时间差值作为握手报文的时延,进而存储到时延数据表中。
S205:响应于第一报文为回显报文,获取回显报文的类型和回显报文对应的第二端口数据。
具体地,当第一报文为回显报文时,获取回显报文对应的第二端口数据,第二端口数据包括第二报文中包含的源地址和目的地址,进而基于第二端口数据判断回显报文是否是发送给网络协议栈对应的本地设备的报文,从而获得回显报文的类型。
在一应用方式中,网络协议栈对应的本地设备的IP地址预先存储在IP地址表中,获取回显报文的类型和回显报文对应的第二端口数据的步骤,包括:基于第二端口数据查询IP地址表,以确定回显报文是否是发送给本地设备的回显应答报文。
具体地,网络协议栈对应的本地设备的IP地址预先存储在IP地址表中,当获取到回显报文后,以回显报文的目的地址查询IP地址表中是否包括该目的地址,若包括,则判定回显报文为发送给本地设备的回显应答报文。
其中,通过将网络协议栈对应的本地设备的IP地址保存在IP地址表中,并将IP地址表进行共享,从而在获得回显报文后,可高效地判断出回显报文的类型,从而准确地对计数表进行设置。
可选地,回显报文设置有有效负载段,获取回显报文的类型和回显报文对应的第二端口数据的步骤之前,还包括:将包含有效负载段的回显报文提取出来,从而进入获取回显报文的类型和回显报文对应的第二端口数据的步骤。
其中,整个计算机网络包括不同的负载段,通过预先约定的有效负载段来过滤接收到的回显报文,提高报文过滤的准确率,将符合有效负载段的报文作为本地设备对应的回显报文并将其用于丢帧率的计算,将不符合有效负载段的报文剔除,提高后续对回显报文进行解析的效率。
S206:响应于回显报文为回显应答报文,若计数表中未存储有第二端口数据,则将第二端口数据存入计数表,并将第二端口数据对应的数值置为初始数值从而保存至计数表中,若计数表中存储有第二端口数据,则将第二端口数据对应的数值递加并在计数表中更新。
具体地,当回显报文为回显应答报文时,判断计数表中是否存储有回显报文对应的第二端口数据,若未存储,则将第二端口数据存储至计数表中,并将第二端口数据对应的数值设置为初始数值1,进而将第二端口数据及其对应的数据保存在计数表中,若存储有第二端口数据,则将第二端口数据对应的数值递加,进而在计数表中更新对应的数值。
进一步地,同一源端口可以向不同的目的端口发送回显请求报文,通过统计不同的第二数据端口数据对应的计数值,即可有效获取源端口接收到的回显应答报文的数量,并且计数表可以进行共享,以供调用。
S207:当源端口发送握手请求报文后,获取握手报文对应的第一端口数据,基于第一端口数据在时延数据表中查询握手报文对应的时延。
具体地,当源端口发送握手请求报文后,当需要获取该握手请求报文和握手应答报文之间的时延时,获取握手请求报文或握手应答报文对应的第一端口数据,调用时延数据表,进而利用第一端口数据在时延数据表中查询对应的时延数据,进而高效且迅速地获取握手报文从请求到回复的时延。
S208:当源端口向目的端口发送第一数值的回显请求报文后,获取回显请求报文对应的第二端口数据,基于第二端口数据在计数表中查询第二端口数据对应的计数值,基于计数值与第一数值的比值获取回显报文在源端口和目的端口之间的丢帧率。
具体地,当源端口向目的端口发送第一数值的回显请求报文后,获取回显请求报文对应的第二端口数据,由于回显请求报文和回显应答报文对应的第二端口数据均包括两端的地址,调用计数表,进而基于第二端口数据即可在计数表中查找到第二端口数据对应的计数值,用1减去计数值与第一数值的比值,即可获得第二端口数据中对应的源地址与目的地址之间的丢帧率,即源端口与目的端口之间的丢帧率。
在本实施例中,通过设置时延数据表、计数表、IP地址表以及握手报文数据表来对从网络协议栈获取到的数据进行存储,进而对数据进行共享和调用,以实现高效率地获取握手报文对应的网络延迟以及回显报文对应的丢帧率,在对网络性能进行检测的同时减少网络性能检测的消耗。
请参阅图3,图3是本申请网络性能检测装置一实施例的框架示意图。网络性能检测装置30包括:报文获取模块300、时延获取模块302、丢帧获取模块304和数据查询模块306。其中,报文获取模块300用于响应于网络协议栈获取到预设格式的第一报文,获取第一报文的类型;时延获取模块302用于响应于第一报文为握手报文,获取握手报文从源端口至目的端口的时延并存储至时延数据表中;丢帧获取模块304用于响应于第一报文为回显报文,获取回显报文对应的源端口和目的端口,将源端口和目的端口之间对应的数值递加并存储至计数表中;数据查询模块306用于响应于源端口发送握手报文后查询时延数据表以获得握手报文对应的时延,响应于源端口向目的端口发送第一数值的回显报文后,查询计数表以获得回显报文在源端口和目的端口之间的丢帧率。
上述方案,报文获取模块300在网络协议栈获取到预设格式的第一报文后,判断第一报文的类型,当第一报文为握手报文,则时延获取模块302将握手报文从源端口到目的端口的时延存储至时延数据表中,当第一报文为回显报文,则丢帧获取模块304获取回显报文的源端口和目的端口并将对应的数值递加进而存储至计数表中,数据查询模块306通过查询时延数据表即可获得握手报文对应的时延通过查询计数表即可获得回显报文的丢帧率。故此,通过在网络协议栈内计算握手报文的时延,提高时延计算的准确率和效率,通过时延数据表和计数表的共享,避免数据拷贝造成的计算机性能消耗,从而减少网络性能检测的网络开销,并提高网络性能检测的效率。
在一些实施例中,时延获取模块302还也可以用于:获取握手报文的类型和握手报文对应的第一端口数据;响应于握手报文为握手请求报文,将握手请求报文对应的第一端口数据,以及发送握手请求报文的时间存储至握手报文数据表中;响应于握手报文为握手应答报文,基于握手应答报文对应的第一端口数据在握手报文数据表中查找对应的握手请求报文,将握手应答报文与握手请求报文之间的时间差值作为握手报文的时延,存入时延数据表中。
在一些实施例中,丢帧获取模块304还可以用于:获取回显报文的类型和回显报文对应的第二端口数据;响应于回显报文为回显应答报文,若计数表中未存储有第二端口数据,则将第二端口数据存入计数表,并将第二端口数据对应的数值置为初始数值从而保存至计数表中;若计数表中存储有第二端口数据,则将第二端口数据对应的数值递加并在计数表中更新。
在一些实施例中,数据查询模块306还可以用于:当源端口发送握手请求报文后,获取握手报文对应的第一端口数据,基于第一端口数据在时延数据表中查询握手报文对应的时延;当源端口向目的端口发送第一数值的回显请求报文后,获取回显请求报文对应的第二端口数据,基于第二端口数据在计数表中查询第二端口数据对应的计数值,基于计数值与第一数值的比值获取回显报文在源端口和目的端口之间的丢帧率。
在一些实施例中,握手报文设置有预设端口区间,时延获取模块302还可以用于:将预设端口区间内的握手报文提取出来,进而获取握手报文的类型和握手报文对应的第一端口数据。回显报文设置有有效负载段,丢帧获取模块304还可以用于:将包含有效负载段的回显报文提取出来,进而获取回显报文的类型和回显报文对应的第二端口数据。
在一些实施例中,网络协议栈对应的本地设备的IP地址预先存储在IP地址表中,时延获取模块302还可以用于:基于第一端口数据查询IP地址表,以确定握手报文是否是由本地设备发出的握手请求报文或是发送给本地设备的握手应答报文。丢帧获取模块304还可以用于:基于第二端口数据查询IP地址表,以确定回显报文是否是发送给本地设备的回显应答报文。
在一些实施例中,报文获取模块300还可以用于:响应于网络协议栈获取到预设格式的第一报文,解析第一报文的帧头,基于第一报文对应的传输协议以确定第一报文的类型。
请参阅图4,图4是本申请电子设备一实施例的框架示意图。电子设备40包括相互耦接的存储器401和处理器402,存储器401存储有程序指令,处理器402调用程序指令以实现上述任一网络性能检测方法实施例的步骤。
具体而言,处理器402用于控制其自身以及存储器401以实现上述任一网络性能检测方法实施例的步骤。处理器402还可以称为CPU(Central Processing Unit,中央处理单元)。处理器402可能是一种集成电路芯片,具有信号的处理能力。处理器402还可以是通用处理器、数字信号处理器(Digital Signal Processor,DSP)、专用集成电路(ApplicationSpecific Integrated Circuit,ASIC)、现场可编程门阵列(Field-Programmable GateArray,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。另外,处理器402可以由集成电路芯片共同实现。
上述方案,处理器402能够将从网络协议栈获取到数据存储至时延数据表和计数表中进行共享,从而避免将数据复制到客户端进行分析,能够减少网络性能检测的网络开销,并提高网络性能检测的效率。
请参阅图5,图5是本申请计算机可读存储介质一实施例的框架示意图。计算机可读存储介质50存储有能够被处理器运行的程序指令500,程序指令500被处理器执行时实现上述任一网络性能检测方法实施例的步骤。
在本申请所提供的几个实施例中,应该理解到,所揭露的方法、装置,可以通过其它的方式实现。例如,以上所描述的装置实施方式仅仅是示意性的,例如,模块或单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性、机械或其它的形式。
作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施方式方案的目的。
另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)或处理器(processor)执行本申请各个实施方式方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
Claims (10)
1.一种网络性能检测方法,其特征在于,包括:
响应于网络协议栈获取到预设格式的第一报文,获取所述第一报文的类型;
响应于所述第一报文为握手报文,获取所述握手报文从源端口至目的端口的时延并存储至时延数据表中;
响应于所述第一报文为回显报文,获取所述回显报文对应的源端口和目的端口,将所述源端口和所述目的端口之间对应的数值递加并存储至计数表中;
响应于所述源端口发送所述握手报文后查询所述时延数据表以获得所述握手报文对应的时延,响应于所述源端口向所述目的端口发送第一数值的所述回显报文后,查询所述计数表以获得所述回显报文在所述源端口和所述目的端口之间的丢帧率。
2.根据权利要求1所述的网络性能检测方法,其特征在于,所述响应于所述第一报文为握手报文,获取所述握手报文从源端口至目的端口的时延并存储至时延数据表中的步骤,包括:
获取所述握手报文的类型和所述握手报文对应的第一端口数据;
响应于所述握手报文为握手请求报文,将所述握手请求报文对应的所述第一端口数据,以及发送所述握手请求报文的时间存储至握手报文数据表中;
响应于所述握手报文为握手应答报文,基于所述握手应答报文对应的所述第一端口数据在所述握手报文数据表中查找对应的握手请求报文,将所述握手应答报文与所述握手请求报文之间的时间差值作为所述握手报文的时延,存入所述时延数据表中。
3.根据权利要求2所述的网络性能检测方法,其特征在于,所述响应于所述第一报文为回显报文,获取所述回显报文对应的源端口和目的端口,将所述源端口和所述目的端口之间对应的数值递加并存储至计数表中的步骤,包括:
获取所述回显报文的类型和所述回显报文对应的第二端口数据;
响应于所述回显报文为回显应答报文,若所述计数表中未存储有所述第二端口数据,则将所述第二端口数据存入所述计数表,并将所述第二端口数据对应的数值置为初始数值从而保存至所述计数表中;若所述计数表中存储有所述第二端口数据,则将所述第二端口数据对应的数值递加并在所述计数表中更新。
4.根据权利要求3所述的网络性能检测方法,其特征在于,所述响应于所述源端口发送所述握手报文后查询所述时延数据表以获得所述握手报文对应的时延,响应于所述源端口向所述目的端口发送第一数值的所述回显报文后,查询所述计数表以获得所述回显报文在所述源端口和所述目的端口之间的丢帧率的步骤,包括:
当所述源端口发送所述握手请求报文后,获取所述握手报文对应的所述第一端口数据,基于所述第一端口数据在所述时延数据表中查询所述握手报文对应的时延;
当所述源端口向所述目的端口发送第一数值的回显请求报文后,获取所述回显请求报文对应的所述第二端口数据,基于所述第二端口数据在所述计数表中查询所述第二端口数据对应的计数值,基于所述计数值与第一数值的比值获取所述回显报文在所述源端口和所述目的端口之间的丢帧率。
5.根据权利要求3所述的网络性能检测方法,其特征在于,
所述握手报文设置有预设端口区间,所述获取所述握手报文的类型和所述握手报文对应的第一端口数据的步骤之前,还包括:
将所述预设端口区间内的所述握手报文提取出来,从而进入所述获取所述握手报文的类型和所述握手报文对应的第一端口数据的步骤;
所述回显报文设置有有效负载段,所述获取所述回显报文的类型和所述回显报文对应的第二端口数据的步骤之前,还包括:
将包含所述有效负载段的所述回显报文提取出来,从而进入所述获取所述回显报文的类型和所述回显报文对应的第二端口数据的步骤。
6.根据权利要求3所述的网络性能检测方法,其特征在于,所述网络协议栈对应的本地设备的IP地址预先存储在IP地址表中,所述获取所述握手报文的类型和所述握手报文对应的第一端口数据的步骤,包括:
基于所述第一端口数据查询所述IP地址表,以确定所述握手报文是否是由所述本地设备发出的握手请求报文或是发送给所述本地设备的握手应答报文;
所述获取所述回显报文的类型和所述回显报文对应的第二端口数据的步骤,包括:
基于所述第二端口数据查询所述IP地址表,以确定所述回显报文是否是发送给所述本地设备的回显应答报文。
7.根据权利要求1所述的网络性能检测方法,其特征在于,所述响应于网络协议栈获取到预设格式的第一报文,获取所述第一报文的类型的步骤,包括:
响应于所述网络协议栈获取到预设格式的第一报文,解析所述第一报文的帧头,基于所述第一报文对应的传输协议以确定所述第一报文的类型。
8.一种网络性能检测装置,其特征在于,包括:
报文获取模块,用于响应于网络协议栈获取到预设格式的第一报文,获取所述第一报文的类型;
时延获取模块,用于响应于所述第一报文为握手报文,获取所述握手报文从源端口至目的端口的时延并存储至时延数据表中;
丢帧获取模块,用于响应于所述第一报文为回显报文,获取所述回显报文对应的源端口和目的端口,将所述源端口和所述目的端口之间对应的数值递加并存储至计数表中;
数据查询模块,用于响应于所述源端口发送所述握手报文后查询所述时延数据表以获得所述握手报文对应的时延,响应于所述源端口向所述目的端口发送第一数值的所述回显报文后,查询所述计数表以获得所述回显报文在所述源端口和所述目的端口之间的丢帧率。
9.一种电子设备,其特征在于,包括:相互耦接的存储器和处理器,其中,所述存储器存储有程序指令,所述处理器调用所述程序指令以执行如权利要求1-7中任一项所述的方法。
10.一种计算机可读存储介质,其上存储有程序指令,其特征在于,所述程序指令被处理器执行时实现如权利要求1-7中任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110648020.XA CN113507394B (zh) | 2021-06-10 | 2021-06-10 | 网络性能检测方法、装置、电子设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110648020.XA CN113507394B (zh) | 2021-06-10 | 2021-06-10 | 网络性能检测方法、装置、电子设备及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113507394A true CN113507394A (zh) | 2021-10-15 |
CN113507394B CN113507394B (zh) | 2023-03-10 |
Family
ID=78009839
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110648020.XA Active CN113507394B (zh) | 2021-06-10 | 2021-06-10 | 网络性能检测方法、装置、电子设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113507394B (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117176559A (zh) * | 2023-11-01 | 2023-12-05 | 明阳时创(北京)科技有限公司 | 一种基于nat64的跨协议栈网络故障定位方法及系统 |
Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101729303A (zh) * | 2008-10-25 | 2010-06-09 | 华为技术有限公司 | 测量网络性能参数的方法和装置 |
CN102035692A (zh) * | 2009-09-30 | 2011-04-27 | 中兴通讯股份有限公司 | 一种链路质量检测方法及装置 |
CN104754630A (zh) * | 2013-12-31 | 2015-07-01 | 华为技术有限公司 | 一种网络质量评估方法、装置及处理平台 |
CN108989152A (zh) * | 2018-08-08 | 2018-12-11 | 成都俊云科技有限公司 | 获得网络延时的方法及装置以及计算机存储介质 |
CN109257246A (zh) * | 2018-08-09 | 2019-01-22 | 华为技术有限公司 | 检测时延的方法、装置及系统 |
CN110995537A (zh) * | 2019-12-02 | 2020-04-10 | 重庆矢崎仪表有限公司 | 多芯片闭环通信延迟计算方法、通信同步方法及通信系统 |
CN111294251A (zh) * | 2018-12-07 | 2020-06-16 | 中国移动通信集团辽宁有限公司 | 链路时延的检测方法、装置、设备及介质 |
US20210058809A1 (en) * | 2018-01-25 | 2021-02-25 | Spatialbuzz Limited | Examining latency in communications networks |
CN112637007A (zh) * | 2020-12-14 | 2021-04-09 | 盛科网络(苏州)有限公司 | 基于ip dscp实现网络时延测量和丢包检测的方法及装置 |
-
2021
- 2021-06-10 CN CN202110648020.XA patent/CN113507394B/zh active Active
Patent Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101729303A (zh) * | 2008-10-25 | 2010-06-09 | 华为技术有限公司 | 测量网络性能参数的方法和装置 |
CN102035692A (zh) * | 2009-09-30 | 2011-04-27 | 中兴通讯股份有限公司 | 一种链路质量检测方法及装置 |
CN104754630A (zh) * | 2013-12-31 | 2015-07-01 | 华为技术有限公司 | 一种网络质量评估方法、装置及处理平台 |
US20210058809A1 (en) * | 2018-01-25 | 2021-02-25 | Spatialbuzz Limited | Examining latency in communications networks |
CN108989152A (zh) * | 2018-08-08 | 2018-12-11 | 成都俊云科技有限公司 | 获得网络延时的方法及装置以及计算机存储介质 |
CN109257246A (zh) * | 2018-08-09 | 2019-01-22 | 华为技术有限公司 | 检测时延的方法、装置及系统 |
CN111294251A (zh) * | 2018-12-07 | 2020-06-16 | 中国移动通信集团辽宁有限公司 | 链路时延的检测方法、装置、设备及介质 |
CN110995537A (zh) * | 2019-12-02 | 2020-04-10 | 重庆矢崎仪表有限公司 | 多芯片闭环通信延迟计算方法、通信同步方法及通信系统 |
CN112637007A (zh) * | 2020-12-14 | 2021-04-09 | 盛科网络(苏州)有限公司 | 基于ip dscp实现网络时延测量和丢包检测的方法及装置 |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117176559A (zh) * | 2023-11-01 | 2023-12-05 | 明阳时创(北京)科技有限公司 | 一种基于nat64的跨协议栈网络故障定位方法及系统 |
CN117176559B (zh) * | 2023-11-01 | 2024-01-16 | 明阳时创(北京)科技有限公司 | 一种基于nat64的跨协议栈网络故障定位方法及系统 |
Also Published As
Publication number | Publication date |
---|---|
CN113507394B (zh) | 2023-03-10 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10241830B2 (en) | Data processing method and a computer using distribution service module | |
US7987307B2 (en) | Interrupt coalescing control scheme | |
CN108306832B (zh) | 一种网络流量分流方法及装置 | |
CN110162270B (zh) | 基于分布式存储系统的数据存储方法、存储节点及介质 | |
US20230042747A1 (en) | Message Processing Method and Device, Storage Medium, and Electronic Device | |
CN108429739B (zh) | 一种识别蜜罐的方法、系统及终端设备 | |
CN112583797B (zh) | 多协议数据处理方法、装置、设备及计算机可读存储介质 | |
CN113507394B (zh) | 网络性能检测方法、装置、电子设备及存储介质 | |
CN107682446B (zh) | 一种报文镜像方法、装置及电子设备 | |
CN110311963B (zh) | 消息推送方法、装置、计算机设备及计算机可读存储介质 | |
US11360684B2 (en) | Data storage method and apparatus, storage medium and computer device | |
CN112732560B (zh) | 文件描述符泄露风险的检测方法及装置 | |
CN110855810B (zh) | 一种nat转换方法、装置、网络安全设备及存储介质 | |
CN114980064B (zh) | 信息关联方法、装置、电子设备及存储介质 | |
CN111163100A (zh) | 数据结构、通信方法、装置、存储介质及设备 | |
JP2739830B2 (ja) | マルチプロセッサシステム用データ通信装置 | |
US11757830B2 (en) | Method and apparatus for allocating CTDB-based virtual IP address, and distributed storage device | |
CN114827055B (zh) | 数据镜像的方法、装置、电子设备及交换机集群 | |
CN114338549B (zh) | 数据流识别处理方法、装置、服务器及存储介质 | |
WO2024093264A1 (zh) | 音频检测方法、装置及设备 | |
US20240179178A1 (en) | Control method and apparatus, computing device, and computer-readable storage medium | |
CN114979153B (zh) | 负载均衡方法、计算机设备及存储装置 | |
CN113630422B (zh) | 一种基于边缘节点的网络安全数据处理方法和系统 | |
CN110825908B (zh) | 一种对象的迁移方法、装置、电子设备及存储介质 | |
CN115883580A (zh) | 一种调整nginx连接数的方法、装置、电子设备及存储介质 |
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 |