一种交换机模式切换方法、设备及系统技术方案

技术编号:13005619 阅读:80 留言:0更新日期:2016-03-10 17:15
本发明专利技术实施例提供一种交换机模式切换方法、设备及系统,涉及通信技术领域,当交换机从传统交换模式切换至OpenFlow交换模式时,将传统交换模式下硬件转发表项内的路由和交换信息用OpenFlow流表的形式表示,本发明专利技术实施例提供的方法包括:交换机接收控制器发送的请求交换机从传统交换模式切换到OpenFlow交换模式的模式切换请求消息;所述交换机冻结所述交换机传统交换模式下的所有路由和交换信息表,并根据所述路由和交换信息表中的路由和交换信息生成与所述路由和交换信息表对应的OpenFlow流表;将交换机切换至OpenFlow交换模式,向所述控制器发送模式切换响应消息。

【技术实现步骤摘要】
【国外来华专利技术】一种交换机模式切换方法、设备及系统
本专利技术涉及通信领域,尤其涉及一种交换机模式切换方法、设备及系统。
技术介绍
OpenFlow(开放流)是实现软件定义网络(英文:SoftwareDefinedNetworking,缩写SDN)的核心技术,它将原有的传统交换模式(即完全由交换机/路由器控制的报文转发方式)转化为OpenFlow交换模式,同时使传统的控制层面从转发设备中剥离出来,让所有转发行为的决策都迁移到了某个集中控制器上,实现了数据转发和路由控制的分离。图1为现有技术中OpenFlow网络架构示意图,如图1所示,OpenFlow网络包含有:控制器和多个交换机,由控制器集中控制OpenFlow网络中的所有交换机。在OpenFlow网络中,控制器先通过首包上报的方式获取数据流的相关信息,然后通过OpenFlow协议查看已经下发给交换机的OpenFlow流表以及网络状态,获取网络拓扑信息和网络状态信息,并根据自身掌握的数据流的服务质量(英文:QualityofService,缩写Qos)(如带宽、优先级等)要求、网络拓扑信息和网络状态信息为数据流选择最优的路径和对应的服务质量控制,并将选择出来的最优路径以OpenFlow流表的形式下发给交换机,由交换机根据控制器下发的OpenFlow流表进行数据流转发,其中,控制器与交换机之间的通信网络为控制面,交换机与交换机之间数据转发网络为数据面。实际应用中,OpenFlow网络一般会采用混合(Hybrid)交换机,支持OpenFlow交换和传统交换两种工作模式。当控制面网络出现问题,交换机与控制器断开连接时,交换机可以根据预先配置的OpenFlow配置管理协议(OF-config)进入“失败独立模式(failstandalonemode)”,即从OpenFlow交换模式切换为传统交换模式,通过传统的二层转发技术或三层路由协议生成硬件转发表,并将该硬件转发表下发到交换机内部专用的转发芯片(ASIC)或网络处理器(英文:NetworkProcessing,缩写NP),由ASIC或NP根据所述硬件转发表对数据流进行处理,将匹配转发条件的数据流直接发往相应的端口,继续工作。由于,OpenFlow网络中的交换机在不同的工作模式下采用不同的获取或计算交换、路由的方法,且保存路由和交换信息的数据结构方式也是不同的,控制器无法查看交换机内部存储的传统模式下的路由和交换信息。当控制器和交换机恢复连接,交换机从传统交换模式切换至OpenFlow交换模式时,通常情况下,交换机会清理掉传统交换模式下的硬件转发表项,使得控制器在不根据当前的网络拓扑信息的前提下,生成新的OpenFlow流表,进行数据转发,但是,这样很可能导致网络业务的暂时中断。因此,为了保证网络业务不中断,控制器需要通过OpenFlow协议查看当前传统交换机模式下的硬件转发表项内的路由和交换信息,获取根据当前网络拓扑信息,进行全局网络拓扑控制和优化,生成新的OpenFlow流表,进行数据转发。但是,现有技术中,当交换机从传统交换模式切换至OpenFlow交换模式时,未提供将传统交换模式下硬件转发表项内的路由和交换信息用OpenFlow流表的形式表示的方法。
技术实现思路
本专利技术的实施例提供一种交换机模式切换方法、设备及系统,实现了当交换机从传统交换模式切换至OpenFlow交换模式时,将传统交换模式下硬件转发表项内的路由和交换信息用OpenFlow流表的形式表示。为达到上述目的,本专利技术实施例采用的技术方案是,第一方面,本专利技术实施例提供一种交换机模式切换方法,包括:交换机接收控制器发送的模式切换请求消息;其中,所述模式切换请求消息用于指示所述交换机从传统交换模式切换至开放流OpenFlow交换模式;响应于所述模式切换请求消息,所述交换机冻结所述交换机传统交换模式下的所有路由和交换信息表,根据所述路由和交换信息表中的路由和交换信息,将所述路由和交换信息表转化为与所述路由和交换信息表相对应的OpenFlow流表,其中,所述OpenFlow流表包含至少一个OpenFlow流表项;所述交换机切换至OpenFlow交换模式,向所述控制器发送模式切换响应消息。在第一方面的第一种可能的实现方式中,结合第一方面,所述路由和交换信息表为三层IP地址路由表;所述三层IP地址路由表包含至少一个路由表项;每个路由表项包含目的地址、掩码、协议、优先级、度量值、下一跳地址以及出接口;相应的,所述根据所述路由和交换信息表中的路由和交换信息,将所述路由和交换信息表转化为与所述路由和交换信息表相对应的OpenFlow流表,包括:根据所述三层IP地址路由表中路由表项包含的目的地址、掩码、协议、优先级、度量值、下一跳地址以及出接口,分别将所述三层IP地址路由表中的每个路由表项转化为与所述路由表项相对应的OpenFlow流表项;其中,所述OpenFlow流表项组成OpenFlow流表,所述OpenFlow流表项包含匹配域、匹配域掩码、动作以及优先级;所述OpenFlow流表项的匹配域包含目的IP地址,所述OpenFlow流表项的动作包含修改目的MAC地址和输出到指定端口。在第一方面的第二种可能的实现方式中,结合第一方面的第一种可能的实现方式,对于第一路由表项,将所述第一路由表项转化为与所述第一路由表项相对应的第一OpenFlow流表项,包括:将所述第一路由表项的目的地址作为所述第一OpenFlow流表项的匹配域中的目的IP地址;其中,所述第一路由表项为所述三层IP地址路由表中的任一路由表项;根据所述第一路由表项的掩码确定所述第一OpenFlow流表项的匹配域掩码;根据所述第一路由表项的协议或第二路由表项中的协议,确定所述第一OpenFlow流表项的动作中的修改目的MAC;其中,所述第二路由表项在所述三层IP地址路由表中,且所述第二路由表项的目的地址与所述第二路由表项的掩码相与后的结果,和所述第一路由表项的下一跳地址与所述第二表项的掩码相与后的结果相等;将所述第一路由表项的出接口作为所述第一OpenFlow流表项的动作中输出到的指定端口;根据所述第一路由表项的优先级、所述第一路由表项的度量值以及所述第一路由表项的编号,确定所述第一OpenFlow流表项的优先级;其中,所述第一路由表项的编号为所述第一路由表项和所述第一路由表项的所有匹配项按照掩码长度从短到长的顺序进行自然排序后的编号;所述第一路由表项的匹配项为所述三层IP地址路由表中,路由表项的目的地址与所述路由表项的掩码按位相与后的结果,与所述第一路由表项的目的地址与所述路由表项的掩码相与后的结果相同的路由表项。在第一方面的第三种可能的实现方式中,结合第一方面的第二种可能的实现方式,所述根据所述第一路由表项的协议或第二路由表项中的协议,确定所述第一OpenFlow流表项的动作中的修改目的MAC,包括:判断所述第一路由表项的协议是否是直连类型;若所述第一路由表项的协议是直连类型,则将所述第一路由表项中的下一跳地址作为所述第一OpenFlow流表项的动作中的修改目的MAC;若所述第一路由表项的协议不是直连类型,则在所述三层IP地址路由表中,获取第二路由表项,判断所述第二路由表项的协议是否是直连类型;若所述第二路本文档来自技高网
...

