对虚拟网络中故障节点进行定位的方法及装置制造方法

文档序号:8005355阅读:302来源:国知局
对虚拟网络中故障节点进行定位的方法及装置制造方法
【专利摘要】本发明公开了一种对虚拟网络中故障节点进行定位的方法及装置,本发明通过按照预设的拓扑结构向目标设备发送检测数据包,侦测并接收所述拓扑结构中的节点以及目标设备发送的响应数据包;当在预设时间内未接收到所述目标设备发送的响应数据包时,则根据接收到的响应数据包获取发送响应数据包的节点;根据获取到的发送响应数据包的节点以及预设的拓扑结构确定发生故障的节点,实现了对虚拟网络中发生故障的具体拓扑节点进行定位,确定发生故障的具体节点位置。
【专利说明】对虚拟网络中故障节点进行定位的方法及装置
【技术领域】
[0001]本发明涉及到通信领域,特别涉及到一种对虚拟网络中故障节点进行定位的方法及装置。
【背景技术】
[0002]SDN (虚拟网络),是由虚拟交换机、虚拟路由器以及其他网络控制虚拟化产品共同组建的一个拓扑网络。
[0003]目前,在虚拟化的拓扑网络中,能进行网络检测,但在这种网络检测方式下,主要是对当前网络的性能进行分析,并以给出网络性能报告为最终目的,且只能简单的进行C-S模式的检测方式。
[0004]然而,这种虚拟化网络的检测方式,仅仅可以检测出虚拟网络中的故障,然而无法对虚拟网络中发生故障的具体节点进行定位。

【发明内容】

[0005]本发明的主要目的为提供一种对虚拟网络中故障节点进行定位的方法及装置,旨在实现对虚拟网络中发生故障的具体节点进行定位,确定发生故障的具体节点位置。
[0006]本发明提出一种对虚拟网络中故障节点进行定位的方法,该方法包括:
[0007]按照预设的拓扑结构向目标设备发送检测数据包,侦测并接收所述拓扑结构中的节点以及目标设备发送的响应数据包;
[0008]当在预设时间内未接收到所述目标设备发送的响应数据包时,则根据接收到的响应数据包获取发送响应数据包的节点;
[0009]根据获取到的发送响应数据包的节点以及预设的拓扑结构确定发生故障的节点。
[0010]优选地,所述根据获取到的发送响应数据包的节点以及预设的拓扑结构确定发生故障的节点的步骤包括:
[0011]判断接收的响应数据包是否是正常的响应数据包;
[0012]当接收的响应数据包是正常的响应数据包时,根据获取到的发送响应数据包的节点以及预设的拓扑结构确定发生故障的节点。
[0013]优选地,在所述根据获取到的发送响应数据包的节点以及预设的拓扑结构确定发生故障的节点的步骤之后,该方法还包括:
[0014]向虚拟网络中的控制设备发送故障恢复指令,以使虚拟控制设备控制确定的发生故障的节点进行与所述故障恢复指令对应的操作,并恢复虚拟网络的通信。
[0015]优选地,在所述向虚拟网络中的控制设备发送故障恢复指令,以使虚拟控制设备控制确定的发生故障的节点进行与所述故障恢复指令对应的操作,并恢复虚拟网络的通信的步骤之后,该方法还包括:
[0016]在达到预设时间时,向所述确定的发生故障的节点发送检测数据包;
[0017]当未接收到所述确定的发生故障的节点发送的响应数据包时,发出告警信息,以提不故障恢复失败。
[0018]优选地,所述按照预设的拓扑结构向目标设备发送检测数据包的步骤包括:
[0019]向拓扑结构中的第一级拓扑节点发送检测数据包,在接收到第一级拓扑节点响应的数据包时,向拓扑结构中的第二级拓扑节点发送检测数据包;
[0020]在接收到第二级拓扑节点响应的数据包时,向拓扑结构中的第三级拓扑节点发送检测数据包;
[0021]以此类推,在接收到第N级拓扑节点响应的数据包时,向目标设备发送检测数据。
[0022]本发明还提出一种对虚拟网络中故障节点进行定位的装置,该装置包括:
[0023]数据接发模块,用于按照预设的拓扑结构向目标设备发送检测数据包,侦测并接收所述拓扑结构中的节点以及目标设备发送的响应数据包;
[0024]获取模块,用于当在预设时间内未接收到所述目标设备发送的响应数据包时,则根据接收到的响应数据包获取发送响应数据包的节点;
[0025]处理模块,用于根据获取到的发送响应数据包的节点以及预设的拓扑结构确定发生故障的节点。
[0026]优选地,该装置还包括:
[0027]判断模块,用于判断接收的响应数据包是否是正常的响应数据包;
[0028]所述处理模块,用于当接收的响应数据包是正常的响应数据包时,根据获取到的发送响应数据包的节点以及预设的拓扑结构确定发生故障的节点。
[0029]优选地,所述数据接发模块,还用于向虚拟网络中的控制设备发送故障恢复指令,以使虚拟控制设备控制确定的发生故障的节点进行与所述故障恢复指令对应的操作,并恢复虚拟网络的通信。
[0030]优选地,该装置还包括提醒模块,
[0031]所述数据接发模块,还用于在达到预设时间时,向所述确定的发生故障的节点发送检测数据包;
[0032]所述提醒模块,用于当未接收到所述确定的发生故障的节点发送的响应数据包时,发出告警信息,以提不故障恢复失败。
[0033]优选地,所述数据接发模块,还用于向拓扑结构中的第一级拓扑节点发送检测数据包,在接收到第一级拓扑节点响应的数据包时,向拓扑结构中的第二级拓扑节点发送检测数据包,及
[0034]在接收到第二级拓扑节点响应的数据包时,向拓扑结构中的第三级拓扑节点发送检测数据包,及
[0035]以此类推,在接收到第N级拓扑节点响应的数据包时,向目标设备发送检测数据。
[0036]相对现有技术,本发明通过按照预设的拓扑结构向目标设备发送检测数据包;侦测并接收所述拓扑结构中的节点以及目标设备发送的响应数据包;当在预设时间内未接收到所述目标设备发送的响应数据包时,则根据接收到的拓扑结构中发送的响应数据包获取发送响应数据包的节点;根据获取到的发送响应数据包的节点以及预设的拓扑结构确定发生故障的节点,实现了对虚拟网络中发生故障的具体节点进行定位,确定发生故障的具体节点位置,以根据发生故障的具体节点位置确定发生故障的原因并快速有效的解决故障,恢复通信。【专利附图】

