基于CICQ结构的交换机建模与仿真

2015-08-07 12:11赵晓辉王晓婷王忆文
微处理机 2015年5期
关键词:伯努利队列交换机

赵晓辉,徐 川,王晓婷,彭 春,王忆文

(1.成都华微电子科技有限公司,成都610041;2.电子科技大学微电子与固体电子学院,成都610054)

基于CICQ结构的交换机建模与仿真

赵晓辉1,徐 川2,王晓婷2,彭 春2,王忆文2

(1.成都华微电子科技有限公司,成都610041;2.电子科技大学微电子与固体电子学院,成都610054)

利用OPNET软件完成了基于CICQ交换结构和LQD_RR调度算法的交换机模型构建,并且在交换机工作的真实环境基础上,使用OPNET模拟了交换机外围的节点和进程模型,最后在不同流量模型下完成了交换机的仿真。通过分析仿真结果对交换结构以及算法进行评估,方便后期的硬件设计,避免在硬件设计过程中因算法可行性分析不充分而影响整个设计流程。

交换机模型;光纤通道;OPNET软件;CICQ结构;调度;仿真

1 引 言

近来,互联网的发展历经了一个飞速增长的过程,基于互联网的各种技术也随之应运而生,这些技术对带宽、服务质量等要求不断提升,现有的交换机技术在这些方面都面临严峻挑战,设计出新一代的高速交换机势在必行。

在交换机设计中,要针对各种各样的应用环境进行分析,根据应用环境来调整交换机的核心算法,这里需要一个平台评估核心算法在各种环境下的实现效果。对于交换机性能研究的方法主要有三种[1]:现场实验、数学理论分析、仿真模拟。与其他二种研究方式比较,仿真模拟在交换机性能的分析中操作简便而且结果可靠同时可以节省资金,因此,在交换算法的研究中仿真模拟的方法使用得越来越广泛。

目前的仿真模拟主要是利用OPNET、NS、SIM等软件或者自己编写仿真系统进行仿真[2-3],其中NS、SIM为开源软件,OPNET为商用软件。相比开源软件而言,OPNET的功能更为强大,界面友好,且能完成全面的仿真建模以及对各种协议的支持,在数据网络、通信领域都已经得到了广泛的使用与认可。因而本研究采用OPNET软件针对交换机的结构算法进行仿真模拟。在建模完成后针对伯努利均匀分布、突发均匀分布、伯努利对角分布、伯努利弱对角分布、伯努利热点分布等五种流量模型对交换机进行了验证,最终为实现一种低延迟、高吞吐率、高带宽利用率的交换机提供了理论依据。

2 交换机结构介绍

如图1所示,研究的对象为一种FC(Fiber Cha-nnel)交换机,FC交换机由线卡、切片重组单元、交换单元、Power PC单元四个功能单元组成。

图1 交换机整体架构

线卡单元包括FC交换机的物理层数据传输,以及完成传输协议和数据帧的接收发送。切片重组单元是为了方便交换单元的调度,将变长的FC帧切分为定长的内部帧并发送到交换单元,接收到交换单元发送的内部帧后将内部帧重组为FC帧并发送到线卡。交换单元负责将输入端口的内部帧通过交换结构,按照调度策略转发到输出端口。Power PC单元是FC交换机的微处理器部分,负责线卡的登录、注销、路由表更新等功能。

交换单元采用CICQ(输入及交叉点联合排队)的交换结构,其整体结构如图2所示,一个N×N的CICQ交换结构由N个输入/输出端和带交叉点缓存的Crossbar组成[4]。在CICQ结构下交换机的输入端和输出端都使用调度器完成数据包的调度。输入端调度主要完成根据调度规则将虚拟缓存队列队头的数据包发送到对应的交叉结点缓存队列中;输出端调度主要完成根据调度规则将交叉节点缓存中的数据包发送到输出端口。本文中输入调度器采用LQD_RR的调度算法,输出调度器采用RR调度算法,实现了性能和硬件实现难易的平衡。

图2 CICQ交换结构

在交换机建模仿真过程中,因为主要针对交换机的性能进行仿真,即针对交换机的核心单元,交换结构与调度算法进行仿真,所以在后文的建模过程中,将用来实现交换机功能而对其性能影响较小的切片重组、线卡、PowerPC等模块简化掉,这样可以在得到良好结果的同时,大大简化建模难度。

3 交换机OPNET建模

交换机为16*16的交换规模,在建立交换机模型时,OPNET仿真在节点、进程和网络三个层次完成模型建立[5]。在网络层,实现整个网络的配置,完成交换机与流量产生以及接收的节点相连接;在节点层,利用进程、队列、发送接收模块完成交换结构以及流量产生模块的设计;在进程层,利用状态机的描述方式,完成包的产生、发送、接收等功能,以及调度算法的实现[6]。下面依次从这三个层次对模型的建立进行介绍。

