设备网络连通性检测方法、装置、终端设备及存储介质转让专利

申请号 : CN201810375932.2

文献号 : CN108847999B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 向文

申请人 : 普联技术有限公司

摘要 :

本发明公开了一种设备网络连通性检测方法,所述方法包括:当检测时刻到达时,判断待检测设备与目标网络节点是否处于同一个网段;当所述待检测设备与目标网络节点处于同一个网段时,判断所述目标网络节点的IP地址相比于上一检测时刻是否发生变化;当IP地址没有发生变化时,判断在上一检测时刻待检测设备与目标网络节点之间的网络是否为连通;当在上一检测时刻的网络为连通时,判断所述待检测设备在上一检测时刻和当前检测时刻之间是否接收到目标网络节点的数据报文;当所述待检测设备接收到数据报文时,判定在当前检测时刻的网络为连通。采用本发明能够对设备网络连通性进行检测,减少广播报文的发送的频率及数量,提高网络利用率。

权利要求 :

1.一种设备网络连通性检测方法,其特征在于,所述方法包括:

当检测时刻到达时,判断待检测设备与目标网络节点是否处于同一个网段;

当所述待检测设备与目标网络节点处于同一个网段时,判断所述目标网络节点的IP地址相比于上一检测时刻是否发生变化;

当所述目标网络节点的IP地址没有发生变化时,判断在上一检测时刻待检测设备与目标网络节点之间的网络是否为连通;

当在上一检测时刻待检测设备与目标网络节点之间的网络为连通时,判断所述待检测设备在上一检测时刻和当前检测时刻之间是否接收到目标网络节点的数据报文;

当所述待检测设备在上一检测时刻和当前检测时刻之间接收到目标网络节点的数据报文时,判定在当前检测时刻所述待检测设备与目标网络节点之间的网络为连通;

当所述目标网络节点的IP地址发生变化,或在上一检测时刻待检测设备与目标网络节点之间的网络为不连通,或所述待检测设备在上一检测时刻和当前检测时刻之间未接收到目标网络节点的数据报文时,执行ARP检测机制检测待检测设备与目标网络节点之间的连通性。

2.根据权利要求1所述的设备网络连通性检测方法,其特征在于,所述当在上一检测时刻待检测设备与目标网络节点之间的网络为连通时,判断所述待检测设备在上一检测时刻和当前检测时刻之间是否接收到目标网络节点的数据报文,具体为:当在上一检测时刻待检测设备与目标网络节点之间的网络为连通且当前检测时刻未到达预设的ARP检测周期时,判断所述待检测设备在上一检测时刻和当前检测时刻之间是否接收到目标网络节点的数据报文;

所述方法还包括:当当前检测时刻到达所述ARP检测周期时,执行ARP检测机制检测待检测设备与目标网络节点之间的连通性。

3.根据权利要求1或2任一项所述的设备网络连通性检测方法,其特征在于,所述执行ARP检测机制检测待检测设备与目标网络节点之间的网络连通性包括:向二层网络广播发送ARP请求报文,如果所述待检测设备接收到目标网络节点的ARP应答报文,则判定所述待检测设备和目标网络节点之间的网络连通;如果所述待检测设备没有接收到目标网络节点的ARP应答报文,则判定所述待检测设备和目标网络节点之间的网络未连通;其中,所述ARP请求报文包括设备的IP地址和MAC地址以及目标网络节点的IP地址和MAC地址,所述ARP应答报文包括目标网络节点的IP地址和MAC地址。

4.根据权利要求1或2所述的设备网络连通性检测方法,其特征在于,所述方法还包括:每次执行ARP检测机制检测到所述待检测设备与目标网络节点之间的网络为连通时,对第一计数值清零,并通过第二计数值从0开始记录待检测设备接收到的与目标网络节点的MAC地址相匹配的数据报文的个数;

其中,所述判断所述待检测设备在上一检测时刻和当前检测时刻之间是否接收到目标网络节点的数据报文具体为:比较当前时刻的第一计数值与第二计数值;

