网络丢包率监控方法、装置及测试服务器与流程

文档序号:14942798发布日期:2018-07-13 21:28阅读:684来源:国知局

本发明涉及互联网技术领域,具体而言,涉及一种网络丢包率监控方法、装置及测试服务器。



背景技术:

随着计算机网络技术的发展,互联网已经渗透到人们生活的方方面面,是人们日常生活不可或缺的沟通渠道。大量应用服务的涌现,对数据的传输与交互提出了更高的要求,以为用户提供更好的服务,例如减少报文的丢失率、避免网络拥塞等。

当服务器由于内部网络问题、运营商出口问题等导致网络丢包现象时,会给应用服务带来超时和不可用的问题,给用户的体验感较差。而对于服务提供商来说,服务器在网络层面是否真实可用,客户端发送的数据包是否全部到达了服务端,相应的应用负责人以及运维人员需要及时感知。尤其在运维工作转向应用负责人的大背景下,应用的负责人对于网络层、应用层的功能的可用性需要全部透明,及时准确地定位和修复问题也显得尤为重要。

现有技术中对服务器进行网络丢包监控,当有丢包率偏高的情况出现时,不能及时精准地定位到具体的服务器,需要运维工作人员进一步查找和定位,导致对网络丢包问题的处理不够及时,降低用户的体验感。因此,当在网络层面监控与线上应用程序通信的服务器的网络可用性时,如何对丢包率偏高的服务器及时并精准地定位,一直以来都是本领域技术人员关注的重点。



技术实现要素:

本发明的目的在于提供一种网络丢包率监控方法,以实时监控与应用程序通信的目标服务器的网络可用性,能对大于设定的阈值的丢包率对应的目标服务器精准定位,以便工作人员及时对网络丢包问题进行处理。

本发明的目的还在于提供一种网络丢包率监控装置,以实时监控与应用程序通信的目标服务器的网络可用性,能对大于设定的阈值的丢包率对应的目标服务器精准定位,以便工作人员及时对网络丢包问题进行处理。

本发明的目的还在于提供一种测试服务器,以实时监控与应用程序通信的目标服务器的网络可用性,能对大于设定的阈值的丢包率对应的目标服务器精准定位,以便工作人员及时对网络丢包问题进行处理。

为了实现上述目的,本发明实施例采用的技术方案如下:

第一方面,本发明实施例提出一种网络丢包率监控方法,应用于测试服务器。所述网络丢包率监控方法包括:获取与应用程序通信的至少一个目标服务器的ip地址构成的ip列表;向所述ip列表内的所有所述目标服务器发送ping数据包,并接收所有所述目标服务器依据所述ping数据包返回的返回报文,其中,所述测试服务器与所述ip列表内的每一所述目标服务器均形成测试网络;依据所述返回报文计算每一所述测试网络的丢包率;当所述丢包率大于设定的阈值时向监控终端推送提示信息以指示大于所述设定的阈值的丢包率对应的所述目标服务器及与所述目标服务器对应的所述应用程序。

第二方面,本发明实施例还提出一种网络丢包率监控装置,应用于测试服务器。所述网络丢包率监控装置包括ip列表获取模块、数据包收发模块、丢包率获取模块及信息推送模块,所述ip列表获取模块用于获取与应用程序通信的至少一个目标服务器的ip地址构成的ip列表;所述数据包收发模块用于向所述ip列表内的所有所述目标服务器发送ping数据包,并接收所有所述目标服务器依据所述ping数据包返回的返回报文,其中,所述测试服务器与所述ip列表内的每一所述目标服务器均形成测试网络;所述丢包率获取模块用于依据所述返回报文计算每一所述测试网络的丢包率;所述信息推送模块用于当所述丢包率大于设定的阈值时向监控终端推送提示信息以指示大于所述设定的阈值的丢包率对应的所述目标服务器及与所述目标服务器对应的所述应用程序。

第三方面,本发明实施例还提出一种测试服务器,所述测试服务器包括存储器、处理器及网络丢包率监控装置,所述网络丢包率监控装置存储在所述存储器中并包括一个或多个由所述处理器执行的软件功能模块。所述网络丢包率监控装置包括ip列表获取模块、数据包收发模块、丢包率获取模块及信息推送模块,所述ip列表获取模块用于获取与应用程序通信的至少一个目标服务器的ip地址构成的ip列表;所述数据包收发模块用于向所述ip列表内的所有所述目标服务器发送ping数据包,并接收所有所述目标服务器依据所述ping数据包返回的返回报文,其中,所述测试服务器与所述ip列表内的每一所述目标服务器均形成测试网络;所述丢包率获取模块用于依据所述返回报文计算每一所述测试网络的丢包率;所述信息推送模块用于当所述丢包率大于设定的阈值时向监控终端推送提示信息以指示大于所述设定的阈值的丢包率对应的所述目标服务器及与所述目标服务器对应的所述应用程序。