3.1 网络模型建立

交换机需要在不同的网络模型下进行仿真,文中针对五种流量模型进行仿真,这里采用不同的流量节点对应不同的网络模型,每个节点通过链路与交换机相连然后完成数据包在节点之间的交换传送。将这五种节点与交换节点进行组合通过已定义的链路模型可得出五个网络模型,网络模型如图3(左)所示。

3.2 节点模型建立

交换机的节点主要由接收机、队列和发送机连接而成。其中队列分为用作VOQ的队列和用作交叉结点缓存的队列。首先,接收机接收到来自外部节点发来的数据包,通过对数据包目的地址的读取完成数据包的入队操作,然后输入端通过LQD_RR算法完成对虚拟队列的调度。数据包从被调度队列发向对应的交叉节点缓存队列中,然后输出端通过RR算法完成对数据包的输出调度,最后数据包通过发信机传送到外部节点中完成一个数据包的交换。整个过程中各端口是同时工作的,交换节点结构如图3(右)所示。

流量节点模型分为五种,这里以伯努利均匀分布的节点建立为例,节点包括包产生模块、伯努利分布处理模块、流量分布处理模块、发送模块、接收模块。首先,周边通过包产生模块生成一个数据包,这个数据包通过包流线传递给流量到达处理模块,这个模块主要完成流量的突发或伯努利到达过程的仿真;然后数据包通过包流线传送到流量分布处理模块,该模块主要完成数据包目的端口分布的处理,最后数据包从发信机发出到交换节点。与此同时,如果节点接收到一个数据包时,它必须完成对该数据包从发出到收到的时间延迟统计。因此周边节点必须包括一个业务生成模块、一个流量到达处理模块、一个流量分布处理模块和一对点对点收发信机来完成这些任务,流量节点结构如图4所示。

图3 交换机网络模型(左)交换机节点模型(右)

图4 流量节点模型

3.3 核心进程模型建立

实现输入调度的LQD_RR算法进程主要依据LQD_RR算法流程来进行设计,LQD_RR算法首先求取局部最长队列,然后判断局部最长队列是否具有EVOQ,如果有则进行数据包发送,如果没有则通过轮询的方式找到第一个具有EVOQ的队列进行调度。整体流程图如图5所示。

OPNET中采用状态转移图对算法进行描述,如图6所示。LQD_RR算法的进程状态图由init、idle、queuing和scheduling四个状态组成通过状态转移线连接而成。其中init为初始状态,完成dp指针和rp指针的初始化,并定义了一个写文件,完成数据收集。idle状态主要通过中断信号完成状态间的切换。ARRVL中断信号用于激活处理数据包到达输入端口时的入队操作,INTRPT_SCH中断信号用于激活对虚拟缓存队列的调度处理。Queuing状态主要根据不同端口收到的数据包目的地址完成虚拟队列的入队处理。Scheduling状态则实现LQD_RR调度算法,完成数据包从虚拟队列到交叉结点缓存队列的调度。输出调度与输入调度流程相似,只是在scheduling状态采用的算法不同,由LQD_RR算法替换为RR算法。

图5 LQD_RR算法流程图

4 仿真与结果分析

在建立OPNET网络模型后,对不同的流量模型以及负载率从10%~100%的不同情况对交换机进行仿真,分析各个情况下交换机时间数据包延迟的影响情况,流量模型为流量到达模型与流量分布模型相结合,本文采用以下五种流量模型进行仿真。

图6 LQD_RR进程状态图

(1)伯努利均匀流量模型:流量到达模型服从参数为p的伯努利分布模型,流量分布模型为均匀分布,平均分配到各个输出端,这种模型模拟在交换机现实环境的正常工作情况。

(2)突发均匀分布流量模型:信元到达服从ON/OFF突发模型,ON状态持续时间即突发传输时间,流量分布模型为均匀分布,这种模型模拟交换机在应对数据包激增时的情况。

(3)伯努利对角流量模型:流量到达模型为伯努利分布模型,流量分布模型为对角分布模型,λi,j为在对角分布的情况下,数据包通过端口i发送到端口j的概率,即这种流量模型的输出只针对相邻两个输出端口。

(4)伯努利弱对角流量模型:流量到达模型为伯努利分布模型,流量分布模型为弱对角分布模型,λi,j为在对角分布的情况下,数据包通过端口i发送到端口j的概率,即这种流量模型的输出主要针对对应的一个输出端口进行输出。

(5)伯努利热点分布流量模型:流量到达模型为伯努利分布模型,流量分布模型为热点分布模型,λi,j为从输入端i发送到端j的速率,N为交换结构的端口数,ρ为输入端口的负载率,ω被称为非平衡因子,流量满足下面公式。这种流量反映出网络中的一些特殊情况如:网络拥塞、模拟拒绝服务攻击等[7-8]。

