一种SDN流表下发方法、系统及控制器技术方案

技术编号:14476626 阅读:302 留言:0更新日期:2017-01-25 09:10
本发明专利技术公开了一种SDN流表下发方法,包括如下步骤:预先计算流表,并存储到本地数据库中;获取交换机发送的数据包,并将数据包与本地数据库中的流表进行匹配;在匹配到与数据包相应的流表时,从本地数据库中调用与数据包相应的流表并下发给交换机。本发明专利技术实施例还提供了一种SDN流表下发装置及控制器。采用本发明专利技术实施例,不仅优化了交换机的流表存储资源,还提高了流表的下发效率。

【技术实现步骤摘要】

本专利技术涉及通信
,尤其涉及一种SDN流表下发方法、系统及控制器
技术介绍
软件定义网络(Software-DefinedNetworking,SDN)是一种新型网络体系架构。SDN架构将原本完全由交换机、路由器完成的数据包转发过程,转化为由OpenFlow交换机和控制器分别完成的独立过程,实现将网络设备控制平面与数据平面分离开来,同时具有可编程的特性,使底层基础设施被抽象为应用程序和网络服务,从而实现了网络流量的灵活控制。SDN控制器作为网络的一种操作系统,负责管理、策略制定等,以此确保网络智能化,而交换机只负责高效率地转发数据,其数据转发的依据就是流表。SDN控制器的流表下发有主动和被动两种模式,它们具有各自的特点。主动的流表下发模式利用预先设定好的规则计算得出大量的流表下发到交换机上;当数据包到达交换机后,交换机先进行流表匹配,再根据相应的流表项对数据包作出相应的处理动作;被动的流表下发模式则是针对由交换机上传的各个数据包设置工作,制定下发流表。
技术实现思路
从上述可知,现有的SDN控制器的流表下发模式中,主动的流表下发模式考虑到数据流的多样性,有些流表项是为了某些特殊问题出现而配置的,其利用率比较低,通常闲置在交换机上,消耗了交换机的存储资源;而被动的流表下发模式虽能更有效地利用交换机上的流表存储资源,但在处理过程中,会增加额外的流表设置时间,其流表下发的效率不高。针对上述问题,本专利技术的目的在于提供一种SDN流表下发方法、系统及控制器,不仅优化了交换机的流表存储资源,还提高了流表的下发效率。本专利技术提供一种SDN流表下发方法,包括如下步骤:预先计算流表,并存储到本地数据库中;获取交换机发送的数据包,并将所述数据包与所述本地数据库中的流表进行匹配;在匹配到与所述数据包相应的流表时,从所述本地数据库中调用与所述数据包相应的流表并下发给所述交换机。上述技术方案中,通过预先计算流表,并存储在本地数据库中;当SDN网络开始运作时,获取交换机发送的数据包,并将所述数据包与所述本地数据库中的流表进行匹配;在匹配成功时,从所述本地数据库中调用匹配的流表并下发给所述交换机;不仅优化了交换机的流表存储资源,还提高了流表的下发效率。优选的,当未匹配到与所述数据包相应的流表时,为所述数据包配置新的流表并下发给所述交换机。优选的,将所述新的流表发送到所述本地数据库中进行存储。优选的,所述本地数据库采用MySQL数据库。本专利技术还提供一种SDN流表下发装置,包括:流表管理模块,用于预先计算流表,并存储到本地数据库中;流表匹配模块,用于获取交换机发送的数据包,并将所述数据包与所述本地数据库中的流表进行匹配;流表发送模块,用于在匹配到与所述数据包相应的流表时,从所述本地数据库中调用与所述数据包相应的流表并下发给所述交换机。在上述技术方案中,所述流表管理模块预先计算流表,并存储在本地数据库中;当SDN网络开始运作时,所述流表匹配模块获取交换机发送的数据包,并将所述数据包与所述本地数据库中的流表进行匹配;在匹配成功时,所述流表发送模块从所述本地数据库中调用匹配的流表并下发给所述交换机;不仅优化了交换机的流表存储资源,还提高了流表的下发效率。优选的,所述SDN流表下发装置还包括:流表配置模块,用于当未匹配到与所述数据包相应的流表时,为所述数据包配置新的流表,并发送给所述流表发送模块,以使所述流表发送模块将所述新的流表下发给所述交换机。优选的,所述流表配置模块,还用于将所述新的流表发送到所述本地数据库中进行存储。优选的,所述SDN流表下发装置采用OpenFlow协议与所述交换机进行数据交互。本专利技术还提供一种控制器,所述控制器包含如上述的SDN流表下发装置。本专利技术提供的SDN流表下发方法、系统及控制器,具有如下有益效果:通过预先计算流表,并存储在本地数据库中;当SDN网络开始运作时,获取交换机发送的数据包,并将所述数据包与所述本地数据库中的流表进行匹配;在匹配成功时,从所述本地数据库中调用匹配的流表并下发给所述交换机。采用本专利技术提供的技术方案,不仅优化了交换机的流表存储资源,还提高了流表的下发效率。附图说明为了更清楚地说明本专利技术的技术方案,下面将对实施方式中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本专利技术的一些实施方式,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。图1是本专利技术提供的SDN流表下发方法的一个实施例的流程示意图。图2是本专利技术提供的SDN流表下发装置的一个实施例的结构示意图。具体实施方式下面将结合本专利技术实施例中的附图,对本专利技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本专利技术一部分实施例,而不是全部的实施例。基于本专利技术中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本专利技术保护的范围。请参阅图1,本专利技术提供一种SDN流表下发方法的一个实施例,包括步骤S11~S13,具体如下:S11,预先计算流表,并存储到本地数据库中。具体地,利用预先设定好的规则计算得出流表,并存储到本地数据库中。优选的,所述本地数据库采用MySQL数据库。MySQL是一种开放源代码的关系型数据库管理系统,可以大大降低拥有成本。MySQL既能够作为一个单独的应用程序应用在客户端服务器网络环境中;也能够作为一个库而嵌入到其他的软件中提供多语言支持,比如C#、Java、Python、Perl、Tcl等;还能够支持Windows/Linux/Unix等等主流的操作系统。它因为其很快的查询速度、高可靠性和适应性,成为一个用于管理、检查、优化数据库操作的较好的选择。当然,所述本地数据库也可采用其他数据库,这些均在本专利技术的保护范围之内,在此不做限制。S12,获取交换机发送的数据包,并将所述数据包与所述本地数据库中的流表进行匹配。具体的,首先,接收交换机发送的数据包,并获取所述数据包的匹配字段;其中,所述匹配字段包含源/目的MAC(MediaAccessControl,媒体访问控制)地址、以太网类型、VLAN(VirtualLocalAreaNetwork,虚拟局域网)ID、源/目的IP地址、IP协议、IPTOS(Type-Of-Service,服务类型)及源/目的TCP/UDP端口;然后,根据所述匹配字段进行分类区分;最后,采用流水线处理技术对每一类所述数据包进行流表匹配;其中,所述流水线处理技术为本专利
的技术人员所公知的,本专利技术不做赘述。可以理解的是,此步骤还可以采用其他方法来进行流表匹配,这些均在本专利技术的保护范围之内,本专利技术不做具体限制。S13,在匹配到与所述数据包相应的流表时,从所述本地数据库中调用与所述数据包相应的流表并下发给所述交换机。优选的,所述交换机支持OpenFlow协议。在本专利技术的一个实施例中,所述SDN流表下发方法还包括:当未匹配到与所述数据包相应的流表时,为所述数据包配置新的流表并下发给所述交换机。在本专利技术的另一个实施例中,所述SDN流表下发方法还包括:当未匹配到与所述数据包相应的流表时,为所述数据包制定新的流表并下发给所述交换机;并将所述新的流表发送到所述本地数据库中进行存储。综上,本专利技术实本文档来自技高网
...
一种SDN流表下发方法、系统及控制器

