《一种SDN中流表下发的方法和系统、OF控制器和OF交换机.pdf》由会员分享,可在线阅读,更多相关《一种SDN中流表下发的方法和系统、OF控制器和OF交换机.pdf(20页珍藏版)》请在专利查询网上搜索。
1、(10)申请公布号 (43)申请公布日 (21)申请号 201310379469.6(22)申请日 2013.08.27H04L 12/937(2013.01)H04L 12/947(2013.01)(71)申请人中兴通讯股份有限公司地址 518057 广东省深圳市南山区高新技术产业园科技南路中兴通讯大厦法务部(72)发明人梁乾灯 尤建洁 万伟 胡方伟(74)专利代理机构北京派特恩知识产权代理有限公司 11270代理人蒋雅洁 张振伟(54) 发明名称一种SDN中流表下发的方法和系统、OF控制器和OF交换机(57) 摘要本发明公开了一种软件定义网络(SDN)中流表下发的方法和系统、OF控制器和O。
2、F交换机,方法包括:OF交换机接收OF控制器发送的流表条目修改消息,所述消息中携带表号、流表条目和缓存标记;依据所述缓存标记的指示,所述OF交换机在自身的控制模块保存所述流表条目修改消息中的表号和流表条目。通过本发明,实现了OF控制器能够按需下发流表条目,并能缓解OF交换机路由流表条目容量指标的压力。(51)Int.Cl.(19)中华人民共和国国家知识产权局(12)发明专利申请权利要求书3页 说明书11页 附图5页(10)申请公布号 CN 104426815 A(43)申请公布日 2015.03.18CN 104426815 A1/3页21.一种软件定义网络SDN中流表下发的方法,其特征在于,。
3、该方法包括:开放流OF交换机接收OF控制器发送的流表条目修改消息,所述消息中携带表号、流表条目和缓存标记;依据所述缓存标记的指示,所述OF交换机在自身的控制模块保存所述流表条目修改消息中的表号和流表条目。2.根据权利要求1所述SDN中流表下发的方法,其特征在于,所述流表条目修改消息中还携带第一空闲老化周期。3.根据权利要求1所述SDN中流表下发的方法,其特征在于,在所述OF控制器发送流表条目修改消息之前,该方法还包括:所述OF交换机与所述OF控制器进行流表缓存能力协商,所述OF交换机将自身是否支持流表的缓存功能通知给所述OF控制器。4.根据权利要求3所述SDN中流表下发的方法,其特征在于,所述。
4、OF交换机与所述OF控制器进行流表缓存能力协商,包括:所述OF交换机接收所述OF控制器发送的流表特征请求Multipart Table Features Request消息,消息中携带表号;所述OF交换机向所述OF控制器返回流表特征响应Multipart Table Features Reply消息,在所述Multipart Table Features Reply消息的流表特征能力属性字段中携带流表条目缓存能力标记,用以指示是否支持对应表号的流表的流表条目缓存功能。5.根据权利要求4所述SDN中流表下发的方法,其特征在于,所述流表特征能力属性字段中还携带支持缓存功能的流表默认的第二空闲老化周。
5、期。6.根据权利要求1至5任一项所述SDN中流表下发的方法,其特征在于,该方法还包括:当所述OF交换机的转发模块接收到报文时,查询所述转发模块的流表中是否存在匹配的流表条目;如果存在,则按照查询匹配的流表条目进行所述报文的转发;如果不存在,则所述转发模块发送所述报文、表号、上送原因给所述OF交换机的控制模块;所述控制模块根据接收的表号和自身保存的流表条目缓存标记,在本地对应的流表中查询缓存的流表条目,如果查询到对应的流表条目,则将查询所得流表条目添加到所述转发模块对应的流表中,如果没有查询到对应的流表条目,则将所述控制模块接收到的报文、表号、上送原因填充到报文入Packet-in消息中发送给所。
6、述OF控制器。7.根据权利要求6所述SDN中流表下发的方法,其特征在于,该方法还包括:根据所述第二空闲老化周期对所述OF交换机的转发模块中缓存标记指示可以缓存的流表条目进行空闲老化处理;根据所述OF控制器发送相应流表条目时设置的所述第一空闲老化周期对所述控制模块缓存的相应流表条目进行空闲老化处理;其中,所述第一空闲老化周期的时长大于所述第二空闲老化周期的时长。8.一种软件定义网络SDN中流表下发的方法,其特征在于,该方法包括:开放流OF控制器根据本地策略决定为下发的流表条目设置缓存标记时,向OF交换机发送流表条目修改消息,所述消息中携带表号、流表条目和缓存标记;所述缓存标记用于指示将所述流表条。
7、目缓存在所述OF交换机的控制模块本地。权 利 要 求 书CN 104426815 A2/3页39.根据权利要求8所述SDN中流表下发的方法,其特征在于,所述流表条目修改消息中还携带第一空闲老化周期。10.根据权利要求8所述SDN中流表下发的方法,其特征在于,在所述OF控制器发送流表条目修改消息之前,该方法还包括:所述OF控制器与所述OF交换机进行流表缓存能力协商,所述OF控制器获知所述OF交换机是否支持流表的缓存功能。11.根据权利要求10所述SDN中流表下发的方法,其特征在于,所述OF控制器与所述OF交换机进行流表缓存能力协商,包括:所述OF控制器向所述OF交换机发送流表特征请求Multip。
8、art Table Features Request消息,消息中携带表号;所述OF控制器接收所述OF交换机返回的流表特征响应Multipart Table Features Reply消息,在所述Multipart Table Features Reply消息的流表特征能力属性字段中携带流表条目缓存能力标记,用以指示是否支持对应表号的流表的流表条目缓存功能。12.根据权利要求11所述SDN中流表下发的方法,其特征在于,所述流表特征能力属性字段中还携带支持缓存功能的流表默认的第二空闲老化周期。13.根据权利要求8至12任一项所述SDN中流表下发的方法,其特征在于,该方法还包括:当所述OF控制器收。
9、到所述OF交换机发送的携带有报文、表号、上送原因的报文入Packet-in消息时,所述OF控制器解析所述Packet-in消息,将所述Packet-in消息中的报文交由所述OF控制器的本地协议栈或应用程序APP进行处理。14.一种OF交换机,其特征在于,包括控制模块,用于接收OF控制器发送的流表条目修改消息,所述消息中携带表号、流表条目和缓存标记;依据所述缓存标记的指示,保存所述流表条目修改消息中的表号和流表条目在所述控制模块本地。15.根据权利要求14所述OF交换机,其特征在于,所述流表条目修改消息中还携带第一空闲老化周期。16.根据权利要求14所述OF交换机,其特征在于,所述控制模块进一步。
10、用于,在接收所述流表条目修改消息之前,与所述OF控制器进行流表缓存能力协商,将所述OF交换机自身是否支持流表的缓存功能通知给所述OF控制器。17.根据权利要求16所述OF交换机,其特征在于,所述控制模块进一步用于,接收所述OF控制器发送的流表特征请求Multipart Table Features Request消息,消息中携带表号;向所述OF控制器返回流表特征响应Multipart Table Features Reply消息,在所述Multipart Table Features Reply消息的流表特征能力属性字段中携带流表条目缓存能力标记,用以指示是否支持对应表号的流表的流表条目缓存功。
11、能。18.根据权利要求17所述OF交换机,其特征在于,所述流表特征能力属性字段中还携带支持缓存功能的流表默认的第二空闲老化周期。19.根据权利要求14至18任一项所述OF交换机,其特征在于,所述OF交换机还包括转发模块,用于在接收到报文时,查询所述转发模块的流表中是否存在匹配的流表条目;如果存在,则按照查询匹配的流表条目进行所述报文的转发;如果不存在,则所述转发模块发送所述报文、表号、上送原因给所述OF交换机的控制权 利 要 求 书CN 104426815 A3/3页4模块;相应的,所述控制模块进一步用于,根据接收的表号和自身保存的流表条目缓存标记,在本地对应的流表中查询缓存的流表条目,如果查。
12、询到对应的流表条目,则将查询所得流表条目添加到所述转发模块对应的流表中,如果没有查询到对应的流表条目,则将所述控制模块接收到的报文、表号、上送原因填充到报文入Packet-in消息中发送给所述OF控制器。20.根据权利要求19所述OF交换机,其特征在于,所述控制模块进一步用于,根据所述第二空闲老化周期对所述OF交换机的转发模块中缓存标记指示可以缓存的流表条目进行空闲老化处理;根据所述OF控制器发送相应流表条目时设置的所述第一空闲老化周期对所述控制模块缓存的相应流表条目进行空闲老化处理;其中,所述第一空闲老化周期的时长大于所述第二空闲老化周期的时长。21.一种OF控制器,其特征在于,包括:发送模。
13、块,用于根据本地策略决定为下发的流表条目设置缓存标记时,向OF交换机发送流表条目修改消息,所述消息中携带表号、流表条目和缓存标记;所述缓存标记用于指示将所述流表条目缓存在所述OF交换机的控制模块本地。22.根据权利要求21所述OF控制器,其特征在于,所述流表条目修改消息中还携带第一空闲老化周期。23.根据权利要求21所述OF控制器,其特征在于,还包括:协商模块,用于在所述发送模块发送流表条目修改消息之前,与所述OF交换机进行流表缓存能力协商,所述协商模块获知所述OF交换机是否支持流表的缓存功能。24.根据权利要求23所述OF控制器,其特征在于,所述协商模块进一步用于,向所述OF交换机发送流表特。
14、征请求Multipart Table Features Request消息,消息中携带表号;接收所述OF交换机返回的流表特征响应Multipart Table Features Reply消息,在所述Multipart Table Features Reply消息的流表特征能力属性字段中携带流表条目缓存能力标记,用以指示是否支持对应表号的流表的流表条目缓存功能。25.根据权利要求24所述OF控制器,其特征在于,所述流表特征能力属性字段中还携带支持缓存功能的流表默认的第二空闲老化周期。26.根据权利要求21至25任一项所述OF控制器,其特征在于,还包括接收处理模块,用于在收到所述OF交换机发送的。
15、携带有报文、表号、上送原因的报文入Packet-in消息时,解析所述Packet-in消息,将所述Packet-in消息中的报文交由所述OF控制器的本地协议栈或应用程序APP进行处理。27.一种SDN中流表下发的系统,其特征在于,包括权利要求14至20任一项所述的OF交换机、以及权利要求21至26任一项所述的OF控制器,所述OF控制器,用于根据本地策略决定为下发的流表条目设置缓存标记时,向所述OF交换机发送流表条目修改消息,所述消息中携带表号、流表条目和缓存标记;所述OF交换机,用于接收所述流表条目修改消息,依据所述缓存标记的指示,在自身的控制模块保存所述流表条目修改消息中的表号和流表条目。权。
16、 利 要 求 书CN 104426815 A1/11页5一种 SDN 中流表下发的方法和系统、 OF 控制器和 OF 交换机技术领域0001 本发明涉及软件定义网络(SDN,Software Defined Network)架构网络通信领域,尤其涉及一种SDN中流表下发的方法。背景技术0002 由于现在的网络暴露出了越来越多的弊病以及人们对网络性能的需求越来越高,因此不得不把很多复杂功能加入到路由器的体系结构当中,例如开放式最短路径优先(OSPF,Open Shortest Path First)、边界网关协议(BGP,Border Gateway Protocol)、组播、区分服务、流量工程。
17、、网络地址转换(NAT,Network Address Translation)、防火墙、多协议标签交换(MPLS,Multi-Protocol Label Switching)等等。这就使得路由器等交换设备越来越臃肿而且性能提升的空间越来越小。0003 然而与网络领域的困境截然不同的是,计算机领域实现了日新月异的发展。仔细回顾计算机领域的发展,不难发现其关键在于计算机领域找到了一种简单可用的硬件底层(x86指令集)。由于有了这样一种公用的硬件底层,因此在软件方面,不论是应用程序还是操作系统都取得了飞速的发展。现在很多主张重新设计计算机网络体系结构的人士认为:网络可以复制计算机领域的成功来解决。
18、现在网络所遇到的所有问题。在这种思想的指导下,将来的网络必将是这样的:底层的数据通路(交换机、路由器)是“哑的、简单的、最小的”,并定义一个对外开放的关于流表的公用的应用程序编程接口(API,Application Programming Interface),同时采用控制器来控制整个网络。未来的研究人员就可以在控制器上自由的调用底层的API来编程,从而实现网络的创新。0004 基于上述的理念,出现了软件定义网络(SDN,Software Defined Network),SDN的核心技术为OpenFlow(开放流,简称OF)协议,OpenFlow协议应用架构如图1所示,通过将网络设备控制面(。
19、包含OpenFlow Controller)与数据面(包含OpenFlow Capable Switch)分离开来,从而实现了网络流量的灵活控制,为核心网络及应用的创新提供了良好的平台。0005 OpenFlow协议用来描述控制器和交换机之间交互所用信息的标准,以及控制器和交换机的接口标准。协议的核心部分是用于OpenFlow协议信息结构的集合。0006 OpenFlow流表(图3所示)或经过编排的多个流表级联而成管道用来配置交换机转发路径(图2所示),流表条目由匹配字段、计数器和指令集等如下几个字段构成:0007 0008 其中,Match Fields是报文匹配的输入关键字,用于匹配一条流。
20、表项;计数器是用于管理用的各种统计信息;指令集(Instructions)是指对报文的操作指令,包括丢弃、转发报文到指定端口、设置报文头部字段值、增加封装标签等;Priority是指流表条目的匹配优先级;Timeouts是指流表条目的老化时间;Cookie是由控制器选择的不透明数据值。说 明 书CN 104426815 A2/11页6动作集(Action Set)和每个报文相关联,它在流水线的多个流表之间传递并被各流表的指令所修改,直到流水线处理结束,形成最终的动作集。0009 在电信网络中,路由条目非常多,一般都是十万甚至百万的数量级,控制器或APP(应用程序)通过动态路由协议学到全网路由后。
21、如果将表示这些路由信息的流表条目全部下发给各个OF交换机,对于OF交换机的流表容量要求就非常高,实际上在一段时间内可能仅有少量路由流表条目有流量。如果OF控制器能够实现按需下发路由流表条目,并让OF交换机使用较短时间周期的空闲老化,就能在有限时间内有效的将控制器上的路由信息集缩小映射到OF交换机上,缓解OF交换机路由流表条目容量指标的压力,从而实现超出OF交换机指标的路由流表条目容量。然而,现有技术还无法提供针对上述技术问题的解决方案。本申请的发明人在实践过程中发现,未匹配路由流表条目的流量首包上送,触发控制器下发OF交换机所需的路由信息是实现该目的的主要方法。但是该方法因为控制器感应OF交换。
22、机需求下发路由表条目的时延较长,会导致大量的报文上送,消耗OF交换机和控制器之间的宝贵带宽。所以希望能够能进一步优化。目前很多OF交换机采用分布式中央处理器(CPU,Central Processing Unit)架构的实现,控制平面和转发平面分离,控制平面由单独的CPU实现,拥有比转发平面更丰富的内存资源,在这种实现架构的OF交换机上,提出了本发明。发明内容0010 有鉴于此,本发明的主要目的在于提供一种SDN中流表下发的方法,以至少实现OF控制器能够按需下发流表条目,并缓解OF交换机路由流表条目容量指标的压力。0011 为达到上述目的,本发明的技术方案是这样实现的:0012 一种SDN中流。
23、表下发的方法,该方法包括:0013 OF交换机接收OF控制器发送的流表条目修改消息,所述消息中携带表号、流表条目和缓存标记;0014 依据所述缓存标记的指示,所述OF交换机在自身的控制模块保存所述流表条目修改消息中的表号和流表条目。0015 上述方案中,所述流表条目修改消息中还携带第一空闲老化周期。0016 上述方案中,在所述OF控制器发送流表条目修改消息之前,该方法还包括:0017 所述OF交换机与所述OF控制器进行流表缓存能力协商,所述OF交换机将自身是否支持流表的缓存功能通知给所述OF控制器。0018 上述方案中,所述OF交换机与所述OF控制器进行流表缓存能力协商,包括:0019 所述O。
24、F交换机接收所述OF控制器发送的流表特征请求(Multipart Table Features Request)消息,消息中携带表号;0020 所述OF交换机向所述OF控制器返回流表特征响应(Multipart Table Features Reply)消息,在所述Multipart Table Features Reply消息的流表特征能力属性字段中携带流表条目缓存能力标记,用以指示是否支持对应表号的流表的流表条目缓存功能。0021 上述方案中,所述流表特征能力属性字段中还携带支持缓存功能的流表默认的第二空闲老化周期。0022 上述方案中,该方法还包括:说 明 书CN 104426815 A。
25、3/11页70023 当所述OF交换机的转发模块接收到报文时,查询所述转发模块的流表中是否存在匹配的流表条目;0024 如果存在,则按照查询匹配的流表条目进行所述报文的转发;0025 如果不存在,则所述转发模块发送所述报文、表号、上送原因给所述OF交换机的控制模块;所述控制模块根据接收的表号和自身保存的流表条目缓存标记,在本地对应的流表中查询缓存的流表条目,如果查询到对应的流表条目,则将查询所得流表条目添加到所述转发模块对应的流表中,如果没有查询到对应的流表条目,则将所述控制模块接收到的报文、表号、上送原因填充到报文入Packet-in消息中发送给所述OF控制器。0026 上述方案中,该方法还。
26、包括:根据所述第二空闲老化周期对所述OF交换机的转发模块中缓存标记指示可以缓存的流表条目进行空闲老化处理;根据所述OF控制器发送相应流表条目时设置的所述第一空闲老化周期对所述控制模块缓存的相应流表条目进行空闲老化处理;0027 其中,所述第一空闲老化周期的时长大于所述第二空闲老化周期的时长。0028 一种SDN中流表下发的方法,该方法包括:0029 OF控制器根据本地策略决定为下发的流表条目设置缓存标记时,向OF交换机发送流表条目修改消息,所述消息中携带表号、流表条目和缓存标记;所述缓存标记用于指示将所述流表条目缓存在所述OF交换机的控制模块本地。0030 上述方案中,所述流表条目修改消息中还。
27、携带第一空闲老化周期。0031 上述方案中,在所述OF控制器发送流表条目修改消息之前,该方法还包括:0032 所述OF控制器与所述OF交换机进行流表缓存能力协商,所述OF控制器获知所述OF交换机是否支持流表的缓存功能。0033 上述方案中,所述OF控制器与所述OF交换机进行流表缓存能力协商,包括:0034 所述OF控制器向所述OF交换机发送Multipart Table Features Request消息,消息中携带表号;0035 所述OF控制器接收所述OF交换机返回的Multipart Table Features Reply消息,在所述Multipart Table Features R。
28、eply消息的流表特征能力属性字段中携带流表条目缓存能力标记,用以指示是否支持对应表号的流表的流表条目缓存功能。0036 上述方案中,所述流表特征能力属性字段中还携带支持缓存功能的流表默认的第二空闲老化周期。0037 上述方案中,该方法还包括:0038 当所述OF控制器收到所述OF交换机发送的携带有报文、表号、上送原因的报文入Packet-in消息时,所述OF控制器解析所述Packet-in消息,将所述Packet-in消息中的报文交由所述OF控制器的本地协议栈或应用程序APP进行处理。0039 一种OF交换机,包括控制模块,用于接收OF控制器发送的流表条目修改消息,所述消息中携带表号、流表条。
29、目和缓存标记;依据所述缓存标记的指示,保存所述流表条目修改消息中的表号和流表条目在所述控制模块本地。0040 上述方案中,所述流表条目修改消息中还携带第一空闲老化周期。0041 上述方案中,所述控制模块进一步用于,在接收所述流表条目修改消息之前,与所述OF控制器进行流表缓存能力协商,将所述OF交换机自身是否支持流表的缓存功能通知说 明 书CN 104426815 A4/11页8给所述OF控制器。0042 上述方案中,所述控制模块进一步用于,接收所述OF控制器发送的Multipart Table Features Request消息,消息中携带表号;向所述OF控制器返回Multipart Tab。
30、le Features Reply消息,在所述Multipart Table Features Reply消息的流表特征能力属性字段中携带流表条目缓存能力标记,用以指示是否支持对应表号的流表的流表条目缓存功能。0043 上述方案中,所述流表特征能力属性字段中还携带支持缓存功能的流表默认的第二空闲老化周期。0044 上述方案中,所述OF交换机还包括转发模块,用于在接收到报文时,查询所述转发模块的流表中是否存在匹配的流表条目;0045 如果存在,则按照查询匹配的流表条目进行所述报文的转发;0046 如果不存在,则所述转发模块发送所述报文、表号、上送原因给所述OF交换机的控制模块;相应的,所述控制模。
31、块进一步用于,根据接收的表号和自身保存的流表条目缓存标记,在本地对应的流表中查询缓存的流表条目,如果查询到对应的流表条目,则将查询所得流表条目添加到所述转发模块对应的流表中,如果没有查询到对应的流表条目,则将所述控制模块接收到的报文、表号、上送原因填充到报文入Packet-in消息中发送给所述OF控制器。0047 上述方案中,所述控制模块进一步用于,根据所述第二空闲老化周期对所述OF交换机的转发模块中缓存标记指示可以缓存的流表条目进行空闲老化处理;根据所述OF控制器发送相应流表条目时设置的所述第一空闲老化周期对所述控制模块缓存的相应流表条目进行空闲老化处理;0048 其中,所述第一空闲老化周期。
32、的时长大于所述第二空闲老化周期的时长。0049 一种OF控制器,包括:发送模块,用于根据本地策略决定为下发的流表条目设置缓存标记时,向OF交换机发送流表条目修改消息,所述消息中携带表号、流表条目和缓存标记;所述缓存标记用于指示将所述流表条目缓存在所述OF交换机的控制模块本地。0050 上述方案中,所述流表条目修改消息中还携带第一空闲老化周期。0051 上述方案中,所述OF控制器还包括:协商模块,用于在所述发送模块发送流表条目修改消息之前,与所述OF交换机进行流表缓存能力协商,所述协商模块获知所述OF交换机是否支持流表的缓存功能。0052 上述方案中,所述协商模块进一步用于,向所述OF交换机发送。
33、Multipart Table Features Request消息,消息中携带表号;接收所述OF交换机返回的Multipart Table Features Reply消息,在所述Multipart Table Features Reply消息的流表特征能力属性字段中携带流表条目缓存能力标记,用以指示是否支持对应表号的流表的流表条目缓存功能。0053 上述方案中,所述流表特征能力属性字段中还携带支持缓存功能的流表默认的第二空闲老化周期。0054 上述方案中,所述OF控制器还包括接收处理模块,用于在收到所述OF交换机发送的携带有报文、表号、上送原因的报文入Packet-in消息时,解析所述Pa。
34、cket-in消息,将所述Packet-in消息中的报文交由所述OF控制器的本地协议栈或应用程序APP进行处理。说 明 书CN 104426815 A5/11页90055 一种SDN中流表下发的系统,包括上述的OF交换机、以及上述的OF控制器,0056 所述OF控制器,用于根据本地策略决定为下发的流表条目设置缓存标记时,向所述OF交换机发送流表条目修改消息,所述消息中携带表号、流表条目和缓存标记;0057 所述OF交换机,用于接收所述流表条目修改消息,依据所述缓存标记的指示,在自身的控制模块保存所述流表条目修改消息中的表号和流表条目。0058 本发明所提供的一种SDN中流表下发的方法,由OF控。
35、制器将学习到的或静态配置的路由根据一定的策略批量下发到OF交换机控制平面缓存,然后由OF交换机转发平面的未匹配路由流表条目的流量上送触发在OF交换机控制平面的缓存路由流表中查找对应的流表条目,查到后直接下发转发平面的路由流表,并根据需求启动短周期的空闲老化定时器,同时不构造Packet-in报文上送控制器;如果查不到,就构造Packet-in报文上送控制器处理。通过本发明,OF控制器能够实现按需下发路由流表条目,并让OF交换机使用较短时间周期的空闲老化,就能在有限时间内有效的将控制器上的路由信息集缩小映射到OF交换机上,缓解OF交换机路由流表条目容量指标的压力,从而实现超出OF交换机指标的路由。
36、流表条目容量;本发明还能降低控制器感应OF交换机需求下发路由表条目的时延,从而降低OF交换机和控制器之间的带宽消耗。附图说明0059 图1为现有技术中OpenFlow协议应用架构图;0060 图2为现有技术的报文流通过OpenFlow处理管道的示意图;0061 图3为现有技术中基于每个表的报文处理;0062 图4本发明实施例的一SDN中流表下发的方法流程图;0063 图5为本发明实施例的流表缓存能力协商的流程图;0064 图6为本发明实施例的另一SDN中流表下发的方法流程图;0065 图7为本发明实施例的OF交换机接收到报文后的处理流程图;0066 图8为本发明实施例的一种SDN中流表下发的系。
37、统结构示意图。具体实施方式0067 下面结合附图和具体实施例对本发明的技术方案进一步详细阐述。0068 本发明实施例提供的一种OF交换机侧的SDN中流表下发的方法,如图4所示,该方法主要包括:0069 步骤401,OF交换机接收OF控制器发送的流表条目修改消息,所述消息中携带表号、流表条目和缓存标记;0070 较佳的,所述流表条目修改消息中还携带第一空闲老化周期,所述第一空闲老化周期为所述OF控制器为所述OF交换机设置的控制模块内的流表条目的老化周期。0071 步骤402,依据所述缓存标记的指示,所述OF交换机在自身的控制模块保存所述流表条目修改消息中的表号和流表条目。0072 作为一种优选实。
38、施方式,在所述OF控制器发送流表条目修改消息之前,该方法还包括:所述OF交换机与所述OF控制器进行流表缓存能力协商,所述OF交换机将自身是否支持流表的缓存功能通知给所述OF控制器。说 明 书CN 104426815 A6/11页100073 其中,所述OF交换机与所述OF控制器进行流表缓存能力协商,如图5所示,包括:0074 步骤501,OF交换机接收OF控制器发送的Multipart Table Features Request消息,消息中携带表号;0075 步骤502,OF交换机向OF控制器返回Multipart Table Features Reply消息,在Multipart Tabl。
39、e Features Reply消息的流表特征能力属性字段中携带流表条目缓存能力标记,用以指示是否支持对应表号的流表的流表条目缓存功能。0076 较佳的,所述流表特征能力属性字段中还携带支持缓存功能的流表默认的第二空闲老化周期。0077 较佳的,可以在流表特征能力属性字段中新增OFPTC_CACHE参数,该OFPTC_CACHE参数,即作为流表条目缓存能力标记,还可用于设置第二空闲老化周期。0078 作为一种优选实施方式,该方法还包括:0079 当OF交换机的转发模块接收到报文时,查询转发模块的流表中是否存在匹配的流表条目;0080 如果存在,则按照查询匹配的流表条目进行所述报文的转发;008。
40、1 如果不存在,则转发模块发送所述报文、表号、上送原因给OF交换机的控制模块;控制模块根据接收的表号和自身保存的流表条目缓存标记,在本地对应的流表中查询缓存的流表条目,如果查询到对应的流表条目,则将查询所得流表条目添加到转发模块对应的流表中,如果没有查询到对应的流表条目,则将控制模块接收到的报文、表号、上送原因填充到报文入(Packet-in)消息中发送给OF控制器。0082 较佳的,该方法还包括:根据所述第二空闲老化周期对所述OF交换机的转发模块中缓存标记指示可以缓存的流表条目进行空闲老化处理,删除老化的流表条目,删除时所述转发模块中的流表条目将统计数据报给所述控制模块缓存的相应流表条目累计。
41、相关统计数据;根据所述OF控制器发送相应流表条目时设置的所述第一空闲老化周期对所述控制模块缓存的相应流表条目进行空闲老化处理,删除老化的流表条目;0083 其中,所述第一空闲老化周期的时长是根据第二空闲老化周期的时长进行设置,要求第一空闲老化周期的时长大于第二空闲老化周期的时长。较佳的,第一空闲老化周期的时长至少为第二空闲老化周期的时长的两倍。0084 由于所述第二空闲老化周期是OF交换机向OF控制器推荐的,OF控制器根据所述第二空闲老化周期设置第一空闲老化周期,并设置第一空闲老化周期的时长大于第二空闲老化周期的时长,从而使得在OF交换机转发面的流表条目在空闲时可以更早老化,节省转发模块的表空。
42、间,而在OF交换机控制模块的缓存的流表条目在空闲时可以稍缓老化,以便在匹配该流表条目的流量能及时在转发模块流表条目没有添加或已经老化时触发OF交换机控制模块下发该流表条目到转发模块,避免总是将构造报文入(Packet-in)消息发送给OF控制器,来触发从OF控制器下发相关流表条目。0085 本发明实施例提供的一种OF控制器侧的SDN中流表下发的方法,主要包括:OF控制器根据本地策略决定为下发的流表条目设置缓存标记时,向OF交换机发送流表条目修改消息,所述消息中携带表号、流表条目和缓存标记;所述缓存标记用于指示将所述流表条目缓存在所述OF交换机的控制模块本地。0086 优选的,所述流表条目修改消息中还携带第一空闲老化周期,所述第一空闲老化说 明 书CN 104426815 A10。