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

文档序号:9828143阅读:来源:国知局
命中表项10,则依据表项10的动作项通过端口 Port5-6发送目的MAC地址为MAC300的报文。
[0094]SW6收到目的MAC地址为MAC300的报文,依据报文的目的IP地址IP300、源MAC地址MACO命中上述的表项7,依据表项7的动作项通过端口 Port6-300发送目的MAC地址为MAC300的报文。
[0095]SW3收到报文,依据报文的目的IP地址IP300、源MAC地址MACO命中上述的表项8,则依据表项8的动作项通过端口 Port3-300发送目的MAC地址为MAC300的报文。最终,主机PC300会收到目的MAC地址为MAC300的报文,即实现了主机PC100访问主机PC300。类似地,主机PC300访问主机PC100的原理类似,这里不再赘述。同样的原理,SDN内主机比如主机PC100等访问外网、或者外网访问SDN内主机比如主机PClO等的方式类似主机PC100访问主机PC300的方式,这里不再赘述。
[0096]至此,完成图2所示的实施例描述。
[0097]本发明中,当SDN控制器确定上述第一主机从第一接入设备迀移至第二接入设备时,可进一步执行以下步骤:
[0098]步骤bl,重新按照负载分担方式从SDN的各个不同网关中为第一主机选择接入的网关;
[0099]步骤b2,通知第一网关、以及第一转发路径上各个网络设备删除已有的用于转发报文至第一主机的流表项,通知第二转发路径上各个网络设备删除已有的用于转发来自第一主机的报文至第一网关的流表项。
[0100]步骤b3,向重新选择的网关、从该重新选择的网关至第一主机的第三转发路径上的各个网络设备下发用于转发报文至第一主机的流表项,向从第一主机至该重新选择的网关的第四转发路径上的各个网络设备下发用于转发来自第一主机的报文至该重新选择的网关的流表项,并在该重新选择的网关与第一网关不同时,通知各个网关删除已有的用于转发报文至第一主机的流表项,并向除该重新选择的网关之外的其他网关下发用于转发报文至第一主机的流表项。
[0101]以图2中的主机PC100从SWl迀移至SW3进行举例描述:
[0102]当主机PC100从SWl迀移至SW3后,SW3会接收到主机PC100发送的免费ARP请求报文或数据报文;
[0103]当SW3接收到主机PC100发送的免费ARP请求报文或数据报文,则会上送SDN控制器。
[0104]SDN控制器收到主机PC100发送的免费ARP请求报文或数据报文后,发现主机PC100从原来接入的SWl迀移至SW3,确定主机PC100发生迀移,则依据SW5、SW6目前已接入的主机数量按照负载分担方式为主机PC100重新选择接入的网关。这里重新选择的网关可能为主机PClOO迀移之前接入的网关SW5相同,也可能为SW6,这里以重新选择的网关为SW6为例。
[0105]SDN控制器通知从SW5至主机PC100的转发路径上的SW5删除上述的表项1、Sffl删除上述的表项2 ;
[0106]SDN控制器通知从主机PC100至SW5的转发路径上的SWl删除上述的表项3 ;
[0107]SDN控制器发现该重新选择的网关SW6与主机PC100在迀移前接入的网关SW5不同,则通知SW6删除上述的表项11。
[0108]SDN控制器为SW5生成用于转发报文至主机PC100的流表项(记为表项13)并下发给SW5。其中,表项13中匹配项为:目的IP地址为主机PC100的IP地址即IP100,动作项为:通过SW5上处于从SW5至SW6的转发路径的端口即端口 Port5-6转发;通过表项13可实现SW5访问SW6下新迀移的主机PC100。
[0109]SDN控制器依据已学习的主机PC100的ARP信息确定从主机PC100至SW6的转发路径,假如该转发路径为主机PC100->SW3->SW6,则SDN控制器为SW3生成用于转发报文至SW6的流表项(记为表项14)并下发给SW3,表项14的匹配项为:源IP地址为IP100,目的MAC地址为MAC0,动作项为:通过SW3上处于转发路径主机PC100->SW3_>SW6的端口Port 1-600 转发。
[0110]SDN控制器依据已学习的主机PC100的ARP信息确定从SW6至主机PC100的转发路径,假如该转发路径为SW6->SW3->主机PC100,则SDN控制器为SW6生成用于转发报文至主机PC100的流表项(记为表项15)并下发给SW6,表项15的匹配项为:目的IP地址为IP100,源MAC地址为MAC0,动作项为:通过SW6上处于转发路径SW6->SW3_>主机PC100的端口 Port6-100转发;SDN控制器为SW3生成用于转发报文至主机PC100的流表项(记为表项16),表项16的匹配项为:目的IP地址为IP100,源MAC地址为MAC0,动作项为:通过SW3上处于转发路径SW6->SW3->主机PC100的端口 Port3_100转发。
[0111]本发明中,SDN中新增加网关时,SDN控制器可进一步执行以下步骤:
[0112]步骤c I,分配所述网关IP地址和网关MAC地址给该新增加的网关。
[0113]步骤c2,依据负载分担方式将至少一个主机接入的网关变更为该新增加的网关。
[0114]步骤c3,针对发生网关变更的每一主机,则执行以下步骤b4。
[0115]步骤c4,通知各个网络设备删除已有的用于转发报文至该主机的流表项,通知各个网络设备删除已有的用于转发来自该主机的报文至该主机在网关变更之前接入的网关的流表项,向该新增加的网关、以及从该新增加的网关至该主机的第五转发路径上的各个网络设备下发用于转发报文至该主机的流表项,向从该主机至该新增加的网关的第六转发路径上的各个网络设备生成用于转发来自该主机的报文至该新增加的网关的流表项,为除该新增加的网关之外的其他网关生成用于转发报文至该主机的流表项并下发至其他网关。
[0116]具体地,上述的通知各个网络设备删除已有的用于转发报文至该主机的流表项具体可包括:
[0117]通知从主机在网关变更之前接入的网关至主机的转发路径上的各个网络设备删除已有的用于转发报文至该主机的流表项;
[0118]通知除主机在网关变更之前接入的网关之外的其他各个网关删除已有的用于转发报文至该主机的流表项。
[0119]仍以图2进行举例描述:
[0120]SDN控制器确定SDN中新增加网关,比如图2中新增加SW7作为网关,则依据SW5、SW6目前已接入的主机数量按照负载分担方式将主机PC200接入的网关从SW5变更为SW7。
[0121]SDN控制器通知SW5删除上述的表项4、SW2删除上述的表项5,以及通知SW6删除上述的表项12 ;
[0122]SDN控制器通知SW2删除上述的表项6 ;
[0123]SDN控制器依据已学习的主机PC200的ARP信息确定从SW7至主机PC200的转发路径,假如该转发路径为SW7->SW2->主机PC200,则SDN控制器为SW7生成用于转发报文至主机PC200的流表项(记为表项17)并下发给SW7,表项17的匹配项为:目的IP地址为IP200,源MAC地址为MAC0,动作项为:通过SW7上处于转发路径SW7->SW2_>主机PC200的端口 Port7-200转发;SDN控制器为SW2生成用于转发报文至主机PC200的流表项(记为表项18)并下发给SW2,表项18的匹配项为:目的IP地址为IP200,源MAC地址为MACO,动作项为:通过SW2上处于转发路径SW7->SW2->主机PC200的端口 Port2_200转发。
[0124]SDN控制器依据已学习的主机PC200的ARP信息确定从主机PC200至SW7的转发路径,假如该转发路径为主机PC200->SW2->SW7,则SDN控制器为SW27生成用于转发报文至SW7的流表项(记为表项19)并下发给SW3,表项19的匹配项为:源IP地址为IP200,目的MAC地址为MAC0,动作项为:通过SW2上处于转发路径主机PC200->SW2_>SW2的端口Port2-700 转发。
[0125]SDN控制器为SW5生成用于转发报文至主机PC200的流表项(记为表项20)并下发给SW5。其中,表项20中匹配项为:目的IP地址为主机PC200的IP地址即IP200,动作项为:通过SW5上处于从SW5至SW7的转发路径的端口即端口 Port5-7转发;通过表项20可实现SW5访问SW7下新迀移的主机PC200。
[0126]SDN控制器为SW6生成用于转发报文至主机PC200的流表项(记为表项21)并下发给SW6。其中,表项21中匹配项为:目的IP地址为主机PC200的IP地址即IP200,动作项为:通过SW6上处于从SW6至SW7的转发路径的端口即端口 Port6-7转发;通过表项21可实现SW6访问SW7下新迀移的主机PC200。
[0127]通过上面描述的SDN控制器进一步执行的步骤,主机可以在网络中灵活的迀移,而不必通过配置更改网关,迀移后的数据流量也可以实现平滑过渡,不会出现长时间丢包;同时也可以实现通过SDN管理平台实时部署网关,更新网络内的网关,控制器重新分配每个网关下的主机,最大化的利用网关资源。
[0128]以上对本发明提供的方法进行了描述。下面对本发明提供的设备进行描述:
[0129]参见图3,图3为本发明提供的设备结构图。该设备应用于SDN控制器,包括:
[0130]分配单元,用于为SDN内相同网段内的各个不同网关分配相同的网关IP地址和网关MAC地址;
[0131]选择单元,用于为SDN内的第一主机选择接入的第一网关,并通知给第一主机;
[0132]流表项单元,用于向第一网关、以及从第一网关至第一主机的第一转发路径上的各网络设备下发用于转发报文至第一主机的流表项,向第一主机至第一网关的第二转发路径上各网络设备下发用于转发报文至第一网关的流表项,以及向各个不同网关生成用于转发报文至其他网关接入的主机的流表项。
[0133]优选地,所述选择单元为SDN内的第一主机选择接入的第一网关,并通知给第一主机包括:
[0134]接收第一接入设备上送的来自第一主机的ARP请求报文,第一接入设备在接收到本地第一主机发送的所述ARP请求报文后上送ARP请求报文至SDN控制器;
[0135]按照负载分担方式从SDN的各个不同网关中为
当前第3页1 2 3 4 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1