转发参数传递的方法及设备的制造方法

文档序号:9710753阅读:442来源:国知局
转发参数传递的方法及设备的制造方法
【技术领域】
[0001]本申请涉及通信网络领域,具体涉及一种转发参数传递的方法、装置以及系统。
【背景技术】
[0002]基于控制转发分离思想的SDN(Software Defined Networking)架构,是一种新型网络交换模型,对网络的创新发展起到了较好的推动作用,其关键组件包括OpenFlow交换机和控制器。控制器和OpenFlow交换机之间通过OpenFlow协议规范的控制通道完成消息的交互和信息的传递。控制器通过全网络视图来实现管控功能,为OpenFlow交换机生成转发流表;OpenFlow交换机根据流表来转发数据包,流表项主要由匹配字段(match fields)和操作(instruct1ns)等部分组成。然而,现网上已经部署了大量的传统转发设备,SDN/OpenFlow毕竟是新兴的网络架构和转发模型,如何兼容这些支持传统转发模型的传统网络转发设备,也是SDN/OpenFlow面临的挑战。
[0003]为了兼容这些支持传统转发模型的网络转发设备,0NF (Open NetworkingFoundat1n)定义了可协商的数据转发面模型NDM(Negotiable Datapath Models)和表类型模板TTP (Table Typing Patterns)规范和描述语言,TTP是NDM的第一阶段,支持现有的OpenFlow协议版本,如OpenFlow-Switchl.x。NDM/TTP定义了一个框架,基于这个框架,允许厂商基于实际的应用需求和现有的芯片架构来定义很多种不同的转发模型,每种模型可以涉及多张表,匹配不同的字段,基于查找结果执行不同的动作,由于是基于现有传统的芯片,无论匹配的字段还是执行的动作都是有限制的,所以,NDM/TTP描述了 OpenFlow协议规范中定义的OpenFLow交换机转发能力的一个有限子集。
[0004]NDM/TTP 一定程度上解决了 OpenFLow兼容传统转发模型的问题,但是当现有传统转发逻辑和转发表中需要的一些参数是OpenFlow协议规范没有定义的转发参数时,现有技术中通常需要扩展OpenFlow协议来支持,但是需要进行长时间的标准推动,而且每当发现需要增加一个新的OpenFlow规范没有定义的转发参数时,都需要进行一次或多次相应的标准推动,将这些转发参数扩展到OpenFlow协议规范中来,非常耗时费力繁琐、一定程度上拖延和影响了 SDN/OpenFlow技术推动和发展的速度。

【发明内容】

