网络联通性诊断方法、装置、终端和存储介质转让专利

申请号 : CN202010200181.8

文献号 : CN111314181B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 赵仁辉

申请人 : 北京无限光场科技有限公司

摘要 :

本公开提供的网络联通性诊断方法、装置、终端和存储介质。其中,网络连通性诊断方法用于终端,包括:确定对目标服务器的网络请求是否失败,在网络请求失败后进行应用层请求检测;若应用层请求检测结果异常,进行与目标服务器间的网路检测;若网路检测结果异常,进行网络设备检测;若所述网络设备检测的结果正常,进行目标服务器状态检测;综合所有检测结果确定网络请求失败原因并发出提示信息。本公开的实施例优化了执行各个检测步骤的逻辑顺序,按照预设逻辑顺序依次执行相应的检测,根据检测的结果逐步深入综合判断,帮助用户快速准确确定网络请求失败的原因。

权利要求 :

1.一种网络联通性诊断方法,用于终端,其特征在于,包括:确定对目标服务器的网络请求是否失败;

在所述网络请求失败后进行应用层请求检测;

若所述应用层请求检测结果异常,进行与目标服务器间的网路检测;

若所述网路检测结果异常,进行网络设备检测;

若所述网络设备检测结果正常,进行目标服务器状态检测,包括:尝试连接预设公共网址;若成功连接所述预设公共网址,则确定所述目标服务器状态异常,在确定所述目标服务器状态异常之后,获取域名服务器地址;根据获取到的域名服务器地址判断是否发生域名劫持,若未发生域名劫持,则获取所述目标服务器对应的各个统一资源定位符;尝试连接所述目标服务器的各个统一资源定位符;

综合所有检测结果确定网络请求失败原因并发出提示信息。

2.根据权利要求1所述的网络联通性诊断方法,其特征在于,进行应用层请求检测,包括:向所述目标服务器发送http请求;

若接收到所述目标服务器对所述http请求的响应,则所述应用层请求检测的结果正常;

若未接收到所述目标服务器对所述http请求的响应,则所述应用层请求检测的结果异常。

3.根据权利要求1所述的网络联通性诊断方法,其特征在于,进行与目标服务器间的网路检测,包括:向目标服务器发送回显请求;

若在预设时长内接收到所述目标服务器对所述回显请求的应答,则所述网路检测的结果正常;

若在预设时长内未接收到所述目标服务器对所述回显请求的应答,则所述网路检测的结果异常。

4.根据权利要求1所述的网络联通性诊断方法,其特征在于,进行网络设备检测,包括:进行路由追踪,对从所述终端到所述目标服务器所经过的各个网络设备进行标记;

确定各个网络设备是否异常;

若各个所述网络设备的状态均正常,则所述网络设备检测的结果正常;

若任一所述网络设备的状态异常,则所述网络设备检测的结果异常。

5.根据权利要求1所述的网络联通性诊断方法,其特征在于,确定对目标服务器的网络请求是否失败,包括:若连续n次尝试连接所述目标服务器失败,则确定存在网络请求失败,其中,n为不小于

1的正整数;

或者,

若接收到预设指令,则确定存在网络请求失败。

6.一种网络联通性诊断装置,用于终端,包括:确定单元,用于确定对目标服务器的网络请求是否失败;

检测单元,用于在所述网络请求失败后进行应用层请求检测;

所述检测单元,还用于若所述应用层请求检测结果异常,进行与目标服务器间的网路检测;

所述检测单元,还用于若所述网路检测结果异常,进行网络设备检测;

所述检测单元,还用于若所述网络设备检测的结果正常,进行目标服务器状态检测,包括:尝试连接预设公共网址;若成功连接所述预设公共网址,则确定所述目标服务器状态异常,在确定所述目标服务器状态异常之后,获取域名服务器地址;根据获取到的域名服务器地址判断是否发生域名劫持,若未发生域名劫持,则获取所述目标服务器对应的各个统一资源定位符;尝试连接所述目标服务器的各个统一资源定位符;

提示单元,用于综合所有检测结果确定网络请求失败原因并发出提示信息。

7.一种终端,包括:

至少一个存储器和至少一个处理器;

其中,所述至少一个存储器用于存储程序代码,所述至少一个处理器用于调用所述至少一个存储器所存储的程序代码执行权利要求1至5中任一项所述的方法。

