CN113992571A - Sdn网络中多路径业务收敛方法、装置和存储介质 - Google Patents

Sdn网络中多路径业务收敛方法、装置和存储介质 Download PDF

Info

Publication number
CN113992571A
CN113992571A CN202111148937.XA CN202111148937A CN113992571A CN 113992571 A CN113992571 A CN 113992571A CN 202111148937 A CN202111148937 A CN 202111148937A CN 113992571 A CN113992571 A CN 113992571A
Authority
CN
China
Prior art keywords
vbgp
component
flow table
route
virtual switch
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
Application number
CN202111148937.XA
Other languages
English (en)
Other versions
CN113992571B (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.)
New H3C Big Data Technologies Co Ltd
Original Assignee
New H3C Big Data Technologies 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 New H3C Big Data Technologies Co Ltd filed Critical New H3C Big Data Technologies Co Ltd
Priority to CN202111148937.XA priority Critical patent/CN113992571B/zh
Publication of CN113992571A publication Critical patent/CN113992571A/zh
Application granted granted Critical
Publication of CN113992571B publication Critical patent/CN113992571B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/28Routing or path finding of packets in data switching networks using route fault recovery
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/74Address processing for routing
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L49/00Packet switching elements
    • H04L49/25Routing or path finding in a switch fabric
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L49/00Packet switching elements
    • H04L49/70Virtual switches

Abstract

本发明提供了一种SDN网络中多路径业务收敛方法、装置和存储介质,用于解决SDN网络中多路径业务收敛的技术问题。本发明中,SDN控制器监听vBGP组件的告警消息,当发现vBGP组件相关故障导致BGP路由信息同步异常时,SDN控制器主动向虚拟交换机下发逃生流表,使得虚拟交换机上的所有通过vBGP路由生成的转发流表都失效,通过逃生流表使东西向的业务流量全部走出口网关转发,从而避免在vBGP组件故障后,目的VNF中虚拟机故障,虚拟交换机上的等价多路径转发流表无法及时更新收敛,导致部分东西向业务流量断流的情况发生,使得东西向的多路径业务能够通过出口网关收敛到正常的虚拟机上。

Description

SDN网络中多路径业务收敛方法、装置和存储介质
技术领域
本发明涉及通信技术领域,尤其涉及一种SDN网络中多路径业务收敛方法、装置和存储介质。
背景技术
在网络Overlay组网中,隧道封装由物理交换机完成。此组网方案的优势在于物理网络设备转发性能比较高,可以支持非虚拟化的物理服务器之间的组网互通。
在主机Overlay组网中,将虚拟设备作为Overlay网络的边缘设备。此组网方案适用于服务器虚拟化的场景,支持KVM、CAS等主流Hypervisor平台。
混合Overlay指的是整个组网中既有OVS(Openflow Virtual Switch)又有硬件交换机(Leaf)的场景。在混合Overlay组网中,可同时支持网络Overlay和主机Overlay,既可以接入虚拟化服务器,也可以支持接入未虚拟化的物理服务器,以及必须使用物理服务器提升性能的数据库等业务。混合Overlay作为Overlay整体解决方案,它可以为客户提供自主化、多样化的选择。
在以太网虚拟专用网络(Ethernet Virtual Private Network,EVPN)初期时代,由于虚拟化交换机(vSwitch)不具备处理边界网关协议(Border Gateway Protocol,BGP)EVPN路由的功能,因此无法实现EVPN组网下的混合Overlay,使用户组网受到较大限制。在此背景下,软件定义网络(Software Defined Network,SDN)控制器厂商实现EVPN组网下的混合Overlay功能,使组网中网络Overlay和主机Overlay间的流量能够互通称为必然趋势,以解决用户在EVPN初期时代无法同时部署虚拟交换机接入和物理交换机接入的难题。
SDN技术给网络带来空前的变革,但对于网络本身而言,可靠性仍然是用户最关心的。在SDN混合Overlay组网中,由虚拟边界网关协议(virtual BGP,vBGP)组件(拥有BGP路由解析能力)跟路由反射器(Router Reflector,RR)设备建立BGP邻居,从RR设备上收集EVPN路由,vBGP组件将收集的EVPN路由通知给SDN控制器,SDN控制器根据收到的EVPN路由转换成相应的流表,下发到虚拟交换机vSwitch上,指导vSwitch转发。
然而,一旦vBGP组件出现故障,期间多路径负载均衡路由发生变更,虚拟交换机vSwtich上路由无法收敛,业务流量依然会被送到异常路径或虚机上去,导致业务中断。
发明内容
有鉴于此,本发明提供一种SDN网络中多路径业务收敛方法、装置和存储介质,用于解决SDN网络中多路径业务收敛的技术问题。
基于本发明实施例的一方面,本发明提供了一种SDN网络中多路径业务收敛方法,该方法应用于软件定义网络SDN控制器中,所述SDN控制器从虚拟边界网关协议vBGP组件同步路由信息,第一虚拟交换机与第二虚拟交换机和出口网关之间通过大二层网络互连,所述方法包括:
SDN控制器监测所述vBGP组件的状态;
当SDN控制器监测到vBGP组件故障时,向第一虚拟交换机下发逃生流表,所述逃生流表用于使发往第二虚拟交换机的东西向业务流量转发到出口网关,由出口网关发送给所述第二虚拟交换机;
当SDN控制器监测到vBGP组件恢复正常,且SDN控制器与vBGP组件之间完成路由同步以及SDN控制器与所述第一虚拟交换机之间完成流表同步之后,SDN控制器指令所述第一虚拟交换机删除逃生流表,以使发往第二虚拟交换机的东西向业务流量在第一虚拟交换机上通过大二层网络直接转发。
进一步地,所述方法还包括:
在所述vBGP组件故障产生之前,所述SDN控制器从所述vBGP组件同步的路由中包括从出口网关或路由反射器上报的目的虚拟化网络功能VNF的等价多路径路由,所述目的VNF位于所述第二虚拟机侧;所述SDN控制器根据所述vBGP组件上报的路由向所述第一虚拟交换机下发所述目的VNF的等价多路径路由相关的流表;
在所述vBGP组件恢复正常后,所述SDN控制器从vBGP组件同步的路由中包括所述目的VNF的收敛后的等价多路径路由;所述收敛后的等价多路径路由是由所述出口网关在所述vBGP组件故障期间检测到所述目的VNF中虚拟机故障时生成的。
进一步地,所述SDN控制器向所述第一虚拟交换机下发的流表分为根据vBGP组件上报的路由生成的流表和非根据vBGP组件上报的路由生成的流表;
所述逃生流表的优先级高于根据vBGP组件上报的路由生成的流表的优先级,低于非根据vBGP组件上报的路由生成的流表。
进一步地,所述出口网关通过双向转发检测BFD方式检测所述目的VNF中的虚拟机是否故障;
所述大二层网络为虚拟可扩展局域网VXLAN。
基于本发明实施例的另一方面,本发明还提供一种SDN网络中多路径业务收敛装置,该装置应用于软件定义网络SDN控制器中,所述SDN控制器从虚拟边界网关协议vBGP组件同步路由信息,第一虚拟交换机与第二虚拟交换机和出口网关之间通过大二层网络互连,该装置包括:
同步模块,用于从vBGP组件同步路由,并基于vBGP上报的路由生成流表实现与虚拟交换机的流表同步;
监测模块,用于监测所述vBGP组件的状态;
逃生流表下发模块,用于在监测到vBGP组件故障时,向第一虚拟交换机下发逃生流表,所述逃生流表用于使发往第二虚拟交换机的东西向业务流量转发到出口网关,由出口网关发送给所述第二虚拟交换机;
逃生流表删除模块,用于在监测到vBGP组件恢复正常,且SDN控制器与vBGP组件之间完成路由同步以及SDN控制器与所述第一虚拟交换机之间完成流表同步之后,指令所述第一虚拟交换机删除逃生流表,以使发往第二虚拟交换机的东西向业务流量在第一虚拟交换机上通过大二层网络直接转发。
进一步地,所述同步模块在所述vBGP组件故障产生之前,从所述vBGP组件同步的路由中包括从出口网关或路由反射器上报的目的虚拟化网络功能VNF的等价多路径路由,所述目的VNF位于所述第二虚拟机侧;所述同步模块根据所述vBGP组件上报的路由向所述第一虚拟交换机下发所述目的VNF的等价多路径路由相关的流表;
所述同步模块在所述vBGP组件恢复正常后,从所述vBGP组件同步的路由中包括所述目的VNF的收敛后的等价多路径路由;所述收敛后的等价多路径路由是由所述出口网关在所述vBGP组件故障期间检测到所述目的VNF中虚拟机故障时生成的。
进一步地,所述同步模块向所述第一虚拟交换机下发的流表分为根据所述vBGP组件上报的路由生成的流表和非根据vBGP组件上报的路由生成的流表;
所述逃生流表的优先级高于根据vBGP组件上报的路由生成的流表的优先级,低于非根据vBGP组件上报的路由生成的流表。
进一步地,所述出口网关通过双向转发检测BFD方式检测所述目的VNF中的虚拟机是否故障;
所述大二层网络为虚拟可扩展局域网VXLAN。
本发明中,SDN控制器监听vBGP组件的告警消息,当发现vBGP组件相关故障导致BGP路由信息同步异常时,SDN控制器主动向虚拟交换机下发逃生流表,使得虚拟交换机上的所有通过vBGP路由生成的转发流表都失效,通过逃生流表使东西向的业务流量全部走出口网关转发,从而避免在vBGP组件故障后,目的VNF中虚拟机故障,虚拟交换机上的等价多路径转发流表无法及时更新收敛,导致部分东西向业务流量断流的情况发生,使得东西向的多路径业务能够通过出口网关收敛到正常的虚拟机上。
附图说明
为了更加清楚地说明本发明实施例或者现有技术中的技术方案,下面将对本发明实施例或者现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明中记载的一些实施例,对于本领域普通技术人员来讲,还可以根据本发明实施例的这些附图获得其他的附图。
图1本发明一实施例提供的SDN网络多路径业务的组网结构示例图;
图2为本发明一实施例中SDN网络中vBGP组件正常情况下业务收敛的示例图;
图3为本发明一实施例中SDN网络中vBGP组件和VNF中的虚拟机先后故障时网络状态示例图;
图4为本发明一实施例提供的SDN网络多路径业务收敛方法的步骤流程图示意图;
图5为本发明一实施例中SDN控制器下发逃生流表到虚拟交换机过程示意图;
图6为本发明一实施例中SDN网络中vBGP组件故障期间负载均衡业务收敛的示意图;
图7为本发明一实施例提供的一种SDN网络多路径业务收敛装置结构示意图;
图8为本发明一实施例提供的一种电子设备结构示意图。
具体实施方式
在本发明实施例使用的术语仅仅是出于描述特定实施例的目的,而非限制本发明实施例。本发明实施例中所使用的单数形式的“一种”、“所述”和“该”也旨在包括多数形式,除非上下文清楚地表示其它含义。本发明中使用的术语“和/或”是指包含一个或多个相关联的列出项目的任何或所有可能组合。
应当理解,尽管在本发明实施例可能采用术语第一、第二、第三等来描述各种信息,但这些信息不应限于这些术语。这些术语仅用来将同一类型的信息彼此区分开。例如,在不脱离本发明实施例范围的情况下,第一信息也可以被称为第二信息,类似地,第二信息也可以被称为第一信息。取决于语境,此外,所使用的词语“如果”可以被解释成为“在……时”或“当……时”或“响应于确定”。
图2本发明一实施例提供的SDN网络多路径业务的组网结构示例图。该组网结构使用非对称转发模型,利用路由携带原始下一跳,将流量迭代到虚拟机VM对应IP,根据路由真实下一跳的个数进行负载分担,同时开启下一跳双向转发检测(BidirectionalForwarding Detection,BFD)检测功能,当某个虚拟机故障时,SDN控制器感知路由BFD状态,刷新Openflow表项,实现业务流量从故障虚拟机到其他负载分担虚拟机的切换。
如图1所示例的组网结构中,虚拟交换机(如vSwitch1和vSwitch2)及网关(如SDN_GW1和SDN_GW2)之间通过大二层技术实现互联,该示例中所使用的大二层技术为虚拟化可扩展局域网(Virtual eXtensible Local Area Network,VXLAN)。移动终端(例如手机)通过虚拟化网络功能(Virtual Network Functions,VNF)和Internet互访的流量被称为南北向流量,VNF1和VNF2为两个提供业务服务功能的虚拟服务器,其中分别包括了多个虚拟机实现业务的负载分担。VNF1和VNF2之间的流量传输称为东西向流量。为了实现南北向流量和东西向流量的负载均衡,用户需要在SDN网络中的网关SDN-GW和虚拟交换机vSwitch进行负载分担功能,具体处理流程如下:
1)VNF2中的虚拟机VM5、VM6上线,通过Openflow协议,SDN控制器在虚拟交换机OVS(Openflow Virtual Switch)例如vSwitch1和vSwitch2上下发VM5和VM6的MAC转发流表以及IP转发流表,并将VM5和VM6的信息转换为EVPN路由,通过vBGP发布给路由反射器RR(可由图中网关充当RR);
2)SDN-GW网关收到路由后,把VM5和VM6的MAC和IP地址添加到地址解析协议(Address Resolution Protocol,ARP)表项中;
3)VNF2中的VM5和VM6对外提供业务的IP地址为IP1,IP1是为VNF2中配置的业务IP地址,为实现在VNF2上业务流量在VM5和VM6之间的负载分担,用户配置静态路由,SDN控制器收到的静态路由的示例如下:
目的IP:IP1,下一跳IP:vm5 IP,启动BFD
目的IP:IP1,下一跳IP:vm6 IP,启动BFD
VM5和VM6使用相同的业务IP地址,通过配置等价路由的方式将业务流量引导到VM5和VM6两个虚拟机上。
4)SDN控制器下发上述用户配置的静态路由,其中携带原始下一跳、BFD等相关配置到SDN_GW网关;
5)SDN_GW网关针对每个下一跳分别发送BFD echo报文。
网关SDN_GW1发送给VM5和VM6的BFD echo报文示例如下:
目的IP为GW_IP1,目的MAC为VM5 MAC,VXLAN ID为VM5的L2VNI,发送给vSwitch2;
目的IP为GW_IP1,目的MAC为VM6 MAC,VXLAN ID为VM6的L2VNI,发送给vSwitch2;
BFD echo报文格式约定目的IP为发送者自己,基于此,目的端收到报文后可进行报文反弹,网关收到反弹的BFD echo报文后就可以判定这个路径是否正常。
6)BFD检测报文到达目的vSwitch2后,根据目的MAC匹配转发流表,将报文送给对应的虚拟机VM5或VM6;
7)虚拟机VM5或VM6收到BFD echo报文后,查找VNF网元虚拟机自身的路由表项,将BFD echo报文反弹出去;
8)vSwitch2收到虚拟机发送的BFD反弹报文(目的IP为分布式网关SDN_GW1的地址GW_IP1,目的MAC为SDN_GW1的MAC),匹配缺省流表,将报文送给网关SDN_GW1;
9)网关SDN_GW1收到BFD反弹报文后,将BFD会话状态设置为UP状态,将SDN控制器下发的到VM5和VM6的静态路由表项生效,两条路由表项形成等价路由。同时,网关会发布该路由表项对应的type5五类网段路由给vBGP。
10)vBGP收到五类路由后,告知SDN控制器,控制器在vSwitch2上下发到VNF2中IP1的等价多路径ECMP表项,下一跳为VM5和VM6。
11)如果VNF2中的VM5产生故障,网关SDN_GW1收不到VM5的BFD回应报文,BFDSession状态被置为Down,路由(目的IP:IP1,下一跳IP:vm5IP)失效,网关会通知vBGP组件该路由撤销;
12)vBGP组件收到路由撤销消息后,通知SDN控制器,控制器修改vSwitch2上的流表,将目的地址为IP1的ECMP表项的下一跳修改为正常的VM6。此时,其他虚拟机访问IP1的流量都会收敛到VM6。
图2为本发明一实施例中SDN网络中vBGP组件正常情况下业务收敛的示例图,在该示例中,在vBGP组件和SDN控制器都正常且与网关以及虚拟交换机之间的链路正常的情况下,当VM5故障时,南北向和东西向流量都会收敛到VNF2中正常的虚拟机VM6上。
图3为本发明一实施例中SDN网络中vBGP组件和VNF中的虚拟机先后故障时网络状态示例图。在vBGP组件先发生故障,之后VM5也发生故障时,SDN_GW网关会通过BFD感知到VM5故障,南北向负载均衡业务收敛到VM6。但是,由于vBGP组件故障,SDN控制器无法接收到SDN_GW网关发布的路由撤销信息,vSwitch上负载均衡流表无法刷新,东西向流量(VNF1访问VNF2)根据五元组进行哈希被送到有问题的虚拟机VM5上,导致业务中断。
基于上述的对技术问题的分析,为解决当vBGP组件故障或失联后,虚拟化网络功能VNF服务中某个或某些虚拟机VM又发生故障不能提供服务时,东西向的等价多路径路由无法收敛到正常的虚拟机上的技术问题,本发明提供了一种SDN网络中多路径业务收敛方法及相应的装置和设备。
本发明的基本思路是:SDN控制器监听vBGP组件的告警消息,当发现vBGP组件故障或与网关或路由反射器失联可能会导致BGP路由信息同步异常时,SDN控制器主动向虚拟交换机下发逃生流表,使得虚拟交换机上的所有通过vBGP路由生成的转发流表都失效,通过逃生流表使东西向的业务流量全部走出口网关转发,从而避免在vBGP组件故障后,目的VNF中虚拟机故障,虚拟交换机上的等价多路径转发流表无法及时更新收敛,导致部分东西向业务流量断流的情况发生,使得东西向的多路径业务能够通过出口网关收敛到正常的虚拟机上。
本发明中将拥有边界网关协议BGP路由解析能力,可实现向设备发布和接收EVPN路由功能的软硬件功能模块称为vBGP组件。将完成SDN控制器功能的软硬件模块称为SDN控制器。通常情况下,可将vBGP组件和SDN控制器部署到同一物理服务器中,也可分开部署,本发明不做限制。
vBGP组件可与网络设备(例如SDN_GW网关、路由反射器RR等)建立BGP邻居,从网络设备接收路由并将路由上报给SDN控制器,SDN控制器将BGP路由转换成Openflow流表下发给虚拟交换机OVS(例如vSwitch1和vSwitch2),指导OVS侧虚拟机访问硬件交换机上虚拟机或出外网流量的转发。同时,SDN控制器可将OVS侧虚拟机信息通过vBGP组件同步给其他网络设备。网络设备收到路由后,在本地生成OVS侧虚拟机的转发表项,指导叶子leaf侧虚拟机访问OVS侧虚拟机。
图4为本发明一实施例提供的SDN网络多路径业务收敛方法的步骤流程图示意图,该实施例的方法步骤中包括了vBGP组件故障时逃生流表的下发和vBGP组件故障恢复时逃生流表的删除的完整步骤,包括:
步骤401.SDN控制器监测vBGP组件的状态;
SDN控制器监测vBGP组件的状态的方法可以是接收vBGP组件相关的告警消息、通过心跳报文检测等。
步骤402.SDN控制器在监测到vBGP组件故障时,执行步骤403,否则执行步骤413;
该步骤中,vBGP组件故障可以是vBGP组件本身故障或vBGP组件与网关之间的链路故障,vBGP组件故障将可能导致SDN控制器无法从vBGP组件正常接收路由同步信息。检测vBGP组件是否故障,可通过告警消息或心跳报文的方式。例如,vBGP组件可向SDN控制器上报故障告警消息,SDN控制器判断vBGP组件上报的告警消息是否会导致BGP路由同步故障。导致vBGP组件与网络设备之间路由同步故障的告警可以为用于同步路由的物理端口产生故障;链路超时被判断为链路断开;此外,vBGP组件本身产生故障也会导致路由同步故障,这种情况下,可通过心跳报文机制来检测。
步骤403.SDN控制器判断之前是否已下发过vBGP故障逃生流表(简称逃生流表),如果未下发,则执行步骤404;如果已下发,则执行步骤405;
步骤404.当SDN控制器根据历史记录判定之前尚未向虚拟交换机下发过逃生流表,则SDN控制器下发逃生流表给虚拟交换机,使得所有通过vBGP路由生成的转发流表都失效,使东西向流量走出口网关转发;
如果是vBGP组件产生故障,根据vBGP上报的路由生成的转发流表都很有可能有问题,因此本发明通过下发逃生流表的方式使得根据vBGP上报的路由生成的转发流表都失效,控制器通过下发逃生流表将东西向流量引到出口网关上,使得这部分业务能够正常通信。
图5为本发明一实施例中SDN控制器下发逃生流表到虚拟交换机过程示意图。本发明将SDN控制器下发的流表分为非根据vBGP组件上报的路由生成的流表、根据vBGP组件上报的路由生成的流表和逃生流表三类。三类流表的优先级不同,非根据vBGP组件上报的路由生成的流表的优先级高于逃生流表,逃生流表的优先级高于根据vBGP组件上报的路由生成的流表。因此,当SDN控制器将逃生流表下发到虚拟交换机时,会使得优先级较低的根据vBGP组件上报的路由生成的流表失效,这时,发往目的NVF的东西向业务流量将会通过逃生流表送往出口网关,通过出口网关转发给目的NVF。
图6为本发明一实施例中SDN网络中vBGP组件故障期间负载均衡业务收敛的示意图。该示例中,位于VNF1中的虚拟机访问VNF2的东西向业务流量的目的NVF为VNF2,在SDN控制器所在主机中的vBGP组件与网关SDN_GW1失去连接或vBGP本身故障后,VNF2中的VM5也产生故障不能提供服务了,在SDN控制器向vSwitch1下发逃生流表后,由于vBGP故障逃生流表优先级高于根据vBGP上报的路由生成的流表,东西向的访问VNF2的多路径负载均衡业务流量全部送到出口网关SDN_GW1上进行转发。如图6所示,当vBGP故障期间出现路由震荡时,出口网关检测到VM5故障将访问VNF2的路由收敛到正常状态的虚拟机VM6上,其中的虚线代表东西向和南北向的业务流量在路由收敛后的传输路径。当VNF1访问VNF2时,流量送达出口网关,由于出口网关上只有一条路由生效(VM6),出口网关将流量转发给vSwitch2上的VM6。从而保证vBGP故障后,多路径负载均衡业务流量依然可以正常收敛。
步骤405.当SDN控制器根据历史记录判定之前已经向虚拟交换机下发过逃生流表,则SDN控制器只更新故障记录即可,更新故障记录后,该流程继续循环SDN控制器监测vBGP组件状态的步骤;
由于引起vBGP路由同步故障的原因可能不止一个,如果之前已下发过逃生流表,则只需要更新故障记录即可。
步骤413.在SDN控制器未监测到BGP路由同步故障时,SDN控制器判断vBGP组件相关故障是否全部恢复正常,如果全部恢复,则执行步骤414,否则执行步骤405;
步骤414.当vBGP组件相关的故障都已全部恢复正常,则SDN控制器与vBGP组件之间进行路由信息的同步,路由信息的同步完成后,SDN控制器再与虚拟交换机之间进行根据vBGP组件上报的路由生成的流表的同步,流表同步完成后,SDN控制器指令虚拟交换删除vBGP故障逃生流表。
在与vBGP组件相关的所有故障都已解除后,SDN控制器与vBGP组件之间进行路由同步或称为路由平滑,通过路由平滑使得网关上报的网络当前状态的路由能够通过vBGP组件同步给SDN控制器,SDN控制器得到网络当前最新状态的路由后,基于vBGP组件上报的路由生成流表,将所生成的流表同步给虚拟交换机,流表的同步过程也可称为流表平滑。
在完成路由平滑和流表平滑后,SDN控制器即可下发控制指令,删除虚拟交换机上的vBGP故障逃生流表,当删除逃生流表后,同步后的根据vBGP组件上报的路由生成的转发流表就可生效了,这样就可以使得东西向业务流量在OVS(例如vSwitch1和vSwitch2)上通过大二层网络(例如VXLAN隧道)直接转发,不再绕行出口网关。
当vBGP组件相关的故障部分恢复正常,则SDN控制器只更新故障记录即可,更新故障记录后,该流程继续循环SDN控制器监测vBGP组件状态的步骤。
综上,通过本发明提供的技术方案,主机Overlay之间的流量依然走东西向卸载,多路径负载均衡业务流量全部送到出口网关上进行转发,可以在vBGP故障期间出现路由震荡时,转发流量可以正常收敛。当vBGP恢复正常后,自动进行流表平滑,流量恢复东西向流量卸载。
图7为本发明一实施例提供的一种SDN网络中多路径业务收敛装置结构示意图,该装置700中的各功能模块可以采用软件、硬件或软硬件相结合的方式实现。该装置700应用于软件定义网络SDN控制器中,SDN控制器从边界网关协议vBGP组件同步路由信息,第一虚拟交换机与第二虚拟交换机和出口网关之间通过大二层网络互连,该装置700包括:
同步模块701,用于从vBGP组件同步路由,并基于vBGP上报的路由生成流表实现与虚拟交换机的流表同步;
监测模块702,用于监测vBGP组件的状态;
逃生流表下发模块703,用于在监测到vBGP组件故障时,向第一虚拟交换机下发逃生流表,逃生流表用于使发往第二虚拟交换机的东西向业务流量转发到出口网关,由出口网关发送给第二虚拟交换机;
逃生流表删除模块704,用于在监测到vBGP组件恢复正常,且SDN控制器与vBGP组件之间完成路由同步以及SDN控制器与第一虚拟交换机之间完成流表同步之后,指令第一虚拟交换机删除逃生流表,以使发往第二虚拟交换机的东西向业务流量在第一虚拟交换机上通过大二层网络直接转发。
进一步地,同步模块701在vBGP组件故障产生之前,从vBGP组件同步的路由中包括从出口网关或路由反射器上报的目的虚拟化网络功能VNF的等价多路径路由,目的VNF位于第二虚拟机侧;同步模块701根据vBGP组件上报的路由向第一虚拟交换机下发目的VNF的等价多路径路由相关的流表;
同步模块701在vBGP组件恢复正常后,从vBGP组件同步的路由中包括目的VNF的收敛后的等价多路径路由;收敛后的等价多路径路由是由所述出口网关在vBGP组件故障期间检测到目的VNF中虚拟机故障时生成的。
进一步地,同步模块701向第一虚拟交换机下发的流表分为根据vBGP组件上报的路由生成的流表和非根据vBGP组件上报的路由生成的流表;逃生流表的优先级高于根据vBGP组件上报的路由生成的流表的优先级,低于非根据vBGP组件上报的路由生成的流表。
图8为本发明一实施例提供的一种电子设备结构示意图,该设备800包括:诸如中央处理单元(CPU)的处理器810、通信总线820、通信接口840以及存储介质830。其中,处理器810与存储介质830可以通过通信总线820相互通信。存储介质830内存储有计算机程序,当该计算机程序被处理器810执行时即可实现本发明提供的方法的各步骤的功能。
其中,存储介质可以包括随机存取存储器(Random Access Memory,RAM),也可以包括非易失性存储器(Non-Volatile Memory,NVM),例如至少一个磁盘存储器。另外,存储介质还可以是至少一个位于远离前述处理器的存储装置。处理器可以是通用处理器,包括中央处理器(Central Processing Unit,CPU)、网络处理器(Network Processor,NP)等;还可以是数字信号处理器(Digital Signal Processing,DSP)、专用集成电路(ApplicationSpecific Integrated Circuit,ASIC)、现场可编程门阵列(Field-Programmable GateArray,FPGA)或其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。
应当认识到,本发明的实施例可以由计算机硬件、硬件和软件的组合、或者通过存储在非暂时性存储器中的计算机指令来实现或实施。所述方法可以使用标准编程技术,包括配置有计算机程序的非暂时性存储介质在计算机程序中实现,其中如此配置的存储介质使得计算机以特定和预定义的方式操作。每个程序可以以高级过程或面向对象的编程语言来实现以与计算机系统通信。然而,若需要,该程序可以以汇编或机器语言实现。在任何情况下,该语言可以是编译或解释的语言。此外,为此目的该程序能够在编程的专用集成电路上运行。此外,可按任何合适的顺序来执行本发明描述的过程的操作,除非本发明另外指示或以其他方式明显地与上下文矛盾。本发明描述的过程(或变型和/或其组合)可在配置有可执行指令的一个或多个计算机系统的控制下执行,并且可作为共同地在一个或多个处理器上执行的代码(例如,可执行指令、一个或多个计算机程序或一个或多个应用)、由硬件或其组合来实现。所述计算机程序包括可由一个或多个处理器执行的多个指令。
进一步,所述方法可以在可操作地连接至合适的任何类型的计算平台中实现,包括但不限于个人电脑、迷你计算机、主框架、工作站、网络或分布式计算环境、单独的或集成的计算机平台、或者与带电粒子工具或其它成像装置通信等等。本发明的各方面可以以存储在非暂时性存储介质或设备上的机器可读代码来实现,无论是可移动的还是集成至计算平台,如硬盘、光学读取和/或写入存储介质、RAM、ROM等,使得其可由可编程计算机读取,当存储介质或设备由计算机读取时可用于配置和操作计算机以执行在此所描述的过程。此外,机器可读代码,或其部分可以通过有线或无线网络传输。当此类媒体包括结合微处理器或其他数据处理器实现上文所述步骤的指令或程序时,本发明所述的发明包括这些和其他不同类型的非暂时性计算机可读存储介质。当根据本发明所述的方法和技术编程时,本发明还包括计算机本身。
以上所述仅为本发明的实施例而已,并不用于限制本发明。对于本领域技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原理之内所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

Claims (10)

1.一种SDN网络中多路径业务收敛方法,其特征在于,该方法应用于软件定义网络SDN控制器中,所述SDN控制器从虚拟边界网关协议vBGP组件同步路由信息,第一虚拟交换机与第二虚拟交换机和出口网关之间通过大二层网络互连,所述方法包括:
SDN控制器监测所述vBGP组件的状态;
当SDN控制器监测到vBGP组件故障时,向第一虚拟交换机下发逃生流表,所述逃生流表用于使发往第二虚拟交换机的东西向业务流量转发到出口网关,由出口网关发送给所述第二虚拟交换机;
当SDN控制器监测到vBGP组件恢复正常,且SDN控制器与vBGP组件之间完成路由同步以及SDN控制器与所述第一虚拟交换机之间完成流表同步之后,SDN控制器指令所述第一虚拟交换机删除逃生流表,以使发往第二虚拟交换机的东西向业务流量在第一虚拟交换机上通过大二层网络直接转发。
2.根据权利要求1所述的方法,其特征在于,所述方法还包括:
在所述vBGP组件故障产生之前,所述SDN控制器从所述vBGP组件同步的路由中包括从出口网关或路由反射器上报的目的虚拟化网络功能VNF的等价多路径路由,所述目的VNF位于所述第二虚拟机侧;所述SDN控制器根据所述vBGP组件上报的路由向所述第一虚拟交换机下发所述目的VNF的等价多路径路由相关的流表;
在所述vBGP组件恢复正常后,所述SDN控制器从vBGP组件同步的路由中包括所述目的VNF的收敛后的等价多路径路由;所述收敛后的等价多路径路由是由所述出口网关在所述vBGP组件故障期间检测到所述目的VNF中虚拟机故障时生成的。
3.根据权利要求1所述的方法,其特征在于,
所述SDN控制器向所述第一虚拟交换机下发的流表分为根据vBGP组件上报的路由生成的流表和非根据vBGP组件上报的路由生成的流表;
所述逃生流表的优先级高于根据vBGP组件上报的路由生成的流表的优先级,低于非根据vBGP组件上报的路由生成的流表。
4.根据权利要求2所述的方法,其特征在于,
所述出口网关通过双向转发检测BFD方式检测所述目的VNF中的虚拟机是否故障;
所述大二层网络为虚拟可扩展局域网VXLAN。
5.一种SDN网络中多路径业务收敛装置,其特征在于,该装置应用于软件定义网络SDN控制器中,所述SDN控制器从虚拟边界网关协议vBGP组件同步路由信息,第一虚拟交换机与第二虚拟交换机和出口网关之间通过大二层网络互连,该装置包括:
同步模块,用于从vBGP组件同步路由,并基于vBGP上报的路由生成流表实现与虚拟交换机的流表同步;
监测模块,用于监测所述vBGP组件的状态;
逃生流表下发模块,用于在监测到vBGP组件故障时,向第一虚拟交换机下发逃生流表,所述逃生流表用于使发往第二虚拟交换机的东西向业务流量转发到出口网关,由出口网关发送给所述第二虚拟交换机;
逃生流表删除模块,用于在监测到vBGP组件恢复正常,且SDN控制器与vBGP组件之间完成路由同步以及SDN控制器与所述第一虚拟交换机之间完成流表同步之后,指令所述第一虚拟交换机删除逃生流表,以使发往第二虚拟交换机的东西向业务流量在第一虚拟交换机上通过大二层网络直接转发。
6.根据权利要求5所述的装置,其特征在于,
所述同步模块在所述vBGP组件故障产生之前,从所述vBGP组件同步的路由中包括从出口网关或路由反射器上报的目的虚拟化网络功能VNF的等价多路径路由,所述目的VNF位于所述第二虚拟机侧;所述同步模块根据所述vBGP组件上报的路由向所述第一虚拟交换机下发所述目的VNF的等价多路径路由相关的流表;
所述同步模块在所述vBGP组件恢复正常后,从所述vBGP组件同步的路由中包括所述目的VNF的收敛后的等价多路径路由;所述收敛后的等价多路径路由是由所述出口网关在所述vBGP组件故障期间检测到所述目的VNF中虚拟机故障时生成的。
7.根据权利要求5所述的装置,其特征在于,
所述同步模块向所述第一虚拟交换机下发的流表分为根据所述vBGP组件上报的路由生成的流表和非根据vBGP组件上报的路由生成的流表;
所述逃生流表的优先级高于根据vBGP组件上报的路由生成的流表的优先级,低于非根据vBGP组件上报的路由生成的流表。
8.根据权利要求6所述的装置,其特征在于,
所述出口网关通过双向转发检测BFD方式检测所述目的VNF中的虚拟机是否故障;
所述大二层网络为虚拟可扩展局域网VXLAN。
9.一种电子设备,其特征在于,包括处理器、通信接口、存储介质和通信总线,其中,处理器、通信接口、存储介质通过通信总线完成相互间的通信;
存储介质,用于存放计算机程序;
处理器,用于执行存储介质上所存放的计算机程序时,实施权利要求1-4任一项所述的方法步骤。
10.一种存储介质,其上存储有计算机程序,其特征在于,所述计算机程序当被处理器执行时实施如权利要求1至4中任一项所述的方法步骤。
CN202111148937.XA 2021-09-29 2021-09-29 Sdn网络中多路径业务收敛方法、装置和存储介质 Active CN113992571B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202111148937.XA CN113992571B (zh) 2021-09-29 2021-09-29 Sdn网络中多路径业务收敛方法、装置和存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202111148937.XA CN113992571B (zh) 2021-09-29 2021-09-29 Sdn网络中多路径业务收敛方法、装置和存储介质