【技术保护点】
一种SDN流表下发方法,其特征在于,包括如下步骤:预先计算流表,并存储到本地数据库中;获取交换机发送的数据包,并将所述数据包与所述本地数据库中的流表进行匹配;在匹配到与所述数据包相应的流表时,从所述本地数据库中调用与所述数据包相应的流表并下发给所述交换机。

【技术特征摘要】
1.一种SDN流表下发方法,其特征在于,包括如下步骤:预先计算流表,并存储到本地数据库中;获取交换机发送的数据包,并将所述数据包与所述本地数据库中的流表进行匹配;在匹配到与所述数据包相应的流表时,从所述本地数据库中调用与所述数据包相应的流表并下发给所述交换机。2.如权利要求1所述的SDN流表下发方法,其特征在于,当未匹配到与所述数据包相应的流表时,为所述数据包配置新的流表并下发给所述交换机。3.如权利要求2所述的SDN流表下发方法,其特征在于,还包括:将所述新的流表发送到所述本地数据库中进行存储。4.如权利要求1所述的SDN流表下发方法,其特征在于,所述本地数据库采用MySQL数据库。5.一种SDN流表下发装置,其特征在于,包括:流表管理模块,用于预先计算流表,并存储到本地数据库中;流表匹配模块,用于获取交换机发送的数据包,并将所述数...

【专利技术属性】
技术研发人员:吴振勇王志雄熊常春
申请(专利权)人:广州西麦科技股份有限公司
类型:发明
国别省市:广东;44

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

1