8.一种存储介质,所述存储介质用于存储程序代码,所述程序代码用于执行权利要求1至5中任一项所述的方法。

说明书 :

网络联通性诊断方法、装置、终端和存储介质

技术领域

[0001] 本公开涉及网络技术领域,尤其涉及一种网络联通性诊断方法、装置、终端和存储介质。

背景技术

[0002] 手机等智能终端,在使用应用软件的过程中,需要与远程的服务器交换数据,因此需要与远程服务器进行连接。在手机的使用过程中,有时即使手机上显示有网络连接,却无法向服务器发出请求,用户无法知道与服务器连接失败的真正原因。

发明内容

[0003] 为解决现有问题,本公开提供一种网络连通性诊断方法、装置、终端和存储介质。
[0004] 本公开采用以下的技术方案。
[0005] 在一些实施例中,本公开提供一种网络联通性诊断方法,用于终端,包括:
[0006] 确定对目标服务器的网络请求是否失败;
[0007] 在网络请求失败后进行应用层请求检测;
[0008] 若所述应用层请求检测结果异常,进行与目标服务器间的网路检测;
[0009] 若所述网路检测结果异常,进行网络设备检测;
[0010] 若所述网络中装设备检测结果正常,进行目标服务器状态检测;
[0011] 综合所有检测结果确定网络请求失败原因并发出提示信息
[0012] 在一些实施例中,本公开提供一种网络联通性诊断装置,用于终端,包括:
[0013] 确定单元,用于确定对目标服务器的网络请求是否失败;
[0014] 检测单元,用于在网络请求失败后进行应用层请求检测;
[0015] 所述检测单元,还用于若所述应用层请求检测结果异常,进行与目标服务器间的网路检测;
[0016] 所述检测单元,还用于若所述网路检测结果异常,进行网络设备检测;
[0017] 所述检测单元,还用于若所述网络设备检测的结果正常,进行目标服务器状态检测;
[0018] 提示单元,用于综合所有检测结果确定网络请求失败原因并发出提示信息。
[0019] 在一些实施例中,本公开提供一种终端,包括:至少一个存储器和至少一个处理器;
[0020] 其中,存储器用于存储程序代码,处理器用于调用所述存储器所存储的程序代码执行上述的方法。
[0021] 在一些实施例中,本公开提供一种存储介质,所述存储介质用于存储程序代码,所述程序代码用于执行上述的方法。
[0022] 本公开实施例提供的网络联通性诊断方法能够在网络请求失败后,进行应用层请求检测;若应用层请求检测的结果异常,进行与目标服务器间的网路检测;若网路检测的结果异常,进行网络设备检测;若网络设备检测的结果正常,进行目标服务器状态检测;综合所有检测结果确定网络请求失败原因并发出提示信息,本公开优化了执行各个检测步骤的逻辑顺序,按照预设逻辑顺序依次执行相应的检测,根据检测的结果逐步深入综合判断,帮助用户快速准确确定网络请求失败的原因。

附图说明

[0023] 结合附图并参考以下具体实施方式,本公开各实施例的上述和其他特征、优点及方面将变得更加明显。贯穿附图中,相同或相似的附图标记表示相同或相似的元素。应当理解附图是示意性的,元件和元素不一定按照比例绘制。
[0024] 图1是本公开实施例的一种网络联通性诊断方法流程图。
[0025] 图2是本公开实施例的一种网络联通性诊断装置的组成图。
[0026] 图3是本公开实施例的电子设备的结构示意图。

具体实施方式

