CN103684897A - 在客户端中检测网络连通性的方法、系统和装置 - Google Patents

在客户端中检测网络连通性的方法、系统和装置 Download PDF

Info

Publication number
CN103684897A
CN103684897A CN201210335880.9A CN201210335880A CN103684897A CN 103684897 A CN103684897 A CN 103684897A CN 201210335880 A CN201210335880 A CN 201210335880A CN 103684897 A CN103684897 A CN 103684897A
Authority
CN
China
Prior art keywords
client
server
change
network
communicated
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.)
Pending
Application number
CN201210335880.9A
Other languages
English (en)
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.)
Beijing Baidu Netcom Science and Technology Co Ltd
Original Assignee
Beijing Baidu Netcom Science and Technology 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 Beijing Baidu Netcom Science and Technology Co Ltd filed Critical Beijing Baidu Netcom Science and Technology Co Ltd
Priority to CN201210335880.9A priority Critical patent/CN103684897A/zh
Publication of CN103684897A publication Critical patent/CN103684897A/zh
Pending legal-status Critical Current

Links

Images

Abstract

本发明提出一种在客户端中检测网络连通性的方法,包括:客户端判断网络状态是否发生变化;如果判断网络状态发生了变化,则客户端发起与服务器的通信;如果客户端与服务器能够正常通信,则判断客户端与服务器连通;如果客户端与服务器不能正常通信,则判断客户端与服务器未连通。本发明在判断网络连通性的同时减少了与服务器的交互,节省了客户端和服务器的计算和资源,提高了检测效率。本发明还公开了一种在客户端中检测网络连通性的系统和一种客户端。

Description

