本申请公开了一种动态建立隧道的方法、装置、设备及介质,涉及计算机技术领域,包括:确定待建立隧道的目标计算节点,并将所述目标计算节点上报至目标网络组件,以便所述目标网络组件创建对应的隧道端口;通过所述目标网络组件将所述隧道端口与所述目标计算节点进行绑定,并对所述目标计算节点进行广播,以及监听所述隧道端口的状态变化信息以确定是否建立隧道;若确定建立隧道,则将所述隧道端口添加至预设网桥,并所述隧道端口设置为端口可用状态。通过上述技术方案,能够在计算节点有建立隧道的需求时,实现计算节点间隧道的动态建立,进一步实现不同计算节点之间的互通。进一步实现不同计算节点之间的互通。进一步实现不同计算节点之间的互通。
【技术实现步骤摘要】
一种动态建立隧道的方法、装置、设备及介质
[0001]本专利技术涉及计算机
,特别涉及一种动态建立隧道的方法、装置、设备及介质。
技术介绍
[0002]目前虚拟化层不同节点之间通过Overlay隧道中的隧道网卡互通,当源地址与目的地址之间有通信需求时,通过数据中心IP网络之间创建的一条虚拟隧道转发用户数据,即虚拟化层采用Overlay协议网络,两台虚拟机直接相连的路由器,可直接建立一条虚拟链路隧道进行通信,相连的路由器称为隧道终端。同一大二层内的隧道终端均需要建立虚拟隧道,每个隧道的源IP地址和目的IP地址通信,均是通过本地虚拟机所属隧道终端地址和目标虚拟机所属虚拟隧道终端地址。
[0003]然而,目前存在一些Overlay场景下无法动态建立隧道,两端隧道接口不能互相连接,而需要通过手动改代码等方式实现动态建立隧道,大大损失OpenStack Overlay网络性能带来的优势。Overlay作为OpenStack常用的网络类型,开发支持Overlay网络设计适配建立隧道至关重要。现有技术中,隧道只作为信息接收装置,并不处理隧道接收信息,如果网络节点的隧道终端只支持通知隧道建立,或者各个节点的部署模式、隧道技术不相同时,则无法建立隧道。控制面设计流程只是通过消息通道将信息上报,通知其他节点完成隧道建立,但是如果两个节点无法匹配,就不能完成隧道的建立。
[0004]综上,如何实现隧道的动态建立是目前有待解决的问题。
技术实现思路
[0005]有鉴于此,本专利技术的目的在于提供一种动态建立隧道的方法、装置、设备及介质,能够实现隧道的动态建立。其具体方案如下:
[0006]第一方面,本申请公开了一种动态建立隧道的方法,包括:
[0007]确定待建立隧道的目标计算节点,并将所述目标计算节点上报至目标网络组件,以便所述目标网络组件创建对应的隧道端口;
[0008]通过所述目标网络组件将所述隧道端口与所述目标计算节点进行绑定,并对所述目标计算节点进行广播,以及监听所述隧道端口的状态变化信息以确定是否建立隧道;
[0009]若确定建立隧道,则将所述隧道端口添加至预设网桥,并所述隧道端口设置为端口可用状态。
[0010]可选的,所述监听所述隧道端口的状态变化信息以确定是否建立隧道,包括:
[0011]监听所述隧道端口的状态变化信息以获取隧道端口号和远端计算节点的IP地址,并从预设数据库中获取当前已建立的隧道信息;
[0012]基于所述隧道信息判断当前是否存在与所述隧道端口号和所述IP地址对应的隧道,若不存在,则确定在所述目标计算节点和所述远端计算节点之间建立隧道。
[0013]可选的,所述动态建立隧道的方法,还包括:
[0014]若确定建立隧道,则将包括所述隧道端口号和所述远端计算节点的IP地址的隧道信息存储至所述预设数据库。
[0015]可选的,所述动态建立隧道的方法,还包括:
[0016]当获取到隧道删除命令时,则从所述预设数据库中筛选出与待删除隧道对应的目标隧道信息;
[0017]提取出所述目标隧道信息中远端计算节点的IP地址,并对所述目标隧道信息执行删除操作。
[0018]可选的,所述监听所述隧道端口的状态变化信息以确定是否建立隧道的过程中,还包括:
[0019]获取所述隧道端口每隔预设时间间隔发送的心跳包信息,以便根据所述心跳包信息判断与所述隧道端口对应的目标计算节点是否处于在线状态。
[0020]可选的,所述将所述隧道端口添加至预设网桥的过程中,还包括:
[0021]确定所述预设网桥中其余端口的水平分割组号,并利用所述水平分割组号对所述隧道端口进行配置。
[0022]可选的,所述对所述目标计算节点进行广播的过程中,还包括:
[0023]确定所述隧道端口所在的目标网络,并在所述目标网络中查找其余处于端口可用状态的目标端口;
[0024]获取与所述目标端口对应的计算节点信息。
[0025]第二方面,本申请公开了一种动态建立隧道的装置,包括:
[0026]信息上报模块,用于确定待建立隧道的目标计算节点,并将所述目标计算节点上报至目标网络组件,以便所述目标网络组件创建对应的隧道端口;
[0027]绑定模块,用于通过所述目标网络组件将所述隧道端口与所述目标计算节点进行绑定,并对所述目标计算节点进行广播;
[0028]监听模块,用于监听所述隧道端口的状态变化信息以确定是否建立隧道;
[0029]隧道建立模块,用于若确定建立隧道,则将所述隧道端口添加至预设网桥,并所述隧道端口设置为端口可用状态。
[0030]第三方面,本申请公开了一种电子设备,包括:
[0031]存储器,用于保存计算机程序;
[0032]处理器,用于执行所述计算机程序,以实现前述公开的动态建立隧道的方法的步骤。
[0033]第四方面,本申请公开了一种计算机可读存储介质,用于存储计算机程序;其中,所述计算机程序被处理器执行时实现前述公开的动态建立隧道的方法的步骤。
[0034]可见,本申请确定待建立隧道的目标计算节点,并将所述目标计算节点上报至目标网络组件,以便所述目标网络组件创建对应的隧道端口;通过所述目标网络组件将所述隧道端口与所述目标计算节点进行绑定,并对所述目标计算节点进行广播,以及监听所述隧道端口的状态变化信息以确定是否建立隧道;若确定建立隧道,则将所述隧道端口添加至预设网桥,并所述隧道端口设置为端口可用状态。由此可见,本申请首先确定出待建立隧道的目标计算节点,并将该目标计算节点上报至目标网络组件,由目标网络组件创建对应的隧道端口,再将隧道端口与目标计算节点进行绑定;然后对目标计算节点进行广播,并监
听隧道端口的状态变化信息以确定是否需要建立隧道,若建立,则将隧道端口添加至预设网络,并将端口设置为端口可用状态。通过上述技术方案实现了计算节点间隧道的动态建立,进一步实现不同计算节点之间的互通。
附图说明
[0035]为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本专利技术的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。
[0036]图1为本申请公开的一种动态建立隧道的方法流程图;
[0037]图2为本申请公开的一种动态建立隧道的流程示意图;
[0038]图3为本申请公开的一种改进前后对比示意图;
[0039]图4为本申请公开的一种端口更新和删除的流程示意图;
[0040]图5为本申请公开的一种具体的动态建立隧道的方法流程图;
[0041]图6为本申请公开的一种监听器的工作流程示意图;
[0042]图7为本申请公开的一种动态建立隧道的装置结构示意图;
[0043]图8为本申请公开的一种电子设备结构图。
...
【技术保护点】
【技术特征摘要】
1.一种动态建立隧道的方法,其特征在于,包括确定待建立隧道的目标计算节点,并将所述目标计算节点上报至目标网络组件,以便所述目标网络组件创建对应的隧道端口;通过所述目标网络组件将所述隧道端口与所述目标计算节点进行绑定,并对所述目标计算节点进行广播,以及监听所述隧道端口的状态变化信息以确定是否建立隧道;若确定建立隧道,则将所述隧道端口添加至预设网桥,并所述隧道端口设置为端口可用状态。2.根据权利要求1所述的动态建立隧道的方法,其特征在于,所述监听所述隧道端口的状态变化信息以确定是否建立隧道,包括:监听所述隧道端口的状态变化信息以获取隧道端口号和远端计算节点的IP地址,并从预设数据库中获取当前已建立的隧道信息;基于所述隧道信息判断当前是否存在与所述隧道端口号和所述IP地址对应的隧道,若不存在,则确定在所述目标计算节点和所述远端计算节点之间建立隧道。3.根据权利要求2所述的动态建立隧道的方法,其特征在于,还包括:若确定建立隧道,则将包括所述隧道端口号和所述远端计算节点的IP地址的隧道信息存储至所述预设数据库。4.根据权利要求3所述的动态建立隧道的方法,其特征在于,所述当获取到隧道删除命令时,则从所述预设数据库中筛选出与待删除隧道对应的目标隧道信息;提取出所述目标隧道信息中远端计算节点的IP地址,并对所述目标隧道信息执行删除操作。5.根据权利要求1所述的动态建立隧道的方法,其特征在于,所述监听所述隧道端口的状态变化信息以确定是否建立隧道的过程中,还包括:获取所述隧道端口每隔预设时间间隔发送...
【专利技术属性】
技术研发人员:朱梦瑶,
申请(专利权)人:济南浪潮数据技术有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。