若当前检测时刻的第一计数值与第二计数值不相同,则判定所述待检测设备在上一检测时刻和当前检测时刻之间接收到目标网络节点的数据报文并且将第二计数值赋给第一计数值,否则判定所述待检测设备在上一检测时刻和当前检测时刻之间没有接收到目标网络节点的数据报文。

5.根据权利要求1所述的设备网络连通性检测方法,其特征在于,所述判断待检测设备与目标网络节点是否处于同一个网段包括以下步骤:获取目标网络节点的IP地址;

获取待检测设备的IP地址和子网掩码;

分别将目标网络节点的IP地址和待检测设备的IP地址与所述子网掩码作与运算;

如果作与运算的结果相同,判定所述待检测设备和目标网络节点处于同一个网段;如果作与运算得到的结果不相同,判定所述待检测设备和目标网络节点处于不同网段。

6.根据权利要求1所述设备网络连通性检测方法,其特征在于,当待检测设备与目标网络节点处于不同网段时,执行PING检测机制检测待检测设备与目标网络节点之间的网络连通性。

7.根据权利要求6所述设备网络连通性检测方法,其特征在于,所述执行PING检测机制检测待检测设备与目标网络节点之间的网络连通性包括:向目标网络节点发送ICMP回应请求报文,如果所述待检测设备接收到目标网络节点的ICMP回应回复报文,则判定所述待检测设备和目标网络节点之间的网络连通;如果所述待检测设备没有接收到目标网络节点的ICMP回应回复报文,则判定所述待检测设备和目标网络节点之间的网络未连通。

8.一种设备网络连通性检测装置,其特征在于,包括:

判断模块,用于当检测时刻到达时,判断待检测设备与目标网络节点是否处于同一网段;

地址识别模块,用于当所述待检测设备与目标网络节点处于同一个网段时,判断所述目标网络节点的IP地址相比于上一检测时刻是否发生变化;

网络连通识别模块,用于当所述目标网络节点的IP地址没有发生变化时,判断在上一检测时刻待检测设备与目标网络节点之间的网络是否为连通;

数据报文检测模块,用于当在上一检测时刻待检测设备与目标网络节点之间的网络为连通时,检测所述待检测设备在上一检测时刻和当前检测时刻之间是否接收到目标网络节点的数据报文;

网络连通判定模块,用于当所述待检测设备在上一检测时刻和当前检测时刻之间接收到目标网络节点的数据报文时,判定在当前检测时刻所述待检测设备与目标网络节点之间的网络为连通;

ARP检测模块,用于当所述目标网络节点的IP地址发生变化,或在上一检测时刻待检测设备与目标网络节点之间的网络为不连通,或所述待检测设备在上一检测时刻和当前检测时刻之间未接收到目标网络节点的数据报文时,执行ARP检测机制检测待检测设备与目标网络节点之间的连通性。

9.一种终端设备,包括处理器、存储器以及存储在所述存储器中且被配置为由所述处理器执行的计算机程序,所述处理器执行所述计算机程序时实现如权利要求1至7中任意一项所述设备网络连通性检测方法。

10.一种存储介质,其特征在于,所述存储介质包括存储的计算机程序,其中,在所述计算机程序运行时控制所述存储介质所在设备执行如权利要求1至7中任意一项所述设备网络连通性检测方法。

说明书 :

设备网络连通性检测方法、装置、终端设备及存储介质

技术领域

[0001] 本发明涉及计算机网络通信技术领域,尤其涉及一种设备网络连通性检测方法、装置、终端设备及存储介质。

背景技术

[0002] 随着计算机网络通信技术的快速发展,对网络各节点设备的管理难度也随之加大。而网络连通性是网络管理中保证网络正常运行的重要因素,通过对网络节点设备间的连通性进行检测,不但可以获取节点间链路的网络性能参数,而且能够根据这些数据及早地了解链路的工作状态,并对网络设备间的连通性故障做出精确的定位,对网络的管理维护具有重要的意义。
[0003] 目前,通常是通过PING检测机制和APR检测机制来检测网络设备与目标网络节点之间的连通性。但是目前有部分网络设备是禁止PING,或者由于杀毒防护,防火墙规则等原因导致目标网络节点可能不会应答ICMP Echo Reply报文,进而使得采用PING检测机制无法确定网络设备与目标网络节点的真实的网络连通性;而APR检测机制,由于其采用的是广播发送报文的机制,因此,一个设备进行一次ARP请求即会产生较多的广播报文,如果同网段内的设备有多个网络设备都在采用ARP检测机制进行网络连通性检测,那么总的ARP广播报文就会比较多,会在一定程度上占用网络资源。