在客户端中检测网络连通性的方法、系统和装置
技术领域
本发明涉及移动互联网技术领域,特别涉及一种在客户端中检测网络连通性的方法、系统和装置。
背景技术
客户端与服务器建立连接之后,经常因为软件、硬件等各种原因出现连接中断的现象,例如网卡的损坏、网络切换、防火墙规则变动等都可能导致客户端与服务器端网络不连通。此时,客户端与服务器端虽已经无法连接,但是客户端还没有做出与服务器网络中断的判断。
现有的在客户端中判断网络联通性主要方法有以下两种:
(1)、客户端定时向请求服务器发送请求,根据有无数据响应判断网络连通性。如果服务器在预设时间正确返回响应,则判断网络连通,否则,判断与服务器网络不连通。
(2)、客户端仅在进行正常数据通信时判断网络连通性,即客户端在与服务器交互时判断网络连通性。
但是,第一种方法中,如果定时请求间隔时间较短,客户端上需要频繁进行请求,占用本地资源多,并且被请求的服务器相关接口压力较大。如果定时请求间隔时间较长,那么客户端对网络连通状态的改变难以及时发现。而第二种方法,在与服务器通信时才判断,当无数据通信时难以发现连通状态。
发明内容
本发明旨在至少解决现有技术中存在的技术问题之一。
为此,本发明的第一个目的在于提出一种在客户端中检测网络连通性的方法,该方法在判断网络连通性的同时减少了与服务器的交互,节省了客户端和服务器的计算和资源,提高了检测效率。
本发明的第二个目的在于提出一种在客户端中检测网络连通性的系统。
本发明的第三个目的在于提出一种客户端。
为达到上述目的,本发明第一方面的实施例公开了一种在客户端中检测网络连通性的方法,包括以下步骤:客户端判断网络状态是否发生变化;如果判断所述网络状态发生了变化,则所述客户端发起与服务器的通信;如果所述客户端与所述服务器能够正常通信,则判断所述客户端与所述服务器连通;如果所述客户端与所述服务器不能正常通信,则判断所述客户端与所述服务器未连通。
在本发明的实施例中,客户端在检测到网络状态变化时,才向服务器发起通信,判断客户端与服务器是否连通,避免了客户端和服务器多次通信和计算,节省了客户端和服务器的资源。
在本发明的一个实施例中,当出现硬件变动和/或软件变动时判断网络状态发生了变化。在引起网络状态发生改变的事件上进行网络连通性检测,可以减少判断次数,达到节省资源和准确判断的目的。
在本发明的一个实施例中,还包括:对所述客户端的正常通信逻辑进行监控;如果所述正常通信逻辑超时,则所述客户端发起与服务器的通信。监控可以检测使得网络状态发生变化的事件,从而判断网络状态,减少与服务器交互次数,达到节省资源和准确判断的目的。
在本发明的一个实施例中,所述硬件变动包括网卡的启用、禁用、损坏、恢复或网络切换等,所述软件变动包括防火墙规则变动、准入软件变动等。
本发明第二方面的实施例公开了一种检测网络连通性的系统,包括客户端和服务器,其中,所述客户端用于在判断所述网络状态发生了变化之后,发起与服务器的通信,并在判断所述客户端与所述服务器能够正常通信时,判断所述客户端与所述服务器连通,在判断所述客户端与所述服务器不能正常通信,则判断所述客户端与所述服务器未连通;所述服务器,用于与所述客户端相互连通。
在本发明的实施例中,客户端在检测到网络状态变化时,才向服务器发起通信,判断客户端与服务器是否连通,避免了客户端和服务器多次通信和计算,节省了客户端和服务器的资源。
在本发明的一个实施例中,当出现硬件变动和/或软件变动时判断网络状态发生了变化。在引起网络状态发生改变的事件上进行网络连通性检测,可以减少判断次数,达到节省资源和准确判断的目的。
在本发明的一个实施例中,所述客户端还用于对所述客户端的正常通信逻辑进行监控,并在判断所述正常通信逻辑超时,发起与服务器的通信。监控可以检测使得网络状态发生变化的事件,从而判断网络状态,减少与服务器交互次数,达到节省资源和准确判断的目的。
在本发明的一个实施例中,所述硬件变动包括网卡的启用、禁用、损坏、恢复或网络切换等,所述软件变动包括防火墙规则变动、准入软件变动等。
本发明第三方面的实施例公开了一种客户端,包括:检测模块用于检测网络状态是否发生变化;通信发起模块用于在所述检测模块检测所述网络状态发生了变化之后,发起与服务器的通信;判断模块用于在所述客户端与所述服务器能够正常通信时,判断所述客户端与所述服务器连通,以及在所述客户端与所述服务器不能正常通信时,判断所述客户端与所述服务器未连通。
在本发明的实施例中,客户端在检测到网络状态变化时,通信发起模块才向服务器发起通信,判断客户端与服务器是否连通,避免了客户端和服务器多次通信和计算,节省了客户端和服务器的资源。
在本发明的一个实施例中,当出现硬件变动和/或软件变动时判断网络状态发生了变化。在引起网络状态发生改变的事件上进行网络连通性检测,可以减少判断次数,达到节省资源和准确判断的目的。
在本发明的一个实施例中,还包括:监控模块,用于对所述客户端的正常通信逻辑进行监控,所述通信发起模块在所述监控模块判断所述正常通信逻辑超时,发起与服务器的通信。监控模块用于检测使得网络状态发生变化的事件,从而判断网络状态,减少与服务器交互次数,达到节省资源和准确判断的目的。
在本发明的一个实施例中,所述硬件变动包括网卡的启用、禁用、损坏、恢复或网络切换等,所述软件变动包括防火墙规则变动、准入软件变动等。
本发明的附加方面和优点将在下面的描述中部分给出,部分将从下面的描述中变得明显,或通过本发明的实践了解到。
附图说明
本发明的上述和/或附加的方面和优点从结合下面附图对实施例的描述中将变得明显和容易理解,其中:
图1是根据本发明实施例的在客户端中检测网络连通性的方法的流程图;
图2是根据本发明实施例的在客户端中检测网络连通性的系统的结构示意图;和
图3是根据本发明实施例的客户端的结构示意图。
具体实施方式
下面详细描述本发明的实施例,所述实施例的示例在附图中示出,其中自始至终相同或类似的标号表示相同或类似的元件或具有相同或类似功能的元件。下面通过参考附图描述的实施例是示例性的,仅用于解释本发明,而不能理解为对本发明的限制。
下面参考图1描述根据本发明实施例的在客户端中检测网络连通性的方法,包括以下步骤:
步骤S110:客户端判断网络状态是否发生变化。
网络存在连通与未连通两种状态,状态持续期间无需进行重复判断。因此,把握判断网络连通性时机,在引起网络状态发生改变的事件上进行网络连通性检测,可以减少判断次数,达到节省资源和准确判断的目的。客户端上引起网络状态发生变化的因素主要分为两类:硬件信息变动和/或软件信息变动,简称为硬件变动和/或软件变动。硬件变动包括网卡的启用、禁用、损坏、恢复或网络切换等,软件变动包括防火墙规则变动、准入软件变动等。需要说明的是,以上仅是本发明的举例说明,在此不再一一举例。
在本发明的一个实施例中,当出现硬件变动和/或软件变动时判断网络状态发生了变化。
步骤S120:如果判断网络状态发生了变化,则客户端发起与服务器的通信。
在本发明的一个实施例中,客户端发起与服务器的通信的一种情况包括:
步骤S121:对客户端的正常通信逻辑进行监控:。
步骤S122:如果正常通信逻辑超时,则客户端发起与服务器的通信。
例如,客户端监听引起网络状态发生变化的硬件变动和/或软件变动事件,当事件发生后与服务器相关接口进行通信。
步骤S130:如果客户端与服务器能够正常通信,则判断客户端与服务器连通。
步骤S140:如果客户端与服务器不能正常通信,则判断客户端与服务器未连通。
判断客户端与服务器是否正常通信的方式有多种。例如,通信可以以应答响应方式进行:客户端向服务器发出请求,如果服务器返回正常结果,则能够正常通信,如果服务器在预设时间内未返回结果,则不能正常通信,判断客户端与服务器未联通。
例如,假设采用“长连接式”网络连通性判断方法,预设每2秒发送一次数据包,一天的交互次数为24*3600/2=43200。采用本方法仅在网络状态发生变化时进行交互,通常情况下,交互次数不会超过10次。
根据本发明实施例的在客户端中检测网络连通性的方法准确及时地检测客户端网络状态变化,在及时判断网络状态的情况下,减少了与服务器通信次数以及计算次数,节省了客户端与服务器端的资源,效率高,效果好。
下面参考图2描述根据本发明实施例的检测网络连通性的系统100,包括客户端110和服务器120。其中,客户端110用于在判断网络状态发生了变化之后,发起与服务器120的通信,并在判断客户端110与服务器120能够正常通信时,判断客户端110与服务器120连通,在判断客户端110与服务器120不能正常通信,则判断客户端110与服务器120未连通;服务器120用于与客户端110相互连通。
在本发明的实施例中,当出现硬件变动和/或软件变动时判断网络状态发生了变化。其中,硬件变动包括网卡的启用、禁用、损坏、恢复或网络切换,软件变动包括防火墙规则变动、准入软件变动。
客户端110还用于对客户端110的正常通信逻辑进行监控,并在判断正常通信逻辑超时,发起与服务器120的通信。
网络存在连通与未连通两种状态,状态持续期间无需进行重复判断。因此,把握判断网络连通性时机,在引起网络状态发生改变的事件上进行网络连通性检测,可以减少判断次数,达到节省资源和准确判断的目的。客户端110上引起网络状态发生变化的因素主要分为两类:硬件信息变动和/或软件信息变动,简称为硬件变动和/或软件变动。客户端110监听引起网络状态发生变化的硬件变动和/或软件变动事件,当事件发生后与服务器120相关接口进行通信。判断客户端110与服务器120是否正常通信的方式有多种。例如,通信可以以应答响应方式进行:客户端110向服务器120发出请求,如果服务器120返回正常结果,则能够正常通信,如果服务器120在预设时间内未返回结果,则不能正常通信,判断客户端110与服务器120未联通。
假设采用“长连接式”网络连通性判断方法,预设每2秒发送一次数据包,一天的交互次数为24*3600/2=43200。采用本系统100仅在网络状态发生变化时进行交互,通常情况下,交互次数不会超过10次。
根据本发明实施例的在客户端中检测网络连通性的系统准确及时地检测客户端网络状态变化,在及时判断网络状态的情况下,减少了与服务器通信次数以及计算次数,节省了客户端与服务器端的资源,效率高,效果好。
下面参考图3描述根据本发明实施例的客户端200,包括检测模块210、通信发起模块220和判断模块230。检测模块210用于检测网络状态是否发生变化;通信发起模块220用于在检测模块210检测网络状态发生了变化之后,发起与服务器的通信;判断模块230用于在客户端200与服务器能够正常通信时,判断客户端200与服务器连通,以及在客户端200与服务器不能正常通信时,判断客户端200与服务器未连通。
当出现硬件变动和/或软件变动时判断网络状态发生了变化。其中,硬件变动包括网卡的启用、禁用、损坏、恢复或网络切换,软件变动包括防火墙规则变动、准入软件变动。
在本发明的一个实施例中,还包括监控模块240,用于对客户端200的正常通信逻辑进行监控,通信发起模块220在监控模块判断正常通信逻辑超时,发起与服务器的通信。
网络存在连通与未连通两种状态,状态持续期间无需进行重复判断。因此,把握判断网络连通性时机,在引起网络状态发生改变的事件上进行网络连通性检测,可以减少判断次数,达到节省资源和准确判断的目的。客户端200上引起网络状态发生变化的因素主要分为两类:硬件信息变动和/或软件信息变动,简称为硬件变动和/或软件变动。检测模块210检测网络状态是否发生变化。监控模块240监听引起网络状态发生变化的硬件变动和/或软件变动事件,当事件发生后,通信发起模块220与服务器相关接口进行通信。判断模块230判断客户端200与服务器是否正常通信的方式有多种。例如,通信可以以应答响应方式进行:客户端200向服务器发出请求,如果服务器返回正常结果,判断模块230判断能够正常通信,如果服务器在预设时间内未返回结果,判断模块230判断不能正常通信,客户端200与服务器未联通。
假设采用“长连接式”网络连通性判断方法,预设每2秒发送一次数据包,一天的交互次数为24*3600/2=43200。采用本客户端200仅在网络状态发生变化时进行交互,通常情况下,交互次数不会超过10次。
根据本发明实施例的客户端准确及时地检测客户端网络状态变化,在及时判断网络状态的情况下,减少了与服务器通信次数以及计算次数,节省了客户端与服务器端的资源,效率高,效果好。
在本说明书的描述中,参考术语“一个实施例”、“一些实施例”、“示例”、“具体示例”、或“一些示例”等的描述意指结合该实施例或示例描述的具体特征、结构、材料或者特点包含于本发明的至少一个实施例或示例中。在本说明书中,对上述术语的示意性表述不一定指的是相同的实施例或示例。而且,描述的具体特征、结构、材料或者特点可以在任何的一个或多个实施例或示例中以合适的方式结合。
尽管已经示出和描述了本发明的实施例,对于本领域的普通技术人员而言,可以理解在不脱离本发明的原理和精神的情况下可以对这些实施例进行多种变化、修改、替换和变型,本发明的范围由所附权利要求及其等同限定。

