[发明专利]一种OpenFlow流表处理无效数据包的方法在审
申请号: | 201610129295.1 | 申请日: | 2016-03-08 |
公开(公告)号: | CN105791129A | 公开(公告)日: | 2016-07-20 |
发明(设计)人: | 郝鹏;于治楼;郑亮 | 申请(专利权)人: | 浪潮集团有限公司 |
主分类号: | H04L12/741 | 分类号: | H04L12/741 |
代理公司: | 济南信达专利事务所有限公司 37100 | 代理人: | 姜明 |
地址: | 250101 山东*** | 国省代码: | 山东;37 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 openflow 处理 无效 数据包 方法 | ||
技术领域
本发明具体涉及网络协议开发领域,具体的说就是一种OpenFlow流表处理无效数据包的方法。
背景技术
OpenFlow是一种新型网络交换模型,OpenFlow网络由OpenFlow交换机、FlowVisor(网络虚拟化层)和Controller(控制器)三部分组成。OpenFlow交换机是整个OpenFlow网络的核心部件,主要管理数据层的转发;FlowVisor对网络进行虚拟化;Controller对网络进行集中控制,实现控制层的功能。
OpenFlow交换机由FlowTable(流表)、SecureChannel(安全通道)和OpenFlowProtocol(协议)三部分组成。FlowTable流表:由很多个流表项组成,每个流表项就是一个转发规则。进入交换机的数据包通过查询流表来获得转发的目的端口。流表项由头域、计数器和操作组成;其中头域是个十元组,是流表项的标识;计数器用来计算流表项的统计数据;操作标明了与该流表项匹配的数据包应该执行的操作。OpenFlow协议:用来描述控制器和OpenFlow交换机之间交互所用信息的标准,以及控制器和OpenFlow交换机的接口标准。协议的核心部分是用于OpenFlow协议信息结构的集合。
OpenFlow协议支持三种信息类型:Controller-to-Switch,Asynchronous和Symmetric,每一个类型都有多个子类型。Controller-to-Switch信息由控制器发起并且直接用于检测交换机的状态。Asynchronous信息由交换机发起并通常用于更新控制器的网络事件和改变交换机的状态。Symmetric信息可以在没有请求的情况下由控制器或交换机发起。在目前的OpenFlow协议的版本中,对于在流表中未查询到转发路径的数据包进行简单的丢弃处理或者上传至SDN(SoftwareDefinedNetwork,软件定义网络)控制器进行处理,但是这两种方式都存在可靠性与效率比较低的问题。
发明内容
本发明针对现有技术存在的不足之处,提供了一种OpenFlow流表处理无效数据包的方法。
本发明所述一种OpenFlow流表处理无效数据包的方法,解决上述技术问题采用的技术方案如下:所述一种OpenFlow流表处理无效数据包的方法,其主要步骤包括:1)数据包进入交换机,交换机根据OpenFlow流表查询数据包转发出口;2)查询OpenFlow流表是否存在命中转发出口条目,存在转发出口条目的数据包为有效数据包,否则为无效数据包;3)交换机按照流表规则对有效数据包进行转发,同时交换机记录无效数据包的目的MAC地址并存储该数据包;4)交换机每间隔一定时间检查OpenFlow流表的更新;6)如果OpenFlow流表更新,则查看无效数据包是否存在转发路径,并根据查询结果进行数据包的处理;该方法基于软件技术对流程进行控制,基于硬件TCAM技术进行快速查询,通过软、硬件的协同工作,来实现对OpenFlow协议下无效数据包的缓存处理。
优选的,交换机执行多级OpenFlow流表查询,查询当前数据包的出口端口。
优选的,交换机将无效数据包的目的地址记录在TCAM(TernaryContentAddressableMemory)表项中。
优选的,在TCAM表项中,记录的每条目的MAC地址会对应一个地址指针,该地址指针指向一个链表的入口,每个链表的节点为一个数据包结构,用来存储无效数据包。
优选的,如果OpenFlow流表有更新,则交换机筛选出更新过的条目,对TCAM表进行查询,以确认原来不存在转发出口的目的MAC地址是否被更新到OpenFlow流表中。
优选的,如果在TCAM表项中有命中条目,则交换机读取命中条目所对应的地址指针,并将地址指针对应的无效数据包链表中的数据包按照OpenFlow流表规则进行转发。
优选的,如果在TCAM表项中不存在命中条目,则交换机查询该条目的MAC地址在TCAM表项中被查询的未命中次数是否超过阈值,如果超过阈值,则清空该条目表项对应的地址指针指向的链表。
优选的,如果在TCAM表项中不存在命中条目,则交换机查询该条目的MAC地址在TCAM表项中被查询的未命中次数是否超过阈值,如果未超过阈值,则交换机重新执行OpenFlow流表的更新检查。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于浪潮集团有限公司,未经浪潮集团有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201610129295.1/2.html,转载请声明来源钻瓜专利网。