Sdn中报文转发方法和设备的制造方法

文档序号:9828143阅读:538来源:国知局
Sdn中报文转发方法和设备的制造方法
【技术领域】
[0001]本申请涉及网络通信技术,特别涉及软件定义网络(SDN-Software DefinedNetwork)中报文转发方法和设备。
【背景技术】
[0002]SDN, 一种新型网络创新架构,其核心思想是将网络设备的控制层面与转发层面分离,以实现对网络流量的灵活控制,为核心网络及应用的创新提供良好的平台。
[0003]SDN目前支持用户的多种业务,包括二层业务、IP业务等。在SDN中,若对报文进行二层转发,SDN控制器计算出从源主机至目的主机之间的转发路径,依据转发路径依次在沿途设备上下发对应的流表以转发来自源主机的报文至目的主机,报文转发过程中不修改头部信息;若对报文进行IP转发,源主机可以将报文先送到网关设备上,沿途设备仍然执行二层转发,由网关设备执行IP转发,此时网关设备会修改报文头部信息,然后送到目的交换机,目的交换机最后将报文转发到目的主机。
[0004]SDN支持单个网关,在SDN中,所有跨VLAN访问的流量、以及所有和网络主机通信的流量都经过网关处理,这会导致SDN支持的单个网关的负载压力比较大。目前,可以使用传统的网关负载方式虚拟路由冗余协议(VRRP:Virtual Router Redundancy Protoco)方式在SDN部署多个网关并在多网关之间实现负载分担,但是VRRP方式下必须基于VLAN为主机选择网关,而SDN中的主机往往不依赖于VLAN,因此传统部署多网关的方式不能使用在SDN中。

【发明内容】

