当前位置: 首页 > 专利查询>清华大学专利>正文

一种SDN的数据包转发方法及装置制造方法及图纸

技术编号:14984139 阅读:58 留言:0更新日期:2017-04-03 15:15
本发明专利技术提供一种SDN的数据包转发方法及装置,方法包括:核心交换机接收入口交换机发送的数据包后,当数据包中的第一个协议头中的特征标志位与预设匹配、动作表项指针的值范围小于等于预设范围时,根据第一个协议头中的第一个动作表项指针获取到动作表项,以获得转发动作,后删除第一个动作表项指针;第一个协议头包括:特征标志位、与各交换机(转发路径上的)对应的各动作表项指针(包括动作表项的存储地址);各动作表项指针在第一个协议头中,按照转发路径上的第一交换机的顺序依次排列。交换机由于根据数据包中的动作表项指针索引动作表项,因此摆脱了对TCAM的依赖,解决了使用TCAM所带来的问题。

【技术实现步骤摘要】

本专利技术涉及一种SDN的数据包转发方法及装置
技术介绍
传统的网络设备和网络管理技术已经不能满足互联网在云计算,网络功能虚拟化等方面的需求。除此之外,传统网络架构还存在可扩展性差,厂商锁定和管理难度大等方面的问题,这大大限制了互联网的发展。为解决上述问题,人们提出软件定义网络的概念。在这种新型网络体系架构中,数据平面和控制平面分离,控制平面通过开放的标准化南向接口对数据平面进行控制,并为应用层提供网络管理相关的北向接口,使网络管理员可以通过编程灵活实现网络的自动化配置和管理。另一方面,软件定义网络中的集中式控制平面也可以为网络管理员提供更细粒度的流量监控机制和管理机制。OpenFlow协议是软件定义网络第一个标准化的南向接口通信协议,并且得到了广泛的应用。OpenFlow协议通过控制平面的控制器控制流表和管理数据平面的转发行为。OpenFlow协议以流为单位对网络流量进行量化,每一条流都有与之对应的匹配域(该匹配域在TCAM中),指令域和计数器。流的匹配域,动作域和计数器组成了流表项,位于同一个数据平面的所有流表项组成该数据平面的流表。控制平面(采用控制器)通过OpenFlow协议可以对流表项进行添加,修改和删除等。在现有SDN(软件定义网络)中,控制器需要将每一个流的转发流表项下发到该流转发路径上的每一个交换机中。对于需要双向通信的流来说,每个流需要控制器下发2N次流表项。N为转发路径中交换机的数量。硬件SDN交换机中使用TCAM作为硬件匹配模块,在TCAM中需要存储所有经过该SDN交换机的流的匹配域,控制器流表设置次数过多会造成流表设置的延迟和TCAM中流表插入延迟增加,影响整个网络的性能。但是TCAM作为一种成本很高的硬件模块,通过增加TCAM模块规模的方法来满足对流表大小的需求会造成系统整体成本的增加;除此之外,TCAM在运行时会能耗较大,如果在SDN交换机中使用大量TCAM会大大增加网络运行时的能源消耗,提升系统的运营成本。因此,本专利技术需要提供一种解决上述问题的SDN的数据包转发方法。
技术实现思路
本专利技术提供一种SDN的数据包转发方法及装置,本专利技术摆脱了硬件SDN交换机对TCAM的依赖,解决了网络流量的高速转发、TCAM造成的流表大小和能耗等问题,从而降低了系统成本。第一方面,本专利技术提供一种SDN的数据包转发方法,包括:核心SDN交换机接收入口边缘SDN交换机发送的数据包;判断数据包中的第一个协议头中的特征标志位是否与预设的特征标志位匹配;若匹配,则判断所述第一个协议头中动作表项指针的值是否为预设值;若否,则根据所述数据包中的第一个协议头中的第一个动作表项指针,判断是否获取到动作表项;若获取到,则根据所述动作表项中的转发动作,将所述数据包转发至下一跳SDN交换机,并在所述第一个协议头中删除所述第一个动作表项指针;所述第一个协议头包括:特征标志位、与各第一SDN交换机对应的各动作表项指针;所述动作表项指针包括动作表项在第一SDN交换机的动作表中的存储地址,所述动作表项为存储有所述第一SDN交换机转发动作的表项,所述第一SDN交换机为SDN架构中控制器预先存储的转发路径上的SDN交换机;各动作表项指针在所述第一个协议头中,按照所述转发路径上的第一SDN交换机的顺序依次排列。进一步地,判断是否获取到所述动作表项之后,所述方法还包括:若未获取到,则将所述数据包转发至控制器。进一步地,判断所述第一个协议头中动作表项指针的值是否为预设值之后,所述方法还包括:若是,则将所述数据包转发至控制器。进一步地,判断第一个协议头中的特征标志位是否与预设的特征标志位匹配之后,所述方法还包括:若不匹配,则将所述数据包转发至控制器。进一步地,所述方法还包括:出口边缘SDN交换机接收到核心SDN交换机发送的数据包时,判断数据包中第一个协议头中的特征标志位是否与预设的特征标志位匹配;若匹配,则判断所述第一个协议头中动作表项指针的值是否为预设值;若否,则根据所述数据包中的第一个协议头中的第一个动作表项指针,判断是否获取到动作表项;若获取到,则根据所述动作表项中的转发动作将所述数据包转发至下一跳SDN交换机,并在所述第一个协议头中删除所述第一个动作表项指针。进一步地,所述方法还包括:在所述数据包中删除所述第一个协议头。进一步地,判断是否获取到所述动作表项之后,所述方法还包括:若未获取到,则将所述数据包转发至控制器。进一步地,判断第一个协议头中的特征标志位是否与预设的特征标志位匹配之后,所述方法还包括:若不匹配,则将所述数据包转发至控制器。进一步地,核心SDN交换机接收入口边缘SDN交换机发送的数据包之前,所述方法还包括:入口边缘SDN交换机接收数据包;根据预先存储的添加动作信息,向所述数据包中添加所述第一个协议头,并按照预设策略将所述数据包转发至核心SDN交换机;所述添加动作信息包括:第一个协议头添加动作命令和第一个协议头内容。第二方面,本专利技术还提供一种SDN的数据包转发装置,包括:数据包接收单元,核心SDN交换机接收入口边缘SDN交换机发送的数据包;第一判断单元,判断数据包中的第一个协议头中的特征标志位是否与预设的特征标志位匹配;第二判断单元,若匹配,则判断所述第一个协议头中动作表项指针的值是否为预设值;第三判断单元,若所述第一个协议头中动作表项指针的值不是预设值,则根据所述数据包中的第一个协议头中的第一个动作表项指针,判断是否获取到动作表项;转发单元,若获取到,则根据所述动作表项中的转发动作,将所述数据包转发至下一跳SDN交换机,并在所述第一个协议头中删除所述第一个动作表项指针;所述第一个协议头包括:特征标志位、与各第一SDN交换机对应的各动作表项指针;所述动作表项指针包括动作表项在第一SDN交换机的动作表中的存储地址,所述动作表项为存储有所述第一SDN交换机转发动作的表项,所述第一SDN交换机为SDN架构中控制器预先存储的转发路径上的SDN交换机;各动作表项指针在所述第一个协议头中,按照所述转发路径上的第一SDN交换机的顺序依次排列。由上述技术方案可知,本专利技术的SDN交换机根据接收到的数据包中的动作表项指针在动作表中索引动作表项,从而获得转发动作本文档来自技高网
...