Claims (12)

1.一种在客户端中检测网络连通性的方法,其特征在于,包括以下步骤:
客户端判断网络状态是否发生变化;
如果判断所述网络状态发生了变化,则所述客户端发起与服务器的通信;
如果所述客户端与所述服务器能够正常通信,则判断所述客户端与所述服务器连通;以及
如果所述客户端与所述服务器不能正常通信,则判断所述客户端与所述服务器未连通。
2.如权利要求1所述的在客户端中检测网络连通性的方法,其特征在于,当出现硬件变动和/或软件变动时判断网络状态发生了变化。
3.如权利要求1或2所述的在客户端中检测网络连通性的方法,其特征在于,还包括:
对所述客户端的正常通信逻辑进行监控;
如果所述正常通信逻辑超时,则所述客户端发起与服务器的通信。
4.如权利要求1-3任一项所述的在客户端中检测网络连通性的方法,其特征在于,所述硬件变动包括网卡的启用、禁用、损坏、恢复或网络切换,所述软件变动包括防火墙规则变动、准入软件变动。
5.一种检测网络连通性的系统,其特征在于,包括客户端和服务器,其中,
所述客户端,用于在判断所述网络状态发生了变化之后,发起与服务器的通信,并在判断所述客户端与所述服务器能够正常通信时,判断所述客户端与所述服务器连通,在判断所述客户端与所述服务器不能正常通信,则判断所述客户端与所述服务器未连通;以及
所述服务器,用于与所述客户端相互连通。
6.如权利要求5所述的检测网络连通性的系统,其特征在于,当出现硬件变动和/或软件变动时判断网络状态发生了变化。
7.如权利要求5所述的检测网络连通性的系统,其特征在于,所述客户端还用于对所述客户端的正常通信逻辑进行监控,并在判断所述正常通信逻辑超时,发起与服务器的通信。
8.如权利要求5所述的检测网络连通性的系统,其特征在于,所述硬件变动包括网卡的启用、禁用、损坏、恢复或网络切换,所述软件变动包括防火墙规则变动、准入软件变动。
9.一种客户端,其特征在于,包括:
检测模块,用于检测网络状态是否发生变化;
通信发起模块,用于在所述检测模块检测所述网络状态发生了变化之后,发起与服务器的通信;以及
判断模块,用于在所述客户端与所述服务器能够正常通信时,判断所述客户端与所述服务器连通,以及在所述客户端与所述服务器不能正常通信时,判断所述客户端与所述服务器未连通。
10.如权利要求9所述的客户端,其特征在于,当出现硬件变动和/或软件变动时判断网络状态发生了变化。
11.如权利要求9所述的客户端,其特征在于,还包括:
监控模块,用于对所述客户端的正常通信逻辑进行监控,所述通信发起模块在所述监控模块判断所述正常通信逻辑超时,发起与服务器的通信。
12.如权利要求9任一项所述的客户端,其特征在于,所述硬件变动包括网卡的启用、禁用、损坏、恢复或网络切换,所述软件变动包括防火墙规则变动、准入软件变动。
CN201210335880.9A 2012-09-11 2012-09-11 在客户端中检测网络连通性的方法、系统和装置 Pending CN103684897A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201210335880.9A CN103684897A (zh) 2012-09-11 2012-09-11 在客户端中检测网络连通性的方法、系统和装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201210335880.9A CN103684897A (zh) 2012-09-11 2012-09-11 在客户端中检测网络连通性的方法、系统和装置