【技术保护点】
PCT国内申请,权利要求书已公开。

【技术特征摘要】
【国外来华专利技术】1.一种交换机模式切换方法,其特征在于,包括:交换机接收控制器发送的模式切换请求消息;其中,所述模式切换请求消息用于指示所述交换机从传统交换模式切换至开放流OpenFlow交换模式;响应于所述模式切换请求消息,所述交换机冻结所述交换机传统交换模式下的所有路由和交换信息表,根据所述路由和交换信息表中的路由和交换信息,将所述路由和交换信息表转化为与所述路由和交换信息表相对应的OpenFlow流表,其中,所述OpenFlow流表包含至少一个OpenFlow流表项;所述交换机切换至OpenFlow交换模式,向所述控制器发送模式切换响应消息。2.根据权利要求1所述的方法,其特征在于,所述路由和交换信息表为三层IP地址路由表;所述三层IP地址路由表包含至少一个路由表项;每个路由表项包含目的地址、掩码、协议、优先级、度量值、下一跳地址以及出接口;相应的,所述根据所述路由和交换信息表中的路由和交换信息,将所述路由和交换信息表转化为与所述路由和交换信息表相对应的OpenFlow流表,包括:根据所述三层IP地址路由表中路由表项包含的目的地址、掩码、协议、优先级、度量值、下一跳地址以及出接口,分别将所述三层IP地址路由表中的每个路由表项转化为与所述路由表项相对应的OpenFlow流表项;其中,所述OpenFlow流表项组成OpenFlow流表,所述OpenFlow流表项包含匹配域、匹配域掩码、动作以及优先级;所述OpenFlow流表项的匹配域包含目的IP地址,所述OpenFlow流表项的动作包含修改目的MAC地址和输出到指定端口。3.根据权利要求2所述的方法,其特征在于,对于第一路由表项,所述第一路由表项为所述三层IP地址路由表中的任一路由表项,将所述第一路由表项转化为与所述第一路由表项相对应的第一OpenFlow流表项,包括:将所述第一路由表项的目的地址作为所述第一OpenFlow流表项的匹配域中的目的IP地址;其中,所述第一路由表项为所述三层IP地址路由表中的任一路由表项;根据所述第一路由表项的掩码确定所述第一OpenFlow流表项的匹配域掩码;根据所述第一路由表项的协议或第二路由表项中的协议,确定所述第一OpenFlow流表项的动作中的修改目的MAC;其中,所述第二路由表项在所述三层IP地址路由表中,且所述第二路由表项的目的地址与所述第二路由表项的掩码相与后的结果,和所述第一路由表项的下一跳地址与所述第二表项的掩码相与后的结果相等;将所述第一路由表项的出接口作为所述第一OpenFlow流表项的动作中输出到的指定端口;根据所述第一路由表项的优先级、所述第一路由表项的度量值以及所述第一路由表项的编号,确定所述第一OpenFlow流表项的优先级;其中,所述第一路由表项的编号为所述第一路由表项和所述第一路由表项的所有匹配项按照掩码长度从短到长的顺序进行自然排序后的编号;所述第一路由表项的匹配项为所述三层IP地址路由表中,路由表项的目的地址与所述路由表项的掩码按位相与后的结果,与所述第一路由表项的目的地址与所述路由表项的掩码相与后的结果相同的路由表项。4.根据权利要求3所述的方法,其特征在于,所述根据所述第一路由表项的协议或第二路由表项中的协议,确定所述第一OpenFlow流表项的动作中的修改目的MAC,包括:判断所述第一路由表项的协议是否是直连类型;若所述第一路由表项的协议是直连类型,则将所述第一路由表项中的下一跳地址作为所述第一OpenFlow流表项的动作中的修改目的MAC;若所述第一路由表项的协议不是直连类型,则在所述三层IP地址路由表中,获取第二路由表项,判断所述第二路由表项的协议是否是直连类型;若所述第二路由表项的协议是直连类型,则将第二路由表项中的下一跳地址作为所述第一OpenFlow流表项的动作中的修改目的MAC。5.根据权利要求3所述的方法,其特征在于,所述根据所述第一路由表项的优先级、所述第一路由表项的度量值以及所述第一路由表项的编号,确定所述第一OpenFlow流表项的优先级,包括:根据预先设置的路由表项的优先级与OpenFlow映射值的对应关系,获取所述第一路由表项的优先级对应的OpenFlow映射值;根据预先设置的路由表项的度量值与OpenFlow映射值的对应关系,获取所述第一路由表项的度量值的对应的OpenFlow映射值;根据第一预设权值对所述第一路由表项的编号加权;根据第二预设权值对所述第一路由表项的优先级对应的OpenFlow映射值加权;根据第三预设权值对所述第一路由表项的度量值的对应的OpenFlow映射值加权;将所述第一路由表项的编号的加权结果、所述第一路由表项的优先级对应的OpenFlow映射值的加权结果以及所述第一路由表项的度量值的对应的OpenFlow映射值的加权结果进行相加;将相加结果作为所述第一OpenFlow流表项的优先级。6.根据权利要求1所述的方法,其特征在于,所述路由和交换信息表为二层MAC地址转发表;所述二层MAC地址转发表包含至少一个转发表项;所述转发表项包含MAC地址、虚拟网络标识VLANID以及出接口;相应的,所述根据所述路由和交换信息表中的路由和交换信息,将所述路由和交换信息表转化为与所述路由和交换信息表相对应的OpenFlow流表,包括:根据所述二层MAC地址转发表中转发表项中包含的MAC地址、虚拟网络标识VLANID、出接口,分别将每个所述转发表项转化为与所述转发表项相对应的包含匹配域和动作的第二OpenFlow流表项;其中,所述OpenFlow流表项组成流表,所述OpenFlow流表项包含匹配域和动作,所述OpenFlow流表项的匹配域包含MAC地址和VLANID,所述OpenFlow流表项的动作包含输出到指定端口。7.根据权利要求6所述的方法,其特征在于,对于第一转发表项,将所述第一转发表项转化为与所述第一转发表项相对应的第二OpenFlow流表项,包括:将所述第一转发表项中的MAC地址作为所述第二OpenFlow流表项的匹配域中的MAC地址;其中,所述第一转发表项为所述二层MAC地址转发表中的任一转发表项;将所述第一转发表项中的VLANID作为所述第二OpenFlow流表项的匹配域中的VLANID;将所述第一转发表项中的出接口作为所述第二OpenFlow流表项的动作中输出到的指定端口。8.根据权利要求1-7任意一项所述的方法,其特征在于,在交换机接收控制器发送的模式切换请求消息之前,所述方法还包括:所述交换机接收控制器发送的模式查询指令,其中,所述模式查询指令用于查询所述交换机当前模式;所述交换机向所述控制器发送包含所述当前模式的模式响应消息,以使得所述控制器检测到当前网络质量参数在预设阈值内,且所述当前模式为传统交换模式时,向所述交换机发送所述模式切换请求消息。9.根据权利要求8所述的方法,其特征在于,所述模式切换响应消息用于通知所述控制...

【专利技术属性】
技术研发人员:梁剑耀
申请(专利权)人:华为技术有限公司
类型:发明
国别省市:广东;44

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1