一种报文控制方法和设备的制作方法
【专利摘要】本发明提供一种报文控制方法和设备,其中方法包括:获取隧道转发网络中的边缘转发设备,所述边缘转发设备与控制器或服务器连接;控制器向所述边缘转发设备发送报文控制策略,以使得所述边缘转发设备根据所述报文控制策略将所述控制器与服务器之间的报文的优先级设置为高优先级。本发明能够保证报文在转发网络中以该高优先级进行优先发送,尽量避免控制器与服务器之间的报文发生丢弃。
【专利说明】一种报文控制方法和设备
【技术领域】
[0001]本发明涉及网络技术,特别涉及一种报文控制方法和设备。
【背景技术】
[0002]在软件定义网络(Software Defined Network,简称:SDN)的网络架构中,将网络设备的控制层面和转发层面分离,通过SDN控制器对网络流量进行集中控制,虚拟应用融合架构(Virtual Converged Framework,简称:VCF)控制器是其中一种控制器。在一种应用中,SDN控制器与业务服务器之间的报文中间可以通过隧道转发网络进行转发,例如隧道网络为VXLAN网络,则SDN控制器与业务服务器之间的报文到达VXLAN的边缘设备(VTEP)时,将SDN控制器和业务服务器之间的报文按照VXLAN规定的格式进行隧道封装后,转发到对端边缘设备(VTEP),对端边缘设备(VTEP)进行解封装,之后转发给SDN控制器或业务服务器。所转发的报文包括控制报文、协议报文和数据报文等。以SDN控制器为VCF控制器为例,VCF控制器与服务器之间的控制报文和协议报文用于保证VCF控制器和服务器之间openflow通道的及时通信,比如,VCF控制器可以向服务器的虚拟交换机OVS下发流表,以使得OVS根据该流表转发服务器的业务流量。
[0003]目前的问题是,上述的隧道转发网络在将报文进行封装转发时,对于各种类型的报文是平等转发的,当VCF在向服务器的OVS发送报文的转发路径上的报文流量很大的时候,有可能出现控制报文和协议报文被丢弃的现象,使得控制报文和协议报文无法正确传输,导致VCF控制器与服务器之间不能保证会话信息的及时传递,影响服务器的业务执行,比如服务器无法及时接收到控制器下发的最新的流表,从而不能按照最新的流表进行流量转发。
【发明内容】
[0004]有鉴于此,本发明提供一种报文控制方法和设备,以保证VCF控制器和服务器之间的openflow会话的正常进行。
[0005]具体地,本发明是通过如下技术方案实现的:
[0006]第一方面,提供一种报文控制方法,所述方法应用于软件定义网络SDN,所述SDN包括控制器、服务器、隧道转发网络以及所述隧道转发网络的边缘转发设备;所述方法包括:
[0007]所述控制器获取所述隧道转发网络中的边缘转发设备,所述边缘转发设备与所述控制器或服务器连接;
[0008]所述控制器向所述边缘转发设备发送报文控制策略,以使得所述边缘转发设备根据所述报文控制策略将所述控制器与服务器之间的报文的优先级设置为高优先级。
[0009]第二方面,提供一种报文控制方法,所述方法应用于软件定义网络SDN,所述SDN包括控制器、服务器、隧道转发网络以及所述隧道转发网络的边缘转发设备;所述方法包括:
[0010]所述边缘转发设备接收所述控制器发送的报文控制策略;
[0011]所述边缘转发设备根据所述报文控制策略,将所述控制器和服务器之间的报文的优先级设置为高优先级。
[0012]第三方面,提供一种控制器,可应用于软件定义网络SDN,所述SDN包括所述控制器、服务器、隧道转发网络以及所述隧道转发网络的边缘转发设备;所述控制器包括:
[0013]设备确定单元,用于获取所述隧道转发网络中的边缘转发设备,所述边缘转发设备与所述控制器或服务器连接;
[0014]策略发送单元,用于向所述边缘转发设备发送报文控制策略,以使得所述边缘转发设备根据所述报文控制策略将所述控制器与服务器之间的报文的优先级设置为高优先级。
[0015]第四方面,提供一种转发设备,可作为边缘转发设备应用于软件定义网络SDN,所述SDN包括控制器、服务器、隧道转发网络以及所述隧道转发网络的边缘转发设备;所述转发设备包括:
[0016]策略接收单元,用于接收所述控制器发送的报文控制策略;
[0017]报文控制单元,用于根据所述报文控制策略,将所述控制器和服务器之间的报文的优先级设置为高优先级。
[0018]本发明实施例的报文控制方法和设备,通过由控制器向隧道转发网络的边缘设备下发报文控制策略,并使得边缘设备据此策略将控制器和服务器之间的报文设置为高优先级,能够保证控制器与服务器之间的报文在转发网络中以该高优先级进行优先发送,减少丢弃的发生。
【专利附图】
【附图说明】
[0019]图1是本发明实施例提供的报文控制方法的应用架构图;
[0020]图2是本发明实施例提供的报文控制方法中的服务器结构图;
[0021]图3是本发明实施例提供的报文控制方法的流程示意图;
[0022]图4是本发明实施例提供的控制器的结构示意图;
[0023]图5是本发明实施例提供的转发设备的结构示意图。
【具体实施方式】
[0024]SDN是分离控制平面和数据平面的网络,在SDN中,SDN控制器是控制中心,负责生成流表并发送到SDN中的转发设备,转发设备根据接收到的控制器发送的流表进行报文处理。如图1所示,该图1所示的网络即为SDN的网络架构,网络中包括VCF控制器11 (本实施例以VCF为例,具体实施中也可以是其他控制器)、转发网络12和多个服务器13 (包括服务器1、服务器2和服务器3等);其中,转发网络12是隧道转发网络例如是VXLAN网络,该网络的起点边缘转发设备在接收到源设备发送的报文后,对报文进行VXLAN隧道封装,之后在该转发网络进行转发,到达终点边缘转发设备时进行解VXLAN隧道封装,之后发送给目的设备。
[0025]其中,服务器中可以设置有多个虚拟机VM和OVS (Open vSwitch),参见图2,OVS是一个虚拟交换软件,如下的实施例中将其称为虚拟交换机,该OVS主要用于虚拟机VM环境,作为一个虚拟交换机,支持多种虚拟化技术,负责传递服务器中的各个VM之间的流量,以及实现VM与外界网络的通信,比如服务器I中的某个VM与服务器2中的某个VM之间的流量转发。
[0026]本实施例中,VCF控制器11与服务器中的OVS之间建立openflow会话连接,Openflow是SDN架构中定义的一个控制器与转发层之间的通信接口标准,允许直接访问和操作网络设备的转发平面,VCF控制器11与服务器中的OVS之间通过Openflow通道(Openflow Channel)进行通信。该Openflow通道也是经过图1中所示的转发网络12的,比如在图1中示出的其中一条Openflow通道14,该通道用于VCF控制器11与服务器I的OVS之间进行通信,比如服务器I的OVS向VCF控制器上报设备状态,或者VCF控制器向OVS下发流表等。
[0027]具体的,VCF控制器11与服务器的OVS之间通过openflow通道传输的报文是控制报文和协议报文,比如两者建立openflow会话连接的报文、或者服务器向控制器上报接口状态的报文、或者控制器向服务器的OVS下发的某种指示或流表等报文;而服务器与服务器之间的报文通常是数据报文,比如,服务器I向服务器2发送业务报文。上述的控制报文和协议报文是非常重要的,例如,VCF控制器11向OVS下发流表,OVS根据该流表进行流量转发,比如将服务器I的VM的流量转发到服务器2等,因此,需要保证VCF控制器11与OVS之间的控制报文和协议报文的有效送达,这样才能保证OVS在进行业务转发时的正确性。假设VCF控制器11与OVS之间的控制报文和协议报文在传输过程中被丢弃,导致控制器没有接收到服务器上报的状态报文,不能获取到最新的网络链路状态,转发路径计算错误就会影响业务的执行,或者服务器不能接收到控制器下发的最新流表,也会导致业务流量的转发错误。因此,本实施例的报文控制方法要保证VCF控制器与OVS之间的控制报文和协议报文的优先转发,减少丢弃。
[0028]仍然以VCF控制器11与服务器I上的OVS之间的openflow会话为例,本实施例的报文控制方法,将保证控制器与OVS两者之间的报文在通道14始终以高优先级发送,如图1所示,转发网络的边缘转发设备是VxLAN隧道终端(VxLAN Tunnel End Point,简称:VTEP),比如包括VTEPl、VTEP2、VTEP3和VTEP4,其中的通道14是VCF控制器11与服务器I之间的转发通道,VTEPl是与服务器I直接连接的边缘转发设备,VTEP4是与VCF控制器11直接连接的边缘转发设备。图3示出了该报文控制方法的步骤,包括:
[0029]301、控制器获取隧道转发网络中的边缘转发设备;
[0030]本步骤中,假设当前要保证控制器与服务器I上的OVS之间的报文优先发送,该报文是通过转发通道14发送的,该转发通道连通控制器和服务器I的0VS,该通道包括隧道转发网络边缘转发设备VTEP1、VTEP4以及网络中的各个中间转发设备,其中的VTEPl与服务器连接,VTEP4与控制器连接。控制器要获取隧道转发网络中的边缘转发设备,即是要获知VTEPl和VTEP4,并且得知VTEPl是与服务器直连的边缘转发设备,VTEP4是与控制器直连的边缘转发设备。
[0031]在SDN中,SDN控制器具有拓扑管理的功能,能够自动发现网络拓扑结构,拓扑管理的作用是为了随时监控和采集网络中转发设备的信息,及时反馈网络的设备工作状态和链路链接状态。比如,VCF控制器为了实现拓扑管理,可以定时向转发设备发送链路层发现协议(Link Layer Discovery Protocol,简称:LLDP)报文,并根据转发设备反馈的LLDP报文来获知哪些端口是连接的,进而能够分析出整个网络拓扑。在VCF控制器与服务器I的OVS建立openflow会话之后,VCF控制器通过拓扑自动发现,能够知道其与OVS之间的转发网络的边缘转发设备VTEPl和VTEP4,一个例子中,OVS与VTEP可以在同一台设备上。
[0032]302、控制器向所述边缘转发设备发送报文控制策略;
[0033]本步骤中,控制器向VTEPl和VTEP4发送报文控制策略,目的是通知VTEPl和VTEP4在发送控制器与OVS之间的报文时,将报文的优先级设置为高优先级,从而保证优先转发。比如,图1中所示的隧道转发网络中的某一个转发设备,其转发的报文包括数据报文、控制器与OVS之间的控制报文、协议报文,当转发流量很大时,该中间转发设备能够优先发送控制报文和协议报文,即使要丢弃报文,也是先丢弃数据报文,而会优先保证控制器与OVS之间的控制报文和协议报文转发。
[0034]要实现转发设备对于控制报文和协议报文的优先发送,本实施例的方法中,就是通过VCF控制器向转发网络的边缘转发设备VTEPl和VTEP4发送报文控制策略,VTEPl和VTEP4是转发路径上隧道转发网络中的两端点,比如,假设控制器向服务器的OVS发送某控制报文,VTEP4就是该控制报文的在隧道转发网络上起点转发设备,本步骤的报文控制策略将指示VTEP4对该控制报文进行设置,以使得该报文在后续的转发路径上(VTEP4——中间转发设备——VTEPl——0VS)均以高优先级发送。
[0035]303、边缘转发设备根据该报文控制策略,将所述控制器与服务器之间的报文的优先级设置为高优先级。
[0036]本步骤中,边缘转发设备将根据控制器发送的报文控制策略,将所述控制器与服务器之间的报文的优先级设置为高优先级,使得报文在转发路径上均优先发送该报文。例如,边缘转发设备VTEP4将控制器发送给服务器I的OVS的控制报文的优先级设置为最高优先级,则在后续转发路径上的隧道转发网络中的转发设备均会按照该最高优先级转发报文;比如,VTEP4将报文中的EXP的值设置为7 (即最高优先级的值),则报文在由VTEP4传输到中间转发设备时,中间转发设备也会按照该优先级发送该报文,从而保证了报文在整条路径上的优先发送。
[0037]本实施例的报文控制方法,通过由SDN控制器向转发网络的边缘转发设备发送报文控制策略,使得边缘转发设备根据该策略设置报文在转发路径上优先发送,从而保证了VCF控制器和服务器之间的openflow会话的正常进行。
[0038]如下分别描述VCF控制器与服务器I的OVS之间两个方向报文的发送:
[0039]例如,结合图1,VCF控制器可以向VTEP4发送报文控制策略,该策略指示“当从VCF控制器接收到的报文,其目的地址是服务器I的OVS时,将其优先级设置为高优先级”。VTEP4具体是将该策略配置在其接口 Vl上,接口 vl是VTEP4与VCF控制器连接的接口,当接口 Vl接收到的报文的目的地址是服务器I的OVS时,该接口 vl相当于报文在隧道转发网络的入口处,在入口处就将报文的EXP的值设置为最高优先级的值7,则后续在隧道转发网络路径上的转发设备、VTEPl等都会按照该最高优先级,保证优先发送该报文。
[0040]又例如,结合图1,VCF控制器可以向VTEPl发送报文控制策略,该策略指示“当从服务器接收到的报文,其目的地址是VCF控制器时,将其优先级设置为高优先级”。VTEPl具体是将该策略配置在其接口 v2上,接口 v2是VTEPl与服务器连接的接口,根据策略,当该接口 v2接收到的报文的目的地址是VCF控制器时,VTEPl则将报文的EXP的值设置为最高优先级的值7。该接口 v2相当于从服务器I的OVS发往VCF控制器的报文在隧道转发网络的入口处,在入口处就将报文的EXP的值设置为最高优先级,则后续在隧道转发网络路径上的转发设备、VTEP4等都会按照该最高优先级,优先发送该报文。
[0041]可选的,本发明实施例的VCF控制器向边缘转发设备发送报文控制策略,可以按照如下方式设置策略:
[0042]VCF控制器在初始的网络拓扑发现时就将策略下发到各个边缘转发设备。比如,在图1所示的SDN网络建立时,VCF控制器进行拓扑管理,获知到与VCF控制器和服务器连接的边缘转发设备,比如,服务器I连接的边缘转发设备是VTEP1,服务器2连接的边缘转发设备是VTEP2等。VCF控制器可以向这些边缘转发设备下发报文控制策略,指示VTEPl和VTEP2从各自的服务器接收的报文的目的地址是VCF控制器时,将报文的优先级设置为最高优先级。
[0043]可选的,VCF控制器也可以不是向全部的边缘转发设备发送策略,而是选择比较重要的几个边缘转发设备发送。比如,服务器I和服务器3上的业务比较重要,需要保证VCF控制器与这两个服务器之间的openflow会话,则VCF控制器向服务器I连接的VTEP1、以及服务器3连接的VTEP3发送报文控制策略,指示这两个边缘转发设备将目的地址是VCF控制器的报文优先级设置为最高优先级。同样的,对于与VCF控制器连接的VTEP4,控制器发送的报文控制策略可以是,当报文的目的地址是服务器I的0VS、或服务器3的OVS时,将报文的优先级设置为最高优先级。
[0044]本发明实施例还提供了一种控制器,该控制器比如是VCF控制器,该控制器可以执行本发明上述方法实施例的方法,如图4所示,该控制器可以包括:设备确定单元41和策略发送单元42 ;其中,
[0045]设备确定单元41,用于获取所述隧道转发网络中的边缘转发设备,所述边缘转发设备与所述控制器或服务器连接;
[0046]策略发送单元42,用于向所述边缘转发设备发送报文控制策略,以使得所述边缘转发设备根据报文控制策略将所述控制器与服务器之间的报文的优先级设置为高优先级。
[0047]进一步的,当所述边缘转发设备是与所述控制器连接的边缘转发设备时;该策略发送单元42,具体用于向所述边缘转发设备发送如下报文控制策略:若所述报文的目的地址是所述服务器上的虚拟交换机,则将该报文的优先级设置为高优先级。
[0048]进一步的,当所述边缘转发设备是与所述服务器连接的边缘转发设备时;策略发送单元42,具体用于向所述边缘转发设备发送如下报文控制策略:若所述报文的目的地址是所述控制器,则将该报文的优先级设置为高优先级。
[0049]本发明实施例还提供了一种转发设备,该转发设备是转发网络中的用于与所述控制器或服务器连接的边缘转发设备,比如是图1中的VTEPl或VTEP4,该转发设备可以执行本发明上述方法实施例的方法,如图5所示,该转发设备可以包括:策略接收单元51和报文控制单元52 ;其中,
[0050]策略接收单元51,用于接收所述控制器发送的报文控制策略;
[0051]报文控制单元52,用于根据所述报文控制策略,将所述控制器和服务器之间的报文的优先级设置为高优先级。
[0052]以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明保护的范围之内。
【权利要求】
1.一种报文控制方法,其特征在于,所述方法应用于软件定义网络SDN,所述SDN包括控制器、服务器、隧道转发网络以及所述隧道转发网络的边缘转发设备;所述方法包括: 所述控制器获取所述隧道转发网络中的边缘转发设备,所述边缘转发设备与所述控制器或服务器连接; 所述控制器向所述边缘转发设备发送报文控制策略,以使得所述边缘转发设备根据所述报文控制策略将所述控制器与服务器之间的报文的优先级设置为高优先级。
2.根据权利要求1所述的方法,其特征在于,所述控制器向与本设备相连的边缘转发设备发送的报文控制策略,具体包括: 若所述报文的目的地址是所述服务器上的虚拟交换机,将该报文的优先级设置为高优先级。
3.根据权利要求1所述的方法,其特征在于,所述控制器向与所述服务器连接的边缘转发设备发送的报文控制策略,具体包括: 若所述报文的目的地址是所述控制器,将该报文的优先级设置为高优先级。
4.一种报文控制方法,其特征在于,所述方法应用于软件定义网络SDN,所述SDN包括控制器、服务器、隧道转发网络以及所述隧道转发网络的边缘转发设备;所述方法包括: 所述边缘转发设备接收所述控制器发送的报文控制策略; 所述边缘转发设备根据所述报文控制策略,将所述控制器和服务器之间的报文的优先级设置为高优先级。
5.根据权利要求4所述的方法,其特征在于,当所述边缘转发设备为与所述控制器连接的边缘转发设备时,接收到的所述报文控制策略,具体包括: 若所述报文的目的地址是所述服务器上的虚拟交换机,则将该报文的优先级设置为高优先级。
6.根据权利要求4所述的方法,其特征在于,当所述边缘转发设备为与所述服务器连接的边缘转发设备时,接收到的所述报文控制策略,具体包括: 若所述报文的目的地址是所述控制器,则将该报文的优先级设置为高优先级。
7.—种控制器,可应用于软件定义网络SDN,所述SDN包括所述控制器、服务器、隧道转发网络以及所述隧道转发网络的边缘转发设备;其特征在于,所述控制器包括: 设备确定单元,用于获取所述隧道转发网络中的边缘转发设备,所述边缘转发设备与所述控制器或服务器连接; 策略发送单元,用于向所述边缘转发设备发送报文控制策略,以使得所述边缘转发设备根据所述报文控制策略将所述控制器与服务器之间的报文的优先级设置为高优先级。
8.根据权利要求7所述的控制器,其特征在于,当所述边缘转发设备是与所述控制器连接的边缘转发设备时; 所述策略发送单元,具体用于向所述边缘转发设备发送如下报文控制策略:若所述报文的目的地址是所述服务器上的虚拟交换机,则将该报文的优先级设置为高优先级。
9.根据权利要求7所述的控制器,其特征在于,当所述边缘转发设备是与所述服务器连接的边缘转发设备时; 所述策略发送单元,具体用于向所述边缘转发设备发送如下报文控制策略:若所述报文的目的地址是所述控制器,则将该报文的优先级设置为高优先级。
10.一种转发设备,可作为边缘转发设备应用于软件定义网络SDN,所述SDN包括控制器、服务器、隧道转发网络以及所述隧道转发网络的边缘转发设备;其特征在于,所述转发设备包括: 策略接收单元,用于接收所述控制器发送的报文控制策略; 报文控制单元,用于根据所述报文控制策略,将所述控制器和服务器之间的报文的优先级设置为高优先级。
【文档编号】H04L12/937GK104320322SQ201410606894
【公开日】2015年1月28日 申请日期:2014年10月31日 优先权日:2014年10月31日
【发明者】黄李伟, 王海, 王伟 申请人:杭州华三通信技术有限公司