CN114172789B - 虚拟设备链路探测方法、装置、设备及存储介质 - Google Patents

虚拟设备链路探测方法、装置、设备及存储介质 Download PDF

Info

Publication number
CN114172789B
CN114172789B CN202111484894.2A CN202111484894A CN114172789B CN 114172789 B CN114172789 B CN 114172789B CN 202111484894 A CN202111484894 A CN 202111484894A CN 114172789 B CN114172789 B CN 114172789B
Authority
CN
China
Prior art keywords
information
detection
virtual
flow table
table information
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.)
Active
Application number
CN202111484894.2A
Other languages
English (en)
Other versions
CN114172789A (zh
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 Topsec Technology Co Ltd
Beijing Topsec Network Security Technology Co Ltd
Beijing Topsec Software Co Ltd
Original Assignee
Beijing Topsec Technology Co Ltd
Beijing Topsec Network Security Technology Co Ltd
Beijing Topsec Software 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 Topsec Technology Co Ltd, Beijing Topsec Network Security Technology Co Ltd, Beijing Topsec Software Co Ltd filed Critical Beijing Topsec Technology Co Ltd
Priority to CN202111484894.2A priority Critical patent/CN114172789B/zh
Publication of CN114172789A publication Critical patent/CN114172789A/zh
Application granted granted Critical
Publication of CN114172789B publication Critical patent/CN114172789B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/06Management of faults, events, alarms or notifications
    • H04L41/0677Localisation of faults
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/06Management of faults, events, alarms or notifications
    • H04L41/0631Management of faults, events, alarms or notifications using root cause analysis; using analysis of correlation between notifications, alarms or events based on decision criteria, e.g. hierarchy, tree or time analysis
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/12Discovery or management of network topologies
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L43/00Arrangements for monitoring or testing data switching networks
    • H04L43/08Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/02Topology update or discovery
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L49/00Packet switching elements
    • H04L49/55Prevention, detection or correction of errors
    • H04L49/555Error detection

Abstract

本申请提供一种虚拟设备链路探测方法、装置、设备及存储介质,其中,虚拟设备链路探测方法包括:接收探测任务,探测任务包括探测起点的信息和探测终点的信息;根据探测起点的信息和探测终点的信息,确定从探测起点前往探测终点需经过的虚拟机链路和虚拟机链路的流表信息;连接虚拟设备节点所在的物理主机;判断虚拟设备节点所在的物理主机是否存在虚拟设备节点的流表信息或物理主机的流表信息是否与虚拟设备节点的流表信息冲突等步骤。本申请能够在不需要新增一个网络服务器,并且在每台设备上安装数据探针以将数据探针作为代理工具的前提下,准确地、灵活地、快速地对虚拟设备进行探测和故障定位。

Description

虚拟设备链路探测方法、装置、设备及存储介质
技术领域
本申请涉及计算机技术领域,具体而言,涉及一种虚拟设备链路探测方法、装置、设备及存储介质。
背景技术
在超融合、云计算飞速发展的时代,越来越多的应用选择部署在云环境上。并且随着云技术的不断成熟,单一云计算集群可能高达成千上万个虚拟机,这些虚拟机往往需要分为成百上千个业务组,不同的业务组需要连接不同网络。比如说10个虚拟机A组成了一个Web业务组,需要使用192.168.1.0/24网段;另外10个虚拟机B组成了一个数据库业务组,需要使用192.168.2.0/24地址。而且在云计算多租户的特性下,每个租户都会有自己的多个不同业务网段,不同租户可能还会存在使用相同的业务网段,比如租户A和租户B会使用到192.168.1.0/24网段。那么在这种需求的前提下,为了满足在有限的条件下,可以创建足够数量的虚拟网段以及为了满足在不同租户的前提下,虚拟网段可以重复出现的需求,越来越多的超融合集群会引入SDN技术。
SDN作为一种软件定义网络的技术,他可以将超融合集群中的所有网络相关设备集中管理,集中控制。SDN技术让转发平面与控制平面分离,在超融合当中,转发平面指的是集群中的物理主机,控制平面指的是SDN控制器,对于管理员来说只要管理SDN控制器即可管理整个集群,所以可以大大减少管理员的工作量。并且在SDN控制器中所创建的虚拟设备都是在物理主机上生成相关流表,这些虚拟设备并不需要一个完整的操作系统,仅需要占用较少的CPU与内存,可以很大程度节省资源,所以可以有限的条件下创建更多的虚拟设备;另外关于不同租户使用相关网段的方面,SDN环境中的底层物理主机之间,使用了隧道封装技术,比如Geneve/Vxlan等,每个分配一个ID号,封装到隧道中,从而根据ID区分租户之间的数据包,满足了租户之间网络互相隔离,可以使用相关网段的需求。
但是由于引入了SDN技术,超融合集群会产生成千上万个SDN虚拟设备。虚拟机会使用这些SDN虚拟设备中互相联通,且这些SDN虚拟设备遍布在成千上万个物理网络节点上,当其中一个虚拟机出现网络不通时,网络管理员需要在这错综复杂的庞大环境下排查故障,往往使用的办法是进入虚拟机里面通过traceroute和ping进行逐步排查,或者在虚拟机里面安装个代理程序(调用检测工具)排查,这个过程需要消耗很多时间,并且业务虚拟机不一定允许安装代理工具,也不一定存在traceroute等命令,因此,现有虚拟机链路排查存在准确性低、排查速度低、排查不灵活等缺点。
发明内容
本申请实施例的目的在于提供虚拟设备链路探测方法、装置、设备及存储介质,用于提高虚拟机链路故障排查准确性、灵活性和便捷性。
为此,本申请第一方面提供一种虚拟设备链路探测方法,所述方法包括:
接收探测任务,所述探测任务包括探测起点的信息和探测终点的信息;
根据所述探测起点的信息和所述探测终点的信息,确定从所述探测起点前往所述探测终点需经过的虚拟机链路和所述虚拟机链路的流表信息,所述虚拟机链路包括虚拟设备节点,所述虚拟机链路的流表信息包括所述虚拟设备节点的第一流表信息;
连接所述虚拟设备节点所在的物理主机;
判断所述虚拟设备节点所在的物理主机是否存在所述虚拟设备节点的流表信息或所述物理主机的流表信息是否与所述虚拟设备节点的流表信息冲突,若所述物理主机不存在所述虚拟设备节点的流表信息或所述物理主机的流表信息与所述虚拟设备节点的流表信息冲突,则确定所述虚拟设备节点出现故障。
在本申请第一方面中,作为一种可选的实施方式,在所述判断所述虚拟设备节点所在的物理主机是否存在所述虚拟设备节点的流表信息或所述物理主机的流表信息是否与所述虚拟设备节点的流表信息冲突之后,所述方法还包括:
生成所述虚拟设备节点出现故障的原因信息和所述虚拟设备节点在网络中的位置;
展示所述虚拟设备节点出现故障的原因信息和所述虚拟设备节点在网络中的位置。
在本申请第一方面中,作为一种可选的实施方式,在所述接收探测任务之后,所述根据所述探测起点的信息和所述探测终点的信息,确定从所述探测起点前往所述探测终点需经过的虚拟机链路和所述虚拟机链路的流表信息之前,所述方法还包括:
基于所述探测起点的信息,向所述探测起点发送第一探测包;
基于所述探测起点针对所述第一探测包的响应结果,判断所述探测起点是否有效。
在本申请实施例中,作为一种可选的实施方式,在根据所述探测起点的信息和所述探测终点的信息,确定从所述探测起点前往所述探测终点需经过的虚拟机链路和所述虚拟机链路的流表信息之后,所述连接所述虚拟设备节点所在的物理主机之前,所述方法还包括:
确定虚拟设备节点所在的物理主机。
在本申请第一方面中,作为一种可选的实施方式,所述根据所述探测起点的信息和所述探测终点的信息,确定从所述探测起点前往所述探测终点需经过的虚拟机链路和所述虚拟机链路的流表信息,包括:
获取SDN控制器的逻辑流表信息;
基于所述SDN控制器的逻辑流表信息、所述探测起点的信息和所述探测终点的信息,确定从所述探测起点前往所述探测终点需经过的虚拟机链路和所述虚拟机链路的流表信息。
在本申请第一方面中,作为一种可选的实施方式,所述根据所述探测起点的信息和所述探测终点的信息,确定从所述探测起点前往所述探测终点需经过的虚拟机链路和所述虚拟机链路的流表信息,还包括:
当所述探测起点与所述探测终点终之间的所述虚拟设备节点被安全保护或无法得到所述虚拟设备节点得到流表信息时,中止探测。
本申请第二方面公开一种虚拟设备链路探测装置,所述装置包括:
链路路标确定模块,用于接收探测任务,所述探测任务包括探测起点的信息和探测终点的信息;
链路路标确定模块,用于根据所述探测起点的信息和所述探测终点的信息,确定从所述探测起点前往所述探测终点需经过的虚拟机链路和所述虚拟机链路的流表信息,所述虚拟机链路包括虚拟设备节点,所述虚拟机链路的流表信息包括所述虚拟设备节点的第一流表信息;
流表探测模块,用于连接所述虚拟设备节点所在的物理主机;
流表探测模块,用于判断所述虚拟设备节点所在的物理主机是否存在所述虚拟设备节点的流表信息或所述物理主机的流表信息是否与所述虚拟设备节点的流表信息冲突,若所述物理主机不存在所述虚拟设备节点的流表信息或所述物理主机的流表信息与所述虚拟设备节点的流表信息冲突,则确定所述虚拟设备节点出现故障。
在本申请第二方面中,作为一种可选的实施方式,所述装置还包括:
生成模块,用于生成所述虚拟设备节点出现故障的原因信息;
展示模块,用于展示所述虚拟设备节点出现故障的原因信息和所述虚拟设备节点在网络中的位置。
本申请第三方面公开一种虚拟设备链路探测设备,所述设备包括:
存储有可执行程序代码的存储器;
与所述存储器耦合的处理器;
所述处理器调用所述存储器中存储的所述可执行程序代码,执行本申请第一方面的虚拟设备链路探测方法。
本申请第四方面公开一种存储介质,所述存储介质存储有计算机指令,所述计算机指令被调用时,用于执行本申请第一方面的虚拟设备链路探测方法。
与现有技术相比,本申请通由于是应用在SDN网络结构中,因此能够利用SDN网络结构中的SDN控制器所控制的网络拓扑结构信息,完成虚拟设备网络链路的探测,并基于虚拟设备的流表信息判断该虚拟设备是否发生故障,在这一过程中,本申请通过物理主机上的流表信息和基于SDN控制器得到的虚拟设备的流表信息就能够判断与物理主机连接的虚拟设备是否畅通,而不需要新增一个网络服务器,并且在每台设备上安装数据探针以将数据探针作为代理工具,进而能够准确地、灵活地、快速地对虚拟设备进行探测和故障定位。
然而现有技术,由于不能够利用SDN控制器中的SDN网络结构,因此在进行链路探测时,需要新增一个网络服务器,并且需要网络中的每台设备安装数据探针作为代理工具,这样一来,如果网络中的设备数据庞大,则需要安装很多数据探针,进而提高了操作人员的工作量,从而降低了链路探测的灵活性和谈了探测的速度。另一方面,由于网络中的虚拟设备没有真正操作系统,或者有些虚拟设备不会响应LLDP的请求,只是在内核上通过openflow流表租户了一个datapath实现了交换机与路由器的功能,所以即使新增了网路服务器,该网络服务器也无法构成完整的网络拓扑,进而无法基于完整的网络拓扑结构进行准确的链路探测。
附图说明
为了更清楚地说明本申请实施例的技术方案,下面将对本申请实施例中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本申请的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。
图1是本申请实施例公开的一种虚拟设备链路探测方法的流程示意图;
图2是本申请实施例公开的一种虚拟设备链路探测架构的结构示意图;
图3是本申请实施例公开的步骤102的场景示意图;
图4是本申请实施例公开的步骤102的另一场景示意图;
图5是本申请实施例公开的一种确定虚拟设备所在物理主机的场景示意图;
图6是本申请实施例公开的一种虚拟设备链路探测装置的结构示意图;
图7是本申请实施例公开的一种虚拟设备链路探测设备的结构示意图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行描述。
实施例一
请参阅图1,图1是本申请实施例公开的虚拟设备链路探测方法的流程示意图。如图1所示,本申请实施例的虚拟设备链路探测方法包括以下步骤:
101、接收探测任务,探测任务包括探测起点的信息和探测终点的信息;
102根据探测起点的信息和探测终点的信息,确定从探测起点前往探测终点需经过的虚拟机链路和虚拟机链路的流表信息,虚拟机链路包括虚拟设备节点,虚拟机链路的流表信息包括虚拟设备节点的第一流表信息;
103、连接虚拟设备节点所在的物理主机;
104、判断虚拟设备节点所在的物理主机是否存在虚拟设备节点的流表信息或物理主机的流表信息是否与虚拟设备节点的流表信息冲突,若物理主机不存在虚拟设备节点的流表信息或物理主机的流表信息与虚拟设备节点的流表信息冲突,则确定虚拟设备节点出现故障。
在本申请实施例中,虚拟设备可以是虚拟交换机、虚拟路由器等,另一方面,虚拟设备节点是指在根据虚拟设备在SDN网络结构中的节点。
本申请实施例的虚拟设备链路探测方法应用在SDN网络架构中,其中,SDN网络结构包括SDN控制器和多个集群物理主机,并且SDN控制器与多个集群物理主机、或多个物理主机之间采用openflow协议通信。具体地,如图2所示,本申请实施例的SDN网络结构包括一个SDN控制器和两个集群物理主机,其中,每个集群物理主机可承载虚拟设备。
进一步地,为了执行本申请实施例的虚拟设备链路探测方法,在SDN控制器中设置了链路路标确定模块,其中,该链路路标确定模块用于基于SDN网络结构所提供的集群网络结构执行本申请实施例中的步骤101和步骤102。
在本申请实施例中,为集群物理主机执行探测任务,如图2所示,SDN控制器还包括探测包执行模块,其中,当链路路标确定模块确定出路标后,触发的探测包执行模块向集群物理主机发送探测包,使得集群物理主机的流表探测模块基于探测包执行本申请实施例的步骤103和步骤104。另一方面,为了收集集群物理主机的探测结果,本申请实施例的SDN控制器还包括探测结果收集模块,相应地,集群物理主机也设有探测反馈模块,其中,集群物理主机通过探测反馈模块将流表探测结果发送给SDN控制器的探测结果收集模块。
在本申请实施例中,流表探测模块执行探测任务过程,会查询网桥OVS中的流表,例如,如图2所示,可查询到网桥OVS中的两个流表(flowtable),其中,一个流表用控制数据通道datapath0的数据转发,另一流表用于控制数据通道datapath1的数据转发。
在本申请实施例中,对于步骤101,探测起点的信息包括了探测起点的IP地址和MAC地址,而探测终点的信息包括了探测起点的IP地址和MAC地址。
在本申请实施例中,对于步骤102,由于本申请实施例的方法应用于SDN网络结构中,而在SDN网络结构中,SDN控制器中有用于控制集群物理主机转发策略的数据,因此基于这些数据,SDN控制器能够确定一个数据要从探测起点传输到探测终点,要经过哪些节点,每个节点又是使用何种流表进行转发的。
在本申请实施例中,对于步骤102,由于一个数据要从探测起点传输到探测终点,要经过的节点起到链路导向的作用,故称为虚拟机链路,其中,虚拟机链路可以包括虚拟设备节点和物理主机节点。
在本申请实施例中,对于步骤103,通过netlink的连接方式可连接SDN网络结构中的底层网络平台,其中,多台物理主机组成了SDN网络结构的底层网络平台,即通过netlink方式可连接SDN网络结构中的一台物理主机。
本申请实施例通由于是应用在SDN网络结构中,因此能够利用SDN网络结构中的SDN控制器所控制的网络拓扑结构信息,完成虚拟设备网络链路的探测,并基于虚拟设备的流表信息判断该虚拟设备是否发生故障,在这一过程中,本申请实施例通过物理主机上的流表信息和基于SDN控制器得到的虚拟设备的流表信息就能够判断与物理主机连接的虚拟设备是否畅通,而不需要新增一个网络服务器,并且在每台设备上安装数据探针以将数据探针作为代理工具,进而能够准确地、灵活地、快速地对虚拟设备进行探测和故障定位。
然而现有技术,由于不能够利用SDN控制器中的SDN网络结构,因此在进行链路探测时,需要新增一个网络服务器,并且需要网络中的每台设备安装数据探针作为代理工具,这样一来,如果网络中的设备数据庞大,则需要安装很多数据探针,进而提高了操作人员的工作量,从而降低了链路探测的灵活性和谈了探测的速度。另一方面,由于网络中的虚拟设备没有真正操作系统,或者有些虚拟设备不会响应LLDP的请求,只是在内核上通过openflow流表租户了一个datapath实现了交换机与路由器的功能,所以即使新增了网路服务器,该网络服务器也无法构成完整的网络拓扑,进而无法基于完整的网络拓扑结构进行准确的链路探测。
再一方面,现有技术需要在网络中的设安装数据探针,但是在一些场景中,虚拟设备不允许用户安装数据探针,此时,就无法准确完成链路的探测和链路故障排查。
在本申请实施例中,作为一种可选的实施方式,在步骤103:判断虚拟设备节点所在的物理主机是否存在虚拟设备节点的流表信息或物理主机的流表信息是否与虚拟设备节点的流表信息冲突,本申请实施例的方法还包括以下步骤:
生成虚拟设备节点出现故障的原因信息;
展示虚拟设备节点出现故障的原因信息和虚拟设备节点在网络中的位置。
在本可选的实施例,由于SDN控制器掌握了整个SDN网络的结构信息,进而当虚拟设备节点出现故障,能够基于SDN网络结构的信息判断出虚拟设备节点在SDN网络中的位置,另一方面,在虚拟设备节点所在的物理主机不存在虚拟设备节点的流表信息时,通过预设检测动作可确定虚拟设备节点出现故障的原因并生成虚拟设备节点出现故障的原因信息,例如,在虚拟设备节点所在的物理主机不存在虚拟设备节点的流表信息时,通过检测,物理主机没有接收到虚拟设备节点的流表信息,则确定原因信息为“物理主机故障”,再例如,通过检测,如果发现虚拟设备安装的某些软件导致了虚拟机节点的流表不存在,则原因信息为“软件阻挡”。
在本可选的实施方式中,SDN控制器还与显示终端连接,即如图2所示,SDN控制器与网络链路探测结果展示界面连接,进而通过网络链路探测结果展示界面可展示虚拟设备节点出现故障的原因信息和虚拟设备节点在网络中的位置。
在本申请实施例中,作为一种可选的实施方式,在步骤101:接收探测任务之后,步骤根据探测起点的信息和探测终点的信息,确定从所述探测起点前往所述探测终点需经过的虚拟机链路和所述虚拟机链路的流表信息之前,本申请实施例方法还包括以下步骤:
基于探测起点的信息,向探测起点发送第一探测包;
基于探测起点针对第一探测包的响应结果,判断探测起点是否有效。
在本申请实施例中,作为一种可选的实施方式,根据探测起点的信息和探测终点的信息之前,本申请实施例的方法还包括以下步骤:
基于探测终点的信息,向探测终点发送第二探测包;
基于探测终点针对第二探测包的响应结果,判断探测终点是否有效。
在本申请实施例中,作为一种可选的实施方式,步骤102:根据探测起点的信息和探测终点的信息,确定从探测起点前往探测终点需经过的虚拟机链路和虚拟机链路的流表信息,包括以下子步骤:
获取SDN控制器的逻辑流表信息;
基于SDN控制器的逻辑流表信息、探测起点的信息和探测终点的信息,确定从探测起点前往探测终点需经过的虚拟机链路和虚拟机链路的流表信息。
在本申请实施例中,作为一个示例,如图3所示,探测从虚拟交换机sw0上的port1(端口1)所连接的虚拟机到达虚拟交换机sw0的port2所连接的虚拟机,所需要经过的路标,则基于“"863a6e3e-10e8-4c62-a821-fc300d645837"inport==port0
&&eth.dst==52:56:FF:11:3C:E4&&eth.src==52:56:FF:2C:25:68”这一信息在SDN控制器的逻辑流表信息中查询得两个流表信息,进一步地,如图4所示,基于查询得到的两个流表信息可分析得到三条虚拟机链路,即:
①在datapath为863a6e3e-10e8-4c62-a821-fc300d645837的流表中,从ingress部分需要有port0进来的数据,且源mac地址为52:56:FF:2C:25:68时,把请求转发下一张表Next(1);
②进入下一张后,接入另外一条路径,实现目的mac地址为52:56:FF:11:3C:E4时,从outport为port1的口执行output动作;
③在相同datapath的egress中,需要有一条目的mac为52:56:FF:11:3C:E4,outport为port1,且动作为output的路径。
在本申请实施例中,作为一种可选的实施方式,步骤103:根据探测起点的信息和探测终点的信息,确定从探测起点前往探测终点需经过的虚拟机链路和虚拟机链路的流表信息,还包括以下子步骤:
当探测起点与探测终点终之间的虚拟设备节点被安全保护或无法得到虚拟设备节点得到流表信息时,中止探测。
在本申请实施例中,作为一种可选的实施方式,在步骤102:根据探测起点的信息和探测终点的信息,确定从探测起点前往探测终点需经过的虚拟机链路和虚拟机链路的流表信息,步骤103:连接虚拟设备节点所在的物理主机之前,本申请实施例的方法还包括:
确定虚拟设备节点所在的物理主机。
在本申请实施例中,由于SDN网络结构为超融合集群,其存在多个物理主机,且虚拟机在物理主机之间是不固定的,所以在探测包执行模块执行包探测之前,需要确定不同虚拟机所对应的物理主机,根据虚拟机位置的不同,向不同物理主机发送不同的路径探测请求,举例来说,如图5所示,虚拟机test0对应集群物理主机,0,而虚拟机test1对应集群物理主机1。
实施例二
请参阅图6,图6是本申请实施例公开的一种虚拟设备链路探测装置的结构示意图。如图6所示,本申请实施例的装置包括以下功能模块:
链路路标确定模块201,用于接收探测任务,探测任务包括探测起点的信息和探测终点的信息;
链路路标确定模块201,用于根据探测起点的信息和探测终点的信息,确定从探测起点前往探测终点需经过的虚拟机链路和虚拟机链路的流表信息,虚拟机链路包括虚拟设备节点,虚拟机链路的流表信息包括虚拟设备节点的第一流表信息;
流表探测模块202,用于连接虚拟设备节点所在的物理主机;
流表探测模块202,还用于判断虚拟设备节点所在的物理主机是否存在虚拟设备节点的流表信息或物理主机的流表信息是否与虚拟设备节点的流表信息冲突,若物理主机不存在虚拟设备节点的流表信息或物理主机的流表信息与虚拟设备节点的流表信息冲突,则确定虚拟设备节点出现故障。
本申请实施例的装置通过执行虚拟设备链路探测方法,能够在不需要新增一个网络服务器,并且在每台设备上安装数据探针以将数据探针作为代理工具的前提,准确地、灵活地、快速地对虚拟设备进行探测和故障定位。
在本申请实施例中,作为一种可选的实施方式本申请实施例的装置还包括:
生成模块,用于生成虚拟设备节点出现故障的原因信息;
展示模块,用于展示虚拟设备节点出现故障的原因信息和虚拟设备节点在网络中的位置。
在本可选的实施例,由于SDN控制器掌握了整个SDN网络的结构信息,进而当虚拟设备节点出现故障,能够基于SDN网络结构的信息判断出虚拟设备节点在SDN网络中的位置,另一方面,在虚拟设备节点所在的物理主机不存在虚拟设备节点的流表信息时,通过预设检测动作可确定虚拟设备节点出现故障的原因并生成虚拟设备节点出现故障的原因信息,例如,在虚拟设备节点所在的物理主机不存在虚拟设备节点的流表信息时,通过检测,物理主机没有接收到虚拟设备节点的流表信息,则确定原因信息为“物理主机故障”,再例如,通过检测,如果发现虚拟设备安装的某些软件导致了虚拟机节点的流表不存在,则原因信息为“软件阻挡”。
在本可选的实施方式中,SDN控制器还与显示终端连接,即如图2所示,SDN控制器与网络链路探测结果展示界面连接,进而通过网络链路探测结果展示界面可展示虚拟设备节点出现故障的原因信息和虚拟设备节点在网络中的位置。
实施例三
请参阅图7,图7是本申请实施例公开的一种虚拟设备链路探测设备的结构示意图。如图7所示,本申请实施例公开的虚拟设备链路探测设备,设备包括:
存储有可执行程序代码的存储器301;
与存储器301耦合的处理器302;
处理器302调用存储器中存储的可执行程序代码,执行本申请实施例一的虚拟设备链路探测方法。
本申请实施例的设备通过执行虚拟设备链路探测方法,能够在不需要新增一个网络服务器,并且在每台设备上安装数据探针以将数据探针作为代理工具的前提,准确地、灵活地、快速地对虚拟设备进行探测和故障定位。
实施例四
本申请实施例公开一种存储介质,存储介质存储有计算机指令,计算机指令被调用时,用于执行本申请实施例一的虚拟设备链路探测方法。
本申请实施例的存储介质通过执行虚拟设备链路探测方法,能够在不需要新增一个网络服务器,并且在每台设备上安装数据探针以将数据探针作为代理工具的前提,准确地、灵活地、快速地对虚拟设备进行探测和故障定位。
在本申请所提供的实施例中,应该理解到,所揭露装置和方法,可以通过其它的方式实现。以上所描述的装置实施例仅仅是示意性的,例如,单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,又例如,多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些通信接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
另外,作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
再者,在本申请各个实施例中的各功能模块可以集成在一起形成一个独立的部分,也可以是各个模块单独存在,也可以两个或两个以上模块集成形成一个独立的部分。
需要说明的是,功能如果以软件功能模块的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施例方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(Read-Only Memory,ROM)随机存取存储器(Random Access Memory,RAM)、磁碟或者光盘等各种可以存储程序代码的介质。
在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。
以上仅为本申请的实施例而已,并不用于限制本申请的保护范围,对于本领域的技术人员来说,本申请可以有各种更改和变化。凡在本申请的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本申请的保护范围之内。

Claims (9)

1.一种虚拟设备链路探测方法,其特征在于,所述方法应用于SDN网络结构中,所述方法包括:
接收探测任务,所述探测任务包括探测起点的信息和探测终点的信息;
根据所述探测起点的信息和所述探测终点的信息,确定从所述探测起点前往所述探测终点需经过的虚拟机链路和所述虚拟机链路的流表信息,所述虚拟机链路包括虚拟设备节点,所述虚拟机链路的流表信息包括所述虚拟设备节点的第一流表信息;
连接所述虚拟设备节点所在的物理主机;
判断所述虚拟设备节点所在的物理主机是否存在所述虚拟设备节点的流表信息或所述物理主机的流表信息是否与所述虚拟设备节点的流表信息冲突,若所述物理主机不存在所述虚拟设备节点的流表信息或所述物理主机的流表信息与所述虚拟设备节点的流表信息冲突,则确定所述虚拟设备节点出现故障;
以及,所述根据所述探测起点的信息和所述探测终点的信息,确定从所述探测起点前往所述探测终点需经过的虚拟机链路和所述虚拟机链路的流表信息,包括:
获取SDN控制器的逻辑流表信息;
基于所述SDN控制器的逻辑流表信息、所述探测起点的信息和所述探测终点的信息,确定从所述探测起点前往所述探测终点需经过的虚拟机链路和所述虚拟机链路的流表信息。
2.如权利要求1所述的方法,其特征在于,在所述判断所述虚拟设备节点所在的物理主机是否存在所述虚拟设备节点的流表信息或所述物理主机的流表信息是否与所述虚拟设备节点的流表信息冲突之后,所述方法还包括:
生成所述虚拟设备节点出现故障的原因信息和所述虚拟设备节点在网络中的位置;
展示所述虚拟设备节点出现故障的原因信息和所述虚拟设备节点在网络中的位置。
3.如权利要求1所述的方法,其特征在于,在所述接收探测任务之后,所述根据所述探测起点的信息和所述探测终点的信息,确定从所述探测起点前往所述探测终点需经过的虚拟机链路和所述虚拟机链路的流表信息之前,所述方法还包括:
基于所述探测起点的信息,向所述探测起点发送第一探测包;
基于所述探测起点针对所述第一探测包的响应结果,判断所述探测起点是否有效。
4.如权利要求1所述的方法,其特征在于,在根据所述探测起点的信息和所述探测终点的信息,确定从所述探测起点前往所述探测终点需经过的虚拟机链路和所述虚拟机链路的流表信息之后,所述连接所述虚拟设备节点所在的物理主机之前,所述方法还包括:
确定虚拟设备节点所在的物理主机。
5.如权利要求1所述的方法,其特征在于,所述根据所述探测起点的信息和所述探测终点的信息,确定从所述探测起点前往所述探测终点需经过的虚拟机链路和所述虚拟机链路的流表信息,还包括:
当所述探测起点与所述探测终点终之间的所述虚拟设备节点被安全保护或无法得到所述虚拟设备节点得到流表信息时,中止探测。
6.一种虚拟设备链路探测装置,其特征在于,所述装置包括:
链路路标确定模块,用于接收探测任务,所述探测任务包括探测起点的信息和探测终点的信息;
链路路标确定模块,还用于根据所述探测起点的信息和所述探测终点的信息,确定从所述探测起点前往所述探测终点需经过的虚拟机链路和所述虚拟机链路的流表信息,所述虚拟机链路包括虚拟设备节点,所述虚拟机链路的流表信息包括所述虚拟设备节点的第一流表信息;
流表探测模块,用于连接所述虚拟设备节点所在的物理主机;
流表探测模块,还用于判断所述虚拟设备节点所在的物理主机是否存在所述虚拟设备节点的流表信息或所述物理主机的流表信息是否与所述虚拟设备节点的流表信息冲突,若所述物理主机不存在所述虚拟设备节点的流表信息或所述物理主机的流表信息与所述虚拟设备节点的流表信息冲突,则确定所述虚拟设备节点出现故障;
以及,所述链路路标确定模块执行所述根据所述探测起点的信息和所述探测终点的信息,确定从所述探测起点前往所述探测终点需经过的虚拟机链路和所述虚拟机链路的流表信息的具体方式为:
获取SDN控制器的逻辑流表信息;
基于所述SDN控制器的逻辑流表信息、所述探测起点的信息和所述探测终点的信息,确定从所述探测起点前往所述探测终点需经过的虚拟机链路和所述虚拟机链路的流表信息。
7.如权利要求6所述的装置,其特征在于,所述装置还包括:
生成模块,用于生成所述虚拟设备节点出现故障的原因信息;
展示模块,用于展示所述虚拟设备节点出现故障的原因信息和所述虚拟设备节点在网络中的位置。
8.一种虚拟设备链路探测设备,其特征在于,所述设备包括:
存储有可执行程序代码的存储器;
与所述存储器耦合的处理器;
所述处理器调用所述存储器中存储的所述可执行程序代码,执行如权利要求1-5任一项所述的虚拟设备链路探测方法。
9.一种存储介质,其特征在于,所述存储介质存储有计算机指令,所述计算机指令被调用时,用于执行如权利要求1-5任一项所述的虚拟设备链路探测方法。
CN202111484894.2A 2021-12-07 2021-12-07 虚拟设备链路探测方法、装置、设备及存储介质 Active CN114172789B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202111484894.2A CN114172789B (zh) 2021-12-07 2021-12-07 虚拟设备链路探测方法、装置、设备及存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202111484894.2A CN114172789B (zh) 2021-12-07 2021-12-07 虚拟设备链路探测方法、装置、设备及存储介质

Publications (2)

Publication Number Publication Date
CN114172789A CN114172789A (zh) 2022-03-11
CN114172789B true CN114172789B (zh) 2023-11-10

Family

ID=80483855

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202111484894.2A Active CN114172789B (zh) 2021-12-07 2021-12-07 虚拟设备链路探测方法、装置、设备及存储介质

Country Status (1)

Country Link
CN (1) CN114172789B (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115987842B (zh) * 2022-12-15 2024-03-26 浪潮思科网络科技有限公司 基于防火墙旁挂模式的故障定位方法、装置、设备及介质

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2015162770A (ja) * 2014-02-27 2015-09-07 Kddi株式会社 仮想ネットワークのトポロジ監視方法および装置
CN109412945A (zh) * 2018-11-13 2019-03-01 郑州云海信息技术有限公司 虚拟化系统中路由信息的管理方法和装置
CN109660443A (zh) * 2018-12-26 2019-04-19 江苏省未来网络创新研究院 基于sdn的物理设备与虚拟网络通信方法和系统
WO2019128699A1 (zh) * 2017-12-29 2019-07-04 中国银联股份有限公司 基于流表的数据传送方法
CN111010315A (zh) * 2019-12-12 2020-04-14 江苏艾佳家居用品有限公司 一种基于sdn的链路故障诊断方法
WO2021139269A1 (zh) * 2020-08-06 2021-07-15 平安科技(深圳)有限公司 Overlay网络中基于Open vSwitch内核态流表的分布式路由方法及装置

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9350632B2 (en) * 2013-09-23 2016-05-24 Intel Corporation Detection and handling of virtual network appliance failures
US9461923B2 (en) * 2013-12-06 2016-10-04 Algoblu Holdings Limited Performance-based routing in software-defined network (SDN)
KR102233645B1 (ko) * 2014-11-11 2021-03-30 한국전자통신연구원 가상 네트워크 기반 분산 다중 도메인 라우팅 제어 시스템 및 라우팅 제어 방법
WO2017113273A1 (zh) * 2015-12-31 2017-07-06 华为技术有限公司 一种软件定义数据中心及其中的服务集群的调度和流量监控方法

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2015162770A (ja) * 2014-02-27 2015-09-07 Kddi株式会社 仮想ネットワークのトポロジ監視方法および装置
WO2019128699A1 (zh) * 2017-12-29 2019-07-04 中国银联股份有限公司 基于流表的数据传送方法
CN109412945A (zh) * 2018-11-13 2019-03-01 郑州云海信息技术有限公司 虚拟化系统中路由信息的管理方法和装置
CN109660443A (zh) * 2018-12-26 2019-04-19 江苏省未来网络创新研究院 基于sdn的物理设备与虚拟网络通信方法和系统
CN111010315A (zh) * 2019-12-12 2020-04-14 江苏艾佳家居用品有限公司 一种基于sdn的链路故障诊断方法
WO2021139269A1 (zh) * 2020-08-06 2021-07-15 平安科技(深圳)有限公司 Overlay网络中基于Open vSwitch内核态流表的分布式路由方法及装置

Non-Patent Citations (6)

* Cited by examiner, † Cited by third party
Title
"Design and Implementation of VM Migration Application on SDN-Based Network";Galura Muhammad Suranegara 等;《2018 4th International Conference on Wireless and Telematics (ICWT)》;全文 *
"SDN-Based Trusted Path in a Multi-domain Network";Stéphane Betgé-Brezetz 等;《2016 IEEE International Conference on Cloud Engineering Workshop (IC2EW)》;全文 *
一种基于SDN的移动自组织网络服务路径重建算法;董芳;李鸥;莫有权;;电信科学(第10期);全文 *
基于Ryu的SDN网络动态路由算法实现;傅妍芳;李敬伟;马静;赵世峰;田鹏辉;;西安工业大学学报(第03期);全文 *
基于链路带宽检测的虚拟网络映射算法;陈星;王俊芳;陈立水;王鑫;杨红伟;;计算机与网络(第02期);全文 *
虚拟网络环境下安全服务接入方法;陈兴蜀;胡亮;陈广瑞;陈林;;华中科技大学学报(自然科学版)(第03期);全文 *

Also Published As

Publication number Publication date
CN114172789A (zh) 2022-03-11

Similar Documents

Publication Publication Date Title
US10797970B2 (en) Interactive hierarchical network chord diagram for application dependency mapping
US11336567B2 (en) Service aware virtual private network for optimized forwarding in cloud native environment
US10103851B2 (en) Network link monitoring and testing
US8879396B2 (en) System and method for using dynamic allocation of virtual lanes to alleviate congestion in a fat-tree topology
US8458319B2 (en) System and method for tracking network resources
JP4202709B2 (ja) ストレージ装置を有するネットワークにおける、ボリューム及び障害管理方法
JP4130615B2 (ja) ストレージ装置を有するネットワークにおける障害情報管理方法及び管理サーバ
WO2021128977A1 (zh) 一种故障诊断方法及装置
US11706109B2 (en) Performance of traffic monitoring actions
US9866436B2 (en) Smart migration of monitoring constructs and data
CN106982244B (zh) 在云网络环境下实现动态流量的报文镜像的方法和装置
CN113867884B (zh) 用于计算机网络的方法和系统及存储介质
CN109639488B (zh) 一种多外网分流加速方法及系统
US20050267967A1 (en) Facilitating the tracing/monitoring of a plurality of event sets via a single network interface
CN114172789B (zh) 虚拟设备链路探测方法、装置、设备及存储介质
CN104618246A (zh) 一种面向xen虚拟化环境的网络拓扑发现方法
CN111711536A (zh) 一种云架构下防火墙测试环境构建方法
US8750299B2 (en) Multicast tree discovery using 802.1ag
US10999178B2 (en) Information processing apparatus and information processing system
Guay et al. dFtree: a fat-tree routing algorithm using dynamic allocation of virtual lanes to alleviate congestion in infiniband networks
US10374941B2 (en) Determining aggregation information
Lee et al. Fault localization in NFV framework
US20240146599A1 (en) Methods, systems, and computer readable media for test system agent deployment in a smartswitch computing environment
US20240163188A1 (en) Round trip time (rtt) measurement based upon sequence number
Bationo et al. Cloud Platform Performance Evaluation Using Multi-level Execution Tracing

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant