Sdn网络设备的主备链路切换方法和装置的制造方法

文档序号:9818417阅读:448来源:国知局
Sdn网络设备的主备链路切换方法和装置的制造方法
【技术领域】
[0001]本发明涉及通信技术领域,特别是涉及SDN网络设备的主备链路切换方法和装置。
【背景技术】
[0002]SDN网络(Software Defined Network,软件定义网络)通常由SDN网络设备(Switch)和SDN控制器(Controller)组成。其中,SDN控制器是控制中心,根据用户的配置或者动态运行的协议生成流表发送到SDN网络设备。SDN网络设备接收SDN控制器下发的流表,并根据流表进行报文处理。SDN控制器和SDN网络设备根据SDN通信接口标准进行通信,其中,Openflow是常用的SDN通信接口标准。
[0003]在采用Openflow协议的SDN网络组网应用中,存在着SDN控制器集群,每个SDN控制器集群包括多个SDN控制器,SDN网络设备以所述集群中的一个SDN控制器为主用控制器,其他一个或多个SDN控制器为备用控制器。当SDN控制器集群内的某个SDN控制器发生升级、恢复、故障、与SDN网络设备的连接断开等涉及集群内SDN控制器切换的动作时,将引起以该SDN控制器为主用控制器的SDN网络设备的主备链路切换,即,将该SDN网络设备与当前主用控制器之间的主用链路切换为备用链路,与集群内的其他SDN控制器建立主用链路,从而将该SDN网络设备的业务数据流从当前主用SDN控制器切换到其他SDN控制器中。
[0004]在进行SDN网络设备的主备链路切换时,如何减少甚至避免SDN网络设备的业务数据包丢包现象,是当前亟需解决的技术问题。

【发明内容】