[0005]本申请提供了 SDN中报文转发方法和设备,以实现SDN中多网关之间负载分担报文转发。
[0006]本申请提供的技术方案包括:
[0007]—种软件定义网络SDN中报文转发方法,该方法应用于SDN控制器,包括:
[0008]为SDN内相同网段内的各个不同网关分配相同的网关IP地址和网关MAC地址;
[0009]向各个不同网关下发用于转发报文至其他网关接入的主机的流表项;
[0010]为SDN内的第一主机选择接入的第一网关,并通知给第一主机;
[0011]向第一网关、以及从第一网关至第一主机的第一转发路径上的各网络设备下发用于转发报文至第一主机的流表项,向第一主机至第一网关的第二转发路径上各网络设备下发用于转发报文至第一网关的流表项。
[0012]—种软件定义网络SDN中报文转发方法,该方法应用于SDN中的第一网关,第一网关与SDN内各个不同网关处于相同网段内且被分配相同的网关IP地址和网关MAC地址,该方法包括:
[0013]接收SDN控制器下发的用于转发报文至本地第一主机的第一流表项;
[0014]接收SDN控制器下发的用于转发报文至第二网关接入的第二主机的第二流表项;
[0015]接收本地第一主机发送的访问第二主机的第一报文,依据已接收的第二流表项将第一报文转发至第二网关,以通过第二网关将第一报文转发至第二主机;
[0016]接收第二网关发送的第二主机访问第一主机的第二报文,依据已接收的第一流表项将第二报文转发至第一主机。
[0017]一种软件定义网络SDN中报文转发设备,该设备应用于SDN控制器,包括:
[0018]分配单元,用于为SDN内相同网段内的各个不同网关分配相同的网关IP地址和网关MAC地址;
[0019]选择单元,用于为SDN内的第一主机选择接入的第一网关,并通知给第一主机;
[0020]流表项单元,用于向第一网关、以及从第一网关至第一主机的第一转发路径上的各网络设备下发用于转发报文至第一主机的流表项,向第一主机至第一网关的第二转发路径上各网络设备下发用于转发报文至第一网关的流表项,以及向各个不同网关下发用于转发报文至其他网关接入的主机的流表项。
[0021]—种软件定义网络SDN中报文转发设备,该设备应用于SDN中的第一网关,第一网关与SDN内各个不同网关处于相同网段内且被分配相同的网关IP地址和网关MAC地址,该设备包括:
[0022]接收单元,用于接收SDN控制器下发的用于转发报文至本地第一主机的第一流表项;以及,接收SDN控制器下发的用于转发报文至第二网关接入的第二主机的第二流表项;
[0023]转发单元,用于接收本地第一主机发送的访问第二主机的第一报文,依据已接收的第二流表项将第一报文转发至第二网关,以通过第二网关将第一报文转发至第二主机;以及接收第二网关发送的第二主机访问第一主机的第二报文,依据已接收的第一流表项将第二报文转发至第一主机。
[0024]由以上技术方案可以看出,本发明中,能够实现主机至网关之间的双向转发。并且,SDN内主机可以受SDN控制器实时控制,并不以VLAN为依据被均衡分配接入的网关,SDN内主机之间的流量、SDN内主机和外网主机的流量在各自的网关上分担。
【附图说明】
[0025]图1为本发明提供的方法流程图。
[0026]图2为本发明提供的实施例示意图;
[0027]图3为本发明提供的设备结构图;
[0028]图4为本发明提供的另一设备结构图。
【具体实施方式】
[0029]为了使本发明的目的、技术方案和优点更加清楚,下面结合附图和具体实施例对本发明进行详细描述。
[0030]本发明提供的在SDN中实现多网关的方法,不再使用传统的VRPP方式部署多网关,由此不使用传统的根据VLAN范围为主机选择网关,这能够保证SDN中多网关的部署灵活,可以根据网络情况灵活在SDN中部署网关,不再限制网关的数量。
[0031]下面通过图1对本发明提供的方法进行描述:
[0032]参见图1,图1为本发明提供的方法流程图。该流程应用于SDN控制器。如图1所示,该流程可包括以下步骤:
[0033]步骤101,为SDN内相同网段内的各个不同网关分配相同的网关IP地址和网关MAC地址。
[0034]在SDN中,SDN控制器可根据网络情况部署SDN中的多个交换设备作为网关。其中,这些作为网关的各交换设备处于相同网段内,具有相同的网关IP地址和网关MAC地址。这里的网关IP地址只是作为一个设定掩码范围内的网关,与VLAN无关。
[0035]具体地,本发明中,步骤101中为SDN内相同网段内的各个不同网关分配相同的网关IP地址和网关MAC地址可为:
[0036]通过网络协议(Netconf)或者其他南向协议下发已配置的网关IP地址和网关MAC地址至SDN内相同网段内的各个不同网关。如此,SDN内相同网段内的各个不同网关就具有相同的网关IP地址和网关MAC地址。
[0037]步骤102,向各个不同网关下发用于转发报文至其他网关接入的主机的流表项。
[0038]也即,本步骤102中,针对每一网关,为该网关生成用于转发报文至其他网关接入的主机的流表项并下发至该网关。
[0039]本发明中,这里,向网关下发的用于转发报文至其他网关接入的主机的流表项可包含以下两部分:
[0040]匹配项:目的IP地址为其他网关接入的主机的IP地址;
[0041]动作项:通过网关上的端口转发报文,其中,端口为网关至其他网关的最短路径的端口。
[0042]通过步骤102,一方面能够让接入不同网关的不同主机之间相互访问,另一方面可以实现SDN内外主机的对称访问,比如,当SDN内主机I访问外网主机时,主机I通过接入的网关转发报文,由接入的网关转发报文至外网主机;以及当外网主机访问SDN内主机I时,外网先将的报文转发至SDN内的网关,当该网关为主机I接入的网关时,直接由该网关转发报文至主机1,当该网关不为主机I接入的网关时,该网关依据已有的到主机I的流表项将报文送到主机I接入的网关,之后由主机I接入的网关转发报文给主机I。
[0043]步骤103,为SDN内的第一主机选择接入的第一网关,并通知给第一主机。
[0044]这里,第一主机、第一网关只是为便于描述进行的命名,并非限定本申请。
[0045]作为本发明的一个实施例,步骤103具体实现时可包括:
[0046]步骤al,接收第一接入设备上送的来自第一主机的ARP请求报文,第一接入设备在接收到本地第一主机发送的所述ARP请求报文后上送ARP请求报文至SDN控制器。
[0047]这里,第一接入设备只是为便于描述进行的命名,并非限定本申请。
[0048]步骤a2,按照负载分担方式从SDN内的各个不同网关中为第一主机选择一个接入的第一网关,将第一网关的网关IP地址和网关MAC地址携带在ARP应答报文中发送给第一主机。
[0049]步骤104,向第一网关、以及从第一网关至第一主机的第一转发路径上的各网络设备下发用于转发报文至第一主机的流表项,向第一主机至第一网关的第二转发路径上各网络设备下发用于转发报文至第一网关的流表项。
[0050]作为本发明的一个实施例,这里的第一网关至第一主机的第一转发路径优选为第一网关至第一主机的最短路径;第一主机至第一网关的第二转发路径为第一主机至第一网关的最短路径。第一网关至第一主机的第一转发路径上的网络设备不包含第一网关、第一主机;第一主机至第一网关的第二转发路径上的网络设备不包含第一网关、第一主机。
[0051]通过步骤104,则第一网关和第一主机之间即可通过流表项进行互访。
[0052]作为本发明的一个实施例,上述的用于转发报文至第一主机的流表项具体实现时可为以第一网关为源第一主机为目的的流表项,可包含以下两部分:
[0053]匹配项:目的IP地址为第一主机的IP地址,源MAC地址为第一网关的网关MAC地址;
[0054]动作项:通过处于第一转发路径上的端口转发。
[0055]第一网关、第一转发路径上的各个网络设备(第一转发路径上介于该第一网关和第一主机之间的所有中间设备)收到报文后,其会利用该报文的目的IP地址和源MAC地址匹配上述的流表项,如果命中,则依据该匹配的流表项中的动作项转发该收到的报文。即能够实现第一网关发送的报文顺利发送至第一主机。
[0056]作为本发明的一个实施例,上述的用于转发来自第一主机的报文至该第一网关的流表项具体实现时可为以第一主机为源第一网关为目的的流表项,可包含以下两部分:
[0057]匹配项:源IP地址为第一主机的IP地址,目的MAC地址为第一网关的网关MAC地址;
[0058]动作项:通过处于第二转发路径上的端口转发;
[0059]第二转发路径上介于主机
当前第1页1 2 3 4 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1