论文部分内容阅读
随着通信技术与互联网的飞速发展,网络规模和应用需求的大幅增长与现有网络的服务能力及环境的矛盾变得日益显著。网络带宽的持续攀升、网络业务的丰富化、个性化等都向构建互联网基础架构的交换机和路由器提出了更高要求。然而,现有网络设备的功能依赖于封闭硬件的特性,导致其难以适应新功能新业务的多样化需求。针对上述情况,软件定义网络(Software-Defined Networking,SDN)提出了全新的探索思路:将网络设备的控制平面与数据平面解耦合,网络的控制功能由统一的控制器完成,实现网络的集中化控制。网络交换设备实仅现数据转发的功能,构成SDN的数据面。控制器与交换机之间采用开放的可编程接口,构建动态、开放、可控的网络环境。因此,SDN作为一项新兴的网络技术,正受到学术界和工业界的持续关注。作为构建SDN网络的基础设施,SDN数据面根据上层的数据转发规则,完成高速的业务处理与数据转发,是影响整个网络的性能的关键所在。随着网络带宽的高速发展以及不同新型业务的出现,需要SDN数据面满足高带宽、大容量、更精细的流识别与服务质量保障等需求。本文重点研究SDN的数据面,从数据面的功能结构出发,结合实际工程应用的需要,对高带宽环境下SDN数据面对输入业务进行线速处理的若干关键技术和相关问题进行研究。论文的主要工作和取得的研究成果如下:1.研究了SDN多级流表的构建问题。针对SDN中流表规模的扩张以及流表存储资源利用率低效的问题,提出一种两步式多级流表构建算法。第一步基于流表中不同的流类别对匹配域进行拆分,简化不同流类别之间的通配表项;第二步根据匹配域的重复率对流表进行正交分解,进一步压缩了流表中的冗余表项。仿真表明,该算法能够压缩60%以上的流表存储空间,并且能够达到100Gbps的线速处理能力。2.研究了SDN数据面中的高速分组分类问题。针对现有方法无法对范围匹配提供较好支持的问题,提出一种支持范围匹配的分组分类算法(RSBV)以及一种支持任意字段匹配的高速分组分类算法(AFBV)。RSBV算法首先分析了范围匹配的特点,将范围匹配规则集进行分级预编码并存储在存储器中。在查找时,根据各个子字段的查找结果进行布尔运算得出最终的匹配结果。在此基础上,AFBV算法结合了RSBV算法和二维流水结构的Stride BV算法,将规则的匹配域分为不同的类型并进行并行处理,从而能够支持精确匹配,前缀匹配,范围匹配以及任意位置掩码匹配等多种字段类型。两种算法都能够通过二维流水的硬件架构,提高数据处理速度。仿真结果表明,对于位宽为512 bit,共1K条规则的规则集,AFBV算法的数据吞吐率能够达到520MPPS。相对于对比方法,本文算法在有效支持范围匹配的基础上,数据吞吐率提高了37%~44%,相对于TCAM功耗降低了43%。3.研究了SDN数据面中,共享缓存虚拟输出排队的场景下的高性能队列管理问题。这部分研究主要包括以下两方面内容。第一,针对共享缓存交换结构中,在突发流量下多队列的公平性问题,采用了一种共享-保障队列管理机制(SPQM)。其核心思想是将存储空间分为共享区和保障区。每个端口具有自己的保障缓存区,不能被其他端口使用。共享区的存储空间被所有端口所共享。为分析SPQM机制的性能,使用排队理论对缓存分区问题进行形式化描述,并推导得出闭合形式的公式。通过数值分析,可求解出近似最优化的缓存分区方案。仿真结果表明SPQM机制相对于对比方法,能够在非均匀业务流量场景下降低系统的总体阻塞概率。此外,我们在基于FPGA的以太网交换平台上验证了该方法的性能,表明该方法具有时间复杂度低,易于硬件实现的优点。第二,在多优先级队列的场景下,研究了面向多优先级队列的服务质量保障(QoS)优化问题。为了实现共享缓存的高效利用,同时为不同优先级队列提供区分服务,提出一种基于优先级门限反压的QoS优化方法(BQOM)。其主要思想是在入队端增加基于反压机制的优先级门限。当较高优先级流量较大时,主动抑制较低优先级的入队流量,保证高优先级流量得到更好服务从而降低系统总体的阻塞概率。利用排队理论对系统进行建模与分析,并得出最优化的优先级门限划分方法。仿真结果表明,该方法能够在降低系统的总体阻塞概率的同时,增加缓存利用率。此外,我们在FPGA上实现了该方法,并通过一个具体的接入网络案例进一步验证了其性能。测试结果表明该方法在实际网络中运行效果良好。4.研究了SDN数据面中高速大容量分组缓存的问题。首先,针对高性能SDN交换机对于高速大容量数据包缓存的需求,设计了一种并行混合的SRAM/DRAM分组缓存架构。此外,为实现高速缓存空间的有效利用并优化片外DRAM的带宽利用率,提出一种超时触发的动态缓存管理算法(DMA-HT)。该算法为每个队列动态分配缓存,并增加一个超时字段,用于控制每个队列在缓存中的停滞时间。为分析算法性能,使用排队理论对所提算法进行建模,并对多项性能指标进行了定量分析。通过理论分析,可以在多种流量场景下,得出停滞超时时间的最优解。软件仿真与FPGA验证结果表明,该算法能够有效降低系统的丢包率与时延,并能够在最坏情况下,将DRAM的带宽利用率提高2.1倍。