Publications (1)

Publication Number Publication Date
CN103684897A true CN103684897A (zh) 2014-03-26

Family

ID=50321278

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201210335880.9A Pending CN103684897A (zh) 2012-09-11 2012-09-11 在客户端中检测网络连通性的方法、系统和装置

Country Status (1)

Country Link
CN (1) CN103684897A (zh)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106027284A (zh) * 2016-04-29 2016-10-12 乐视控股(北京)有限公司 网络的故障诊断方法及装置
WO2016165287A1 (zh) * 2015-04-16 2016-10-20 小米科技有限责任公司 联网通道状态的检测方法及装置、电子设备
CN107294812A (zh) * 2017-08-03 2017-10-24 广东欧珀移动通信有限公司 网络检测方法、网络检测装置及智能终端
CN108847999A (zh) * 2018-04-24 2018-11-20 普联技术有限公司 设备网络连通性检测方法、装置、终端设备及存储介质
CN113364894A (zh) * 2015-11-18 2021-09-07 微软技术许可有限责任公司 用于网络端点间的媒体会话的方法和装置

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2016165287A1 (zh) * 2015-04-16 2016-10-20 小米科技有限责任公司 联网通道状态的检测方法及装置、电子设备
RU2619466C1 (ru) * 2015-04-16 2017-05-16 Сяоми Инк. Способ и устройство для обнаружения состояния сетевого канала и электронное устройство
US9674284B2 (en) 2015-04-16 2017-06-06 Xiaomi Inc. Method and device for detecting state of networking channel
CN113364894A (zh) * 2015-11-18 2021-09-07 微软技术许可有限责任公司 用于网络端点间的媒体会话的方法和装置
CN113364894B (zh) * 2015-11-18 2023-03-31 微软技术许可有限责任公司 用于网络端点间的媒体会话的方法和装置
CN106027284A (zh) * 2016-04-29 2016-10-12 乐视控股(北京)有限公司 网络的故障诊断方法及装置
CN107294812A (zh) * 2017-08-03 2017-10-24 广东欧珀移动通信有限公司 网络检测方法、网络检测装置及智能终端
CN107294812B (zh) * 2017-08-03 2019-04-12 Oppo广东移动通信有限公司 网络检测方法、网络检测装置及智能终端
CN108847999A (zh) * 2018-04-24 2018-11-20 普联技术有限公司 设备网络连通性检测方法、装置、终端设备及存储介质