Publications (2)

Publication Number Publication Date
CN113992571A true CN113992571A (zh) 2022-01-28
CN113992571B CN113992571B (zh) 2024-02-09

Family

ID=79737172

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202111148937.XA Active CN113992571B (zh) 2021-09-29 2021-09-29 Sdn网络中多路径业务收敛方法、装置和存储介质

Country Status (1)

Country Link
CN (1) CN113992571B (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116599901A (zh) * 2023-06-13 2023-08-15 苏州浪潮智能科技有限公司 业务调度方法、装置、计算机设备及存储介质

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101034850A (zh) * 2006-03-06 2007-09-12 富士通株式会社 Dc-dc转换器及其控制电路和控制方法,以及电源单元
CN105571690A (zh) * 2014-10-09 2016-05-11 梅特勒-托利多(常州)精密仪器有限公司 数字称重传感器及传感器网络
US20170195255A1 (en) * 2015-12-31 2017-07-06 Fortinet, Inc. Packet routing using a software-defined networking (sdn) switch
CN110022262A (zh) * 2018-01-09 2019-07-16 杭州达乎科技有限公司 一种基于sdn网络实现平面分离的方法、系统和装置
CN112134794A (zh) * 2020-10-28 2020-12-25 新华三大数据技术有限公司 一种流表备份方法及装置
CN112583708A (zh) * 2020-12-25 2021-03-30 新华三技术有限公司 一种连接关系控制方法、装置和电子设备

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101034850A (zh) * 2006-03-06 2007-09-12 富士通株式会社 Dc-dc转换器及其控制电路和控制方法,以及电源单元
CN105571690A (zh) * 2014-10-09 2016-05-11 梅特勒-托利多(常州)精密仪器有限公司 数字称重传感器及传感器网络
US20170195255A1 (en) * 2015-12-31 2017-07-06 Fortinet, Inc. Packet routing using a software-defined networking (sdn) switch
CN110022262A (zh) * 2018-01-09 2019-07-16 杭州达乎科技有限公司 一种基于sdn网络实现平面分离的方法、系统和装置
CN112134794A (zh) * 2020-10-28 2020-12-25 新华三大数据技术有限公司 一种流表备份方法及装置
CN112583708A (zh) * 2020-12-25 2021-03-30 新华三技术有限公司 一种连接关系控制方法、装置和电子设备

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
SHAMEEMRAJ M. NADAF; A. V. ARUN KUMAR; HEMANT KUMAR RATH; ANANTHA SIMHA, 《2017 IEEE INTERNATIONAL CONFERENCE ON ADVANCED NETWORKS AND TELECOMMUNICATIONS SYSTEMS (ANTS)》 *
郭毅;王振兴;刘慧生;王禹;: "基于协同的域间路由路径真实性验证机制", 《计算机研究与发展》, no. 2 *
郭毅;王振兴;刘慧生;王禹;: "基于协同的域间路由路径真实性验证机制", 计算机研究与发展, no. 2 *

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116599901A (zh) * 2023-06-13 2023-08-15 苏州浪潮智能科技有限公司 业务调度方法、装置、计算机设备及存储介质
CN116599901B (zh) * 2023-06-13 2024-01-23 苏州浪潮智能科技有限公司 业务调度方法、装置、计算机设备及存储介质

Also Published As

Publication number Publication date
CN113992571B (zh) 2024-02-09

Similar Documents

Publication Publication Date Title
CN108574614B (zh) 一种报文处理方法、设备及网络系统
US10686749B2 (en) Packet sending method and network device
CN107846342B (zh) 一种vxlan报文的转发方法、设备及系统
US7206309B2 (en) High availability packet forward apparatus and method
US7961601B2 (en) Lesser disruptive open shortest path first handling of bidirectional forwarding detection state changes
AU2004306913B2 (en) Redundant routing capabilities for a network node cluster
US7463579B2 (en) Routed split multilink trunking
US7760652B2 (en) Methods and apparatus for improved failure recovery of intermediate systems
US20080225699A1 (en) Router and method of supporting nonstop packet forwarding on system redundant network
CN110891018B (zh) 网络流量恢复方法、装置、sdn控制器及存储介质
CN113992569B (zh) Sdn网络中多路径业务收敛方法、装置及存储介质
WO2020030000A1 (zh) 容灾切换方法、相关设备及计算机存储介质
US20220124033A1 (en) Method for Controlling Traffic Forwarding, Device, and System
KR101017540B1 (ko) 로컬 노드 운전 정지 동안의 무중단 네트워크 제어 메시지 발생
CN112187633A (zh) 一种链路故障收敛方法、装置、电子设备及存储介质
CN113992571B (zh) Sdn网络中多路径业务收敛方法、装置和存储介质
US10616046B2 (en) System and method of handling a fault detection mechanism during a control plane failover
US10447581B2 (en) Failure handling at logical routers according to a non-preemptive mode
CN110138656B (zh) 业务处理方法及装置
US7869351B2 (en) Communication techniques and generic layer 3 automatic switching protection
CN109379760B (zh) 一种mec旁路系统和方法
CN114585009A (zh) Upf双机热备切换方法、装置、电子设备及存储介质
EP3720058B1 (en) Method for configuring private line service, device, and storage medium
EP4325799A1 (en) Data transmission method, communication system, and route advertisement method
JP2017204771A (ja) 通信装置,その通信制御方法,及び通信システム

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