[0027] 下面将参照附图更详细地描述本公开的实施例。虽然附图中显示了本公开的某些实施例,然而应当理解的是,本公开可以通过各种形式来实现,而且不应该被解释为限于这里阐述的实施例,相反提供这些实施例是为了更加透彻和完整地理解本公开。应当理解的是,本公开的附图及实施例仅用于示例性作用,并非用于限制本公开的保护范围。
[0028] 应当理解,本公开的方法实施方式中记载的各个步骤可以按和/或并行执行。此外,方法实施方式可以包括附加的步骤和/或省略执行示出的步骤。本公开的范围在此方面不受限制。
[0029] 本文使用的术语“包括”及其变形是开放性包括,即“包括但不限于”。术语“基于”是“至少部分地基于”。术语“一个实施例”表示“至少一个实施例”;术语“另一实施例”表示“至少一个另外的实施例”;术语“一些实施例”表示“至少一些实施例”。其他术语的相关定义将在下文描述中给出。
[0030] 需要注意,本公开中提及的“第一”、“第二”等概念仅用于对不同的装置、模块或单元进行区分,并非用于限定这些装置、模块或单元所执行的功能的顺序或者相互依存关系。
[0031] 需要注意,本公开中提及的“一个”的修饰是示意性而非限制性的,本领域技术人员应当理解,除非在上下文另有明确指出,否则应该理解为“一个或多个”。
[0032] 本公开实施方式中的多个装置之间所交互的消息或者信息的名称仅用于说明性的目的,而并不是用于对这些消息或信息的范围进行限制。
[0033] 以下将结合附图,对本申请实施例提供的方案进行详细描述。
[0034] 本公开的实施例中提出了一种网络联通性诊断方法,用于终端,本公开实施例中的终端可以是手机、平板或电脑等可联网设备。如图1所示,图1是本公开实施例的一种网络联通性诊断方法流程图,包括如下步骤:
[0035] S11:确定对目标服务器的网络请求是否失败;
[0036] 在本公开的实施例中,网络请求失败可以是指未能成功与目标服务器建立网络连接。在网络请求失败的情况下,无法向目标服务器发送数据或无法接收来自目标服务器的数据。
[0037] S12:在网络请求失败后进行应用层请求检测;
[0038] 在实施例中,应用层是网络七层协议的最顶层,因此,如果目标服务器能够响应应用层的请求,则说明网络状态正常且目标服务器状态正常,之前出现的网络请求失败很可能只是短时间的网络波动造成的,无需进行任何处理,即如果应用层请求检测的结果正常,则无需进行其他检测,可直接执行S16。
[0039] S13:若应用层请求检测结果异常,进行与目标服务器间的网路检测;
[0040] 在本实施例中,如果应用层请求失败,则表明网络链路(网路)很有可能存在故障,此时执行网路检测,如果网路检测的结果正常,则表明与目标服务器间存在可以连通的网路,能够与目标服务器通信,此时无需执行其他检测,可以直接执行S16。
[0041] S14:若网路检测的结果异常,进行网路设备检测;
[0042] 在本实施例中,当网路检测的结果异常时,表明终端与目标服务器之间的网络链路存在问题,通常终端与目标服务器并不是直接连接的,而是通过多个网络设备进行转发后连接的,因此,当网路检测的结果异常时,表明可能是这些网络设备存在问题也可能是目标服务器存在问题,因此执行网路设备检测以确定各个网络设备是否存在问题。如果网络设备存在问题,则可直接执行S16.
[0043] S15:若网络设备检测的结果正常,进行目标服务器状态检测;
[0044] 在本实施例中,通过执行S12‑S15已经排除了终端网络故障以及网络设备故障的可能,因此网络请求失败的最可能原因就是目标服务器状态异常,因而需要进行目标服务器状态检测。
[0045] S16:综合所有检测结果确定网络请求失败原因并发出提示信息。
[0046] 在本公开的实施例中,发出的提示信息用于指明造成网络请求失败的原因,例如提示信息可以指明是网络状态异常造成网络请求失败、是网路设备异常造成网络请求失败,还是目标服务器状态异常造成网络请求失败。本公开提出的实施例中,在网络请求失败后,按照预设的逻辑步骤,先确定网络状态是否异常、再确定网络设备是否异常,最后确定目标服务器是否异常,是否执行后一步检测依赖于前一步检测的结果,而不是盲目的执行各种检测,按照预设逻辑顺序依次执行相应的检测,根据检测的结果逐步深入综合判断,帮助用户快速准确确定网络请求失败的原因,提高了用户体验。
[0047] 在本公开的一些实施例中,进行应用层请求检测,包括:向所述目标服务器发送http请求;若接收到所述目标服务器对所述http请求的响应,则所述应用层请求检测的结果正常;若未接收到所述目标服务器对所述http请求的响应,则所述应用层请求检测的结果异常。
[0048] 在本实施例中,http(Hyper Text Transfer Protocol,超文本传输协议)请求可以是get请求也可以是post请求。http请求属于应用层的请求,为了避免因为网络波动造成的影响,可以多次向目标服务器发送http请求,根据多次的响应结果确定http检测的结果。如果http请求检测的结果正常,则表明网络状态正常且目标服务器状态正常,网络请求失败的原因可能是偶然的网络波动。
[0049] 在本公开的一些实施例中,进行与目标服务器间的网路检测,包括:向目标服务器发送回显请求;若在预设时长内接收到所述目标服务器对所述回显请求的应答,则所述网路检测的结果正常;若在预设时长内未接收到所述目标服务器对所述回显请求的应答,则所述网路检测检测的结果异常。
[0050] 在本实施例中,可以使用Ping命令向目标服务器发送回显请求,如果目标服务器接收到回显请求会自动应答传回对回显请求的应答。Ping命令本身处于应用层,相当于一个应用程序,但其直接使用网络层的ICMP(Internet Control Message Protocol控制报文协议),当能够接收到对回显请求的应答时,表明网络状态正常。
[0051] 在本公开的一些实施例中,进行网络设备检测,包括:进行路由追踪,对从所述终端到所述目标服务器所经过的各个网络设备进行标记;确定各个网络设备是否异常;若各个所述网络设备的状态均正常,则所述网络设备检测的结果正常;若任一所述网络设备的状态异常,则所述网络设备检测的结果异常。
[0052] 在本实施例中,当对目标服务器发送了回显请求但并未收到应答,说明从终端到目标服务器的网络链路上至少部分被中断,可能有发生故障的网络设备,因此需要进行路由追踪。从终端到目标服务器之间并不是直接连接,终端到目标服务器的网络链接需要经过多个网络设备,即从终端发出的数据需要依次被多个网络设备转发才能达到目标服务器,因此,在终端无法与目标服务器建立网络连接时,可能是由于某一个或多个网络设备出现故障,为此需要进行路由追踪,对各个网络设备进行标记包括:向各个网络设备发送数据检测对各个网络设备的ip地址和响应时间,从而确定是否有哪一个网络设备出现故障。在终端为装有widows系统的终端时,可以采用控制台中采用tracert命令进行路由追踪,如果终端为装有linux系统的终端时,可以采用traceroute命令进行路由追踪。可选的,路由追送的返回结果包括各个网络设备的ip地址和响应时间。举例说明,假设终端依次通过路由器a和路由器b连接至目标服务器,采用路由追踪后发现路由器b访问超时,则说明路由器b异常导致无法正常访问目标服务器。
[0053] 在本公开的一些实施例中,进行目标服务器状态检测,包括:尝试连接预设公共网址;若成功连接所述预设公共网址,则确定所述目标服务器状态异常。
[0054] 在本公开的一些实施例中,预设公共网址是指一些稳定性比较高的网址,例如政府的官网等,这些网址对应的服务器基本不会故障,因此只要网络状态正常,则能够访问公共网址,因此,当成功连接到预设公共网址后,说明出现网络请求失败的原因在于服务器状态异常,而非网络状态异常。
[0055] 在本公开的一些实施例中,进行目标服务器状态检测,还包括:在确定所述目标服务器状态异常之后,获取域名服务器地址;根据获取到的域名服务器地址判断是否发生域名劫持。
[0056] 用户在访问网络时,往往不会直接采用ip地址进行访问,而是采用访问域名的方式进行访问,域名与ip地址的对应关系存储在域名服务器中,在发生域名劫持时,终端会连接到非法的域名服务器,从而无法正确获取到域名对应的ip地址,而是获取到了假的ip地址,导致无法访问目标服务器,因此,在本实施例中,在确定服务器状态异常后,需要检查域名服务器的ip地址,根据获取到的域名服务器的ip地址判断是否发生域名劫持。可选的,在确定发生域名劫持后将域名服务器地址修改为预设域名服务器地址。
[0057] 在本公开的一些实施例中,进行目标服务器状态检测,还包括:若未发生域名劫持,则获取所述目标服务器对应的各个统一资源定位符;尝试连接所述目标服务器的各个统一资源定位符。
[0058] 在本公开的一些实施例中,目标服务器可能部署在多个机房中,因此,一个目标服务器是可以对应多个统一资源定位符的,当无法正常访问目标服务器时,可能只是无法正常访问目标服务器的部分统一资源定位符,此时通过对目标服务器的各个统一资源定位符进行访问,从而可以知道部署目标服务器的机房都不能访问还是部分机房不能访问。
[0059] 在本公开的一些实施例中,确定对目标服务器的网络请求是否失败,包括:若连续n次尝试连接所述目标服务器失败,则确定存在网络请求失败,其中,n为不小于1的正整数。在本实施例中,终端连续n次无法与目标服务器建立连接认定为网络请求失败。
[0060] 在本公开的一些实施例中,确定对目标服务器的网络请求是否失败,包括:若接收到预设指令,则确定存在网络请求失败。在本实施例中,终端与目标服务器可以是能够正常连接,本实施例可以应用于其他终端无法访问目标服务器的情况,当其他终端无法访问目标服务器时,为了准确确定其他终端无法访问目标服务器的原因,可以由目标服务器向终端发送预设指令,让终端检测其能否正常连接目标服务器,从而帮助确定其他终端无法连接目标服务器的原因,即本公开的实施例不仅能够在终端无法连接目标服务器的时候检测该终端无法连接目标服务器的原因,还能在其他终端无法连接目标服务器的时候协助排查其他服务器无法连接目标服务器的原因。
[0061] 本公开的一些实施例中还提出一种网络联通性诊断装置的组成图,本实施例中的网络联通性诊断装置用于终端,如图2所示,所述网络联通性诊断装置包括:
[0062] 确定单元,用于确定对目标服务器的网络请求是否失败;
[0063] 检测单元,用于在网络请求失败后进行应用层请求检测;
[0064] 检测单元,还用于若所述应用层请求检测结果异常,进行与目标服务器间的网路检测;
[0065] 检测单元,还用于若所述网路检测结果异常,进行网络设备检测;
[0066] 检测单元,还用于若所述网络设备检测的结果正常,进行目标服务器状态检测;
[0067] 提示单元,用于综合所有检测结果确定网络请求失败原因并发出提示信息。
[0068] 对于装置的实施例而言,由于其基本对应于方法实施例,所以相关之处参见方法实施例的部分说明即可。以上所描述的装置实施例仅仅是示意性的,其中所述作为分离模块说明的模块可以是或者也可以不是分开的。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性劳动的情况下,即可以理解并实施。
[0069] 以上,基于实施例和应用例说明了本公开的网络联通性诊断方法及装置。此外,本公开还提供一种终端及存储介质,以下说明这些终端和存储介质。
[0070] 下面参考图3,其示出了适于用来实现本公开实施例的电子设备(例如终端设备或服务器)800的结构示意图。本公开实施例中的终端设备可以包括但不限于诸如移动电话、笔记本电脑、数字广播接收器、PDA(个人数字助理)、PAD(平板电脑)、PMP(便携式多媒体播放器)、车载终端(例如车载导航终端)等等的移动终端以及诸如数字TV、台式计算机等等的固定终端。图3示出的电子设备仅仅是一个示例,不应对本公开实施例的功能和使用范围带来任何限制。
[0071] 如图3所示,电子设备800可以包括处理装置(例如中央处理器、图形处理器等)801,其可以根据存储在只读存储器(ROM)802中的程序或者从存储装置808加载到随机访问存储器(RAM)803中的程序而执行各种适当的动作和处理。在RAM803中,还存储有电子设备
800操作所需的各种程序和数据。处理装置801、ROM 802以及RAM 803通过总线804彼此相连。输入/输出(I/O)接口805也连接至总线804。
[0072] 通常,以下装置可以连接至I/O接口805:包括例如触摸屏、触摸板、键盘、鼠标、摄像头、麦克风、加速度计、陀螺仪等的输入装置806;包括例如液晶显示器(LCD)、扬声器、振动器等的输出装置807;包括例如磁带、硬盘等的存储装置808;以及通信装置809。通信装置809可以允许电子设备800与其他设备进行无线或有线通信以交换数据。虽然图3示出了具有各种装置的电子设备800,但是应理解的是,并不要求实施或具备所有示出的装置。可以替代地实施或具备更多或更少的装置。
[0073] 特别地,根据本公开的实施例,上文参考流程图描述的过程可以被实现为计算机软件程序。例如,本公开的实施例包括一种计算机程序产品,其包括承载在计算机可读介质上的计算机程序,该计算机程序包含用于执行流程图所示的方法的程序代码。在这样的实施例中,该计算机程序可以通过通信装置809从网络上被下载和安装,或者从存储装置808被安装,或者从ROM 802被安装。在该计算机程序被处理装置801执行时,执行本公开实施例的方法中限定的上述功能。
[0074] 需要说明的是,本公开上述的计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质或者是上述两者的任意组合。计算机可读存储介质例如可以是——但不限于——电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子可以包括但不限于:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机访问存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑磁盘只读存储器(CD‑ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本公开中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。而在本公开中,计算机可读信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。计算机可读信号介质还可以是计算机可读存储介质以外的任何计算机可读介质,该计算机可读信号介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。计算机可读介质上包含的程序代码可以用任何适当的介质传输,包括但不限于:电线、光缆、RF(射频)等等,或者上述的任意合适的组合。
[0075] 在一些实施方式中,客户端、服务器可以利用诸如HTTP(HyperText Transfer Protocol,超文本传输协议)之类的任何当前已知或未来研发的网络协议进行通信,并且可以与任意形式或介质的数字数据通信(例如,通信网络)互连。通信网络的示例包括局域网(“LAN”),广域网(“WAN”),网际网(例如,互联网)以及端对端网络(例如,ad hoc端对端网络),以及任何当前已知或未来研发的网络。
[0076] 上述计算机可读介质可以是上述电子设备中所包含的;也可以是单独存在,而未装配入该电子设备中。
[0077] 上述计算机可读介质承载有一个或者多个程序,当上述一个或者多个程序被该电子设备执行时,使得该电子设备执行上述的本公开的方法。
[0078] 可以以一种或多种程序设计语言或其组合来编写用于执行本公开的操作的计算机程序代码,上述程序设计语言包括面向对象的程序设计语言—诸如Java、Smalltalk、C++,还包括常规的过程式程序设计语言—诸如“C”语言或类似的程序设计语言。程序代码可以完全地在用户计算机上执行、部分地在用户计算机上执行、作为一个独立的软件包执行、部分在用户计算机上部分在远程计算机上执行、或者完全在远程计算机或服务器上执行。在涉及远程计算机的情形中,远程计算机可以通过任意种类的网络——包括局域网(LAN)或广域网(WAN)—连接到用户计算机,或者,可以连接到外部计算机(例如利用因特网服务提供商来通过因特网连接)。
[0079] 附图中的流程图和框图,图示了按照本公开各种实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段、或代码的一部分,该模块、程序段、或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个接连地表示的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或操作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
[0080] 描述于本公开实施例中所涉及到的单元可以通过软件的方式实现,也可以通过硬件的方式来实现。其中,单元的名称在某种情况下并不构成对该单元本身的限定。
[0081] 本文中以上描述的功能可以至少部分地由一个或多个硬件逻辑部件来执行。例如,非限制性地,可以使用的示范类型的硬件逻辑部件包括:现场可编程门阵列(FPGA)、专用集成电路(ASIC)、专用标准产品(ASSP)、片上系统(SOC)、复杂可编程逻辑设备(CPLD)等等。
[0082] 在本公开的上下文中,机器可读介质可以是有形的介质,其可以包含或存储以供指令执行系统、装置或设备使用或与指令执行系统、装置或设备结合地使用的程序。机器可读介质可以是机器可读信号介质或机器可读储存介质。机器可读介质可以包括但不限于电子的、磁性的、光学的、电磁的、红外的、或半导体系统、装置或设备,或者上述内容的任何合适组合。机器可读存储介质的更具体示例会包括基于一个或多个线的电气连接、便携式计算机盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦除可编程只读存储器(EPROM或快闪存储器)、光纤、便捷式紧凑盘只读存储器(CD‑ROM)、光学储存设备、磁储存设备、或上述内容的任何合适组合。
[0083] 根据本公开的一个或多个实施例,提供了一种网络联通性诊断方法,用于终端,其特征在于,包括:
[0084] 确定对目标服务器的网络请求是否失败,在网络请求失败后进行应用层请求检测;
[0085] 若所述应用层请求检测结果异常,进行与目标服务器间的网路检测;
[0086] 若所述网路检测结果异常,进行网络设备检测;
[0087] 若所述网络设备检测的结果正常,进行目标服务器状态检测;
[0088] 根据本公开的一个或多个实施例,提供了一种网络联通性诊断方法,进行应用层请求检测,包括:
[0089] 向所述目标服务器发送http请求;
[0090] 若接收到所述目标服务器对所述http请求的响应,则所述应用层请求检测的结果正常;
[0091] 若未接收到所述目标服务器对所述http请求的响应,则所述应用层请求检测的结果异常。
[0092] 根据本公开的一个或多个实施例,提供了一种网络联通性诊断方法,进行与目标服务器间的网路检测,包括:
[0093] 向目标服务器发送回显请求;
[0094] 若在预设时长内接收到所述目标服务器对所述回显请求的应答,则所述网路检测的结果正常;
[0095] 若在预设时长内未接收到所述目标服务器对所述回显请求的应答,则所述网路检测的结果异常。
[0096] 根据本公开的一个或多个实施例,提供了一种网络联通性诊断方法,进行网络设备检测,包括:
[0097] 进行路由追踪,对从所述终端到所述目标服务器所经过的各个网络设备进行标记;
[0098] 确定各个网络设备是否异常;
[0099] 若各个所述网络设备的状态均正常,则所述网络设备检测的结果正常;
[0100] 若任一所述网络设备的状态异常,则所述网络设备检测的结果异常。
[0101] 根据本公开的一个或多个实施例,提供了一种网络联通性诊断方法,进行目标服务器状态检测,包括:
[0102] 尝试连接预设公共网址;
[0103] 若成功连接所述预设公共网址,则确定所述目标服务器状态异常。
[0104] 根据本公开的一个或多个实施例,提供了一种网络联通性诊断方法,进行目标服务器状态检测,还包括:
[0105] 在确定所述目标服务器状态异常之后,获取域名服务器地址;
[0106] 根据获取到的域名服务器地址判断是否发生域名劫持。
[0107] 根据本公开的一个或多个实施例,提供了一种网络联通性诊断方法,进行目标服务器状态检测,还包括:
[0108] 若未发生域名劫持,则获取所述目标服务器对应的各个统一资源定位符;
[0109] 尝试连接所述目标服务器的各个统一资源定位符。
[0110] 根据本公开的一个或多个实施例,提供了一种网络联通性诊断方法,确定对目标服务器的网络请求是否失败,包括:
[0111] 若连续n次尝试连接所述目标服务器失败,则确定存在网络请求失败,其中,n为不小于1的正整数;
[0112] 或者,
[0113] 若接收到预设指令,则确定存在网络请求失败。
[0114] 根据本公开的一个或多个实施例,提供了一种网络联通性诊断装置,用于终端,包括:
[0115] 确定单元,用于确定对目标服务器的网络请求是否失败;
[0116] 检测单元,用于在网络请求失败后进行应用层请求检测;
[0117] 所述检测单元,还用于若所述应用层请求检测结果异常,进行与目标服务器间的网路检测;
[0118] 所述检测单元,还用于若所述网路检测结果异常,进行网络设备检测;
[0119] 所述检测单元,还用于若所述网络设备检测的结果正常,进行目标服务器状态检测;
[0120] 提示单元,用于综合所有检测结果确定网络请求失败原因并发出提示信息。
[0121] 根据本公开的一个或多个实施例,提供了一种终端,包括:至少一个存储器和至少一个处理器;
[0122] 其中,所述至少一个存储器用于存储程序代码,所述至少一个处理器用于调用所述至少一个存储器所存储的程序代码执行上述中任一项所述的方法。
[0123] 根据本公开的一个或多个实施例,提供了一种存储介质,所述存储介质用于存储程序代码,所述程序代码用于执行上述的方法。
[0124] 以上描述仅为本公开的较佳实施例以及对所运用技术原理的说明。本领域技术人员应当理解,本公开中所涉及的公开范围,并不限于上述技术特征的特定组合而成的技术方案,同时也应涵盖在不脱离上述公开构思的情况下,由上述技术特征或其等同特征进行任意组合而形成的其它技术方案。例如上述特征与本公开中公开的(但不限于)具有类似功能的技术特征进行互相替换而形成的技术方案。
[0125] 此外,虽然采用特定次序描绘了各操作,但是这不应当理解为要求这些操作以所示出的特定次序或以顺序次序执行来执行。在一定环境下,多任务和并行处理可能是有利的。同样地,虽然在上面论述中包含了若干具体实现细节,但是这些不应当被解释为对本公开的范围的限制。在单独的实施例的上下文中描述的某些特征还可以组合地实现在单个实施例中。相反地,在单个实施例的上下文中描述的各种特征也可以单独地或以任何合适的子组合的方式实现在多个实施例中。
[0126] 尽管已经采用特定于结构特征和/或方法逻辑动作的语言描述了本主题,但是应当理解所附权利要求书中所限定的主题未必局限于上面描述的特定特征或动作。相反,上面所描述的特定特征和动作仅仅是实现权利要求书的示例形式。