[发明专利]一种实时获取SDN交换机流表空间占有率的方法在审
申请号: | 201611229366.1 | 申请日: | 2016-12-27 |
公开(公告)号: | CN106850438A | 公开(公告)日: | 2017-06-13 |
发明(设计)人: | 黄以华;贺广淋 | 申请(专利权)人: | 中山大学 |
主分类号: | H04L12/741 | 分类号: | H04L12/741;H04L12/755 |
代理公司: | 广州粤高专利商标代理有限公司44102 | 代理人: | 林丽明 |
地址: | 510275 广东*** | 国省代码: | 广东;44 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 实时 获取 sdn 交换机 空间 占有率 方法 | ||
技术领域
本发明涉及软件定义网络(SDN)技术领域,尤其涉及一种能准确实时获取SDN交换机流表空间占有率的方法。
背景技术
随着时代的进步,在信息化浪潮的推动下,传统网络已不能满足人们的日益需求。为更好更快更灵活的部署网络以及提升用户体验,就需要对传统网络做一些改进,于是提出了软件定义网络SDN(Software-Defined Network)。SDN是一种新型的网络架构,它在传统网络架构的基础上面做了这些创新:1、数据平面与控制平面解耦合;2、集中化的网络控制;3、灵活的可编程开发接口。
SDN网络架构包括:SDN交换机,南向协议,SDN控制器,北向接口,上层应用等。传统网络的控制功能全部集中到远程的SDN控制器上面,而SDN交换机只负责转发,SDN网络中的转发是基于流的,控制器会下发流表项给交换机,交换机根据这些流表项来匹配转发数据流,所以控制器与交换机之间要建立安全通道来相互通信,于是就有了OpenFlow协议(南向协议)。OpenFlow协议负责建立连接,并提供相应的消息机制来控制和管理交换机。
在SDN中,每当有新的数据流进入交换机,交换机会向控制器发送Packet_In消息来询问控制器,该数据流该如何处理。控制器经过计算后,会生成一条流表项,并将流表项封装入Flow_Mod消息中并下发给交换机。交换机里面的流表项都有自己的生存时间,当流表项被删除后,交换机就会向控制器发送Flow_Removed消息来通知控制器该流表项已被删除。
由于数据包需要匹配的域越来越多,为了加速匹配,我们就采用TCAM,虽然匹配速度提上去了,可是由于TCAM的高成本与高功耗,导致交换机的流表空间有限,所以要动态删除部分流表项来缓解有限的流表空间资源,当网络突然出现了很多新数据流时,流表空间很有可能会溢出,并阻塞数据包,有可能造成交换机无法正常工作。此时我们需要实时的获取流表空间占有率来调整流表项删除策略,使流表项总数在一个安全的范围内波动,防止因流表溢出导致交换机出错。
发明内容
为了解决上述目的,本发明提出了一种能准确实时获取SDN交换机流表空间占有率的方法。
为实现上述目的,本发明的技术方案为:
一种实时获取SDN交换机流表空间占有率的方法,包括以下步骤:
步骤1:交换机初始化,此时交换机的两个参数也会被初始化:固定不变的流表项空间总容量C(SDN交换机的容量在出厂时就已经固定了),统计流表空间中存储的流表项总数的计数器counter;
步骤2:控制器与交换机建立连接,控制器中生成两个参数并初始化:控制器中记录交换机流表空间总容量的参数V和记录交换机中流表空间存储的流表项总数的参数C_counter;
步骤3:控制器等待交换机发送Packet_In请求,并更新控制器中的C_counter;
步骤4:交换机等待控制器下发流表项,并立即更新交换机中的counter;
步骤5:在等待的同时可能会有流表项的删除,此时更新counter,并更新控制器中的C_counter;
步骤6:计算流表空间占有率(C_counter/V或counter/V);
在上述的准确实时获取SDN交换机流表空间占有率方法中,所述步骤1中的交换机初始化如下:
每个刚接入SDN架构的交换机都会有一个自己的初始化,这个初始化过程会把统计流表空间中存储的流表项总数的参数counter置为零,容量置为C,此时交换机里面没有流表项。
步骤2中控制器与交换机建立连接并初始化参数如下:
当有交换机接入SDN架构时,控制器会发现有交换机接入,并与交换机建立OpenFlow安全通道用于两者通信。控制器会向交换机下发询问交换机特性的OFPT_FEATURES_REQUEST消息,交换机收到消息后会把包括容量C与流表项统计值counter等参数封装成一个OFPT_FEATURES_REPLY类型的消息反馈给控制器。控制器解析这些数据并保存,把交换机反馈的参数C值和counter值分别赋给控制器的参数V和参数C_counter,这样就完成了控制器中记录交换机总容量V和交换机流表项总数C_counter的初始化。
步骤3中的更新控制器的C_counter参数如下:
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于中山大学,未经中山大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201611229366.1/2.html,转载请声明来源钻瓜专利网。