[0005]有鉴于此,本发明提出了 SDN网络设备的主备链路切换方法和装置,能够在采用Openflow协议的SDN网络设备的进行主备链路切换时,减少甚至避免SDN网络设备的业务数据包丢包现象。
[0006]本发明提出的技术方案是:
[0007]—种SDN网络设备的主备链路切换方法,该方法包括:
[0008]设置主用链路能力为接收并存储packet_in报文、且不处理packet_out报文,建立目标主用链路,原主用链路转换为备用链路;
[0009]设置所述备用链路为等价链路,该等价链路的能力为接收paCket_0Ut报文、且不上送packet_in报文,所述原主用控制器通过所述等价链路处理存储的packet_in报文;
[0010]所述存储的packet_in报文处理完毕后,设置所述等价链路为备用链路,通知所述目标主用控制器开始处理packet_in报文和packet_out报文。
[0011]—种SDN控制器中的主备链路切换装置,该装置包括链路设置模块和报文处理模块,当该SDN控制器作为SDN网络设备的原主用控制器时:
[0012]所述链路设置模块,用于设置主用链路能力为接收并存储packet_in报文、且不处理Packet_0ut报文,在建立主用链路建立时,原主用链路转换为备用链路,设置所述备用链路为等价链路,该等价链路的能力为接收packet_out报文、且不上送packet_in报文,所述存储的packet_in报文处理完毕后,设置所述等价链路为备用链路;
[0013]所述报文处理模块,用于通过原主用链路接收并存储SDN网络设备上传的packet_in报文、且不处理Packet_out报文,通过所述等价链路处理存储的packet_in报文,所述存储的packet_in报文处理完毕后,通知所述目标主用控制器开始处理packet_in报文和packet_out报文。
[0014]由上述技术方案可见,本发明实施例中,在Openflow网络中进行SDN网络设备的主备链路切换时,首先,设置主用链路能力为接收并存储packet_in报文、且不处理Packet_out报文,SDN网络设备的目标主用控制器建立目标主用链路,原主用链路转换为备用链路,然后,SDN网络设备的原主用控制器设置所述备用链路为等价链路,该等价链路的能力为接收packet_out报文、且不上送packet_in报文,所述原主用控制器通过所述等价链路处理存储的packet_in报文,最后,在所述存储的packet_in报文处理完毕后,设置所述等价链路为备用链路,通知所述目标主用控制器开始处理packet_in报文和packet_out报文。
[0015]在Openflow网络中,SDN网络设备和SDN控制器之间通过packet_in报文和packet_out报文交互业务数据包,因此,只要在进行SDN网络设备的主备链路切换时,减少甚至避免packet_in报文和packet_out报文的丢包现象,就能够减少甚至避免SDN网络设备的业务数据包丢包现象。
[0016]对于packet_in报文,本发明实施例中,首先通过SDN网络设备与原主用控制器之间的原主用链路将packet_in报文上传至原主用控制器,当SDN网络设备与目标主用控制器建立主用链路时,由于主备链路的原子性,原主用链路自动转换为备用链路,这时,SDN网络设备通过与目标主用控制器之间的主用链路上传packet_in报文。对于SDN网络设备已经上传到原主用控制器的packet_in报文,通过将SDN网络设备与原主用控制器之间的链路设置为等价链路,利用所述等价链路将存储在原主用控制器上的packet_in报文的处理结果发给SDN网络设备,实现了在将主用链路切换到目标控制器之前上传到原主用控制器的packet_in报文不丢包。
[0017]而且,由于所述等价链路的能力被设置为只接收paCket_0Ut报文、不上送packet_in报文,因此,在SDN网络设备通过等价链路接收原主用控制器对packet_in报文的处理结果时,SDN网络设备还是将packet_in报文上传到目标主用控制器中,而不会上传到原主用控制器,因此,使得主备链路切换过程能够继续进行,且能够保证在将主用链路切换到目标控制器之后产生的packet_in报文不丢包。
[0018]对于packet_out报文,由于SDN网络设备将主用链路由原主用控制器切换到目标主用控制器上时,原主用链路自动转换为备用链路,SDN网络设备无法通过备用链路接收paCket_0Ut报文,因此,本发明实施例通过预先将原主用链路的能力设置为不处理packet_out报文,避免了在主用链路切换到目标主用控制器的瞬间,原主用控制器已经正常发送了 packet_0Ut报文,但是SDN网络设备却由于原主用链路已经转换为备用链路而无法接收原主用控制器发送的packet_out报文,因而避免了原主用控制器上的packet_out报文出现丢包现象。
[0019]通过预先将与目标主用控制器建立的主用链路的能力设置为不处理paCket_0ut报文,然后通过等价链路将原主用控制器的paCket_0Ut报文接收完毕以后,再设置与目标主用控制器建立的主用链路能够处理packet_0ut报文,S卩,通知目标主用控制器处理packet_in报文和packet_out报文,可以实现packet_out报文的保序,避免由于顺序错误而造成packet_out报文丢包。
【附图说明】
[0020]图1是本发明实施例提供的SDN网络设备的主备链路切换方法流程图。
[0021]图2是本发明实施例提供的SDN控制器升级的场景下进行SDN网络设备主备链路切换的流程图。
[0022]图3是本发明实施例提供的应用实例一的组网示意图。
[0023]图4是应用实例一的主备链路切换过程中步骤301的网络连接和数据流向示意图。
[0024]图5是应用实例一的主备链路切换过程中步骤302的网络连接和数据流向示意图。
[0025]图6是应用实例一的主备链路切换过程中步骤303的网络连接和数据流向示意图。
[0026]图7是应用实例一的主备链路切换过程中步骤304的网络连接和数据流向示意图。
[0027]图8是应用实例一的主备链路切换过程中步骤305的网络连接和数据流向示意图。
[0028]图9是本发明实施例提供的SDN控制器在控制器集群中新开始工作的场景下进行SDN网络设备主备链路切换的流程图。
[0029]图10是本发明实施例提供的应用实例二的组网示意图。
[0030]图11是应用实例二的主备链路切换过程中步骤1002的网络连接和数据流向示意图。
[0031]图12是应用实例二的主备链路切换过程中步骤1003的网络连接和数据流向示意图。
[0032]图13是应用实例二的主备链路切换过程中步骤1004的网络连接和数据流向示意图。
[0033]图14是应用实例二的主备链路切换过程中步骤1005的网络连接和数据流向示意图。
[0034]图15是应用实例二的主备链路切换过程中步骤1006的网络连接和数据流向示意图。
[0035]图16为本发明实施例SDN控制器的硬件结构连接图。
[0036]图17是本发明实施例提供的主备链路切换装置结构示意图。
【具体实施方式】
[0037]在Openflow网络中,SDN网络设备常常需要将一些业务数据上送给其主用控制器进行处理,在进行SDN网络设备的主备链路切换时,一般情况下,SDN网络设备的一部分业务数据已经上送给原主用控制器进行处理,并且,不断有新的业务数据需要上送给主用控制器进行处理。在SDN网络设备与目标主用控制器建立主用链路的同时,基于主备链路的原子性,原主用链路自动转换为备用链路,由于主用链路和备用链路的数据处理能力不同,例如,备用链路不允许处理packet_0ut报文,默认情况下,主用链路既可以处理packet_in报文、也可以处理packet_0Ut报文,因此,如何将已经上送
当前第1页1 2 3 4 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1