相对现有技术,本发明具有以下有益效果:本发明实施例提供的网络丢包率监控方法、装置及测试服务器,通过获取与应用程序通信的至少一个目标服务器的ip地址构成的ip列表;向所述ip列表内的所有目标服务器发送ping数据包,并接收所有目标服务器依据所述ping数据包返回的返回报文,所述测试服务器与所述ip列表内的每一所述目标服务器均形成测试网络;依据所述返回报文计算每一所述测试网络的丢包率;当所述丢包率大于设定的阈值时向监控终端推送提示信息以指示大于设定的阈值的丢包率对应的所述目标服务器及与所述目标服务器对应的应用程序。该网络丢包率监控方法及装置通过实时监控与应用程序通信的目标服务器的网络可用性,能精准地定位至大于设定的阈值的丢包率对应的目标服务器,便于工作人员及时对网络丢包问题进行处理,适用于多种需要监控网络丢包的场景。

为使本发明的上述目的、特征和优点能更明显易懂,下文特举较佳实施例,并配合所附附图,作详细说明如下。

附图说明

为了更清楚地说明本发明实施例的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本发明的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。

图1示出了本发明实施例所提供的网络丢包率监控方法及装置的应用环境示意图。

图2示出了本发明实施例所提供的测试服务器的结构框图。

图3示出了本发明第一实施例所提供的应用于测试服务器的网络丢包率监控装置的功能模块图。

图4示出了本发明第二实施例所提供的应用于测试服务器的网络低保率监控方法的流程示意图。

图标:100-测试服务器;200-目标服务器;300-分布式定时任务服务器;400-运维服务器;500-监控终端;600-网络;700-网络丢包率监控装置;110-存储器;120-存储控制器;130-处理器;710-任务调度接收模块;720-ip列表获取模块;730-关联模块;740-数据包收发模块;750-丢包率获取模块;760-信息推送模块。

具体实施方式

下面将结合本发明实施例中附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。通常在此处附图中描述和示出的本发明实施例的组件可以以各种不同的配置来布置和设计。因此,以下对在附图中提供的本发明的实施例的详细描述并非旨在限制要求保护的本发明的范围,而是仅仅表示本发明的选定实施例。基于本发明的实施例,本领域技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本发明保护的范围。

应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步定义和解释。同时,在本发明的描述中,术语“第一”、“第二”等仅用于区分描述,而不能理解为指示或暗示相对重要性。

本发明实施例所提供的网络丢包率监控方法及装置可应用于图1所示的应用环境中。如图1所示,测试服务器100、目标服务器200、分布式定时任务服务器300、运维服务器400及监控终端500位于网络600中,测试服务器100与目标服务器200、分布式定时任务服务器300、运维服务器400、监控终端500之间通过网络600进行通信或数据交互。在本实施例中,测试服务器100、目标服务器200、分布式定时任务服务器300及运维服务器400可以是,但不限于,网络服务器、数据库服务器、云端服务器等。监控终端500可以是,但不限于,智能手机、平板电脑、个人电脑(personalcomputer,pc)、移动上网设备(mobileinternetdevice,mid)、个人数字助理(personaldigitalassistant,pda)等电子设备。

在本实施例中,该目标服务器200至少包括一个,与一应用程序(例如淘宝客户端、浏览器等)对应,并与该应用程序进行数据通信和交互。测试服务器100用于对应用程序所对应的至少一个目标服务器200进行网络丢包监控,以确认该应用程序所对应的目标服务器200的网络层是否联通,该应用程序所发送的数据包是否都到达了目标服务器200,当监控到丢包率较高时,该测试服务器100能准确地定位到对应的应用程序及目标服务器200,并向监控终端500发送提示信息以使工作人员(例如,应用程序的负责人或运维人员)及时知晓并依据该提示信息对网络丢包问题进行处理。

可以理解,在本实施例中,所述测试服务器100所监控的应用程序可以有多个,并且每个应用程序均与至少一个目标服务器200对应,在丢包率超过一定阈值时,测试服务器100可将与该丢包率所对应的目标服务器200以及与目标服务器200对应的应用程序上报至监控终端500,实现对该目标服务器200及应用程序的及时准确的定位。

如图2所示,是本发明实施例所提供的测试服务器100的结构框图。测试服务器100可以包括存储器110、存储控制器120及处理器130。

