CN112583708A - 一种连接关系控制方法、装置和电子设备 - Google Patents
一种连接关系控制方法、装置和电子设备 Download PDFInfo
- Publication number
- CN112583708A CN112583708A CN202011567125.4A CN202011567125A CN112583708A CN 112583708 A CN112583708 A CN 112583708A CN 202011567125 A CN202011567125 A CN 202011567125A CN 112583708 A CN112583708 A CN 112583708A
- Authority
- CN
- China
- Prior art keywords
- node
- vbgp
- network
- bgp
- connection
- 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.)
- Granted
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/22—Alternate routing
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/06—Management of faults, events, alarms or notifications
- H04L41/0654—Management of faults, events, alarms or notifications using network fault recovery
- H04L41/0668—Management of faults, events, alarms or notifications using network fault recovery by dynamic selection of recovery network elements, e.g. replacement by the most appropriate element after failure
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/08—Configuration management of networks or network elements
- H04L41/0803—Configuration setting
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/50—Network service management, e.g. ensuring proper service fulfilment according to agreements
- H04L41/5041—Network service management, e.g. ensuring proper service fulfilment according to agreements characterised by the time relationship between creation and deployment of a service
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/28—Routing or path finding of packets in data switching networks using route fault recovery
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/38—Flow based routing
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本申请提供了一种连接关系控制方法、装置和电子设备,所述方法包括:接收所述第一vBGP节点和所述第二vBGP节点各自上报的角色信息;若确认第一vBGP节点和第二vBGP节点各自上报的角色信息均为主用节点,则分别确定所述SDN控制器与第一vBGP节点和第二vBGP节点之间的网络配置协议netconf连接状态;若netconf连接状态为正常连接,则根据所述第一vBGP节点和所述第二vBGP节点的优先级,通过netconf连接向低优先级的vBGP节点发送连接关系断开指令,以指示所述低优先级的vBGP节点将其内的多个网卡中用于与所述Spine连接的第一网卡的状态切换为断开状态。采用上述方法,解决了现有技术中两个vBGP节点之间的保活链路故障时,两个vBGP因会形成双主而导致的IP冲突,进而导致用户流量中断的问题。
Description
技术领域
本申请涉及通信技术领域,尤其涉及一种连接关系控制方法、装置和电子设备。
背景技术
软件定义网络(Software Defined Network,SDN)是一种新型网络架构,其核心思想是分离网络设备的控制层面与转发层面,通过SDN控制器对网络流量进行集中和灵活控制,从而为核心网络及应用的创新提供良好的平台。
目前SDN的一种应用场景为Overlay网络,SDN Overlay网络采用的是虚拟可扩展局域网(Virtual eXtensible Local Area Network,VxLAN)的网络虚拟化技术,实现了SDN控制器的功能,该SDN控制器与网络设备建立netconf连接和openflow连接,从而实现对网络设备的控制。Overlay网络包括混合Overlay组网,在混合Overlay组网中可同时支持网络Overlay和主机Overlay,既可以接入虚拟化服务器,也可以支持接入未虚拟化的物理服务器,以及需要使用物理服务器提升性能的数据库等业务。混合Overlay组网作为Overlay整体解决方案,它可以为客户提供自主化、多样化的选择。
然而在以太网虚拟专用网络(EVPN)中,由于虚拟化交换机(vSwitch)不具备处理BGP(Border Gateway Protocol,边界网关协议)EVPN路由的功能,因此无法实现EVPN组网下的混合Overlay,使用户组网受到较大限制。在此背景下,SND控制器通过虚拟化边界网关协议(vBGP)实现了EVPN组网下的混合Overlay功能,从而实现了EVPN组网中网络Overlay和主机Overlay间的流量互通,以此解决用户在EVPN时代无法同时部署虚拟交换机接入和物理交换机接入的难题。
目前EVPN组网中vBGP集群使用的是双机部署的形式,vBGP的两个节点之间运行虚拟路由器冗余协议(Virtual Router Redundancy Protocol,VRRP)协议,通过VRRP选举主用vBGP节点和备用vBGP节点,主备vBGP节点之间通过保活链路获知双方的状态。但是当主备两个vBGP节点之间的保活链路故障时,vBGP集群中两个vBGP节点就会形成双主,两个vBGP节点都会让虚IP地址生效,并尝试跟具有EVPN能力的脊节点Spine(是网络设备中的路由反射器(Route Reflector,RR))建立BGP邻居。但是由于vBGP节点上都有虚IP地址,因此会存在IP冲突的问题,会造成Spine(RR)跟vBGP的BGP连接震荡,进而引发两个vBGP节点都可能会从Spine上收到路由,但是又不能保证自己持有的路由一定是最新的。此外,vBGP从Spine收到路由后,会上送给SDN控制器,由于两个vBGP节点相互独立,会分别向SDN控制器上报接收到的路由,SDN控制器很难决策使用哪个vBGP节点上报的路由,可能造成用户流量中断。
因此,如何解决现有技术中两个vBGP节点之间的保活链路故障时,两个vBGP因会形成双主而导致的IP冲突,进而导致用户流量中断是值得考虑的技术问题之一。
发明内容
有鉴于此,本申请提供一种连接关系控制方法、装置和电子设备,用以解决现有技术中两个vBGP节点之间的保活链路故障时,两个vBGP因会形成双主而导致的IP冲突,进而导致用户流量中断的问题。
具体地,本申请是通过如下技术方案实现的:
根据本申请的第一方面,提供一种连接关系控制方法,应用于软件定义网络SDN中的SDN控制器中,所述软件定义网络SDN还包括虚拟边界网关协议vBGP集群和脊节点Spine,所述vBGP集群包括第一vBGP节点和第二vBGP节点,所述第一vBGP节点和第二vBGP节点包括多个网卡;所述方法,包括:
接收所述第一vBGP节点和所述第二vBGP节点各自上报的角色信息;
若确认所述第一vBGP节点和所述第二vBGP节点各自上报的角色信息均为主用节点,则分别确定所述SDN控制器与所述第一vBGP节点和所述第二vBGP节点之间的网络配置协议netconf连接状态;
若所述netconf连接状态为正常连接,则根据所述第一vBGP节点和所述第二vBGP节点的优先级,通过netconf连接向低优先级的vBGP节点发送连接关系断开指令,以指示所述低优先级的vBGP节点将其内的多个网卡中用于与所述Spine连接的第一网卡的状态切换为断开状态。
根据本申请的第二方面,提供一种连接关系控制方法,应用于软件定义网络SDN中的虚拟边界网关协议vBGP节点中,所述软件定义网络SDN还包括SDN控制器和脊节点Spine,所述vBGP节点包括多个网卡;所述方法,包括:
所述vBGP节点检测其与所述SDN控制器之间的网络配置协议netconf连接状态;
若检测到所述netconf连接状态为连接异常,则将其内的多个网卡中用于与所述Spine连接的第一网卡的状态切换为断开状态;
若检测到所述netconf连接状态为正常连接,则通过所述netconf连接向所述SDN控制器上报自身的角色信息。
根据本申请的第三方面,提供一种连接关系控制装置,应用于软件定义网络SDN中的SDN控制器中,所述软件定义网络SDN还包括虚拟边界网关协议vBGP集群和脊节点Spine,所述vBGP集群包括第一vBGP节点和第二vBGP节点,所述第一vBGP节点和第二vBGP节点包括多个网卡;所述装置,包括:
接收模块,用于接收所述第一vBGP节点和所述第二vBGP节点各自上报的角色信息;
确定模块,用于若确认所述第一vBGP节点和所述第二vBGP节点各自上报的角色信息均为主用节点,则分别确定所述SDN控制器与所述第一vBGP节点和所述第二vBGP节点之间的网络配置协议netconf连接状态;
发送模块,用于若所述netconf连接状态为正常连接,则根据所述第一vBGP节点和所述第二vBGP节点的优先级,通过netconf连接向低优先级的vBGP节点发送连接关系断开指令,以指示所述低优先级的vBGP节点将其内的多个网卡中用于与所述Spine连接的第一网卡的状态切换为断开状态。
根据本申请的第四方面,提供一种连接关系控制装置,应用于软件定义网络SDN中的虚拟边界网关协议vBGP节点中,所述软件定义网络SDN还包括SDN控制器和脊节点Spine,所述vBGP节点包括多个网卡;所述装置,包括:
检测模块,用于检测其与所述SDN控制器之间的网络配置协议netconf连接状态;
切换模块,用于若所述检测模块检测到所述netconf连接状态为连接异常,则将其内的多个网卡中用于与所述Spine连接的第一网卡的状态切换为断开状态;
发送模块,用于若所述检测模块检测到所述netconf连接状态为正常连接,则通过所述netconf连接向所述SDN控制器上报自身的角色信息。
根据本申请的第五方面,提供一种电子设备,包括处理器和机器可读存储介质,机器可读存储介质存储有能够被处理器执行的计算机程序,处理器被计算机程序促使执行本申请实施例第一方面所提供的方法,或者,执行本申请实施例第二方面所提供的方法。
根据本申请的第六方面,提供一种机器可读存储介质,机器可读存储介质存储有计算机程序,在被处理器调用和执行时,计算机程序促使处理器执行本申请实施例第一方面所提供的方法,或者,执行本申请实施例第二方面所提供的方法。
本申请实施例的有益效果:
通过在vBGP节点中配置多个网卡,不同的网卡提供不同的服务,使得在存在双主问题时,SDN控制器在确认其与第一vBGP节点和第二vBGP节点之间的netconf连接关系均正常时,通过向低优先级的vBGP节点发送连接关系断开指令,以断开低优先级的vBGP节点与Spine之间的连接关系,这样也就不会存在IP冲突的问题,低优先级的vBGP节点也就不会接收到Spine发送的路由信息,仅由高优先级的vBGP节点从Spine接收到路由信息,从而也就避免了vBGP节点与Spine之间的连接震荡的问题发生,在此基础上,也就不会存在两个vBGP节点分别向SDN控制器上报自身接收到的路由信息的情况,SDN控制器也就无需决策使用哪个路由信息,也就不会造成用户的流量中断。
附图说明
图1是本申请实施例提供的一种连接关系控制方法的流程图;
图2是本申请实施例提供的另一种连接关系控制方法的流程图;
图3a是本申请实施例提供的连接关系控制方法的应用场景示意图;
图3b是本申请实施例提供的基于图3a所示的应用场景执行的连接关系切换示意图;
图3c是本申请实施例提供的基于图3a所示的应用场景执行的另一种连接关系切换示意图;
图4是本申请实施例提供的一种连接关系控制装置的框图;
图5是本申请实施例提供的另一种连接关系控制装置的框图;
图6是本申请实施例提供的实施连接关系控制方法的电子设备的硬件结构示意图。
具体实施方式
这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本申请相一致的所有实施方式。相反,它们仅是与如本申请的一些方面相一致的装置和方法的例子。
在本申请使用的术语是仅仅出于描述特定实施例的目的,而非旨在限制本申请。在本申请中所使用的单数形式的“一种”、“所述”和“该”也旨在包括多数形式,除非上下文清楚地表示其他含义。还应当理解,本文中使用的术语“和/或”是指并包含一个或多个相对应的列出项目的任何或所有可能组合。
应当理解,尽管在本申请可能采用术语第一、第二、第三等来描述各种信息,但这些信息不应限于这些术语。这些术语仅用来将同一类型的信息彼此区分开。例如,在不脱离本申请范围的情况下,第一信息也可以被称为第二信息,类似地,第二信息也可以被称为第一信息。取决于语境,如在此所使用的词语“如果”可以被解释成为“在……时”或“当……时”或“响应于确定”。
下面对本申请提供的连接关系控制方法进行详细地说明。
参见图1,图1是本申请提供的一种连接关系控制方法的流程图,该方法应用于软件定义网络SDN中的SDN控制器中,该软件定义网络SDN还包括虚拟边界网关协议vBGP集群和脊节点Spine,上述vBGP集群包括第一vBGP节点和第二vBGP节点,上述第一vBGP节点和第二vBGP节点包括多个网卡,SDN控制器实施该方法时,可包括如下所示步骤:
S101、接收第一vBGP节点和第二vBGP节点各自上报的角色信息。
本步骤中,上述角色信息为主用节点或备用节点。具体地,第一vBGP节点和第二vBGP节点会通过VRRP协议选举出主备节点,通过选举后第一vBGP节点经过选举后会决策出自身是主用节点还是备用节点,当选举完成后,会将确定出的选举结果作为角色信息上报给SDN控制器。同理第二vBGP节点亦是如此,也将确定出的选举结果作为角色信息上报给SDN控制器。
需要说明的是,第一vBGP节点和第二vBGP节点之间具备保活通道,当两个节点之间的保活通道故障时,在VRRP选举时会认为各自为主用节点,即各自上报的角色信息均为主用节点。
需要说明的是,第一vBGP节点和第二vBGP节点与SDN控制器建立有netconf连接,建立netconf连接的方式如下:SDN控制器中预先配置了vBGP集群中的两个vBGP节点的实际IP地址,该实际IP地址不会随着vBGP节点主备切换发生变化。在配置第一vBGP节点和第二vBGP节点的实际IP地址后,SDN控制器会通过netconf协议分别与第一vBGP节点和第二vBGP节点建立netconf连接。在此基础上,第一vBGP节点会通过建立的netconf连接向SDN控制器上报该第一vBGP节点的角色信息,同理,第二vBGP节点会通过建立的netconf连接向SDN控制器上报该第二vBGP节点的角色信息。
S102、判断第一vBGP节点和第二vBGP节点各自上报的角色信息是否均为主用节点;若是,则执行步骤S103;若否,则执行步骤S105按现有技术提供的正常流程处理。
本步骤中,SDN控制器接收到各自上报的角色信息后,例如,若确认第一vBGP节点上报的角色信息为主用节点master node,第二vBGP节点上报的角色信息为备用节点backup node;则表明第一vBGP节点和第二vBGP节点上报的角色信息不是均为主用节点,也即未存在双主情况,则按照正常的流程处理,即按照现有的流程处理即可。若确定第一vBGP节点上报的角色信息为主用节点master node,第二vBGP节点上报的角色信息为主用节点master node,则表明第一vBGP节点和第二vBGP节点上报的角色信息均为主用节点,也即第一vBGP节点和第二vBGP节点存在双主节点的情况,也即存在双主脑裂的现象,为了避免双主情况而导致IP冲突的情况发生,本实施例提出在确认上报的角色信息均为主用节点时,执行步骤S103。
S103、分别确定所述SDN控制器与所述第一vBGP节点和所述第二vBGP节点之间的网络配置协议netconf连接状态。
本步骤中,SDN控制器在基于两个节点上报的角色信息确认两个节点存在双主情况时,由于SDN控制器分别与第一vBGP节点和第二vBGP节点建立了netconf连接,因此SDN控制器可以分别确认SDN控制器当前与两个节点之间的netconf连接的netconf连接状态。
S104、若所述netconf连接状态为正常连接,则根据所述第一vBGP节点和所述第二vBGP节点的优先级,通过netconf连接向低优先级的vBGP节点发送连接关系断开指令,以指示所述低优先级的vBGP节点将其内的多个网卡中用于与所述Spine连接的第一网卡的状态切换为断开状态。
具体地,上述多个网卡中不同的网卡提供的连接服务不同,例如上述多个网卡包括第一网卡,该第一网卡用于与Spine建立连接关系。
本步骤中,SDN控制器若确认netconf连接状态均为正常连接时,则通过发送连接关系断开指令来切换vBGP节点与Spine之间的连接关系。具体地,为了能够解决双主问题,SDN控制器可以预先配置vBGP集群中包括的vBGP节点之间的优先级,例如第一vBGP节点的优先级高于第二vBGP节点的优先级,则向第二vBGP节点发送连接关系断开指令,以指示第二vBGP节点将其内用于与脊节点Spine连接的第一网卡的状态切换为断开状态,从而断开第二vBGP节点中第一网卡与脊节点Spine之间的连接关系,这样一来,不仅不会存在IP冲突的问题,第二vBGP节点也就不会接收到Spine发送的路由信息,仅由第一vBGP节点从Spine接收到路由信息,从而也就避免了vBGP节点与Spine之间的连接震荡的问题发生,在此基础上,也就不会存在两个vBGP节点分别向SDN控制器上报自身接收到的路由信息的情况,SDN控制器也就无需决策使用哪个路由信息,也就不会造成用户的流量中断。
可选地,上述连接关系断开指令可以但不限于为网卡接口断开指令,记为网卡接口shutdown指令,以指示第一网卡将与SDN控制器交互的接口断开,即shutdown。
可选地,第一vBGP节点中的多个网卡包括第二网卡,同理上述第二vBGP节点中的多个网卡也包括第二网卡,则在实施步骤S101时,可以按照下述过程执行:接收所述第一vBGP节点中第二网卡通过netconf连接上报的角色信息;接收所述第二vBGP节点中第二网卡通过netconf连接上报的角色信息。
具体地,SDN控制器在分别与第一vBGP节点和第二vBGP节点建立netconf连接时,是与第一vBGP节点中的第二网卡建立netconf连接,以及与第二vBGP节点中的第二网卡建立netconf连接,而且第一vBGP节点的实际IP地址在其内的第二网卡上生效,第二vBGP节点的实际IP地址在其内的第二网卡上生效。也就是说,针对两个vBGP节点,在与SDN控制器交互时,是由第二网卡利用实际IP地址与SDN控制器进行信息交互。
在此基础上,SDN控制器在发送连接关系断开指令时,也是通过netconf连接向低优先级的vBGP节点中的第二网卡(如第二vBGP节点)发送连接关系断开指令,这样第二网卡接收到上述连接关系断开指令后,可以触发第一网卡将其自身的状态切换为断开状态,即shutdown,从而切断第一网卡与Spine之间的连接关系,从而也就阻断了双主情况下第二vBGP节点从Spine接收路由信息的通路,这样也就解决了现有技术中因双主情况导致IP冲突的问题。
可选地,上述多个网卡还包括第三网卡,即第一vBGP节点中设置有第三网卡,第二vBGP节点中也设置有第三网卡,其中,第一vBGP节点中的第三网卡与第二vBGP节点中的第三网卡之间建立有二层保活通道。
具体地,当第一vBGP节点中的第三网卡与第二vBGP节点中的第三网卡之间的通道故障时,会导致第一vBGP节点和第二vBGP节点进行VRRP选举时,会认为自身为主用节点,即均向SDN控制器上报mater的角色信息。
通过在vBGP节点中配置多个网卡,不同的网卡提供不同的服务,使得在存在双主问题时,SDN控制器在确认其与第一vBGP节点和第二vBGP节点之间的netconf连接关系均正常时,通过向低优先级的vBGP节点发送连接关系断开指令,以断开低优先级的vBGP节点与Spine之间的连接关系,这样也就不会存在IP冲突的问题,低优先级的vBGP节点也就不会接收到Spine发送的路由信息,仅由高优先级的vBGP节点从Spine接收到路由信息,从而也就避免了vBGP节点与Spine之间的连接震荡的问题发生,在此基础上,也就不会存在两个vBGP节点分别向SDN控制器上报自身接收到的路由信息的情况,SDN控制器也就无需决策使用哪个路由信息,也就不会造成用户的流量中断。
基于同一发明构思,本申请实施例还提供一种连接关系控制方法,应用于软件定义网络SDN中的虚拟边界网关协议vBGP节点中,该软件定义网络SDN还包括SDN控制器和脊节点Spine,上述vBGP节点包括多个网卡;上述vBGP节点可以为第一vBGP节点或第二vBGP节点,vBGP节点实施上述连接关系控制方法时,可以按照图2所示的如下所示步骤:
S201、vBGP节点检测其与所述SDN控制器之间的网络配置协议netconf连接状态。
本步骤中,vBGP集群中的每个vBGP节点均会探测其与SDN控制器之间的netconf连接状态,以便可以及时上报自身的角色信息。
S202、若检测到所述netconf连接状态为连接异常,则将其内的多个网卡中用于与所述Spine连接的第一网卡的状态切换为断开状态。
本步骤中,当检测到其与SDN控制器之间的连接状态为连接异常时,则不会参与vBGP集群间主用节点的选举,会默认自身为备用节点,则会主动将其内用于与Spine连接的第一网卡的状态切换为断开状态shutdown,也即,主动断开第一网卡与Spine之间的连接关系。这样也就不会存在双主的情况,进而也就不存在IP冲突的问题。
S203、若检测到所述netconf连接状态为正常连接,则通过所述netconf连接向所述SDN控制器上报自身的角色信息。
本步骤中,当检测到其与SDN控制器之间的连接状态为正常连接时,则利用VRRP选举出自身的角色信息并通过netconf连接发送给SDN控制器,以便SDN控制器执行后续流程。
通过实施图2所示的流程,vBGP节点当检测到其与SDN控制器之间的netconf连接状态异常时,会通过切换第一网卡的状态为断开状态来主动切换其与Spine之间的连接关系,从而避免了IP冲突,同时也避免了该vBGP节点后续从Spine获取路由信息的情况发生。
可选地,上述vBGP节点的多个网卡还包括第二网卡,则可以按照下述过程实施步骤S203中的向所述SDN控制器上报自身的角色信息:vBGP节点中的第二网卡通过所述netconf连接向所述SDN控制器上报自身的角色信息。
具体地,第二网卡会预先利用vBGP节点的实际IP地址与SDN控制器建立netconf连接,在建立netconf连接后,第二网卡通过netconf连接向SDN控制器上报自身的角色信息。
在此基础上,SDN控制器接收到上述角色信息后,可以按照图1的流程实施,从而解决因双主而导致的IP冲突问题。
可选地,上述vBGP节点的多个网卡还包括第三网卡,以及上述vBGP节点中的第三网卡用于与所属vBGP集群中的其他vBGP节点中的网卡建立保活通道。
具体地,以vBGP集群包括第一vBGP节点和第二vBGP节点为例进行说明,则第一vBGP节点中的第三网卡用于与第二vBGP节点中的第三网卡建立二层保活通道。需要说明的是,当第一vBGP节点中的第三网卡与第二vBGP节点中的第三网卡之间的保活通道故障时,会导致第一vBGP节点和第二vBGP节点进行VRRP选举时,分别确认自身为主用节点,即均向SDN控制器上报mater的角色信息,由SDN控制器执行接收到角色信息之后的流程。
可选地,本实施例中的vBGP节点中的第一网卡与Spine之间具有平滑启动GR机制,该GR机制是一种在主备倒换或BGP协议重启时保证转发业务不中断的机制。
具体地,为了防止路由因老化被删除而导致已有业务受到影响,本实施例提出在vBGP节点断开其与Spine之间的连接关系后,通过配置GR机制来保证业务不中断。
通过实施图2所示的流程,vBGP节点在确认其与SDN控制器之间的netconf连接异常时,主动断开其与Spine之间的连接关系,从而避免了从Spine获取到路由信息并上报给SDN控制器的情况发生,进而避免了用户流量的中断的情况发生。
为了更好地理解本实施例提供的连接关系控制方法,以图3a所示的应用场景为例进行说明,图3a中vBGP集群包括2个vBGP节点,vBGP1为第一vBGP节点,vBGP2为第二vBGP节点。vBGP1和vBGP2中均包括网卡1(第一网卡)、网卡2(第二网卡)和网卡3(第三网卡),本申请将vBGP节点上的业务分离到不同的网卡上,即,不同的网卡提供的服务不同,例如网卡1用于与Spine建立通信连接,网卡2用于与SDN控制器建立netconf连接,网卡3用于与所属集群中的其他vBGP节点中的网卡3建立保活通道,请参考图3a所示。
SDN控制器会同时跟vBGP1和vBGP2两个节点中的网卡2建立netconf连接,具体地,SDN控制器会预先配置好两个节点中网卡2的实际IP地址,然后利用这两个实际IP地址分别与vBGP1、vBGP2中的网卡2建立netconf连接。此外,SDN控制器会配置vBGP1、vBGP2之间的优先级,后续描述以vBGP1的优先级高于vBGP2的优先级为例进行说明。
此外,vBGP1中的网卡3与vBGP2中的网卡3建立有二层通道,用于维护两个节点之间的连接。当vBGP集群中的两个节点均正常工作时,只有作为主用节点的vBGP中的网卡1跟Spine(RR)建立BGP邻居,如图3a中的作为主用节点的vBGP1。而当vBGP集群中的两个节点存在双主脑裂时,vBGP2也会尝试利用网卡1与Spine(RR)建立BGP邻居。
vBGP1和vBGP2会通过VRRP选举出各自的角色信息并通过网卡2建立的netconf连接发送给SDN控制器。SDN控制器接收到vBGP1和vBGP2分别上报的角色信息后,若确认两个节点分别上报的角色信息均为mater,表明vBGP1认为自身为主用master,vBGP2也认为自身为mater,也即存在双主情况,为了避免双主情况带来IP冲突等问题,SDN控制器会分别确认其与vBGP1和vBGP2之间的netconf连接状态,若确认与两个节点之间的连接状态为正常连接,则根据vBGP1和vBGP2之间的优先级(vBGP1的优先级高于vBGP2的优先级),向vBGP2发送连接关系断开指令,以使vBGP2将其内的网卡1的状态切换为断开状态,以断开网卡1与Spine之间的连接关系,参考图3b所示。
需要说明的是,vBGP1和vBGP2在向SDN控制器上报自身的节点信息之前,会检测其与SDN控制器之间的netconf连接关系是否正常,当vBGP2确认其内的网卡2与SDN控制器之间的netconf连接异常时,则不再参与vBGP集群中主备节点的选举操作,会默认自身为备用节点,同时会断开其内的网卡1与Spine之间的连接关系,参考图3c所示;此外,vBGP2与Spine(RR)之间存在GR机制,这样可以防止因路由信息老化删除所导致的已有业务受影响的情况发生。
通过实施本申请提供的连接关系控制方法,即使vBGP节点之间的保活通道故障,vBGP节点形成了双主,在SDN控制器的介入下,也能很好解决双主问题,保证路由不震荡,用户业务不受影响,从而大大提高了SDN网络的可靠性。此外,通过在vBGP节点中设置多个网卡,不同的网卡提供不同的服务,从而达到一个网卡故障不影响其他网卡提供的业务服务的目的。
基于同一发明构思,本申请还提供了与上述SDN控制器侧实施的连接关系控制方法对应的连接关系控制装置。该连接关系控制装置的实施具体可以参考上述对SDN控制器侧提供的连接关系控制方法的描述,此处不再一一论述。
参见图4,图4是本申请一示例性实施例提供的一种连接关系控制装置,应用于软件定义网络SDN中的SDN控制器中,所述软件定义网络SDN还包括虚拟边界网关协议vBGP集群和脊节点Spine,所述vBGP集群包括第一vBGP节点和第二vBGP节点,所述第一vBGP节点和第二vBGP节点包括多个网卡;上述装置包括:
接收模块401,用于接收所述第一vBGP节点和所述第二vBGP节点各自上报的角色信息;
确定模块402,用于若确认所述第一vBGP节点和所述第二vBGP节点各自上报的角色信息均为主用节点,则分别确定所述SDN控制器与所述第一vBGP节点和所述第二vBGP节点之间的网络配置协议netconf连接状态;
发送模块403,用于若所述netconf连接状态为正常连接,则根据所述第一vBGP节点和所述第二vBGP节点的优先级,通过netconf连接向低优先级的vBGP节点发送连接关系断开指令,以指示所述低优先级的vBGP节点将其内的多个网卡中用于与所述Spine连接的第一网卡的状态切换为断开状态。
可选地,本实施例提供的多个网卡包括第二网卡,则
上述接收模块401,具体用于接收所述第一vBGP节点中第二网卡通过netconf连接上报的角色信息;接收所述第二vBGP节点中第二网卡通过netconf连接上报的角色信息。
可选地,本实施例提供的多个网卡还包括第三网卡,以及所述第一vBGP节点中的第三网卡与所述第二vBGP节点中第三网卡建立有保活通道。
基于同一发明构思,本申请还提供了与上述vBGP节点侧实施的连接关系控制方法对应的连接关系控制装置。该连接关系控制装置的实施具体可以参考上述对vBGP节点侧提供的连接关系控制方法的描述,此处不再一一论述。
参见图5,图5是本申请一示例性实施例提供的一种连接关系控制装置,应用于软件定义网络SDN中的虚拟边界网关协议vBGP节点中,所述软件定义网络SDN还包括SDN控制器和脊节点Spine,所述vBGP节点包括多个网卡;上述装置,包括:
检测模块501,用于检测其与所述SDN控制器之间的网络配置协议netconf连接状态;
切换模块502,用于若所述检测模块501检测到所述netconf连接状态为连接异常,则将其内的多个网卡中用于与所述Spine连接的第一网卡的状态切换为断开状态;
发送模块503,用于若所述检测模块501检测到所述netconf连接状态为正常连接,则通过所述netconf连接向所述SDN控制器上报自身的角色信息。
可选地,本实施例提供的多个网卡包括第二网卡,则
上述发送模块503,具体用于通过所述vBGP节点中的第二网卡利用所述netconf连接向所述SDN控制器上报自身的角色信息。
可选地,本实施例提供的多个网卡还包括第三网卡,以及所述vBGP节点中的第三网卡用于与所属vBGP集群中的其他vBGP节点中的网卡建立保活通道。
可选地,本实施例提供vBGP节点的第一网卡与所述Spine之间具有平滑启动GR机制。
本申请实施例提供了一种电子设备,该电子设备可以为SDN控制器或vBGP节点,如图6所示,该电子设备包括处理器601和机器可读存储介质602,机器可读存储介质602存储有能够被处理器601执行的计算机程序,处理器601被计算机程序促使执行本申请实施例所提供的SDN控制器侧的连接关系控制方法,或者,执行本申请实施例所提供的vBGP节点侧的连接关系控制方法。
上述计算机可读存储介质可以包括RAM(Random Access Memory,随机存取存储器)、DDR SRAM(Double Data Rate Synchronous Dynamic Random Access Memory,双倍速率同步动态随机存储器),也可以包括NVM(Non-volatile Memory,非易失性存储器),例如至少一个磁盘存储器。可选的,计算机可读存储介质还可以是至少一个位于远离前述处理器的存储装置。
上述处理器可以是通用处理器,包括CPU(Central Processing Unit,中央处理器)、NP(Network Processor,网络处理器)等;还可以是DSP(Digital Signal Processor,数字信号处理器)、ASIC(Application Specific Integrated Circuit,专用集成电路)、FPGA(Field-Programmable Gate Array,现场可编程门阵列)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。
另外,本申请实施例提供了一种机器可读存储介质,机器可读存储介质存储有计算机程序,在被处理器调用和执行时,计算机程序促使处理器执行本申请实施例所提供的SDN控制器侧的连接关系控制方法,或者,执行执行本申请实施例所提供的vBGP节点侧的连接关系控制方法。
对于电子设备以及机器可读存储介质实施例而言,由于其涉及的方法内容基本相似于前述的方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
上述装置中各个单元/模块的功能和作用的实现过程具体详见上述方法中对应步骤的实现过程,在此不再赘述。
对于装置实施例而言,由于其基本对应于方法实施例,所以相关之处参见方法实施例的部分说明即可。以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元/模块可以是或者也可以不是物理上分开的,作为单元/模块显示的部件可以是或者也可以不是物理单元/模块,即可以位于一个地方,或者也可以分布到多个网络单元/模块上。可以根据实际的需要选择其中的部分或者全部单元/模块来实现本申请方案的目的。本领域普通技术人员在不付出创造性劳动的情况下,即可以理解并实施。
以上所述仅为本申请的较佳实施例而已,并不用以限制本申请,凡在本申请的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本申请保护的范围之内。
Claims (10)
1.一种连接关系控制方法,其特征在于,应用于软件定义网络SDN中的SDN控制器中,所述软件定义网络SDN还包括虚拟边界网关协议vBGP集群和脊节点Spine,所述vBGP集群包括第一vBGP节点和第二vBGP节点,所述第一vBGP节点和第二vBGP节点包括多个网卡;所述方法,包括:
接收所述第一vBGP节点和所述第二vBGP节点各自上报的角色信息;
若确认所述第一vBGP节点和所述第二vBGP节点各自上报的角色信息均为主用节点,则分别确定所述SDN控制器与所述第一vBGP节点和所述第二vBGP节点之间的网络配置协议netconf连接状态;
若所述netconf连接状态为正常连接,则根据所述第一vBGP节点和所述第二vBGP节点的优先级,通过netconf连接向低优先级的vBGP节点发送连接关系断开指令,以指示所述低优先级的vBGP节点将其内的多个网卡中用于与所述Spine连接的第一网卡的状态切换为断开状态。
2.根据权利要求1所述的方法,其特征在于,所述多个网卡包括第二网卡,则
接收所述第一vBGP节点和所述第二vBGP节点上报的角色信息,包括:
接收所述第一vBGP节点中第二网卡通过netconf连接上报的角色信息;
接收所述第二vBGP节点中第二网卡通过netconf连接上报的角色信息。
3.根据权利要求1所述的方法,其特征在于,所述多个网卡还包括第三网卡,以及所述第一vBGP节点中的第三网卡与所述第二vBGP节点中第三网卡建立有保活通道。
4.一种连接关系控制方法,其特征在于,应用于软件定义网络SDN中的虚拟边界网关协议vBGP节点中,所述软件定义网络SDN还包括SDN控制器和脊节点Spine,所述vBGP节点包括多个网卡;所述方法,包括:
所述vBGP节点检测其与所述SDN控制器之间的网络配置协议netconf连接状态;
若检测到所述netconf连接状态为连接异常,则将其内的多个网卡中用于与所述Spine连接的第一网卡的状态切换为断开状态;
若检测到所述netconf连接状态为正常连接,则通过所述netconf连接向所述SDN控制器上报自身的角色信息。
5.根据权利要求4所述的方法,其特征在于,所述多个网卡包括第二网卡,则
向所述SDN控制器上报自身的角色信息,包括:
所述vBGP节点中的第二网卡通过所述netconf连接向所述SDN控制器上报自身的角色信息。
6.根据权利要求4所述的方法,其特征在于,所述多个网卡还包括第三网卡,以及所述vBGP节点中的第三网卡用于与所属vBGP集群中的其他vBGP节点中的网卡建立保活通道。
7.根据权利要求4所述的方法,其特征在于,所述vBGP节点的第一网卡与所述Spine之间具有平滑启动GR机制。
8.一种连接关系控制装置,其特征在于,应用于软件定义网络SDN中的SDN控制器中,所述软件定义网络SDN还包括虚拟边界网关协议vBGP集群和脊节点Spine,所述vBGP集群包括第一vBGP节点和第二vBGP节点,所述第一vBGP节点和第二vBGP节点包括多个网卡;所述装置,包括:
接收模块,用于接收所述第一vBGP节点和所述第二vBGP节点各自上报的角色信息;
确定模块,用于若确认所述第一vBGP节点和所述第二vBGP节点各自上报的角色信息均为主用节点,则分别确定所述SDN控制器与所述第一vBGP节点和所述第二vBGP节点之间的网络配置协议netconf连接状态;
发送模块,用于若所述netconf连接状态为正常连接,则根据所述第一vBGP节点和所述第二vBGP节点的优先级,通过netconf连接向低优先级的vBGP节点发送连接关系断开指令,以指示所述低优先级的vBGP节点将其内的多个网卡中用于与所述Spine连接的第一网卡的状态切换为断开状态。
9.一种连接关系控制装置,其特征在于,应用于软件定义网络SDN中的虚拟边界网关协议vBGP节点中,所述软件定义网络SDN还包括SDN控制器和脊节点Spine,所述vBGP节点包括多个网卡;所述装置,包括:
检测模块,用于检测其与所述SDN控制器之间的网络配置协议netconf连接状态;
切换模块,用于若所述检测模块检测到所述netconf连接状态为连接异常,则将其内的多个网卡中用于与所述Spine连接的第一网卡的状态切换为断开状态;
发送模块,用于若所述检测模块检测到所述netconf连接状态为正常连接,则通过所述netconf连接向所述SDN控制器上报自身的角色信息。
10.一种电子设备,其特征在于,包括处理器和机器可读存储介质,所述机器可读存储介质存储有能够被所述处理器执行的计算机程序,所述处理器被所述计算机程序促使执行权利要求1-7任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011567125.4A CN112583708B (zh) | 2020-12-25 | 2020-12-25 | 一种连接关系控制方法、装置和电子设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011567125.4A CN112583708B (zh) | 2020-12-25 | 2020-12-25 | 一种连接关系控制方法、装置和电子设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112583708A true CN112583708A (zh) | 2021-03-30 |
CN112583708B CN112583708B (zh) | 2022-08-30 |
Family
ID=75139807
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202011567125.4A Active CN112583708B (zh) | 2020-12-25 | 2020-12-25 | 一种连接关系控制方法、装置和电子设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112583708B (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113765787A (zh) * | 2021-08-25 | 2021-12-07 | 新华三大数据技术有限公司 | 一种故障处理方法及装置 |
CN113992571A (zh) * | 2021-09-29 | 2022-01-28 | 新华三大数据技术有限公司 | Sdn网络中多路径业务收敛方法、装置和存储介质 |
CN116248581A (zh) * | 2022-12-29 | 2023-06-09 | 天翼云科技有限公司 | 一种基于sdn的云场景网关集群主备切换方法及系统 |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20120220291A1 (en) * | 2009-10-30 | 2012-08-30 | Telefonaktiebolaget L M Ericsson (Publ) | User equipment reporting of connection loss |
US20140365621A1 (en) * | 2013-06-06 | 2014-12-11 | Alcatel-Lucent Canada, Inc. | Netconf snmp gateway |
CN107135121A (zh) * | 2017-04-28 | 2017-09-05 | 新华三技术有限公司 | 一种网络节点的切换方法及装置 |
CN108881059A (zh) * | 2018-05-29 | 2018-11-23 | 新华三技术有限公司 | 控制器角色确定方法、网络交换设备、控制器及网络系统 |
CN108933818A (zh) * | 2018-06-21 | 2018-12-04 | 新华三技术有限公司 | 通信方法及装置 |
CN109150576A (zh) * | 2017-06-28 | 2019-01-04 | 华为技术有限公司 | 一种内容数据传输方法及设备 |
CN109451084A (zh) * | 2018-09-14 | 2019-03-08 | 华为技术有限公司 | 一种服务访问方法及装置 |
-
2020
- 2020-12-25 CN CN202011567125.4A patent/CN112583708B/zh active Active
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20120220291A1 (en) * | 2009-10-30 | 2012-08-30 | Telefonaktiebolaget L M Ericsson (Publ) | User equipment reporting of connection loss |
US20140365621A1 (en) * | 2013-06-06 | 2014-12-11 | Alcatel-Lucent Canada, Inc. | Netconf snmp gateway |
CN107135121A (zh) * | 2017-04-28 | 2017-09-05 | 新华三技术有限公司 | 一种网络节点的切换方法及装置 |
CN109150576A (zh) * | 2017-06-28 | 2019-01-04 | 华为技术有限公司 | 一种内容数据传输方法及设备 |
CN108881059A (zh) * | 2018-05-29 | 2018-11-23 | 新华三技术有限公司 | 控制器角色确定方法、网络交换设备、控制器及网络系统 |
CN108933818A (zh) * | 2018-06-21 | 2018-12-04 | 新华三技术有限公司 | 通信方法及装置 |
CN109451084A (zh) * | 2018-09-14 | 2019-03-08 | 华为技术有限公司 | 一种服务访问方法及装置 |
Non-Patent Citations (1)
Title |
---|
徐雄斌等: "一种双冗余网络快速切换方法", 《舰船电子工程》 * |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113765787A (zh) * | 2021-08-25 | 2021-12-07 | 新华三大数据技术有限公司 | 一种故障处理方法及装置 |
CN113765787B (zh) * | 2021-08-25 | 2022-10-21 | 新华三大数据技术有限公司 | 一种故障处理方法及装置 |
CN113992571A (zh) * | 2021-09-29 | 2022-01-28 | 新华三大数据技术有限公司 | Sdn网络中多路径业务收敛方法、装置和存储介质 |
CN113992571B (zh) * | 2021-09-29 | 2024-02-09 | 新华三大数据技术有限公司 | Sdn网络中多路径业务收敛方法、装置和存储介质 |
CN116248581A (zh) * | 2022-12-29 | 2023-06-09 | 天翼云科技有限公司 | 一种基于sdn的云场景网关集群主备切换方法及系统 |
Also Published As
Publication number | Publication date |
---|---|
CN112583708B (zh) | 2022-08-30 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN112583708B (zh) | 一种连接关系控制方法、装置和电子设备 | |
CN110912780B (zh) | 一种高可用集群检测方法、系统及受控终端 | |
AU2004306913B2 (en) | Redundant routing capabilities for a network node cluster | |
US7206309B2 (en) | High availability packet forward apparatus and method | |
US6983294B2 (en) | Redundancy systems and methods in communications systems | |
CN108900415B (zh) | Mlag接口故障下的主从设备切换方法及系统 | |
JP5941404B2 (ja) | 通信システム、経路切替方法及び通信装置 | |
US20080225699A1 (en) | Router and method of supporting nonstop packet forwarding on system redundant network | |
CN110891018B (zh) | 网络流量恢复方法、装置、sdn控制器及存储介质 | |
CN103532839A (zh) | 在冗余路由器部署中的选择性bgp平稳重启 | |
WO2012000234A1 (zh) | 链路间快速切换的方法、装置和系统 | |
EP3316555B1 (en) | Mac address synchronization method, device and system | |
US20030233473A1 (en) | Method for configuring logical connections to a router in a data communication system | |
CN110572318B (zh) | 一种主备切换方法及路由器 | |
WO2018166308A1 (zh) | 一种分布式nat双机热备份流量切换系统和方法 | |
CN107911291A (zh) | Vrrp路由器切换方法、路由器、vrrp主备切换系统及存储介质 | |
CN113328916B (zh) | Bfd检测模式的切换方法、装置及设备 | |
US9960993B2 (en) | Packet network linear protection systems and methods in a dual home or multi-home configuration | |
CN105577444A (zh) | 一种无线控制器管理方法及无线控制器 | |
CN105939254B (zh) | Vrrp备份组状态切换的方法及装置 | |
CN114244736A (zh) | 一种基于堆叠环境的多主检测方法、设备及介质 | |
JP4344333B2 (ja) | パケット転送装置、パケット転送ネットワークシステムおよびパケット転送方法 | |
CN110138656B (zh) | 业务处理方法及装置 | |
JP2021061478A (ja) | 中継装置、中継システム、及び中継プログラム | |
US20200028731A1 (en) | Method of cooperative active-standby failover between logical routers based on health of attached services |
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 | ||
TR01 | Transfer of patent right |
Effective date of registration: 20230619 Address after: 310052 11th Floor, 466 Changhe Road, Binjiang District, Hangzhou City, Zhejiang Province Patentee after: H3C INFORMATION TECHNOLOGY Co.,Ltd. Address before: 310052 Changhe Road, Binjiang District, Hangzhou, Zhejiang Province, No. 466 Patentee before: NEW H3C TECHNOLOGIES Co.,Ltd. |
|
TR01 | Transfer of patent right |