发明内容

[0004] 本发明实施例提供一种设备网络连通性检测方法、装置、终端设备及存储介质,能够减少广播报文的发送的频率及数量,减少网络资源的占用,提高网络利用率。
[0005] 本发明一实施例提供一种设备网络连通性检测方法,所述设备网络连通性检测方法包括:
[0006] 当检测时刻到达时,判断待检测设备与目标网络节点是否处于同一个网段;
[0007] 当所述待检测设备与目标网络节点处于同一个网段时,判断所述目标网络节点的IP地址相比于上一检测时刻是否发生变化;
[0008] 当所述目标网络节点的IP地址没有发生变化时,判断在上一检测时刻待检测设备与目标网络节点之间的网络是否为连通;
[0009] 当在上一检测时刻待检测设备与目标网络节点之间的网络为连通时,判断所述待检测设备在上一检测时刻和当前检测时刻之间是否接收到目标网络节点的数据报文;
[0010] 当所述待检测设备在上一检测时刻和当前检测时刻之间接收到目标网络节点的数据报文时,判定在当前检测时刻所述待检测设备与目标网络节点之间的网络为连通;
[0011] 当所述目标网络节点的IP地址发生变化,或在上一检测时刻待检测设备与目标网络节点之间的网络为不连通,或所述待检测设备在上一检测时刻和当前检测时刻之间未接收到目标网络节点的数据报文时,执行ARP检测机制检测待检测设备与目标网络节点之间的连通性。
[0012] 与现有技术相比,本发明所述的设备网络连通性检测方法在所述设备与目标网络节点处于相同网段且所述目标网络节点的IP地址未发生变化,而上一检测时刻的检测结果为网络连通时,通过检测所述待检测设备在上一检测时刻和当前检测时刻之间是否接收到目标网络节点的数据报文,来判定所述待检测设备和目标网络节点之间的网络是否连通,如果所述待检测设备在上一检测时刻和当前检测时刻之间接收到目标网络节点的数据报文,则判定所述待检测设备和目标网络节点之间的网络为连通,从而不需要在每个检测时刻到达且所述待检测设备与目标网络节点处于相同网段时都广播发送ARP请求报文去检测待检测设备与目标网络节点之间的连通性,大大减少广播报文的发送的频率及数量,减少网络资源的占用,提高网络利用率。
[0013] 进一步地,所述当在上一检测时刻待检测设备与目标网络节点之间的网络为连通时,判断所述待检测设备在上一检测时刻和当前检测时刻之间是否接收到目标网络节点的数据报文,具体为:当在上一检测时刻待检测设备与目标网络节点之间的网络为连通且当前检测时刻未到达预设的ARP检测周期时,判断所述待检测设备在上一检测时刻和当前检测时刻之间是否接收到目标网络节点的数据报文;
[0014] 所述方法还包括:当当前检测时刻到达所述ARP检测周期时,执行ARP检测机制检测待检测设备与目标网络节点之间的连通性。
[0015] 通过设定ARP检测周期,以定期地执行ARP检测,及时更新目标网络节点的IP地址与MAC地址,防止目标网络节点的IP地址与MAC地址的对应关系发生变化时,仍然采用原来的MAC地址来判定所述待检测设备在上一检测时刻和当前检测时刻之间是否接收到目标网络节点的数据报文来判定网络的连通性,导致检测结果不准确。
[0016] 进一步地,所述执行ARP检测机制检测待检测设备与目标网络节点之间的网络连通性包括:
[0017] 向二层网络广播发送ARP请求报文,如果所述待检测设备接收到目标网络节点的ARP应答报文,则判定所述待检测设备和目标网络节点之间的网络连通;如果所述待检测设备没有接收到目标网络节点的ARP应答报文,则判定所述待检测设备和目标网络节点之间的网络未连通;其中,所述ARP请求报文包括设备的IP地址和MAC地址以及目标网络节点的IP地址和MAC地址,所述ARP应答报文包括目标网络节点的IP地址和MAC地址。
[0018] 进一步地,所述方法还包括:
[0019] 每次执行ARP检测机制检测到所述待检测设备与目标网络节点之间的网络为连通时,对第一计数值清零,并通过第二计数值从0开始记录待检测设备接收到的与目标网络节点的MAC地址相匹配的数据报文的个数;
[0020] 其中,所述判断所述待检测设备在上一检测时刻和当前检测时刻之间是否接收到目标网络节点的数据报文具体为:
[0021] 比较当前时刻的第一计数值与第二计数值;
[0022] 若当前检测时刻的第一计数值与第二计数值不相同,则判定所述待检测设备在上一检测时刻和当前检测时刻之间接收到目标网络节点的数据报文并且将第二计数值赋给第一计数值,否则判定所述待检测设备在上一检测时刻和当前检测时刻之间没有接收到目标网络节点的数据报文。
[0023] 进一步地,所述判断待检测设备与目标网络节点是否处于同一个网段包括以下步骤:
[0024] 获取目标网络节点的IP地址;
[0025] 获取待检测设备的IP地址和子网掩码;
[0026] 分别将目标网络节点的IP地址和待检测设备的IP地址与所述子网掩码作与运算;
[0027] 如果作与运算的结果相同,判定所述待检测设备和目标网络节点处于同一个网段;如果作与运算得到的结果不相同,判定所述待检测设备和目标网络节点处于不同网段。
[0028] 进一步地,当待检测设备与目标网络节点处于不同网段时,执行PING检测机制检测待检测设备与目标网络节点之间的网络连通性。
[0029] 进一步地,所述执行PING检测机制检测待检测设备与目标网络节点之间的网络连通性包括:
[0030] 向目标网络节点发送ICMP回应请求报文,如果所述待检测设备接收到目标网络节点的ICMP回应回复报文,则判定所述待检测设备和目标网络节点之间的网络连通;如果所述待检测设备没有接收到目标网络节点的ICMP回应回复报文,则判定所述待检测设备和目标网络节点之间的网络未连通。
[0031] 本发明另一实施例对应提供了一种设备网络连通性检测装置,所述设备网络连通性检测装置包括:
[0032] 判断模块,用于当检测时刻到达时,判断所述待检测设备与目标网络节点是否处于同一网段;
[0033] 地址识别模块,用于当所述待检测设备与目标网络节点处于同一个网段时,判断所述目标网络节点的IP地址相比于上一检测时刻是否发生变化;
[0034] 网络连通识别模块,用于当所述目标网络节点的IP地址没有发生变化时,判断在上一检测时刻待检测设备与目标网络节点之间的网络是否为连通;
[0035] 数据报文检测模块,用于当在上一检测时刻待检测设备与目标网络节点之间的网络为连通时,检测所述待检测设备在上一检测时刻和当前检测时刻之间是否接收到目标网络节点的数据报文;
[0036] 网络连通判定模块,用于当所述待检测设备在上一检测时刻和当前检测时刻之间接收到目标网络节点的数据报文时,判定在当前检测时刻所述待检测设备与目标网络节点之间的网络为连通;
[0037] ARP检测模块,用于当所述目标网络节点的IP地址发生变化,或在上一检测时刻待检测设备与目标网络节点之间的网络为不连通,或所述待检测设备在上一检测时刻和当前检测时刻之间未接收到目标网络节点的数据报文时,执行ARP检测机制检测待检测设备与目标网络节点之间的连通性。
[0038] 与现有技术相比,本发明所述的设备网络连通性检测装置在判定所述设备与目标网络节点处于相同网段且所述目标网络节点的IP地址未发生变化,而上一检测时刻的检测结果为网络连通时,通过数据报文检测模块检测所述待检测设备在上一检测时刻和当前检测时刻之间是否接收到目标网络节点的数据报文,来判定所述待检测设备和目标网络节点之间的网络是否连通,如果所述待检测设备在上一检测时刻和当前检测时刻之间接收到目标网络节点的数据报文,则判定所述待检测设备和目标网络节点之间的网络为连通,从而不需要在每个检测时刻到达且所述待检测设备与目标网络节点处于相同网段时都广播发送ARP请求报文去检测待检测设备与目标网络节点之间的连通性,大大减少广播报文的发送的频率及数量,减少网络资源的占用,提高网络利用率。
[0039] 本发明另一实施例还提供了一种终端设备,包括处理器、存储器以及存储在所述存储器中且被配置为由所述处理器执行的计算机程序,所述处理器执行所述计算机程序时实现上述发明实施例所述设备网络连通性检测方法。
[0040] 本发明另一实施例还提供了一种存储介质,所述存储介质包括存储的计算机程序,其中,在所述计算机程序运行时控制所述存储介质所在设备执行上述发明实施例所述设备网络连通性检测方法。