所述存储器110、存储控制器120及处理器130,各元件之间直接或间接地电性连接,以实现数据的传输或者交互。例如,这些元件相互之间可通过一条或多条通讯总线或信号线实现电性连接。网络丢包率监控装置700包括至少一个可以软件或固件(firmware)的形式存储于所述存储器110中或固化在所述测试服务器100的操作系统(operatingsystem,os)中的软件功能模块。所述处理器130用于执行存储器110中存储的可执行模块,例如,该网络丢包率监控装置700所包括的软件功能模块及计算机程序等。

其中,存储器110可以是,但不限于,随机存取存储器(randomaccessmemory,ram),只读存储器(readonlymemory,rom),可编程只读存储器(programmableread-onlymemory,prom),可擦除只读存储器(erasableprogrammableread-onlymemory,eprom),电可擦除只读存储器(electricerasableprogrammableread-onlymemory,eeprom)等。存储器110可用于存储软件程序以及模块,处理器130用于在接收到执行指令后,执行所述程序。

处理器130可能是一种集成电路芯片,具有信号的处理能力。上述的处理器130可以是通用处理器,包括中央处理器(centralprocessingunit,简称cpu)、网络处理器(networkprocessor,简称np)等;还可以是数字信号处理器(dsp)、专用集成电路(asic)、现成可编程门阵列(fpga)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。通用处理器可以是微处理器或者该处理器130也可以是任何常规的处理器等。

可以理解,图2所示的结构仅为示意,所述测试服务器100还可包括比图2中所示更多或者更少的组件,或者具有与图2所示不同的配置。图2中所示的各组件可以采用硬件、软件或其组合实现。

第一实施例

请参照图3,为本发明第一实施例所提供的网络丢包率监控装置700的功能模块图。所述网络丢包率监控装置700可应用于上述的测试服务器100。所述网络丢包率监控装置700包括任务调度接收模块710、ip列表获取模块720、关联模块730、数据包收发模块740、丢包率获取模块750及信息推送模块760。

所述任务调度接收模块710用于接收分布式定时任务服务器300发送的任务调度,所述任务调度用于控制所述测试服务器100获取所述ip列表。

在本实施例中,所述分布式定时任务服务器300用于向该测试服务器100发起定时任务调度,当该任务调度接收模块710接收到该任务调度后,测试服务器100被该任务调度触发而获取ip列表。

所述ip列表获取模块720用于获取与应用程序通信的至少一个目标服务器200的ip地址构成的ip列表。

在本实施例中,当任务调度接收模块710接收到分布式定时任务服务器300发起的任务调度后,所述ip列表获取模块720通过访问该运维服务器400从运维服务器400获取所述ip列表。在本实施例中,所述ip列表由与被监控的应用程序通信的至少一个目标服务器200的ip地址所构成,所述至少一个目标服务器200可用于接收和响应应用程序发起的内容访问请求。需要说明的是,在本实施例中,所述目标服务器200可以是,但不限于,源站服务器、cdn节点服务器等。

所述关联模块730用于将所述应用程序及与所述应用程序通信的至少一个所述目标服务器200关联。

在本实施例中,所述测试服务器100所能监控的应用程序包括多个,所述关联模块730用于对该应用程序和与该应用程序通信的至少一个目标服务器200建立关联关系,使每个所述应用程序均与至少一个目标服务器200对应。具体地,所述关联模块730用于将各目标服务器200进行分组,使与一个应用程序通信的至少一个目标服务器200成为一个分组,其中,该分组内的所有目标服务器200用于为该应用程序提供服务。例如,将与一个应用程序通信的所有目标服务器200用标识信息进行标识以建立一个分组,其中,每一应用程序具有对应的一个分组,而不同的分组之间具有不同的标识,该标识信息可用于测试服务器100对目标服务器200及应用程序进行快速精准定位。

所述数据包收发模块740用于向所述ip列表内的所有所述目标服务器200发送ping数据包,并接收所有所述目标服务器200依据所述ping数据包返回的返回报文,其中,所述测试服务器100与所述ip列表内的每一所述目标服务器200均形成测试网络。

在本实施例中,该数据包收发模块740依据ip列表内的所有目标服务器200的ip地址向对应的目标服务器200发送ping数据包,每一个目标服务器200在接收到该ping数据包后会向测试服务器100返回与该ping数据包同样大小的返回报文,此时,该测试服务器100与ip列表内的每一个目标服务器200均形成一个测试网络,用于测试每一个目标服务器200的网络层是否联通,是否存在丢包情况。

所述丢包率获取模块750用于依据所述返回报文计算每一所述测试网络的丢包率。

在本实施例中,丢包率是指在测试中丢失的数据包数占发送的数据包数的比值。当数据包收发模块740接收到每一目标服务器200返回的返回报文后,该丢包率获取模块750依据该返回报文计算每一个测试网络的丢包率。

