摘要
在新兴的软件定义网络(Software Defined Networking,SDN)、OpenFlow交换机中,为满足OpenFlow协议宽匹配域的需求,SDN交换设备需要更大的查找表存储容量.当流表溢出时,将导致控制报文数目爆炸性增长、数据包传输时延增大等危害网络正常运行的后果.然而考虑成本因素,高速查找表容量不可能无限增加.即使单纯地增加流表容量,并不能使溢出的概率降低为零,且极不经济.本文分析了网络流量的特征,提出了一种流表共享方法(Flow Table Sharing,FTS),针对流表溢出现象带来的危害,完善了Table-Miss处理机制,有效遏制了由于流表溢出而引发的危害网络正常运行的情况.相比目前的Table-Miss处理方式,FTS对流表溢出情况下控制消息数量和RTT时间的优化都达到两个数量级.此外,该文针对流表扩散方法设计了简单高效的基于OpenFlow组表的随机路由选择算法,系统结构实施简单,可以方便地降级为现行的通用Table-Miss处理模式.
Software Defined Networking is an emerging network architecture,which decouples the control plane from the data plane and operates the global network with elaborate abstraction.The flow table plays an important role in an OpenFlow Switch(OFS)and is the key resource to support the SDN/OpenFlow abstraction.To provide wire-speed processing,fast memory(e.g.,TCAM,QDR,SRAM)is utilized to form the flow table.Unfortunately,the development of such kind of fast memories is far behind the hungry requirement on its usage,especially for the TCAM.As a result,the flow table installed in OFS has tremendous risk to be overflow,possibly leading to large quantity of Packet-In/Packet-Out messages between OFS and controller.Generally,an incoming packet from a flow is processed according to the action specified in the according flow entry in the flow table(s).If no entry is matched in the flow table,a packet-in message querying how to process the packet will be sent to the controller from the switch.If the number of active flows always touches the maximum number of entries in the flow table,the table-miss events are not avoidable.So that at first we investigate how to mitigate the overhead when occurring table-miss events based on the phenomenon of uneven flow table distribution.The basic idea is to distribute the packets facing table-miss event in heavily loaded switch to other lightly loaded switches instead of triggering packet-in messages always in hot switches.The conceptual simplicity of FTS idea hides two significant challenges.(1)How to select a right port randomly by SDN switch.(2)How to make this progress“pipeline-able”in a general SDN switch without changing its Hardware.The new mechanism proposed in this paper to handle the Table-Miss event is named Flow Table Sharing(FTS).The evaluations have demonstrated that FTS reduces both control messages quantity and RTT time by two orders of magnitude compared to current state-of-the-art OpenFlow Table-Miss handler.We first build a switch in MININET(test environment),and measure the number of control messages generated by setting up a new flow transfer(TCP,UDP)when the flow table of the switch is overflow,as well as the packet loss rate and the average delay.Then,we evaluate the flow table demand in the optimal way that all switches have enough flow table resources and set this result as the control group.Then,on the one hand,we evaluate the additional flow table demand which is required by rebuilding the interrupted flow,when the FTS try to fix the problem caused by the overflow.On the other hand,we evaluate the total flow table consumption which is required by building the new transmission for the first time,after the overflow happened.Even during the flow table overflow period,denial of service for new flows does not happen.We designed an external user switch-computed Group Table select algorithm and show its validity and fastness.It is easy to implement,easy to control and the current state-of-the-art OpenFlow Table-Miss handler is a special case of FTS.
作者
乔思祎
胡成臣
李昊
管晓宏
邹建华
QIAO Si-Yi;HU Cheng-Chen;LI Hao;GUAN Xiao-Hong;ZOU Jian-Hua(Ministry of Education Key Lab for Intelligent Network and Network Security,Xi’an Jiaotong University,Xi’an 710049;Science and Technology on Information Transmission and Dissemination in Communication Network Laboratory,Shijiazhuang 050081)
出处
《计算机学报》
EI
CSCD
北大核心
2018年第9期2003-2015,共13页
Chinese Journal of Computers
基金
国家自然科学基金(61272459)
国家"八六三"高技术研究发展计划项目(2013AA013501)
教育部新世纪人才计划(NCET-13-0450)
通信网络信息传输与分发技术重点实验室开放课题(ITD-U15004/KX152600013)资助~~