Similar Documents

Publication Publication Date Title
CN107360239A (zh) 一种客户端连接状态检测方法及系统
CN103684897A (zh) 在客户端中检测网络连通性的方法、系统和装置
CN106533805B (zh) 一种微服务请求处理方法、微服务控制器及微服务架构
CN101188527B (zh) 一种心跳检测方法和装置
CN102761461B (zh) 一种链路健康检查方法及装置
CN103326893A (zh) 一种极限测速的方法
EP2698948A1 (en) Method and device for determining failure elimination based on oam protocol
EP3197098B1 (en) Heartbeat cycle setting method and terminal
CN110808873B (zh) 一种检测链路故障的方法及装置
CN103414916A (zh) 一种故障诊断系统及方法
CN103139818A (zh) 一种aos中保持长连接的方法、系统、aoe、aog及终端
CN104683188A (zh) 快速检测家庭路由器ip通道连通的方法
CN101355511B (zh) 一种链路聚合流量保护方法及装置
CN110908872A (zh) 一种服务器状态检测方法及系统
CN101989933A (zh) 一种故障检测的方法和系统
JP2007180891A (ja) 通信装置及びそれに用いるパケット送信制御方法並びにそのプログラム
CN101232406A (zh) Oam快速检测方法、装置和系统
CN103220189A (zh) 一种mad检测备份方法和设备
US20110153804A1 (en) Method and system for reporting defects within a network
CN102413191A (zh) 一种基于浏览器的web即时通讯方法
CN103716815A (zh) 一种车载通讯终端上网拨号的方法
CN105553766A (zh) 异常节点动态追踪集群节点状态的监测方法
CN102918802B (zh) 确定故障指示状态的方法、节点和系统
CN103746842A (zh) 一种检测线卡故障重起的方法及系统
CN104639356A (zh) 一种故障恢复方法及设备

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
RJ01 Rejection of invention patent application after publication

Application publication date: 20140326

RJ01 Rejection of invention patent application after publication