在本实施例中,所述丢包率获取模块750具体用于解析所述返回报文,以得到发送数据包数及接收数据包数,并依据所述发送数据包数及所述接收数据包数计算得到所述丢包率。例如,根据该发送数据包数及接收数据包数可得到丢失的数据包数,然后计算丢失的数据包数与发送的数据包数的比值即可得到丢包率。

所述信息推送模块760用于当所述丢包率大于设定的阈值时向监控终端500推送提示信息以指示大于所述设定的阈值的丢包率对应的所述目标服务器200及与所述目标服务器200对应的应用程序。

在本实施例中,当丢包率大于设定的阈值(例如,10%)时,所述信息推送模块760依据该大于设定的阈值的丢包率生成提示信息,并向监控终端500推送提示信息。其中,该提示信息中包含了该大于设定的阈值的丢包率对应的目标服务器200的地址信息、与该目标服务器200对应的应用程序以及时间信息等,无需工作人员再去查找和定位,当监控终端500接收到该提示信息后,工作人员能根据该提示信息及时对丢包问题进行精准处理,使用户体验更优质的应用服务。在本实施例中,所述提示信息具体可通过钉钉、邮件、短信等方式上报至监控终端500以提示工作人员。

第二实施例

请参照图4,为本发明二实施例所提供的应用于测试服务器100的网络丢包率监控方法的流程示意图。需要说明的是,本发明实施例所述的网络丢包率监控方法并不以图4以及以下所述的具体顺序为限制,其基本原理及产生的技术效果与第一实施例相同,为简要描述,本实施例中未提及部分,可参考第一实施例中的相应内容。应当理解,在其它实施例中,本发明所述的网络丢包率监控方法其中部分步骤的顺序可以根据实际需要相互交换,或者其中的部分步骤也可以省略或删除。下面将对图4所示的具体流程进行详细阐述。

步骤s101,接收分布式定时任务服务器300发送的任务调度,所述任务调度用于控制所述测试服务器100获取所述ip列表。

可以理解,该步骤s101可以由上述的任务调度接收模块710执行。

步骤s102,获取与应用程序通信的至少一个目标服务器200的ip地址构成的ip列表。

具体地,所述ip列表从所述运维服务器400获取。

可以理解,该步骤s102可以由上述的ip列表获取模块720执行。

步骤s103,将所述应用程序及与所述应用程序通信的至少一个所述目标服务器200关联。

可以理解,该步骤s103可以由上述的关联模块730执行。

步骤s104,向所述ip列表内的所有所述目标服务器200发送ping数据包,并接收所有所述目标服务器200依据所述ping数据包返回的返回报文,其中,所述测试服务器100与所述ip列表内的每一所述目标服务器200均形成测试网络。

可以理解,该步骤s104可以由上述的数据包收发模块740执行。

步骤s105,依据所述返回报文计算每一所述测试网络的丢包率。

在本实施例中,所述步骤s105具体可包括以下步骤:解析所述返回报文,以得到发送数据包数及接收数据包数;依据所述发送数据包数及所述接收数据包数计算得到所述丢包率。

可以理解,该步骤s105可以由上述的丢包率获取模块750执行。

步骤s106,当所述丢包率大于设定的阈值时向监控终端500推送提示信息以指示大于所述设定的阈值的丢包率对应的所述目标服务器200及与所述目标服务器200对应的所述应用程序。

可以理解,该步骤s106可以由上述的信息推送模块760执行。

综上所述,本发明实施例提供的网络丢包率监控方法、装置及测试服务器,在接收到分布式定时任务服务器发送的任务调度时,从运维服务器获取与应用程序通信的至少一个目标服务器的ip地址构成的ip列表,并对所述应用程序及与所述应用程序通信的至少一个所述目标服务器进行关联;向所述ip列表内的所有目标服务器发送ping数据包,并接收所有目标服务器依据所述ping数据包返回的返回报文,其中,所述测试服务器与所述ip列表内的每一所述目标服务器均形成测试网络;依据所述返回报文计算每一所述测试网络的丢包率;当所述丢包率大于设定的阈值时向监控终端推送提示信息以指示大于所述设定的阈值的丢包率对应的所述目标服务器及与所述目标服务器对应的所述应用程序。该网络丢包率监控方法及装置通过实时监控与应用程序通信的目标服务器的网络可用性,能精准地定位至大于设定的阈值的丢包率对应的目标服务器,便于工作人员及时对网络丢包问题进行处理,适用于多种需要监控网络丢包的场景。

需要说明的是,在本文中,诸如“第一”和“第二”等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。

以上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步定义和解释。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1