一种软件定义网络控制器及其生成转发信息的方法
【专利摘要】本发明公开了一种软件定义网络控制器及其生成转发信息的方法,其中,该方法包括,获取软件定义网络SDN的网络拓扑;获取SDN的各SDN交换设备的数据转发端口的VLAN信息;根据获取的网络拓扑和获取的VLAN信息为SDN数据报文的入口SDN转发设备与出口SDN转发设备之间的转发路径上的各SDN转发设备生成转发信息。采用本发明能够为SDN数据报文转发路径上各SDN转发设备生成相应VLAN的转发信息,避免数据报文转发故障。
【专利说明】一种软件定义网络控制器及其生成转发信息的方法
【技术领域】
[0001]本发明涉及网络通信【技术领域】,特别涉及一种软件定义网络控制器及其生成转发信息的方法。
【背景技术】
[0002]软件定义网络(SDN, Soft Defined Network)的控制平面与转发平面是分离的。SDN控制器生成转发信息,SDN交换设备根据SDN控制器生成的转发信息执行数据报文转发。
[0003]当SDN交换设备收到数据报文,匹配到数据报文的转发信息,如流表项,SDN交换设备根据转发信息执行数据报文转发。当SDN交换设备没有匹配到数据报文的转发信息,则将数据报文封装为Packet-1n消息通过发给SDN控制器,SDN控制器根据Packet_in消息内的数据报文生成转发信息,将生成的转发信息发给SDN交换设备或执行相应的处理。
[0004]目前,能够运行于SDN控制器与SDN交换设备协议包括openf low协议、openstack协议等。
【发明内容】
[0005]本发明的目的在于提供一种软件定义网络控制器及其生成转发信息的方法,为SDN数据报文转发路径上各SDN转发设备生成相应VLAN的转发信息,避免数据报文转发故障。
[0006]为实现上述发明目的,本发明提供了一种软件定义网络控制器生成转发信息的方法,其中包括,获取软件定义网络SDN的网络拓扑;获取SDN的各SDN交换设备的数据转发端口的VLAN信息;根据获取的网络拓扑和获取的VLAN信息为SDN数据报文的入口 SDN转发设备与出口 SDN转发设备之间的转发路径上的各SDN转发设备生成转发信息。
[0007]为实现上述发明目的,本发明还提供了一种软件定义网络控制器,其中包括拓扑获取单元,获取软件定义网络SDN的网络拓扑;VLAN信息获取单元,获取SDN的各SDN交换设备的数据转发端口的VLAN信息;转发信息生成单元,根据获取的网络拓扑和获取的VLAN信息为SDN数据报文的入口 SDN转发设备与出口 SDN转发设备之间的转发路径上的各SDN转发设备生成转发信息。
[0008]本发明能够为SDN数据报文转发路径上各SDN转发设备生成相应VLAN的转发信息,避免数据报文转发故障。
【专利附图】
【附图说明】
[0009]图1为本发明实施例提供的软件定义网络控制器生成转发信息的流程图。
[0010]图2为本发明实施例提供软件定义网络示意图。
[0011]图3为图2中软件定义网络控制器另一生成转发信息方法的流程图。
[0012]图4为图2中软件定义网络控制器又一生成转发信息方法的流程图。[0013]图5为本发明实施例提供的软件定义网络控制器的示意图。
【具体实施方式】
[0014]为使本发明的目的、技术方案及优点更加清楚明白,以下参照附图并举实施例,对本发明方案作进一步地详细说明。
[0015]如图1所示,本发明实施例提供的SDN控制器生成转发信息的方法包括:
[0016]步骤101,获取软件定义网络SDN的网络拓扑;
[0017]步骤102,获取SDN的各SDN交换设备的数据转发端口的VLAN信息;
[0018]步骤103,根据获取的网络拓扑和获取的VLAN信息为SDN数据报文的入口 SDN转发设备与出口 SDN转发设备之间的转发路径上的各SDN转发设备生成转发信息。
[0019]通过图1所示的方法,可以为SDN数据报文转发路径上各SDN转发设备生成相应VLAN的转发信息,避免数据报文转发故障。
[0020]如图2所示,SDN网络由运行了 openflow协议的SDN控制器20以及SDN交换设备21-29构成。SDN交换设备24以及SDN交换设备26分别连接了主机2421和主机2631。SDN交换设备24的端口 2421以及SDN交换设备26的端口 2631可以转发SDN数据报文以及普通数据报文,属于Hybrid模式。
[0021]SDN交换设备21的端口 211-213、SDN交换设备22的端口 221和222、SDN交换设备23的其他端口 231-234、SDN交换设备24的端口 241和242、SDN交换设备25的端口251-252、SDN交换设备26的端口 261和262 ;SDN交换设备27的端口 271-274 ;SDN交换设备28的端口 283-284,以及SDN交换设备291的端口 291和292都可以转发SDN数据报文,属于 VLAN100。
[0022]SDN交换设备25的端口 254和端口 253可以转发SDN数据报文,分别属于VLAN200和VLAN300。SDN交换设备28的端口 281和端口 282可以转发SDN数据报文,分别属于VLAN300 和 VLAN200。SDN 交换设备 26 的端口 263 属于 VLAN300。
[0023]SDN控制器20发送端口查询消息以查询SDN交换设备21_29的所有允许转发SDN数据报文的端口的VLAN信息,SDN交换设备21-29收到端口查询信息时,发送端口响应消息,将各自本地允许转发SDN数据报文的端口的VLAN信息发给SDN控制器20。本实施例中,上述SDN交换设备可以转发SDN数据报文的端口可作为各SDN交换设备的数据转发端□。
[0024]当SDN交换设备24收到主机2421的数据报文时,SDN交换设备24根据数据报文的目的MAC地址MAC2631未匹配到转发信息。SDN交换设备将数据报文封装为packet-1n消息,发往SDN控制器20。
[0025]SDN控制器20收到来自SDN交换设备24的packet-1n消息,基于数据报文的源MAC地址MAC2421在转发表项中学习主机2421的地址,基于目的MAC地址在转发表项查到已学习的MAC2631,确定数据报文是由SDN交换设备的端口 242连接的主机2421发往SDN交换设备26的端口 263连接的主机2631。图2中,SDN交换设备还可以匹配转发信息失败的数据报文的转发头或转发头的部分信息封装为Packet-1n消息,发送到SDN控制器。SDN控制器根据Packet-1n消息学习转发表项,生成供SDN转发设备执行SDN数据报文转发的转发信息。[0026]SDN控制器20根据SDN网络拓扑,计算SDN交换设备24与SDN交换设备26之间路径,将计算的最短路径作为SDN交换设备24与SDN交换设备26之间的转发路径。本实施例中,SDN控制器20计算得到最短路径是SDN交换设备24->SDN交换设备23_>SDN交换设备25->SDN交换设备28->SDN交换设备26。在此转发路径上,将数据报文接入SDN网络的SDN交换设备24为入口 SDN交换设备,将数据报文发往SDN网络外的SDN交换设备为出口 SDN交换设备;其他SDN交换设备为中间SDN交换设备。
[0027]SDN控制器20根据计算的最短路径确定SDN交换设备24收到数据报文的端口 242与发送数据报文的端口 241属于VLAN100且最短路径上的下一 SDN交换设备23接收数据报文的端口 233也属于VLAN100,SDN控制器20生成转发信息,指示将源MAC地址为MAC2421和目的MAC地址是MAC2631的数据报文通过端口 241发送,SDN控制器20将生成的转发信息发给SDN交换设备24。
[0028]SDN控制器20根据计算的最短路径以及获取的VLAN信息,确定SDN交换设备23收到数据报文的端口 233以及发送数据报文的端口 234属于VLAN100,但是最短路径上的下一个SDN交换设备25收到数据报文的端口 254属于VLAN200,SDN控制器20生成转发信息,指示源MAC地址为MAC2421和目的MAC地址是MAC2631的数据报文通过端口 234发送且不携带VLAN标识。SDN控制器20将生成的转发信息发给SDN交换设备23。由于,SDN交换设备25收到数据报文的端口 254属于VLAN200,如果SDN交换设备23通过端口 234发送携带VLAN100标识的数据报文,SDN交换设备25的端口 254收到携带VLAN100的数据报文会丢弃,导致数据报文的转发失败。
[0029]SDN控制器20根据计算的最短路径以及获取的VLAN信息,确定SDN交换设备25接收数据报文的端口 254和发送数据报文的端口 253分别属于VLAN200和VLAN300且最短路径上的下一个SDN交换设备28收到数据报文的端口 281属于VLAN300。SDN控制器20生成转发信息,指示将源MAC地址为MAC2421和目的MAC地址是MAC2631的数据报文的VLAN标识修改为VLAN300且通过端口 253发送。SDN控制器20将生成的转发信息发给SDN交换设备25。由于,SDN交换设备25收到数据报文的端口和发送数据报文的端口属于不同的VLAN, SDN交换设备25的端口 254收到不携带VLAN标识的数据报文会根据端口的VLAN配置添加VLAN标识,而SDN交换设备25的端口 253的VLAN配置属于VLAN300,无法发送携带VLAN200的数据报文。因此,当SDN交换设备收到数据报文的端口和发送数据报文的端口属于不同的VLAN时,需要根据数据报文的发送端口的VLAN配置修改数据报文的VLAN标识。
[0030]SDN控制器20根据最短路径,确定SDN交换设备28接收数据报文的端口 281和发送数据报文的端口 282分别属于VLAN300和VLAN200且最短路径的下一个SDN交换设备26接收数据报文的端口 261属于VLAN100,SDN控制器20生成转发信息,指示将源MAC地址为MAC2421和目的MAC地址是MAC2631的数据报文的VLAN标识修改为VLAN200且通过端口 281发送不携带VLAN标识的数据报文。SDN控制器20将生成的转发信息发给SDN交换设备28。
[0031]SDN控制器20根据计算的最短路径以及获取的VLAN信息,确定SDN交换设备26接收数据报文的端口 261和发送数据报文的端口 263分别属于VLAN100和VLAN300。SDN控制器20生成转发信息,指示将源MAC地址为MAC2421和目的MAC地址是MAC2631的数据报文的VLAN标识修改为VLAN300且通过端口 263发送。SDN控制器20将生成的转发信息发给SDN交换设备26。
[0032]SDN交换设备24通过属于VLAN100的端口 242收到源MAC地址MAC2421和目的MAC地址MAC2631的数据报文时,添加VLAN标识VLAN10。SDN交换设备根据数据报文的源MAC地址和目的MAC地址匹配到转发信息,通过端口 241发送包含VLAN100、源MAC地址MAC2421、目的MAC地址MAC2631的数据报文。
[0033]SDN交换设备23通过端口 233收到包含VLAN100、源MAC地址MAC2421、目的MAC地址MAC2631的数据报文,根据匹配的转发信息通过端口 234发送不携带VLAN标识的数据报文。
[0034]SDN交换设备25通过端口 254收到源地址是MAC2421和目的地址是MAC2631的数据报文,添加VLAN标识VLAN200。SDN交换设备25根据源MAC地址和目的MAC地址匹配的转发信息将数据报文的VLAN标识修改为VLAN300,通过端口 253发送包含VLAN300,源MAC地址MAC2421、目的MAC地址MAC2631的数据报文。
[0035]SDN交换设备28通过端口 281接收包含VLAN300,源MAC地址MAC2421以及目的MAC地址MAC2631的数据报文,根据源MAC地址和目的MAC地址匹配的转发信息将收到数据报文的VLAN300修改为VLAN200并通过端口 282发送不携带VLAN标识的数据报文。
[0036]SDN交换设备26通过端口 261接收包含源MAC地址MAC2421和目的MAC地址MAC2631的数据报文,添加VLAN标识VLAN100。SDN交换设备26根据源MAC地址和目的MAC地址匹配的转发信息将数据报文的VLAN100修改为VLAN300并通过端口 VLAN263发送。SDN交换设备的端口 263发送数据报文到主机2631时,会移除VLAN标识VLAN300。
[0037]上述实施例中,SDN控制器20基于SDN网络拓扑以及SDN交换设备转发数据报文的端口的VLAN信息,生成转发信息的方式可以变化。
[0038]如图3所示,SDN控制器20根据网络拓扑计算入口 SDN交换设备24与出口 SDN交换设备26之间的路径。SDN控制器20将计算的最短路径作为SDN交换设备24与26之间的转发路径,向SDN交换设备25、26、28发送端口配置消息,通知SDN交换设备25为端口 254和253配置VLAN100,通知SDN交换设备为端口 263配置VLAN100,通知SDN交换设备28为端口 281和282配置VLAN100 ;通知SDN交换设备26为端口 263配置VLAN100。这样,SDN控制器20将SDN交换设备24与26之间的转发路径上转发数据报文的端口配置了相同的VLAN信息,避免最短路径上SDN交换设备因为数据报文转发端口的VLAN配置不同导致的数据报文转发失败。
[0039]SDN控制器基于最短路径为SDN交换设备24生成转发信息,指示通过端口 241发送包含源MAC地址2421和目的MAC地址2631的数据报文。
[0040]SDN控制器基于最短路径为SDN交换设备23生成转发信息,指示通过端口 234发送包含源MAC地址2421和目的MAC地址2631的数据报文。
[0041]SDN控制器基于最短路径为SDN交换设备25生成转发信息,指示通过端口 253发送包含源MAC地址2421和目的MAC地址2631的数据报文。
[0042]SDN控制器基于最短路径为SDN交换设备28生成转发信息,指示通过端口 282发送包含源MAC地址2421和目的MAC地址2631的数据报文。
[0043]SDN控制器基于最短路径为SDN交换设备26生成转发信息,指示将包含源MAC地址2421和目的MAC地址2631的数据报文通过端口 263发送。[0044]SDN交换设备24通过属于VLAN100的端口 242收到源MAC地址MAC2421和目的MAC地址MAC2631的数据报文时,添加VLAN标识VLAN10。SDN交换设备根据数据报文的源MAC地址和目的MAC地址匹配到转发信息,通过端口 241发送数据报文。
[0045]SDN交换设备23通过端口 233收到包含源MAC地址MAC2421、目的MAC地址MAC2631的数据报文,基于源MAC地址MAC2421和目的MAC地址MAC2631匹配的转发信息,通过端口 234发送数据报文。
[0046]SDN交换设备25通过端口 254收到包含源地址是MAC2421和目的MAC地址MAC2631的数据报文,根据源MAC地址和目的MAC地址匹配的转发信息将数据报文通过端口253发送。
[0047]SDN交换设备28通过端口 281接收包含源MAC地址MAC2421以及目的MAC地址MAC2631的数据报文,根据源MAC地址和目的MAC地址匹配的转发信息数据报文通过端口282发送。
[0048]SDN交换设备26通过端口 261接收包含源MAC地址MAC2421和目的MAC地址MAC2631的数据报文,根据源MAC地址和目的MAC地址匹配的转发信息将数据报文通过端口 VLAN263发送。SDN交换设备的端口 263发送数据报文到主机2631时,会移除VLAN标识VLAN300。
[0049]如图4所示,SDN控制器20计算数据报文的入口 SDN交换设备24与出口 SDN交换设备26之间路径,将具有相同VLAN的数据转发端口且长度最短的路径作为转发路径;譬如,SDN交换设备24->SDN交换设备23_>SDN交换设备21_>SDN交换设备25_>SDN交换设备27->SDN交换设备26。在此转发路径上,将数据报文接入SDN网络的SDN交换设备24为入口 SDN交换设备,将数据报文发往SDN网络外的SDN交换设备为出口 SDN交换设备;其他SDN交换设备为中间SDN交换设备。
[0050]SDN控制器20根据上述转发路径生成SDN交换设备20的转发信息,指示通过端口241发送包含源MAC地址MAC2421和目的MAC地址是MAC2631的数据报文。SDN控制器20将计算的转发信息发给SDN交换设备24。
[0051]SDN控制器20根据上述转发路径生成SDN交换设备23转发信息,指示通过端口232发送包含源MAC地址MAC2421和目的MAC地址MAC2631的数据报文。SDN控制器20将生成的转发信息发给SDN交换设备23。
[0052]SDN控制器20根据上述转发路径生成转发信息,指示通过端口 213发送包含源MAC地址MAC2421和目的MAC地址MAC2631的数据报文。SDN控制器20将生成的转发信息发给SDN交换设备21。
[0053]SDN控制器20根据上述转发路径生成转发信息,指示将包含源MAC地址MAC2421和目的MAC地址MAC2631的数据报文通过端口 252发送。SDN控制器20将生成的转发信息发给SDN交换设备25。
[0054]SDN控制器20根据上述转发路径生成转发信息,指示通过端口 274发送包含源MAC地址MAC2421和目的MAC地址MAC2631的数据报文。SDN控制器20将生成的转发信息发给SDN交换设备27。
[0055]SDN控制器20根据上述转发路径生成转发信息,指示将包含源MAC地址MAC2421和目的MAC地址MAC2631的数据报文的VLAN标识标识修改为VLAN VLAN300且通过端口253发送。SDN控制器20将生成的转发信息发给SDN交换设备26。
[0056]SDN交换设备24通过端口 242收到数据报文时添加VLAN100,基于转发信息将包含VLAN100,源MAC地址MAC2421和目的MAC地址MAC2631的数据报文通过端口 241发送。
[0057]SDN交换设备23通过端口 233收到包含VLAN100,源MAC地址MAC2421和目的MAC地址MAC2631的数据报文,根据源MAC地址和目的MAC地址匹配的转发信息将该数据报文通过端口 232发送。
[0058]SDN交换设备21通过端口 212收到包含VLAN100,源MAC地址MAC2421和目的MAC地址MAC2631的数据报文,根据源MAC地址和目的MAC地址匹配的转发信息将该数据报文包通过端口 213发送。
[0059]SDN交换设备25通过端口 251收到包含VLAN100,源MAC地址MAC2421和目的MAC地址MAC2631的数据报文,根据源MAC地址和目的MAC地址匹配的转发信息将该数据报文通过端口 252发送。
[0060]SDN交换设备27通过端口 273收到包含VLAN100,源MAC地址MAC2421和目的MAC地址MAC2631的数据报文,根据源MAC地址和目的MAC地址匹配的转发信息将该数据报文通过端口 274发送。
[0061]SDN交换设备26通过端口 262接收带有VLAN100,源MAC地址MAC2421和目的MAC地址MAC2631的数据报文,根据源MAC地址和目的MAC地址匹配的转发信息将VLAN100修改为VLAN300,通过端口 2631发送修改了 VLAN标识的数据报文通过端口 263。SDN交换设备26报文通过端口 263发送数据报文时,会将VLAN标识VLAN300移除。或者SDN控制器20发送端口配置信息至SDN交换设备26,为端口 263配置VLAN100。SDN控制器生成转发信息,指示将包含源MAC地址MAC2421和目的MAC地址MAC2631的数据报文通过端口 263发送。SDN控制器20将生成的转发信息发给SDN交换设备26。SDN交换设备26通过端口262接收带有VLAN100,源MAC地址MAC2421和目的MAC地址MAC2631的数据报文,根据源MAC地址和目的MAC地址匹配的转发信息通过端口 2631发送。SDN交换设备26报文通过端口 263发送数据报文时,会将VLAN标识VLAN300移除。
[0062]如图5所示,本发明实施例提供的SDN控制器500包括:拓扑获取单元501,获取软件定义网络SDN的网络拓扑。VLAN信息获取单元502,获取SDN的各SDN交换设备的数据转发端口的VLAN信息;转发信息生成单元503,根据获取的网络拓扑和获取的VLAN信息为SDN数据报文的入口 SDN转发设备与出口 SDN转发设备之间的转发路径上的各SDN转发设备生成转发信息。
[0063]转发信息生成单元503,根据获取的网络拓扑计算入口 SDN转发设备与出口 SDN转发设备之间的路径;将计算的最短路径作为入口 SDN转发设备与出口 SDN转发设备之间的转发路径;发送端口配置消息将最短路径上的数据转发端口配置相同的虚拟局域网信息;基于转发路径生成入口 SDN转发设备转发信息,中间SDN转发设备转发信息,出口 SDN转发设备转发信息。
[0064]转发信息生成单元503,根据获取的网络拓扑计算入口 SDN转发设备与出口 SDN转发设备之间的路径;将计算的路径中具有相同VLAN的数据转发端口且长度最短的路径作为入口 SDN转发设备与出口 SDN转发设备之间的转发路径;基于转发路径生成入口 SDN转发设备转发信息,中间SDN转发设备转发信息,出口 SDN转发设备转发信息;[0065]转发信息生成单元503,根据获取的网络拓扑计算入口 SDN转发设备与出口 SDN转发设备之间的路径;将计算的最短路径作为入口 SDN转发设备与出口 SDN转发设备之间的转发路径;根据入口 SDN转发设备接收SDN数据报文的端口的VLAN信息、入口 SDN转发设备在转发路径发送SDN数据报文的数据转发端口的VLAN信息,以及转发路径上的下一 SDN转发设备接收的SDN数据报文的数据转发端口的VLAN信息,生成入口 SDN转发设备转发信息;根据中间SDN转发设备在转发路径上接收SDN数据报文的数据转发端口的VLAN信息、发送SDN数据报文的数据转发端口的VLAN信息以及转发路径上的下一 SDN转发设备接收的SDN数据报文的数据转发端口的VLAN信息,生成中间SDN转发设备转发信息;根据出口SDN转发设备在转发路径上接收SDN数据报文的数据转发端口的VLAN信息以及出口 SDN转发设备发送SDN数据报文的VLAN信息,生成出口 SDN转发设备的转发信息。
[0066]在运行了 OPENFLOW协议的SDN网络中,可通过扩展OPEN flow协议的端口查询状态消息实现上述实施例中的端口查询消息、端口响应消息、端口配置消息。
[0067]按照当前的OpenFlow协议实现,SDN控制器不会获取SDN交换设备的VLAN信息,也即无法感知交换设备转发数据报文的VLAN信息,容易导致SDN数据报文的转发路径上的SDN交换设备因VLAN信息不可知导致数据转发故障。从上述实施例可以看出,本发明的SDN控制器基于SDN交换设备的数据转发端口的VLAN信息,为SDN数据报文转发路径上各SDN转发设备生成相应VLAN的转发信息,避免SDN数据报文转发故障。
[0068]以上,仅为本发明的较佳实施例而已,并非用于限定本发明的保护范围。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
【权利要求】
1.一种软件定义网络控制器生成转发信息的方法,其特征在于, 获取软件定义网络SDN的网络拓扑; 获取所述SDN的各SDN交换设备的数据转发端口的虚拟局域网VLAN信息; 根据获取的网络拓扑和获取的VLAN信息为SDN数据报文的入口 SDN转发设备与出口SDN转发设备之间的转发路径上的各SDN转发设备生成转发信息。
2.根据权利要求1所述的方法,其特征在于,根据获取的网络拓扑和获取的VLAN信息为SDN数据报文的入口 SDN转发设备与出口 SDN转发设备之间的转发路径上的各SDN转发设备生成转发信息包括: 根据获取的网络拓扑计算所述入口 SDN转发设备与所述出口 SDN转发设备之间的路径; 将计算的最短路径作为所述入口 SDN转发设备与所述出口 SDN转发设备之间的转发路径; 发送端口配置消息将所述最短路径上的数据转发端口配置相同的VLAN信息; 基于所述转发路径生成入口 SDN转发设备转发信息,中间SDN转发设备转发信息,出口SDN转发设备转发信息。
3.根据权利要求1所述的方法,其特征在于,根据获取的网络拓扑和获取的VLAN信息为SDN数据报文的入口 SDN转发设备与出口 SDN转发设备之间的转发路径上的各SDN转发设备生成转发信息包括: 根据获取的网络拓扑计算所述入口 SDN转发设备与所述出口 SDN转发设备之间的路径; 将计算的路径中具有相同VLAN的数据转发端口且长度最短的路径作为所述入口 SDN转发设备与所述出口 SDN转发设备之间的转发路径; 基于所述转发路径生成入口 SDN转发设备转发信息,中间SDN转发设备转发信息,出口SDN转发设备转发信息。
4.根据权利要求1所述的方法,其特征在于,根据获取的网络拓扑和获取的VLAN信息为SDN数据报文的入口 SDN转发设备与出口 SDN转发设备之间的转发路径上的各SDN转发设备生成转发信息包括: 根据获取的网络拓扑计算所述入口 SDN转发设备与所述出口 SDN转发设备之间的路径; 将计算的最短路径作为所述入口 SDN转发设备与所述出口 SDN转发设备之间的转发路径; 根据所述入口 SDN转发设备接收所述SDN数据报文的端口的VLAN信息、所述入口 SDN转发设备在所述转发路径发送所述SDN数据报文的数据转发端口的VLAN信息,以及所述转发路径上的下一 SDN转发设备接收所述SDN数据报文的数据转发端口的VLAN信息,生成入口 SDN转发设备转发信息; 根据中间SDN转发设备在所述转发路径上接收所述SDN数据报文的数据转发端口的VLAN信息、发送所述SDN数据报文的数据转发端口的VLAN信息以及所述转发路径上的下一SDN转发设备接收所述SDN数据报文的数据转发端口的VLAN信息,生成中间SDN转发设备转发信息;根据所述出口 SDN转发设备在所述转发路径上接收所述SDN数据报文的数据转发端口的VLAN信息以及所述出口 SDN转发设备发送所述SDN数据报文的数据转发端口 VLAN信息,生成出口 SDN转发设备的转发信息。
5.一种软件定义网络控制器,其特征在于, 拓扑获取单元,获取软件定义网络SDN的网络拓扑; VLAN信息获取单元,获取所述SDN的各SDN交换设备的数据转发端口的VLAN信息; 转发信息生成单元,根据获取的网络拓扑和获取的VLAN信息为SDN数据报文的入口SDN转发设备与出口 SDN转发设备之间的转发路径上的各SDN转发设备生成转发信息。
6.根据权利要求5所述的软件定义网络控制器,其特征在于,所述转发信息生成单元,根据获取的网络拓扑计算所述入口 SDN转发设备与所述出口 SDN转发设备之间的路径;将计算的最短路径作为所述入口 SDN转发设备与所述出口 SDN转发设备之间的转发路径;发送端口配置消息将所述最短路径上的数据转发端口配置相同的虚拟局域网信息;基于所述转发路径生成入口 SDN转发设备转发信息,中间SDN转发设备转发信息,出口 SDN转发设备转发信息。
7.根据权利要求5所述的所述的软件定义网络控制器,其特征在于,所述转发信息生成单元,根据获取的网络拓扑计算所述入口 SDN转发设备与所述出口 SDN转发设备之间的路径;将计算的路径中具有相同VLAN的数据转发端口且长度最短的路径作为所述入口 SDN转发设备与所述出口 SDN转发设备之间的转发路径;基于所述转发路径生成入口 SDN转发设备转发信息,中间SDN 转发设备转发信息,出口 SDN转发设备转发信息。
8.根据权利要求5所述的所述的软件定义网络控制器,其特征在于,所述转发信息生成单元,根据获取的网络拓扑计算所述入口 SDN转发设备与所述出口 SDN转发设备之间的路径;将计算的最短路径作为所述入口 SDN转发设备与所述出口 SDN转发设备之间的转发路径;根据所述入口 SDN转发设备接收所述SDN数据报文的端口的VLAN信息、所述入口 SDN转发设备在所述转发路径发送所述SDN数据报文的数据转发端口的VLAN信息,以及所述转发路径上的下一 SDN转发设备接收所述SDN数据报文的数据转发端口的VLAN信息,生成入口 SDN转发设备转发信息;根据中间SDN转发设备在所述转发路径上接收所述SDN数据报文的数据转发端口的VLAN信息、发送所述SDN数据报文的数据转发端口的VLAN信息以及所述转发路径上的下一 SDN转发设备接收所述SDN数据报文的数据转发端口的VLAN信息,生成中间SDN转发设备转发信息;根据所述出口 SDN转发设备在所述转发路径上接收所述SDN数据报文的数据转发端口的VLAN信息以及所述出口 SDN转发设备发送所述SDN数据报文的数据转发端口的VLAN信息,生成出口 SDN转发设备的转发信息。
【文档编号】H04L12/24GK103763146SQ201410042731
【公开日】2014年4月30日 申请日期:2014年1月29日 优先权日:2014年1月29日
【发明者】田妍君, 汪洪远 申请人:杭州华三通信技术有限公司