[0005]本发明实施例提供一种转发参数传递的方法、装置及系统,当控制器需要向SDN网络中支持传统转发模型的转发设备传递OpenFlow协议规范没有定义的转发参数时,无需扩展OpenFlow协议,便可完成参数传递,从而使得OpenFlow能更好地兼容网络中支持传统转发模型的转发设备。
[0006]为了解决上述问题,本发明实施例第一方面提供一种控制器执行的转发参数传递的方法,应用于控制转发分离的网络,所述控制转发分离的网络包括控制器和转发设备,所述控制器控制所述转发设备,所述方法包括:所述控制器获得扩展的转发模型描述,所述扩展的转发模型描述中包括第一格式编码规则,所述第一格式编码规则用于指示第一转发参数的类型以及所述第一转发参数在第一字段中的位置,所述第一字段是开放流OpenFlow协议流表项中的字段;所述控制器将所述第一转发参数按照所述第一格式编码规则填入所述第一字段,并将携带所述第一字段的所述流表项通过OpenFlow协议发送到所述转发设备上,以使得所述转发设备根据所述第一格式编码规则解析所述流表项中的所述第一字段,得到所述第一转发参数。
[0007]在第一方面的第一种可能的实现方式中,包括:所述扩展的转发模型描述中还包括第二格式编码规则,所述第二格式编码规则用于指示第二转发参数的类型以及所述第二转发参数在所述第一字段中的位置;相应地,所述方法还包括:所述控制器将所述第二转发参数按照所述第二格式编码规则填入所述第一字段,并将携带所述第一字段的所述流表项通过OpenFlow协议发送到所述转发设备上,以使得所述转发设备根据所述第二格式编码规则解析所述流表项中的所述第一字段,得到所述第二转发参数。
[0008]在第一方面的第二种可能的实现方式中,包括:所述扩展的转发模型描述中还包括第二格式编码规则,所述第二格式编码规则用于指示第二转发参数的类型以及所述第二转发参数在第二字段中的位置,所述第二字段是OpenFlow协议流表项中的字段,所述第二字段和所述第一字段不同;相应地,所述方法还包括:所述控制器将所述第二转发参数按照所述第二格式编码规则填入所述第二字段,并将携带所述第二字段的流表项通过OpenFlow协议发送到所述转发设备上,以使得所述转发设备根据所述第二格式编码规则解析所述流表项中的所述第二字段,得到所述第二转发参数。
[0009]结合第一方面或者第一方面的第一种至第二种任一可能的实现方式,在第一方面的第三种可能的实现方式中,还包括:所述第一字段是OpenFlow协议中的元数据MetaData字段。
[0010]结合第一方面或者第一方面的第一种至第三种任一可能的实现方式,在第一方面的第四种可能的实现方式中,还包括:所述第一格式编码规则根据转发模型描述语言扩展的语法生成,所述扩展的语法包括字段格式编码关键字、编码的位置关键字和编码位置的信息类型关键字,其中所述字段格式编码关键字用于指示所述扩展的语法的功能,所述编码位置关键字用于指示一个字段中存放数据的位置,所述编码位置的信息类型关键字用于指示所述数据的类型。
[0011]结合第一方面的第四种可能的实现方式,在第一方面的第五种可能的实现方式中,还包括:所述数据的类型为虚拟路由转发实例标识VRFID、下一跳IP地址、出接口或表项索引。
[0012]结合第一方面或者第一方面的第一种至第五种任一可能的实现方式,在第一方面的第六种可能的实现方式中,还包括:所述扩展的转发模型描述保存在所述控制器上和/或所述转发设备上。
[0013]为了解决上述问题,本发明实施例第二方面提供一种转发设备执行的转发参数传递的方法,应用于控制转发分离的网络,所述控制转发分离的网络包括控制器和转发设备,所述转发设备接收所述控制器的控制,所述方法包括:所述转发设备获得扩展的转发模型描述,所述扩展的转发模型描述中包括第一格式编码规则,所述第一格式编码规则用于指示第一转发参数的类型以及所述第一转发参数在第一字段中的位置,所述第一字段是开放流OpenFlow协议流表项中的字段;所述转发设备接收所述控制器发来的携带所述第一字段的所述OpenFlow协议流表项,按照所述第一格式编码规则将所述第一字段解析得到所述第一转发参数。
[0014]在第二方面的第一种可能的实现方式中,包括:所述扩展的转发模型描述中还包括第二格式编码规则,所述第二格式编码规则用于指示第二转发参数的类型以及所述第二转发参数在所述第一字段中的位置;相应地,所述方法还包括:所述转发设备接收所述控制器发来的携带所述第一字段的所述OpenFlow协议流表项,按照所述第二格式编码规则将所述第一字段解析得到所述第二转发参数。
[0015]在第二方面的第二种可能的实现方式中,包括:所述扩展的转发模型描述中还包括第二格式编码规则,所述第二格式编码规则用于指示第二转发参数的类型以及所述第二转发参数在第二字段中的位置,所述第二字段是OpenFlow协议流表项中的字段,所述第二字段和所述第一字段不同;相应地,所述方法还包括:所述转发设备接收所述控制器发来的携带所述第二字段的所述OpenFlow协议流表项,按照所述第二格式编码规则将所述第二字段解析得到所述第二转发参数。
[0016]结合第二方面或者第二方面的第一种至第二种任一可能的实现方式,在第二方面的第三种可能的实现方式中,还包括:所述第一字段是OpenFlow协议中的元数据MetaData字段。
[0017]结合第二方面或者第二方面的第一种至第三种任一可能的实现方式,在第二方面的第四种可能的实现方式中,还包括:所述第一格式编码规则根据转发模型描述语言扩展的语法生成,所述扩展的语法包括字段格式编码关键字、编码的位置关键字和编码位置的信息类型关键字,其中所述字段格式编码关键字用于指示所述扩展的语法的功能,所述编码位置关键字用于指示一个字段中存放数据的位置,所述编码位置的信息类型关键字用于指示所述数据的类型。
[0018]结合第二方面或者第二方面的第四种可能的实现方式,在第二方面的第五种可能的实现方式中,还包括:所述数据的类型为虚拟路由转发实例标识VRFID、下一跳IP地址、出接口或表项索引。
[0019]结合第二方面或者第二方面的第一种至第五种任一可能的实现方式,在第二方面的第六种可能的实现方式中,还包括:所述扩展的转发模型描述保存在所述控制器上和/或所述转发设备上。
[0020]为了解决上述问题,本发明实施例第三方面提供一种控制器,应用于控制转发分离的网络,所述控制转发分离的网络包括所述控制器和转发设备,所述控制器控制所述转发设备,所述装置包括:获取单元用于获得扩展的转发模型描述,所述扩展的转发模型描述中包括第一格式编码规则,所述第一格式编码规则用于指示第一转发参数的类型以及所述第一转发参数在第一字段中的位置,所述第一字段是开放流OpenFlow协议流表项中的字段;发送单元用于将所述第一转发参数按照所述第一格式编码规则填入所述第一字段,并将携带所述第一字段的所述流表项通过OpenFlow协议发送到所述转发设备上,以使得所述转发设备根据所述第一格式编码规则解析所述流表项中的所述第一字段,得到所述第一转发参数。
[0021]在第三方面的第一种可能的实现方式中,包括:所述扩展的转发模型描述中还包括第二格式编码规则,所述第二格式编码规则用于指示第二转发参数的类型以及所述第二转发参数在所述第一字段中的位置;所述发送单元还用于将所述第二转发参数按照所述第二格式编码规则填入所述第一字段,并将携带所述第一字段的所述流表项通过OpenFlow协议发送到所述转发设备上,以使得所述转发设备根据所述第二格式编码规则解析所述流表项中的所述第一字段,得到所述第二转发参数。
[0022]在第三方面的第二种可能的实现方式中,包括:所述扩展的转发模型描述中还包括第二格式编码规则,所述第二格式编码规则用于指示第二转发参数的类型以及所述第二转发参数在第二字段中的位置,所述第二字段是OpenFlow协议流表项中的字段,所述第二字段和所述第一字段不同;所述发送单元还用于将所述第二转发参数按照所述第二格
当前第1页1 2 3 4 5 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1