针对上面介绍的五种流量模型,设定crossbar中的缓存长度为1个信元,信元长度为1024,数据传输速率为1GHz,可以得到仿真结果如图7所示。

图7 五种流量仿真结果

这五种流量模型模拟的是该交换算法在现实的五种工作环境中性能的表现情况。交换机的负载率在10%到90%增加过程中,在这五种流量模型下其性能都很稳定。但当负载率增加到90%以上时不同流量模型下交换机性能的优劣便产生了差异,又有当负载率为100%时这种差异最为显著。负载率在100%时,交换机在伯努利均匀流量、伯努利对角流量和伯努利热点流量的情况下性能很稳定,数据包时间延迟较小。在流量到达模型服从突发均匀流量情况下交换机性能相对稳定,此时数据包的时间延迟相较于前三种情况下有所增加。在流量到达模型服从伯努利弱对角流量情况下交换机性能不太稳定,此时数据包的时间延迟最大。

5 结束语

研究了交换机的CICQ模型以及LQD_RR调度算法,在此基础上利用OPNET对交换机进行了建模,并通过将数据包生成节点与交换节点组合搭建了交换机网络模型,完成了在不同网络环境和不同负载率情况下的仿真,并对仿真结果进行了分析研究,表明了本交换机模型的的适用性,为下一步的硬件设计进行了技术上的铺垫。

[1] 张剑.基于OPNET仿真建模方法研究[D].武汉:武汉理工大学,2005:14-34.

ZHANG J.The Research on Simulation and Modeling Methods Based on OPNET[D].Wuhan:Wuhan University of Technology,2005:14-34.

[2] 肖敏.交换机及交换网仿真技术研究[D].湖南:湖南师范大学,2010.

XIAO M.The Research on Simulation of Switchs and Switching Networkds[D].Hunan:Hunan Normal University,2010.

[3] 肖卓.交换调度算法仿真软件的设计与实现[D].南京:南京理工大学,2007.

XIAO Z.The Design and Implementation of Simulation Software for Switch Scheduling Algorithm[D].NanJing:Nanjing University of Technology,2007.

[4] 夏羽.高性能大容量多级交换结构与调度算法研究[D].成都:西南交通大学,2012,3-30.

XIA Y.Research on Multi-stage Switch Fabric and Scheduling Algorithms for High-performance and High-capacity Switches[D].Chengdu:Southwest Jiaotong University,2012,3-30.

[5] Chang X.Network simulations with OPNET[C]./Proceedings of the 31st conference on Winter simulation:Simulation-a bridge to the future-Volume 1.ACM,1999:307-314.

[6] 韩笑.无线局域网退避算法的研究与改进[D].西安:西安电子科技大学,2014.

HAN X.Research and Improvement of the WLAN Backoff Algorithm[D].Xian:XiDian University,2014.

[7] Fong S,Singh S.Analytical modelling of shared buffer ATM switches with hot-spot pushout under bursty traffic[C]./Global Telecommunications Conference,1996.GLOBECOM'96.'Communications:The Key to Global Prosperity.IEEE,1996,2:835-839.

[8] Rahman M M H,Inoguchi Y,Sato Y,et al.On hot-spot traffic pattern of TESH network[C]./Computer and Information Technology,2008.ICCIT 2008.11th International Conference on.IEEE,2008:359-364.

Modeling and Simulation of Sw itch Based on CICQ Architecture

Zhao Xiaohui1,Xu Chuan2,Wang Xiaoting2,Peng Chun2,Wang Yiwen2
(1.Chengdu Sino Microelectronics Technology Co.,Ltd.,Chengdu 610041 China;2.School of Microelectronics and Solid-State Electronics,University of Electronic Science and Technology,Chengdu 610054,China)

Software OPNET is used to complete a switch system with CICQ architecture and LQD_RR scheduling.For the purpose of simulating the real working environment of the switch,the peripheral nodes are created based on traffic distribution.Finally switch simulation is completed under different trafficmodels.The results of simulation are analyzed to evaluate the performance of switching architecture and algorithm which make hardware design easily and prevent the unsufficient feasibility analysis on the entire design flow during the hardware design process.

Switch model;Fiber Channel;OPNET software;CICQ structure;Scheduling;Simulation

10.3969/j.issn.1002-2279.2015.05.007

TN919.6

A

1002-2279(2015)05-0023-04

赵晓辉(1975-),男,辽宁省昌图县人,高级工程师,主研方向:大规模集成电路设计及应用,数据传输与处理。

2015-06-03

猜你喜欢
伯努利队列交换机
关于伯努利方程的一种新解法
一个一元高次不等式的推广及应用
队列里的小秘密
基于多队列切换的SDN拥塞控制*
基于地铁交换机电源设计思考
在队列里
修复损坏的交换机NOS
使用链路聚合进行交换机互联
丰田加速驶入自动驾驶队列
一种伯努利原理研究的实验装置