【附图说明】
[0037]图1为本发明对虚拟网络中故障节点进行定位的方法的第一实施例的具体流程图;
[0038]图2为本发明对虚拟网络中故障节点进行定位的方法的第二实施例的具体流程图;
[0039]图3为本发明对虚拟网络中故障节点进行定位的方法的第三实施例的具体流程图;
[0040]图4为本发明对虚拟网络中故障节点进行定位的方法的第四实施例的具体流程图;
[0041]图5为本发明对虚拟网络中故障节点进行定位的方法的第五实施例的具体流程图;
[0042]图6为本发明对虚拟网络中故障节点进行定位的装置的第一实施例的具体架构图;
[0043]图7为本发明对虚拟网络中故障节点进行定位的装置的第二实施例的具体架构图;
[0044]图8为本发明对虚拟网络中故障节点进行定位的装置的第三实施例的具体架构图。
[0045]本发明目的的实现、功能特点及优点将结合实施例,参照附图做进一步说明。【具体实施方式】
[0046]应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
[0047]如图1所示,为本发明对虚拟网络中故障节点进行定位的方法的第一实施例的具体流程图。
[0048]需要强调的是:图1所示流程图仅为一个较佳实施例,本领域的技术人员当知,任何围绕本发明思想构建的实施例都不应脱离于如下技术方案涵盖的范围:
[0049]按照预设的拓扑结构向目标设备发送检测数据包,侦测并接收所述拓扑结构中的节点以及目标设备发送的响应数据包;当在预设时间内未接收到所述目标设备发送的响应数据包时,则根据接收到的响应数据包获取发送响应数据包的节点;根据获取到的发送响应数据包的节点以及预设的拓扑结构确定发生故障的节点。
[0050]以下是本实施例逐步实现对虚拟网络故障节点进行定位的具体步骤:
[0051]步骤S11,按照预设的拓扑结构向目标设备发送检测数据包,侦测并接收所述拓扑结构中的节点以及目标设备发送的响应数据包。
[0052]具体的,构建虚拟网络中特定的检测数据包,实时或定时按照预设的拓扑向目标设备发送检测数据包,在发出检测数据包后,侦测并接收所述拓扑结构中的节点以及目标设备发送的响应数据包;所述预设的拓扑结构是根据网络数据传送需要构建的一个拓扑形式的虚拟网络,在该虚拟网络中按照数据传送的需求逐级设置各个节点。在本发明其他实施例中,也可以是通过预先设定一个或多个固定的待检测节点,将检测数据包发送给预先设定的待检测的节点,而本实施例中是将检测数据包发送给虚拟网络中的每一个节点,不仅仅局限于将检测数据包发送给固定的节点,所述节点不单单指的是路由交换设备,还可以是服务器等任意虚拟网络中配置的设备。例如,以虚拟交换机和虚拟路由器为拓扑节点,虚拟服务器为目标设备为例,所述向拓扑结构中的节点以及目标设备发送检测数据包的方式可以是先将检测数据包发送给虚拟交换机,在虚拟交换机响应该检测数据包之后,虚拟交换机将接收的检测数据包发送给下一级拓扑节点虚拟路由器,在虚拟路由器响应该检测数据包之后,虚拟路由器再向目标设备虚拟服务器发送接收到的检测数据包;也还可以是,将检测数据包发送给虚拟交换机,在接收到虚拟交换机的响应数据包的之后,向虚拟路由器发送检测数据包,在接收到虚拟路由器的响应数据包的之后,向虚拟服务器发送检测数据包;也还可以是其他任意适用的向拓扑结构中的节点以及目标设备发送检测数据包的方式。在本发明其他实施例中,还可以是将检测数据包发送到网络环路,对网络环路中的设备进行检测分析,所述检测数据包可以根据需要进行设置,并不局限于故障检测数据包。
[0053]步骤S12,当在预设时间内未接收到所述目标设备发送的响应数据包时,则根据接收到的响应数据包获取发送响应数据包的节点。
[0054]具体的,预设时间,当到达预设的时间时,未接收到所述目标设备发送的响应数据包时,则判定该网络拓扑结构中发生了通信故障,根据接收到的响应数据包获取发送响应数据包的节点;所述预设时间可以是间隔Is或间隔3s,也还可以是其他任意适用的用户提前设置的时间。例如,所述向拓扑结构中的节点以及目标设备发送检测数据包的方式为先将检测数据包发送给虚拟交换机,在虚拟交换机响应该检测数据包之后,虚拟交换机将接收的检测数据包发送给下一级拓扑节点虚拟路由器,在虚拟路由器响应该检测数据包之后,虚拟路由器再向目标设备虚拟服务器发送接收到的检测数据包;当在预设的时间内未接收到虚拟服务器发送的响应数据包时,根据接收到的响应数据包获取发送响应数据包的节点;例如,根据接收到的响应数据包中包括的节点的信息,获取发送响应数据包的节点是虚拟交换机。
[0055]步骤S13,根据获取到的发送响应数据包的节点以及预设的拓扑结构确定发生故障的节点。
[0056]具体的,根据接收到的拓扑结构中发送的响应数据包获取发送响应数据包的节点,例如,所述向拓扑结构中的节点以及目标设备发送检测数据包的方式为先将检测数据包发送给虚拟交换机,在虚拟交换机响应该检测数据包之后,虚拟交换机将接收的检测数据包发送给下一级拓扑节点虚拟路由器,在虚拟路由器响应该检测数据包之后,虚拟路由器再向目标设备虚拟服务器发送接收到的检测数据包;根据接收到的响应数据包中包括的节点的信息,获取发送响应数据包的是虚拟交换机,根据获取到的发送响应数据包的节点以及预设的拓扑结构确定发生故障的节点为虚拟路由器;若根据接收到的响应数据包中包括的节点的信息,获取发送响应数据包的是虚拟交换机和虚拟路由器,根据获取到的发送响应数据包的节点以及预设的拓扑结构确定发生故障的是目标设备。
[0057]通过按照预设的拓扑结构向目标设备发送检测数据包;侦测并接收所述拓扑结构中的节点以及目标设备发送的响应数据包;当在预设时间内未接收到所述目标设备发送的响应数据包时,则根据接收到的响应数据包获取发送响应数据包的节点;根据获取到的发送响应数据包的节点以及预设的拓扑结构确定发生故障的节点,实现了对虚拟网络中任意一个节点进行检测,并对虚拟网络中发生故障的具体节点进行定位,确定发生故障的具体节点位置。
[0058]如图2所示,为本发明对虚拟网络中故障节点进行定位的方法的第二实施例的具体流程图。
[0059]基于上述第一实施例,所述步骤S13还包括:
[0060]步骤S14,判断接收的响应数据包是否是正常的响应数据包。
[0061]具体的,根据接收到的响应数据包获取发送响应数据包的节点,例如,根据接收到的响应数据包,分析响应数据包中包括的节点信息确定接收到的响应数据包是虚拟交换机发送过来的,但未能根据接收到的响应数据包,分析响应数据包中包括的节点信息确定接收到虚拟路由器发送过来的响应数据包,判断确定的接收到的虚拟交换机发送过来的响应数据包是否是正常的响应数据包。例如,所述向拓扑结构中的节点以及目标设备发送检测数据包的方式为先将检测数据包发送给虚拟交换机,在虚拟交换机响应该检测数据包之后,虚拟交换机将接收的检测数据包发送给下一级拓扑节点虚拟路由器,在虚拟路由器响应该检测数据包之后,虚拟路由器再向目标设备虚拟服务器发送接收到的检测数据包;所述正常的响应数据包为该数据包能通过虚拟交换机传送到下一级虚拟设备虚拟路由器,向发送检测数据包的虚拟设备发送正常的响应数据包,所述正常的响应数据包中包括该拓扑节点的信息;非正常的响应数据包即为虚拟交换机不能将数据包传输给下一级虚拟设备虚拟路由器,但能响应接收到的检测数据包,所述虚拟交换机不能将数据包传输给下一级虚拟设备虚拟路由器的原因可以是虚拟交换机设置的参数值不足以满足将数据包发送至虚拟路由器;也还可以是其他任意能发出响应数据包到不能将数据包发送至下一级拓扑节点的故障,例如,虚拟交换机设置了不可达,虚拟交换机设置的单个传送数据量过小等;所述非正常的响应数据包包括虚拟交换机的节点信息及故障的原因。
[0062]步骤S15,当接收的响应数据包是正常的响应数据包时,根据获取到的发送响应数据包的节点以及预设的拓扑结构确定发生故障的节点。
[0063]具体的,当接收的响应数据包是正常的响应数据包时,根据获取到的发送响应数据包的节点以及预设的拓扑结构确定发生故障的节点;例如,根据接收到的响应数据包中包括的节点信息确定接收到的虚拟交换机发送过来的响应数据包,但根据接收到的响应数据包中包括的节点信息未能确定接收到虚拟路由器发送过来的响应数据包,当接收的虚拟交换机发送的响应数据包是正常的响应数据包时,即虚拟交换机不为发生通信故障的节点,根据预设的拓扑结构确定发生故障的节点为虚拟路由器;当接收的虚拟交换机发送的响应数据包为非正常的响应数据包时,确定虚拟交换机发生故障,获取非正常的响应数据包中包括的虚拟交换机不能将数据包发送给虚拟路由器的原因,根据获取的虚拟交换机不能将数据包发送给虚拟路由器的原因向虚拟交换机发送修改虚拟交换机对应的参数的指令,以使虚拟网络恢复通信。
[0064]通过按照预设的拓扑结构向目标设备发送检测数据包;侦测并接收所述拓扑结构中的节点以及目标设备发送的响应数据包;当在预设时间内接收到所述目标设备发送的响应数据包时,则根据接收到的响应数据包获取发送响应数据包的节点;并判断接收的拓扑节点发送的响应数据包是否是正常数据包,根据拓扑节点发送的响应数据包及预设的拓扑结构确定虚拟网络中发生故障的拓扑节点及发生故障的原因,以使根据确定发生故障的节点及故障的原因对应解决通信故障,及时恢复虚拟网络的通信。[0065]如图3所示,为本发明对虚拟网络中故障节点进行定位的方法的第三实施例的具体流程图。
[0066]基于第一和第二实施例,在步骤S13之后,还包括:
[0067]步骤S16,向虚拟网络中的控制设备发送故障恢复指令,以使虚拟控制设备控制确定的发生故障的节点进行与所述故障恢复指令对应的操作,并恢复虚拟网络的通信。
[0068]具体的,在虚拟网络中,所有虚拟设备均由一个虚拟控制设备控制,对虚拟设备进行管理,当虚拟网络发生通信故障时,向虚拟网络中的虚拟控制设备发送故障恢复指令,所述恢复指令包括确定的拓扑节点的信息及拓扑节点发生故障的原因,虚拟控制设备在接收到恢复指令时,获取恢复指令中拓扑节点的信息及拓扑节点发生故障的原因,并根据恢复指令中获取的拓扑节点的信息及拓扑节点发生故障的原因找出预存的解决通信故障的故障恢复方案,并在找出有解决通信故障的恢复方案时,向发生通信故障的拓扑节点的虚拟设备发送恢复指令及故障恢复方案,发生通信故障的虚拟设备根据接收的恢复指令及恢复方案恢复通信。例如,确定的发生故障的拓扑节点以虚拟路由器(0X3000)为例,确定的故障原因为虚拟路由器无法响应接收的数据包为例,向虚拟控制设备发送恢复指令,且所述恢复指令包括虚拟路由器的身份信息(0X3000),虚拟控制设备在接收到恢复指令时,获取发生故障的虚拟设备的信息0X3000及故障原因为虚拟路由器无法响应接收的数据包,根据虚拟路由器的身份信息0X3000及故障原因虚拟路由器无法响应接收的数据包的信息找出预存的解决通信故障的恢复方案,找出的恢复方案是重启该虚拟路由器0X3000,虚拟控制设备将重新启动虚拟路由器0X3000的故障恢复方案发送给故障虚拟设备,将路由器0X3000重启,以恢复通信;所述恢复方案还可以是启动备用虚拟路由器0X2000,或重组该虚拟网络将该故障虚拟路由器0X3000断开,根据确定的故障原因找出预设的恢复方案找出对应的解决方案。
[0069]通过确定的发生故障的拓扑节点及故障原因找出对应的恢复方案,并控制确定的发生故障的拓扑节点完成与恢复方案对应的操作,以对发生故障的虚拟网络进行通信恢复处理,以使虚拟网络及时恢复通信。
[0070]如图4所示,为本发明对虚拟网络中故障节点进行定位的方法的第四实施例的具体流程图。
[0071]基于上述第三实施例,在步骤S16之后,还包括:
[0072]步骤S17,在达到预设时间时,向所述确定的发生故障的拓扑节点发送检测数据包。
[0073]具体的,在虚拟控制设备向确定的发生故障的拓扑节点发送检测数据包发送恢复指令及恢复方案后,到达预设时间时,向该发生通信故障的确定的发生故障的拓扑节点发送检测数据包发送检测数据包,以验证该通信故障的拓扑节点是否已经恢复通信。
[0074]步骤S18,当达到预设时间未接收到所述发生通信故障的拓扑节点发送的响应信号时,发出告警信息,以提示通信故障恢复失败。
[0075]具体的,当向该发生通信故障的拓扑节点发送检测数据包,以验证该通信故障的拓扑节点是否已经恢复通信达到预设时间时,未接收到所述发生通信故障的拓扑节点发送的响应信号时,即该故障通信设备根据虚拟控制设备找出的故障恢复方案不能恢复通信,发出告警信息,以提示通信故障恢复失败,提醒用户及时对该通信故障进行恢复,以恢复虚拟网络的通信;所述告警信息可以是文字显示、声音提醒或图片提醒,也还可以是通过预设的方式向用户发送短信息,也还可以是其他任意适用的可以提醒用户通信故障恢复失败的告警方式。通过在发生故障的拓扑节点按照虚拟控制设备发送的故障恢复方案恢复失败时发出告警信息,以提醒用户通信故障恢复失败,及时对该通信故障进行恢复,以使虚拟通信网络恢复通信,提高用户体验。
[0076]如图5所示,为本发明对虚拟网络中故障节点进行定位的方法的第五实施例的具体流程图。
[0077]基于上述第一和第二实施例,所述步骤Sll包括:
[0078]步骤S19,向拓扑结构中的第一级拓扑节点发送检测数据包,在接收到第一级拓扑节点响应的数据包时,向拓扑结构中的第二级拓扑节点发送检测数据包。
[0079]步骤S20,在接收到第二级拓扑节点响应的数据包时,向拓扑结构中的第三级拓扑节点发送检测数据包。
[0080]步骤S21,以此类推,在接收到第N级拓扑节点响应的数据包时,向目标设备发送检测数据。
[0081 ] 具体的,虚拟网络拓扑结构中存在多级拓扑节点,顺次向拓扑结构中的拓扑节点发送检测数据包,并在前一级的拓扑节点响应发送的检测数据包时,向下一级拓扑节点发送检测数据包;例如,该拓扑结构中存在拓扑节点虚拟交换机,虚拟路由器,目标设备虚拟服务器,向虚拟交换机发送检测数据,在接收到虚拟交换机的响应数据包时,向虚拟路由器发送检测数据包,并在接收到虚拟路由器发送的响应数据包时,将检测数据包发送给虚拟服务器。
[0082]通过按照预设的拓扑结构向目标设备发送检测数据包;侦测并接收所述拓扑结构中的节点以及目标设备发送的响应数据包;当在预设时间内未接收到所述目标设备发送的响应数据包时,则根据接收到的拓扑结构中发送的响应数据包获取发送响应数据包的节点;根据获取到的发送响应数据包的节点以及预设的拓扑结构确定发生故障的节点,实现了对虚拟网络中发生故障的具体节点进行定位,确定发生故障的具体节点位置。
[0083]如图6所示,为本发明对虚拟网络中故障节点进行定位的装置的第一实施例的具体架构图。该装置包括:数据接发模块10,获取模块20及处理模块30,
[0084]所述数据接发模块10,用于按照预设的拓扑结构向目标设备发送检测数据包,侦测并接收所述拓扑结构中的节点以及目标设备发送的响应数据包。
[0085]具体的,构建虚拟网络中特定的检测数据包,数据接发模块10实时或定时按照预设的拓扑向目标设备发送检测数据包,在发出检测数据包后,数据接发模块10侦测并接收所述拓扑结构中的节点以及目标设备发送的响应数据包;所述预设的拓扑结构是根据网络数据传送需要构建的一个拓扑形式的虚拟网络,在该虚拟网络中按照数据传送的需求逐级设置各个节点。在本发明其他实施例中,也可以是通过预先设定一个或多个固定的待检测节点,将检测数据包发送给预先设定的待检测的节点,而本实施例中是将检测数据包发送给虚拟网络中的每一个节点,不仅仅局限于将检测数据包发送给固定的节点,所述节点不单单指的是路由交换设备,还可以是服务器等任意虚拟网络中配置的设备。例如,以虚拟交换机和虚拟路由器为拓扑节点,虚拟服务器为目标设备为例,所述数据接发模块10向拓扑结构中的节点以及目标设备发送检测数据包的方式可以是先将检测数据包发送给虚拟交换机,在虚拟交换机响应该检测数据包之后,虚拟交换机将接收的检测数据包发送给下一级拓扑节点虚拟路由器,在虚拟路由器响应该检测数据包之后,虚拟路由器再向目标设备虚拟服务器发送接收到的检测数据包;也还可以是,数据接发模块10将检测数据包发送给虚拟交换机,在接收到虚拟交换机的响应数据包的之后,向虚拟路由器发送检测数据包,在接收到虚拟路由器的响应数据包的之后,向虚拟服务器发送检测数据包;也还可以是其他任意适用的向拓扑结构中的节点以及目标设备发送检测数据包的方式。在本发明其他实施例中,还可以是将检测数据包发送到网络环路,对网络环路中的设备进行检测分析,所述检测数据包可以根据需要进行设置,并不局限于故障检测数据包。
[0086]所述获取模块20,用于当在预设时间内未接收到所述目标设备发送的响应数据包时,则根据接收到的拓扑结构中发送的响应数据包获取发送响应数据包的节点。
[0087]具体的,预设时间,当到达预设的时间时,数据接发模块10未接收到所述目标设备发送的响应数据包时,则判定该网络拓扑结构中发生了通信故障,获取模块20根据接收到的拓扑结构中发送的响应数据包获取发送响应数据包的节点;所述预设时间可以是间隔Is或间隔3s,也还可以是其他任意适用的用户提前设置的时间。例如,数据接发模块10向拓扑结构中的节点以及目标设备发送检测数据包的方式为先将检测数据包发送给虚拟交换机,在虚拟交换机响应该检测数据包之后,虚拟交换机将接收的检测数据包发送给下一级拓扑节点虚拟路由器,在虚拟路由器响应该检测数据包之后,虚拟路由器再向目标设备虚拟服务器发送接收到的检测数据包;当在预设的时间内未数据接发模块10接收到虚拟服务器发送的响应数据包时,获取模块20根据接收到的响应数据包获取发送响应数据包的节点;例如,获取模块20根据数据接发模块10接收到的响应数据包中包括的节点的信息,获取发送响应数据包的节点是虚拟交换机。
[0088]所述处理模块30,用于根据获取到的发送响应数据包的节点以及预设的拓扑结构确定发生故障的节点。
[0089]具体的,获取模块20根据接收到的拓扑结构中发送的响应数据包获取发送响应数据包的节点,例如,数据接发模块10向拓扑结构中的节点以及目标设备发送检测数据包的方式为先将检测数据包发送给虚拟交换机,在虚拟交换机响应该检测数据包之后,虚拟交换机将接收的检测数据包发送给下一级拓扑节点虚拟路由器,在虚拟路由器响应该检测数据包之后,虚拟路由器再向目标设备虚拟服务器发送接收到的检测数据包;获取模块20根据接收到的响应数据包中包括的节点的信息,获取发送响应数据包的是虚拟交换机,处理模块30根据获取到的发送响应数据包的节点以及预设的拓扑结构确定发生故障的节点为虚拟路由器;若根据接收到的响应数据包中包括的节点的信息,获取模块20获取发送响应数据包的是虚拟交换机和虚拟路由器,则处理模块30根据获取到的发送响应数据包的节点以及预设的拓扑结构确定发生故障的是目标设备。
[0090]进一步地,所述数据接发模块10,还用于向拓扑结构中的第一级拓扑节点发送检测数据包,在接收到第一级拓扑节点响应的数据包时,向拓扑结构中的第二级拓扑节点发送检测数据包,及
[0091]在接收到第二级拓扑节点响应的数据包时,向拓扑结构中的第三级拓扑节点发送检测数据包,及
[0092]以此类推,在接收到第N级拓扑节点响应的数据包时,向目标设备发送检测数据。[0093]具体的,虚拟网络拓扑结构中存在多级拓扑节点,数据接发模块10顺次向拓扑结构中的拓扑节点发送检测数据包,并在前一级的拓扑节点响应发送的检测数据包时,向下一级拓扑节点发送检测数据包;例如,该拓扑结构中存在拓扑节点虚拟交换机,虚拟路由器,目标设备虚拟服务器,数据接发模块10向虚拟交换机发送检测数据,在接收到虚拟交换机的响应数据包时,数据接发模块10向虚拟路由器发送检测数据包,并在接收到虚拟路由器发送的响应数据包时,数据接发模块10将检测数据包发送给虚拟服务器。
[0094]通过数据接发模块10按照预设的拓扑结构向目标设备发送检测数据包;侦测并接收所述拓扑结构中的节点以及目标设备发送的响应数据包;当在预设时间内未接收到所述目标设备发送的响应数据包时,则获取模块20根据接收到的拓扑结构中发送的响应数据包获取发送响应数据包的节点;处理模块30根据获取到的发送响应数据包的节点以及预设的拓扑结构确定发生故障的节点,实现了对虚拟网络中任意一个节点进行检测,并对虚拟网络中发生故障的具体节点进行定位,确定发生故障的具体节点位置。
[0095]如图7所示,为本发明对虚拟网络中故障节点进行定位的装置的第二实施例的具体架构图。该装置还包括判断模块40,
[0096]所述判断模块40,用于判断接收的响应数据包是否是正常的响应数据包。
[0097]具体的,获取模块20根据接收到的拓扑结构中发送的响应数据包获取发送响应数据包的节点,例如,获取模块20根据接收到的响应数据包,获取到响应数据包中包括的节点信息确定接收到的响应数据包是虚拟交换机发送过来的,但未能根据接收到的响应数据包,获取到响应数据包中包括的节点信息确定接收到虚拟路由器发送过来的响应数据包,判断模块40判断确定的接收到的虚拟交换机发送过来的响应数据包是否是正常的响应数据包。例如,所述数据接发模块10向拓扑结构中的节点以及目标设备发送检测数据包的方式为先将检测数据包发送给虚拟交换机,在虚拟交换机响应该检测数据包之后,虚拟交换机将接收的检测数据包发送给下一级拓扑节点虚拟路由器,在虚拟路由器响应该检测数据包之后,虚拟路由器再向目标设备虚拟服务器发送接收到的检测数据包;所述正常的响应数据包为该数据包能通过虚拟交换机传送到下一级虚拟设备虚拟路由器,向发送检测数据包的虚拟设备发送正常的响应数据包,所述正常的响应数据包中包括该拓扑节点的信息;非正常的响应数据包即为虚拟交换机不能将数据包传输给下一级虚拟设备虚拟路由器,但能响应接收到的检测数据包,所述虚拟交换机不能将数据包传输给下一级虚拟设备虚拟路由器的原因可以是虚拟交换机设置的参数值不足以满足将数据包发送至虚拟路由器;也还可以是其他任意能发出响应数据包到不能将数据包发送至下一级拓扑节点的故障,例如,虚拟交换机设置了不可达,虚拟交换机设置的单个传送数据量过小等;所述非正常的响应数据包包括虚拟交换机的节点信息及故障的原因。
[0098]所述处理模块30,用于当接收的响应数据包是正常的响应数据包时,根据获取到的发送响应数据包的节点以及预设的拓扑结构确定发生故障的节点。
[0099]具体的,当数据接发模块10接收的响应数据包是正常的响应数据包时,处理模块30根据获取到的发送响应数据包的节点以及预设的拓扑结构确定发生故障的节点;例如,获取模块20根据接收到的响应数据包中包括的节点信息获取接收到的虚拟交换机发送过来的响应数据包,但根据接收到的响应数据包中包括的节点信息未能确定接收到虚拟路由器发送过来的响应数据包,当接收的虚拟交换机发送的响应数据包是正常的响应数据包时,即虚拟交换机不为发生通信故障的节点,处理模块30根据预设的拓扑结构确定发生故障的节点为虚拟路由器;当接收的虚拟交换机发送的响应数据包为非正常的响应数据包时,处理模块30确定虚拟交换机发生故障,获取非正常的响应数据包中包括的虚拟交换机不能将数据包发送给虚拟路由器的原因,根据获取的虚拟交换机不能将数据包发送给虚拟路由器的原因向虚拟交换机发送修改虚拟交换机对应的参数的指令,以使虚拟网络恢复通信。
[0100]通过数据接发模块10按照预设的拓扑结构向目标设备发送检测数据包;侦测并接收所述拓扑结构中的节点以及目标设备发送的响应数据包;当在预设时间内未接收到所述目标设备发送的响应数据包时,则获取模块20根据接收到的响应数据包获取发送响应数据包的节点;并通过判断模块40判断接收的拓扑节点发送的响应数据包是否是正常数据包,处理模块30根据拓扑节点发送的响应数据包及预设的拓扑结构确定虚拟网络中发生故障的拓扑节点及发生故障的原因,以使根据确定发生故障的节点及故障的原因对应解决通信故障,以使虚拟网络及时恢复通信。
[0101]进一步地,所述数据接发模块10,还用于向虚拟网络中的控制设备发送故障恢复指令,以使虚拟控制设备控制确定的发生故障的节点进行与所述故障恢复指令对应的操作,并恢复虚拟网络的通信。
[0102]具体的,在虚拟网络中,所有虚拟设备均由一个虚拟控制设备控制,对虚拟设备进行管理,当虚拟网络发生通信故障时,数据接发模块10向虚拟网络中的虚拟控制设备发送故障恢复指令,所述恢复指令包括确定的拓扑节点的信息及拓扑节点发生故障的原因,虚拟控制设备在接收到恢复指令时,获取恢复指令中拓扑节点的信息及拓扑节点发生故障的原因,并根据恢复指令中获取的拓扑节点的信息及拓扑节点发生故障的原因找出预存的解决通信故障的故障恢复方案,并在找出有解决通信故障的恢复方案时,数据接发模块10向发生通信故障的拓扑节点的虚拟设备发送恢复指令及故障恢复方案,发生通信故障的虚拟设备根据接收的恢复指令及恢复方案恢复通信。例如,确定的发生故障的拓扑节点以虚拟路由器(0X3000)为例,确定的故障原因为虚拟路由器无法响应接收的数据包为例,数据接发模块10向虚拟控制设备发送恢复指令,且所述恢复指令包括虚拟路由器的身份信息(0X3000),虚拟控制设备在接收到恢复指令时,获取发生故障的虚拟设备的信息0X3000及故障原因为虚拟路由器无法响应接收的数据包,根据虚拟路由器的身份信息0X3000及故障原因虚拟路由器无法响应接收的数据包的信息找出预存的解决通信故障的恢复方案,找出的恢复方案是重启该虚拟路由器0X3000,虚拟控制设备将重新启动虚拟路由器0X3000的故障恢复方案发送给故障虚拟设备,将路由器0X3000重启,以恢复通信;所述恢复方案还可以是启动备用虚拟路由器0X2000,或重组该虚拟网络将该故障虚拟路由器0X3000断开,根据确定的故障原因找出预设的恢复方案找出对应的解决方案。
[0103]通过确定的发生故障的拓扑节点及故障原因找出对应的恢复方案,并控制确定的发生故障的拓扑节点完成与恢复方案对应的操作,以对发生故障的虚拟网络进行通信恢复处理,以使虚拟网络及时恢复通信。
[0104]如图8所示,为本发明对虚拟网络中故障节点进行定位的装置的第三实施例的具体架构图。该装置还包括提醒模块50,
[0105]所述数据接发模块10,还用于在达到预设时间时,向所述确定的发生故障的节点发送检测数据包。
[0106]具体的,在虚拟控制设备向确定的发生故障的拓扑节点发送检测数据包发送恢复指令及恢复方案后,到达预设时间时,数据接发模块10向该发生通信故障的确定的发生故障的拓扑节点发送检测数据包发送检测数据包,以验证该通信故障的拓扑节点是否已经恢
复通/[目O
[0107]所述提醒模块50,用于当未接收到所述确定的发生故障的节点发送的响应数据包时,发出告警信息,以提不故障恢复失败。
[0108]具体的,当数据接发模块10向该发生通信故障的拓扑节点发送检测数据包,以验证该通信故障的拓扑节点是否已经恢复通信达到预设时间时,数据接发模块10未接收到所述发生通信故障的拓扑节点发送的响应信号时,即该故障通信设备根据虚拟控制设备找出的故障恢复方案不能恢复通信,提醒模块50发出告警信息,以提示通信故障恢复失败,提醒用户及时对该通信故障进行恢复,以恢复虚拟网络的通信;所述告警信息可以是文字显示、声音提醒或图片提醒,也还可以是通过预设的方式向用户发送短信息,也还可以是其他任意适用的可以提醒用户通信故障恢复失败的告警方式。通过在发生故障的拓扑节点按照虚拟控制设备发送的故障恢复方案恢复失败时提醒模块50发出告警信息,以提醒用户通信故障恢复失败,及时对该通信故障进行恢复,以使虚拟通信网络恢复通信,提高用户体验。
[0109]以上所述仅为本发明的优选实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的【技术领域】,均同理包括在本发明的专利保护范围内。
【权利要求】
1.一种对虚拟网络中故障节点进行定位的方法,其特征在于,该方法包括: 按照预设的拓扑结构向目标设备发送检测数据包,侦测并接收所述拓扑结构中的节点以及目标设备发送的响应数据包; 当在预设时间内未接收到所述目标设备发送的响应数据包时,则根据接收到的响应数据包获取发送响应数据包的节点; 根据获取到的发送响应数据包的节点以及预设的拓扑结构确定发生故障的节点。
2.根据权利要求1所述的对虚拟网络中故障节点进行定位的方法,其特征在于,所述根据获取到的发送响应数据包的节点以及预设的拓扑结构确定发生故障的节点的步骤包括: 判断接收的响应数据包是否是正常的响应数据包; 当接收的响应数据包是正常的响应数据包时,根据获取到的发送响应数据包的节点以及预设的拓扑结构确定发生故障的节点。
3.根据权利要求1或2所述的对虚拟网络中故障节点进行定位的方法,其特征在于,在所述根据获取到的发送响应数据包的节点以及预设的拓扑结构确定发生故障的节点的步骤之后,该方法还包括: 向虚拟网络中的控制 设备发送故障恢复指令,以使虚拟控制设备控制确定的发生故障的节点进行与所述故障恢复指令对应的操作,并恢复虚拟网络的通信。
4.根据权利要求3所述的对虚拟网络中故障节点进行定位的方法,其特征在于,在所述向虚拟网络中的控制设备发送故障恢复指令,以使虚拟控制设备控制确定的发生故障的节点进行与所述故障恢复指令对应的操作,并恢复虚拟网络的通信的步骤之后,该方法还包括: 在达到预设时间时,向所述确定的发生故障的拓扑节点发送检测数据包; 当未接收到所述确定的发生故障的节点发送的响应数据包时,发出告警信息,以提示故障恢复失败。
5.根据权利要求1或2所述的对虚拟网络中故障节点进行定位的方法,其特征在于,所述按照预设的拓扑结构向目标设备发送检测数据包的步骤包括: 向拓扑结构中的第一级拓扑节点发送检测数据包,在接收到第一级拓扑节点响应的数据包时,向拓扑结构中的第二级拓扑节点发送检测数据包; 在接收到第二级拓扑节点响应的数据包时,向拓扑结构中的第三级拓扑节点发送检测数据包; 以此类推,在接收到第N级拓扑节点响应的数据包时,向目标设备发送检测数据。
6.一种对虚拟网络中故障节点进行定位的装置,其特征在于,该装置包括: 数据接发模块,用于按照预设的拓扑结构向目标设备发送检测数据包,侦测并接收所述拓扑结构中的节点以及目标设备发送的响应数据包; 获取模块,用于当在预设时间内未接收到所述目标设备发送的响应数据包时,则根据接收到的响应数据包获取发送响应数据包的节点; 处理模块,用于根据获取到的发送响应数据包的节点以及预设的拓扑结构确定发生故障的节点。
7.根据权利要求6所述的对虚拟网络中故障节点进行定位的装置,其特征在于,该装置还包括: 判断模块,用于判断接收的响应数据包是否是正常的响应数据包; 所述处理模块,用于当接收的响应数据包是正常的响应数据包时,根据获取到的发送响应数据包的节点以及预设的拓扑结构确定发生故障的节点。
8.根据权利要求6或7所述的对虚拟网络中故障节点进行定位的装置,其特征在于, 所述数据接发模块,还用于向虚拟网络中的控制设备发送故障恢复指令,以使虚拟控制设备控制确定的发生故障的节点进行与所述故障恢复指令对应的操作,并恢复虚拟网络的通信。
9.根据权利要求8所述的对虚拟网络中故障节点进行定位的装置,其特征在于,该装置还包括提醒模块, 所述数据接发模块,还用于在达到预设时间时,向所述确定的发生故障的节点发送检测数据包; 所述提醒模块,用于当未接收到所述确定的发生故障的节点发送的响应数据包时,发出告警信息,以提示故障恢复失败。
10.根据权利要求6或7所述的对虚拟网络中故障节点进行定位的装置,其特征在于, 所述数据接发模块,还用于向拓扑结构中的第一级拓扑节点发送检测数据包,在接收到第一级拓扑节点响应的数据包时,向拓扑结构中的第二级拓扑节点发送检测数据包,及在接收到第二级拓扑节点响应的数据包时,向拓扑结构中的第三级拓扑节点发送检测数据包,及 以此类推,在接收到第N级拓 扑节点响应的数据包时,向目标设备发送检测数据。
【文档编号】H04L12/24GK103441897SQ201310377012
【公开日】2013年12月11日 申请日期:2013年8月26日 优先权日:2013年8月26日
【发明者】李星, 周勇, 揭英作 申请人:深信服网络科技(深圳)有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1