附图说明

[0041] 图1是本发明第一实施例提供的一种设备网络连通性检测方法的流程示意图。
[0042] 图2是本发明第三实施例提供的一种设备网络连通性检测装置结构示意图。
[0043] 图3是本发明第三实施例所述数据报文检测模块的结构示意图。
[0044] 图4是本发明第四实施例提供的一种设备网络连通性检测装置结构示意图。

具体实施方式

[0045] 下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
[0046] 参见图1,是本发明第一实施例提供的一种设备网络连通性检测方法的流程示意图,包括:
[0047] S101、当检测时刻到达时,判断待检测设备与目标网络节点是否处于同一个网段。
[0048] 在本实施例中,预先设定周期性的检测时刻,当设定的检测时刻到达时,则获取待检测设备的IP地址和子网掩码,并获取目标网络节点的IP地址;然后将待检测设备的IP地址和目标网络节点的IP地址分别与所述子网掩码作与运算;如果作与运算的结果相同,则判定所述待检测设备和目标网络节点处于同一个网段;如果作与运算得到的结果不相同,则判定所述待检测设备和目标网络节点处于不同网段。
[0049] S102、当所述待检测设备与目标网络节点处于不同网段时,执行PING检测机制检测待检测设备与目标网络节点之间的网络连通性。
[0050] 具体地,待检测设备向目标网络节点发送ICMP回应请求报文,如果所述待检测设备接收到所述目标网络节点的ICMP回应回复报文,则判定所述待检测设备和目标网络节点之间的网络连通;如果所述待检测设备没有接收到目标网络节点的ICMP回应回复报文,则判定所述待检测设备和目标网络节点之间的网络未连通。
[0051] S103、当所述待检测设备与目标网络节点处于同一个网段时,判断所述目标网络节点的IP地址相比于上一检测时刻是否发生变化。
[0052] 在本实施例中,所述上一检测时刻为与本次检测时刻相隔设定周期的时刻。
[0053] S104、判断在上一检测时刻待检测设备与目标网络节点之间的网络是否为连通。
[0054] S105、当在上一检测时刻待检测设备与目标网络节点之间的网络为连通时,判断所述待检测设备在上一检测时刻和当前检测时刻之间是否接收到目标网络节点的数据报文。
[0055] 需要说明的是,在本实施例中,当所述目标网络节点的IP地址发生变化,或在上一检测时刻待检测设备与目标网络节点之间的网络为不连通,或所述待检测设备在上一检测时刻和当前检测时刻之间未接收到目标网络节点的数据报文时,均执行ARP检测机制检测待检测设备与目标网络节点之间的连通性。
[0056] 在本实施例中,执行ARP检测机制检测待检测设备与目标网络节点之间的连通性,具体为:待检测设备向二层网络广播发送ARP请求报文,如果所述待检测设备接收到目标网络节点的ARP应答报文,则判定所述待检测设备和目标网络节点之间的网络连通;如果所述待检测设备没有接收到目标网络节点的ARP应答报文,则判定所述待检测设备和目标网络节点之间的网络未连通。
[0057] 其中,所述ARP请求报文包括设备的IP地址和MAC地址以及目标网络节点的IP地址和MAC地址,所述ARP应答报文包括目标网络节点的IP地址和MAC地址。当执行ARP检测机制检测到待检测设备与目标网络节点之间的网络为连通时,即可获取得到所述目标网络节点的MAC地址。
[0058] 在本实施例中,每次执行ARP检测机制检测到所述待检测设备与目标网络节点之间的网络为连通时,对第一计数值清零,并通过第二计数值从0开始记录待检测设备接收到的与所述目标网络节点的MAC地址相匹配的数据报文的个数。
[0059] 具体地,每次执行ARP检测机制检测到所述待检测设备与目标网络节点之间的网络为连通时,将第一计数值清零,第二计数值的初始值设为零,获取所述目标网络节点的MAC地址并持续检测到待检测设备接收到的数据报文,每当待检测设备接收到的数据报文中的MAC地址与目标网络节点的MAC地址匹配,则第二计数值加1。
[0060] 其中,所述判断所述待检测设备在上一检测时刻和当前检测时刻之间是否接收到目标网络节点的数据报文具体为:
[0061] 比较当前时刻的第一计数值与第二计数值;
[0062] 若当前检测时刻的第一计数值与第二计数值不相同时,判定所述待检测设备在上一检测时刻和当前检测时刻之间接收到目标网络节点的数据报文,并且将第二计数值赋给第一计数值,否则判定所述待检测设备在上一检测时刻和当前检测时刻之间没有接收到目标网络节点的数据报文。
[0063] S106、当所述待检测设备在上一检测时刻和当前检测时刻之间接收到目标网络节点的数据报文时,判定在当前检测时刻所述待检测设备与目标网络节点之间的网络为连通。
[0064] 需要说明的是,在本实施例中,当所述待检测设备在上一检测时刻和当前检测时刻之间没有接收到目标网络节点的数据报文时,则执行ARP检测机制检测待检测设备与目标网络节点之间的网络连通性。
[0065] 在本实施例中,当上一检测时刻是通过ARP检测机制检测到待检测的设备与目标网络节点之间的网络为连通,则当前时刻的第一计数值为0;当上一检测时刻是通过比较第一计数值与第二计数值的不同来判断待检测设备与目标网络节点之间的网络为连通,则当前时刻的第一计数值为上一检测时刻的第二计数值。
[0066] 在本实施例中,当检测到待检测设备与目标网络节点之间的网络为连通,则等待下一检测时刻到达,以继续执行以上步骤检测待检测设备与目标网络节点之间的网络连通性。
[0067] 与现有技术相比,本发明实施例,通过被动检测方式检测待检测设备与目标网络节点之间的网络连通性,具体为:当所述待检测设备与目标网络节点处于相同网段且所述目标网络节点的IP地址未发生变化,而上一检测时刻的检测结果为网络连通时,通过检测所述待检测设备在上一检测时刻和当前检测时刻之间是否接收到目标网络节点的数据报文,来判定所述待检测设备和目标网络节点之间的网络是否连通,如果所述待检测设备在上一检测时刻和当前检测时刻之间接收到目标网络节点的数据报文,则判定所述待检测设备和目标网络节点之间的网络为连通。从而不需要在每个检测时刻到达且所述待检测设备与目标网络节点处于相同网段时都广播发送ARP请求报文去检测待检测设备与目标网络节点之间的连通性,大大减少广播报文的发送的频率及数量,减少网络资源的占用,提高网络利用率。
[0068] 本发明第二实施例提供了一种设备网络连通性检测方法,本实施例与第一实施例的区别在于:
[0069] 本实施例设置了一ARP检测周期,当所述待检测设备与目标网络节点处于相同网段且所述目标网络节点的IP地址未发生变化时,检测所述ARP检测周期是否到达,若所述ARP检测周期到达,则直接执行ARP检测机制检测待检测设备与目标网络节点之间的网络连通性。
[0070] 本发明实施例所述的设备网络连通性检测方法通过设定ARP检测周期,以定期地执行ARP检测,及时更新目标网络节点的IP地址与MAC地址,防止目标网络节点的IP地址与MAC地址的对应关系发生变化时,仍然采用原来的MAC地址来判定所述待检测设备在上一检测时刻和当前检测时刻之间是否接收到目标网络节点的数据报文来判定网络的连通性,导致检测结果不准确。
[0071] 请参阅图2,为本发明第三实施例提供的一种设备网络连通性检测装置200,所述设备网络连通性检测装置200包括:
[0072] 判断模块201,用于当检测时刻到达时,判断所述待检测设备与目标网络节点是否处于同一网段;
[0073] 地址识别模块202,用于当所述待检测设备与目标网络节点处于同一个网段时,判断所述目标网络节点的IP地址相比于上一检测时刻是否发生变化;
[0074] 网络连通识别模块203,用于当所述目标网络节点的IP地址没有发生变化时,判断在上一检测时刻待检测设备与目标网络节点之间的网络是否为连通;
[0075] 数据报文检测模块204,用于当在上一检测时刻待检测设备与目标网络节点之间的网络为连通时,检测所述待检测设备在上一检测时刻和当前检测时刻之间是否接收到目标网络节点的数据报文;
[0076] 网络连通判定模块205,用于当所述待检测设备在上一检测时刻和当前检测时刻之间接收到目标网络节点的数据报文时,判定在当前检测时刻所述待检测设备与目标网络节点之间的网络为连通;
[0077] ARP检测模块206,用于当所述目标网络节点的IP地址发生变化,或在上一检测时刻待检测设备与目标网络节点之间的网络为不连通,或所述待检测设备在上一检测时刻和当前检测时刻之间未接收到目标网络节点的数据报文时,执行ARP检测机制检测待检测设备与目标网络节点之间的连通性。
[0078] PING检测模块207,用于当所述待检测设备与目标网络节点处于不同网段时,执行PING检测机制检测待检测设备与目标网络节点之间的网络连通性。
[0079] 在本实施例中,所述ARP检测模块206还用于当所述待检测设备在上一检测时刻和当前检测时刻之间没有接收到目标网络节点的数据报文时,执行ARP检测机制检测待检测设备与目标网络节点之间的连通性。
[0080] 请参与图3,为本实施例所述数据报文检测模块204,所述数据报文检测模块204包括:
[0081] 地址识别计数模块2041,用于每次执行ARP检测机制检测到待检测设备与目标网络节点之间的网络为连通之后,将第一计数值清零,并通过第二计数值从0开始记录待检测设备接收到的与所述目标网络节点的MAC地址相匹配的数据报文的个数。
[0082] 计数值比较模块2042,用于当在上一检测时刻待检测设备与目标网络节点之间的网络为连通时,将当前检测时刻的第一计数值与第二计数值进行比较;
[0083] 数据报文判定模块2043,用于当当前检测时刻的第一计数值与第二计数值不相同时,判定所述待检测设备在上一检测时刻和当前检测时刻之间接收到目标网络节点的数据报文,并且将第二计数值赋给第一计数值;否则判定所述待检测设备在上一检测时刻和当前检测时刻之间没有接收到目标网络节点的数据报文。
[0084] 与现有技术相比,本发明实施例,通过被动检测方式检测待检测设备与目标网络节点之间的网络连通性,具体为:当所述待检测设备与目标网络节点处于相同网段且所述目标网络节点的IP地址未发生变化,而上一检测时刻的检测结果为网络连通时,通过数据报文检测模块204检测所述待检测设备在上一检测时刻和当前检测时刻之间是否接收到目标网络节点的数据报文,来判定所述待检测设备和目标网络节点之间的网络是否连通,如果所述待检测设备在上一检测时刻和当前检测时刻之间接收到目标网络节点的数据报文,则判定所述待检测设备和目标网络节点之间的网络为连通。从而不需要在每个检测时刻到达且所述待检测设备与目标网络节点处于相同网段时都广播发送ARP请求报文去检测待检测设备与目标网络节点之间的连通性,大大减少广播报文的发送的频率及数量,减少网络资源的占用,提高网络利用率。
[0085] 如图4所示,为本发明第四实施例提供的一种设备网络连通性检测装置200`,所述设备网络连通性检测装置200`与第三实施例的区别在于,本实施例所述设备网络连通性检测装置200`还包括:
[0086] ARP周期检测模块208`,用于当所述待检测设备与目标网络节点处于相同网段且所述目标网络节点的IP地址未发生变化时,检测所述ARP检测周期是否到达。
[0087] ARP强制执行模块209`,用于当ARP检测周期到达时,执行ARP检测机制检测待检测设备与目标网络节点之间的连通性。
[0088] 本发明实施例所述的设备网络连通性检测装置200`通过定期地执行ARP检测机制,及时更新目标网络节点的IP地址与MAC地址,防止目标网络节点的IP地址与MAC地址的对应关系发生变化时,仍然采用原来的MAC地址来判定所述待检测设备在上一检测时刻和当前检测时刻之间是否接收到目标网络节点的数据报文来判定网络的连通性,导致检测结果不准确。
[0089] 本发明第五实施例提供了一种终端设备,包括处理器、存储器以及存储在所述存储器中且被配置为由所述处理器执行的计算机程序,所述处理器执行所述计算机程序时实现上述发明实施例所述的设备网络连通性检测方法。
[0090] 本发明第六实施例提供了一种存储介质,所述存储介质包括存储的计算机程序,其中,在所述计算机程序运行时控制所述存储介质所在设备执行上述发明实施例所述的设备网络连通性检测方法。
[0091] 示例性的,第五及第六实施例中,所述计算机程序可以被分割成一个或多个模块/单元,所述一个或者多个模块/单元被存储在所述存储器中,并由所述处理器执行,以完成本发明。所述一个或多个模块/单元可以是能够完成特定功能的一系列计算机程序指令段,该指令段用于描述所述计算机程序在所述终端中的执行过程。
[0092] 所称处理器可以是中央处理单元(Central Processing Unit,CPU),还可以是其他通用处理器、数字信号处理器(Digital Signal Processor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现成可编程门阵列(Field-Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等,所述处理器是所述终端的控制中心,利用各种接口和线路连接整个终端的各个部分。
[0093] 所述存储器可用于存储所述计算机程序和/或模块,所述处理器通过运行或执行存储在所述存储器内的计算机程序和/或模块,以及调用存储在存储器内的数据,实现所述终端设备的各种功能。所述存储器可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序(比如声音播放功能、图像播放功能等)等;存储数据区可存储根据手机的使用所创建的数据(比如音频数据、电话本等)等。此外,存储器可以包括高速随机存取存储器,还可以包括非易失性存储器,例如硬盘、内存、插接式硬盘,智能存储卡(Smart Media Card,SMC),安全数字(Secure Digital,SD)卡,闪存卡(Flash Card)、至少一个磁盘存储器件、闪存器件、或其他易失性固态存储器件。
[0094] 其中,所述终端集成的模块/单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明实现上述实施例方法中的全部或部分流程,也可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一计算机可读存储介质中,该计算机程序在被处理器执行时,可实现上述各个方法实施例的步骤。其中,所述计算机程序包括计算机程序代码,所述计算机程序代码可以为源代码形式、对象代码形式、可执行文件或某些中间形式等。所述计算机可读介质可以包括:能够携带所述计算机程序代码的任何实体或装置、记录介质、U盘、移动硬盘、磁碟、光盘、计算机存储器、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、电载波信号、电信信号以及软件分发介质等。
[0095] 需说明的是,以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。另外,本发明提供的装置实施例附图中,模块之间的连接关系表示它们之间具有通信连接,具体可以实现为一条或多条通信总线或信号线。本领域普通技术人员在不付出创造性劳动的情况下,即可以理解并实施。
[0096] 以上所述是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也视为本发明的保护范围。