【技术保护点】
一种SDN的数据包转发方法,其特征在于,包括:核心SDN交换机接收入口边缘SDN交换机发送的数据包;判断数据包中的第一个协议头中的特征标志位是否与预设的特征标志位匹配;若匹配,则判断所述第一个协议头中动作表项指针的值是否为预设值;若否,则根据所述数据包中的第一个协议头中的第一个动作表项指针,判断是否获取到动作表项;若获取到,则根据所述动作表项中的转发动作,将所述数据包转发至下一跳SDN交换机,并在所述第一个协议头中删除所述第一个动作表项指针;所述第一个协议头包括:特征标志位、与各第一SDN交换机对应的各动作表项指针;所述动作表项指针包括动作表项在第一SDN交换机的动作表中的存储地址,所述动作表项为存储有所述第一SDN交换机转发动作的表项,所述第一SDN交换机为SDN架构中控制器预先存储的转发路径上的SDN交换机;各动作表项指针在所述第一个协议头中,按照所述转发路径上的第一SDN交换机的顺序依次排列。

【技术特征摘要】
1.一种SDN的数据包转发方法,其特征在于,包括:
核心SDN交换机接收入口边缘SDN交换机发送的数据包;
判断数据包中的第一个协议头中的特征标志位是否与预设的特征
标志位匹配;
若匹配,则判断所述第一个协议头中动作表项指针的值是否为预
设值;
若否,则根据所述数据包中的第一个协议头中的第一个动作表项
指针,判断是否获取到动作表项;
若获取到,则根据所述动作表项中的转发动作,将所述数据包转
发至下一跳SDN交换机,并在所述第一个协议头中删除所述第一个动
作表项指针;
所述第一个协议头包括:特征标志位、与各第一SDN交换机对应
的各动作表项指针;所述动作表项指针包括动作表项在第一SDN交换
机的动作表中的存储地址,所述动作表项为存储有所述第一SDN交换
机转发动作的表项,所述第一SDN交换机为SDN架构中控制器预先
存储的转发路径上的SDN交换机;各动作表项指针在所述第一个协议
头中,按照所述转发路径上的第一SDN交换机的顺序依次排列。
2.根据权利要求1所述的方法,其特征在于,判断是否获取到所
述动作表项之后,所述方法还包括:
若未获取到,则将所述数据包转发至控制器。
3.根据权利要求1所述的方法,其特征在于,判断所述第一个协
议头中动作表项指针的值是否为预设值之后,所述方法还包括:
若是,则将所述数据包转发至控制器。
4.根据权利要求1所述的方法,其特征在于,判断第一个协议头
中的特征标志位是否与预设的特征标志位匹配之后,所述方法还包括:
若不匹配,则将所述数据包转发至控制器。
5.根据权利要求1所述的方法,其特征在于,所述方法还包括:
出口边缘SDN交换机接收到核心SDN交换机发送的数据包时,
判断数据包中第一个协议头中的特征标志位是否与预设的特征标志位
匹配;
若匹配,则判断所述第一个协议头中动作表项指针的值是否为预
设值;
若否,则根据所述数据包中的第一个协议头中的第一个动作表项
指针,判断是否获取到动作表项;
若获取到,则根据所述动作表项中的转发动作将所述数据包转发
至下一跳SDN交换机,并在所述第一个协议头中删...

【专利技术属性】
技术研发人员:毕军刘冰洋周禹
申请(专利权)人:清华大学
类型:发明
国别省市:北京;11

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

1