利用流表转发数据的方法及系统技术方案

技术编号:12161405 阅读:162 留言:0更新日期:2015-10-04 23:47
本发明专利技术提供一种利用流表转发数据的方法及系统。根据所述方法,所述转发系统根据数据的业务类型预设由至少一个流表所构成的虚拟流转路径;再根据所接收数据的业务类型选择一个虚拟流转路径,并根据所接收的数据在所选择的虚拟流转路径中流转时所得到的各流表的值,选择下一虚拟流转路径,直至所选择的虚拟流转路径中的最后一个流表的属性为不可跳转,则根据所述最后一个虚拟流转路径中各流表的值对所接收的数据予以转发。本发明专利技术能够有效避免现有的OpenFlow交换机需要多次将数据从物理输出端口输出再返回物理输入端口的重复操作,提高了物理端口的使用效率。

【技术实现步骤摘要】

本专利技术涉及一种数据转发技术,特别是涉及一种利用流表转发数据的方法及系统
技术介绍
OpenFlow是美国斯坦福大学于2007年提出的一种支持网络创新研宄的新型网络交换模型,。OpenFlow的设计目标之一就是将网络设备的控制功能与转发功能进行分离,进而将控制功能全部集中到远程的控制器上完成。而OpenFlow交换机只负责在本地做简单高速的数据转发。在OpenFlow交换机的运行过程中,其数据转发的依据就是流表(flowtable)。所谓流表,其实可被视作是OpenFlow对网络设备的数据转发功能的一种抽象。在传统网络设备中,TCAM(ternarycontent addressable memory 三态内容寻址存储器)主要用于FIB、MAC、MPLS Lable和ACL表。由于每个表的匹配字段长度不一,所以可以分别设计,并且具有最大容量限制以期达到最小的开销。而在OpenFlow交换中,不再区分匹配长度较短的FIB、MAC、MPLS Lable表以及较长的ACL表,而一律采用具有最大长度的流表项记录代替。对OpenFlow vl.0而言,流表的匹配字段长度长达252位,而一般的IPv4 RIB TCAM匹配字段长度只有60至80位,其开销增加了三倍以上。为了减少流表开销,OpenFlow vl.1设计了多级流表,即将流表进行特征提取,进而将匹配过程分解成多个步骤,形成流水线的处理形式,从而降低总的流表记录条数。但超过三级的多级流表的实际物理实现,受芯片复杂度,成本等因素的影响,可行性比较低。目前已经实现的最多流表级数是三级。随着网络中传输的数据复杂度的增加,OpenFlow交换机在解析带有嵌套的数据(如QinQ数据)时,每解析一层嵌套就必须将下一层子数据从所述OpenFlow交换机的物理输出端口再返回该OpenFlow交换机的物理输入端口,以实现下一层嵌套的解析。冗余的输入输出,导致OpenFlow交换机的物理端口的资源变得紧张。为了解决上述问题,需要对现有技术进行改进。
技术实现思路
鉴于以上所述现有技术的缺点,本专利技术的目的在于提供一种利用流表转发数据的方法及系统,用于解决现有技术中无法高效的利用OpenFlow交换机的资源的问题。为实现上述目的及其他相关目的,本专利技术提供一种利用流表转发数据的方法,包括:根据数据的业务类型预设由至少一个流表所构成的虚拟流转路径;根据所接收数据的业务类型选择一个虚拟流转路径,并根据所接收的数据在所选择的虚拟流转路径中流转时所得到的各流表的值,选择下一虚拟流转路径,直至所选择的虚拟流转路径中的最后一个流表的属性为不可跳转,则根据所述最后一个虚拟流转路径中各流表的值对所接收的数据予以转发。优选地,所述根据数据的业务类型预设由至少一个流表所构成的虚拟流转路径的方式包括:提供一用于输入业务类型和流表的配置界面,根据用户在所述配置界面中进行的业务类型和所对应的虚拟流转路径的设计操作,生成一虚拟流转路径。优选地,在所述根据所接收数据的业务类型选择一个虚拟流转路径的步骤之前,还包括:为所接收的数据开辟一缓存区,将所接收的数据存入所述缓存区。优选地,所述根据所接收数据的业务类型选择一个虚拟流转路径的方式包括:按照预设的各业务类型的优先级由高到低,依次将所述缓存区中的数据对应选择一个虚拟流转路径。优选地,所述虚拟流转路径中包含用于转发数据的端口,对应的,在根据所接收数据的业务类型选择一个虚拟流转路径,并根据所接收的数据在所选择的虚拟流转路径中流转时所得到的各流表的值,选择下一虚拟流转路径,直至所选择的虚拟流转路径中的最后一个流表的属性为不可跳转,则根据所述最后一个虚拟流转路径中各流表的值对所接收的数据进行转发的过程中,所述方法还包括:根据预设的调度策略,将在各自虚拟流转路径中需要使用同一个流表、和/或端口的不同数据进行调度。基于上述目的,本专利技术还提供一种利用流表转发数据的系统,包括:预设单元,用于根据数据的业务类型预设由至少一个流表所构成的虚拟流转路径;转发单元,用于根据所接收数据的业务类型选择一个虚拟流转路径,并根据所接收的数据在所选择的虚拟流转路径中流转时所得到的各流表的值,选择下一虚拟流转路径,直至所选择的虚拟流转路径中的最后一个流表的属性为不可跳转,则根据所述最后一个虚拟流转路径中各流表的值对所接收的数据予以转发。优选地,所述预设单元用于提供一用于输入业务类型和流表的配置界面,根据用户在所述配置界面中进行的业务类型和所对应的虚拟流转路径的设计操作,生成一虚拟流转路径。优选地,所述系统还包括:缓存单元,用于在所述转发单元根据所接收数据的业务类型选择一个虚拟流转路径之前,为所接收的数据开辟一缓存区,将所接收的数据存入所述缓存区。优选地,所述转发单元还用于按照预设的各业务类型的优先级由高到低,依次将所述缓存区中的数据对应选择一个虚拟流转路径。优选地,所述虚拟流转路径中包含用于转发数据的端口,对应的,在所述转发单元为多个数据进行转发处理的过程中,所述系统还包括:调度单元,用于根据预设的调度策略,将在各自虚拟流转路径中需要使用同一个流表、和/或端口的不同数据进行调度。如上所述,本专利技术的利用流表转发数据的方法及系统,具有以下有益效果:通过根据业务类型设置虚拟流转路径,能将带有嵌套的数据和非嵌套数据加以区分,并针对嵌套数据的业务类型设置每一层嵌套的虚拟流转路径,并根据对前一虚拟流转路径中各流表匹配数据所得到的值来确定下一层嵌套所对应的虚拟流转路径,并直接转至相应虚拟流转路径,如此,能够有效避免现有的OpenFlow交换机需要多次将数据从物理输出端口输出再返回物理输入端口的重复操作,提高了物理端口的使用效率;另外,由于OpenFlow交换机可同时处理多条虚拟流转路径,而各虚拟流转路径可复用各流表和端口,因此,对各流表和端口进行调度,以保证每条虚拟流转路径都能及时处理待转发的数据,有效提高了数据转发的效率;此外,为技术人员提供虚拟流转路径的设计界面,能够便于技术人员根据实际需求来调整现有的虚拟流转路径。【附图说明】图1显示为本专利技术的利用流表转发数据的方法的流程图。图2显示为本专利技术的利用流表转发数据的方法中数据在多条虚拟流转路径中流转的示意图。图3显示为本专利技术的利用流表转发数据的系统结构示意图。【具体实施方式】以下通过特定的具体实例说明本专利技术的实施方式,本领域技术人员可由本说明书所揭露的内容轻易地了解本专利技术的其他优点与功效。本专利技术还可以通过另外不同的【具体实施方式】加以实施或应用,本说明书中的各项细节也可以基于不同观点与应用,在没有背离本专利技术的精神下进行各种修饰或改变。如图1所示,本专利技术提供一种利用流表转发数据的方法。所述转发方法主要由转发系统来执行。所述转发系统包括:包含流表的网络接入设备中的软件和硬件。其中,所述网络接入设备中的硬件包括:用于执行所述转发方法的芯片。所述网络接入设备包括但不限于:交换机、路由器等。在步骤SI中,所述转发系统根据数据的业务类型预设由至少一个流表所构成的虚拟流转路径。具体地,所述转发系统预先保存有至少一个流表。所述流表可被视作是OpenFlow对网络设备的数据转发功能的一种抽象。所述转发系统将所接收的数据按照所述虚拟流转路径流转于至少一个本文档来自技高网
...
利用流表转发数据的方法及系统

【技术保护点】
一种利用流表转发数据的方法,其特征在于,包括:根据数据的业务类型预设由至少一个流表所构成的虚拟流转路径;根据所接收数据的业务类型选择一个虚拟流转路径,并根据所接收的数据在所选择的虚拟流转路径中流转时所得到的各流表的值,选择下一虚拟流转路径,直至所选择的虚拟流转路径中的最后一个流表的属性为不可跳转,则根据所述最后一个虚拟流转路径中各流表的值对所接收的数据予以转发。

【技术特征摘要】

【专利技术属性】
技术研发人员:李铭梁
申请(专利权)人:上海斐讯数据通信技术有限公司
类型:发明
国别省市:上海;31

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

1