[发明专利]一种基于软件定义网络的保持流表更新一致性的方法有效
申请号: | 201210445421.6 | 申请日: | 2012-11-09 |
公开(公告)号: | CN102946365A | 公开(公告)日: | 2013-02-27 |
发明(设计)人: | 李勇;苏厉;周烨;杨旭;金德鹏;曾烈光 | 申请(专利权)人: | 清华大学 |
主分类号: | H04L12/937 | 分类号: | H04L12/937 |
代理公司: | 北京路浩知识产权代理有限公司 11002 | 代理人: | 王莹 |
地址: | 100084 北京市*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 基于 软件 定义 网络 保持 更新 一致性 方法 | ||
技术领域
本发明涉及互联网领域,特别涉及一种基于软件定义网络的保持流表更新一致性的方法。
背景技术
基于OpenFlow协议的软件定义网络(SDN)技术,其核心特点是实现数据平面和控制平面的解耦:数据平面由OpenFlow交换机、主机终端等组成;控制平面则是由控制器对全网进行集中式控制。具体地,各个交换机根据本地的流表来进行数据包的转发,而具体的流表则由控制器控制;另外,如果交换机遇到新的数据包,需要将其通过控制平面上传给控制器,由控制器决定如何处理。这样,控制器通过对OpenFlow网络中各个交换机中流表的控制,实现对整个数据平面的数据转发。
在SDN网络中,各种网络配置和网络事件都有可能引起交换机中的流表更新,现有的技术方案是从控制器向多个交换机分别写入对应流表;那么,这些交换机中的流表将在不同时间点上进行更新,使得网络中某一时间段内同时存在新旧两套流表规则,从而可能导致数据包的丢失或者错误转发。
然而,对于如何保持流表更新的一致性,目前尚未有成熟且大规模部署的技术方案。所谓的流表更新一致性是指:SDN网络中的流表从一套旧流表更新为一套新流表,每一个数据包在传输过程中,或者一直接受旧流表的控制,或者一直接受新流表的控制,不能依次接受旧流表、新流表的控制。目前,研究者针对该问题主要提出两种技术方案:
a)基于虚拟局域网(VLAN)技术的流表更新一致性方法:核心思想是利用VLAN技术来区分新旧两套流表。在SDN网络中,首先将旧流表控制的数据包打上一个VLAN标签,例如VLAN=0;其次,在各个交换机中写入新流表时,规定新流表只能处理具有另一个VLAN标签的数据包,例如将新VLAN标签设置为VLAN=1;再次,当所有交换机都成功写入带有VLAN=1的新流表后,将网络中数据包的VLAN标签从0更新到1,从而使得新的流表生效,旧流表失效。旧流表失效后,再通过控制器进行逐一删除。总之,该方法将新旧两套流表与2个VLAN标签分别对应,通过改变网络中数据包的VLAN标签来实现流表更新过程,并保证更新一致性。该方法有一个重要假设,通过控制器的一次指令即可实现相应数据包的VLAN标签更改。例如,所有数据包都是从第1个交换机进入,再向其他交换机传输。那么,只需在第1个交换机上进行数据包VLAN标签更改即可。
b)基于中间流表的流表更新一致性方法:核心思想是引入中间流表。首先,基于新旧两套流表,构造一套中间流表,将所有通过网络的数据包都上传给控制器缓存或者处理;然后,在各个交换机中写入中间流表,并等待一个全网最长端到端网络延时;接着,在各个交换机中写入新流表,并将上传至控制器缓存或者尚未处理的数据包发回网络中,这样在一个全网最长端到端网络延时后,流表更新过程完成。由于引入中间流表,新旧两套流表不会同时出现在各个交换机上,这就保证了流表更新过程的一致性。
在上述两种技术方案,方案1更新时间短,但是由于同时存在新旧两套流表而占用更多流表资源;另外,由于引入VLAN,方案1增加了网络管理的复杂度和工作量;方案2由于网络中任何时刻各个交换机中都只存在一套流表,因此流表资源消耗较少,但是需要较长的更新时间,另外,由于将网络流量上传给控制器处理或者缓存,对控制平面的带宽资源、控制器的负载有额外消耗。
因此,随着SDN网络规模的扩大,现有技术仍有待于提高。
发明内容
针对现有技术的不足,本发明提出一种基于软件定义网络的保持流表更新一致性的方法,以达到在SDN网络中流表更新时不必利用VLAN技术,且可以缩短更新时间、减少控制平面负载的目的。
本发明通过以下技术方案予以实现:
一种基于软件定义网络的保持流表更新一致性的方法,包括以下步骤:
A:控制器分析流表中的新流表规则及旧流表规则,确定需要更新流表的交换机的集合;将所述需要更新流表的交换机分为初始交换机及后继交换机;并将需要进行更新的流表分为共同流表、待新增流表、待修改流表和待删除流表;
B:在所述初始交换机中,各个交换机将其受更新流表过程影响的数据包,通过控制平面上传到控制器;
C、控制器在所述后继交换机中写入待新增流表;
D、控制器在等待一个全网端到端的延时后,在所述后继交换机中写入待修改流表,并删除待删除流表;
E、控制器对所述初始交换机中的流表进行更新。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于清华大学,未经清华大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201210445421.6/2.html,转载请声明来源钻瓜专利网。
- 上一篇:斗杆与铲斗的连接机构
- 下一篇:成花素激活复合物