具有网络编码功能的代数交换系统及其voq调度算法

文档序号:9202611阅读:370来源:国知局
具有网络编码功能的代数交换系统及其voq调度算法
【技术领域】
[0001]本发明属于通信技术领域,到代数交换和网络编码等范围,具体涉及一种具有网络编码功能的代数交换系统及其VOQ (Virtual Output Queue)调度算法。
【背景技术】
[0002]二十一世纪以来,互联网的发展突飞猛进,网络技术已经渗透到人类生活的各个方面,深刻影响着人们的工作和学习方式。随着互联网规模的不但扩大,用户数量飞速增加,网络复杂性也日益明显。现有网络的数据流量持续迅猛增长,这为给以IP为核心的互联网带来了越来越严重的技术挑战。现有的网络主要由交换设备和传输设备组成。事实上,目前以路由器为代表的交换设备的核心交换能力严重滞后于传输线卡带宽的发展,路由器已经成为制约网络技术进一步发展的瓶颈。同时,Internet以TCP/IP体系结构为基础,其网络层(IP层)只提供尽最大努力交付的服务并不提供服务质量QoS承诺。因此,研宄出更高效且保证QoS的路由交换结构是充分利用现有传输能力和为下一代网络提供QoS保证的业务的关键。
[0003]为了提高路由器的性能并降低实现代价,国际国内提出了许多交换结构,其中又引人注目的有共享总线结构[I],共享存储(Shared Memory) [2],交叉矩阵(Crossbar) [3]等结构。
[0004]共享总线结构易于扩展也比较容易实现,但是其速率较低。共享存储结构虽然可以达到比较高的速度,但是其速率仍然受到内存速度的限制,其存储器带宽性能瓶颈使得当端口数量较多时,存储器带宽需求较大,不能满足大规模扩展应用的条件。交叉矩阵是最典型的使用最普遍的交换结构,它是一种简单的空分交换开关,将N个输入端口和N个输出端口任意的互连。当端口数N较小时,交叉矩阵是一种实现无阻塞、自路由的理想交换结构。但该结构需要的交换单元的数量是N2,硬件实现复杂度为O (N2),当N较大时,其成本变得不可接受,不满足大规模扩展的要求。
[0005]为了构造一种适合大规模扩展的交换结构,何伟等人提出了一种多路径自路由交换结构[3],这种结构将代数分配格理论应用于自路由模型,该结构具有完全分布式自路由、无内部缓存、无缓存时延及无抖动等优势[3]。在保证提供QoS的条件下,适合大规模扩展,很好的满足了用户的需求。
[0006]然而这种结构具有内部阻塞的缺点,这一缺点严重阻碍了该结构的发展与应用。要保证数据在传输中的吞吐率,一种有效的方法是将网络编码和代数交换结构结合,而这大大加大了系统设计的复杂度。为了更好的将二者进行结合,本发明创新性地提出了一种适用于具有网络编码功能的代数交换系统的VOQ调度算法。该算法提出了一种高效、简单的决策,提高系统的交换和传输效率。
[0007]引用文献:
[0008][I]Cheng T D, Franaszek P A, Georg1u C J, et al.Dynamic switch protocolson a shared medium network:U.S.Patent 5,235,592 [P].1993-8-10.11s.
[0009][2]Andrade P,Cooperman M, Sieber R ff.ATM shared memory switch withcontent addressing:!! S.Patent 5,513,134[P].1996-4-30.
[0010][3] Hui Li, Wei He, Xi CHEN, Peng Yi, Binqiang Wang, “Mult1-pathSelf-routing Switching Structure by Interconnect1n of Multistage SortingConcentrators”,IEEE CHINAC0M2007, Aug.2007, Shangha1.
[0011][4] B.Prabhakar, N.McKeown, R.Ahu ja ; “Multicast scheduling forinput-queued switches,,,IEEE J.Selected Areas Commun,vol.15,n0.5,p855_866,1997.

【发明内容】

[0012]一种具有网络编码功能的代数交换系统,
[0013]主要包含以下模块:N个输入端口(1-1-1,...,1-1-N)、数据预处理模块(1_2)、编码模块(1-3)、N个VOQ调度模块(1-4-1,1-4-2,1-4-N)、代数交换模块(1_5)、组装模块(1-6-1,...,1-6-N)、解码模块(1-7-1,...,1-7-N)、N 个输出端口(1-8-1,...,1-8-N);上述各个模块相互配合完成数据包在系统中的切割、编码、交换、组装、解码等操作。
[0014]一种具有网络编码功能的代数交换系统的VOQ调度算法,包括:数据包在预处理、编码之后,按照其目的端口地址进行分流,依次送入N个VOQ中(如,目的地址为i的信元进入V0Q(1,i)),每个输入端口配有一个检测器,检测器可以实时的记录VOQ中的信元的数量,并将该数量反馈给调度器,调度器按照一定的规则进行分析,并给出决策,最终决定该端口 N个VOQ中哪些信元被送入后级交换结构。
[0015]本发明中,将VOQ中信元的占用率进行建模,检测器实时监测VOQ的空满程度,由此将输入端口的数据流量归为Heavy,Fair,Light三种模型,针对三种不同流量模型分别智能、快速的作出决策,提高了该调度算法的适应性。
【附图说明】
[0016]图1为实施例一的具有网络编码功能的代数交换系统示意图。
[0017]图2为适用于实施例一的VOQ和调度器。
【具体实施方式】
[0018]下面通过【具体实施方式】结合附图对本发明作进一步详细说明。
[0019]本实施例提出了一种在具有网络编码功能的代数交换系统中的适合代数交换的编码算法。该算法以信元为单位进行编码,把编码后的数据发送到VOQ调度模块器和代数交换结构中,最后在解码和组装模块中恢复出原来的数据包。
[0020]本发明中所涉及的整个基于网络编码的代数交换系统的结构如图1所示,VOQ和调度器结构示意图如图2所示。以下结合图1、图2进行详细说明。标准的IP数据包从N个输入端口 11(1-1-1,...,1-1-N)进入,在数据预处理模块12中(1_2),将添加同步控制信号,并把数据包切割成长度相等的数据片和添加包头控制信息。图1中黑色粗箭头表示封包,即标准的以太网数据包;数据包进入数据预处理模块12之后,灰色粗箭头表示被切割之后的数据片,即信元;灰色细箭头表示流控,即数据同步信号。编码模块13(1-3)对信元进行编码,产生的冗余信息随原始数据包一起进入后级模块。N个并行的VOQ模块14(1-4-1,...,1-4-N)将数据按照输出端口分流,同时将数据包按一定的调度算法送入交换结构15(1-5),交换结构15即代数交换模块。在组装模块16中(1-6-1,1_6_N),系统将归属于同一个数据包的信元按照一定的顺序重新组装,恢复出原始的数据包。只有当组装过程中监测到有一个信元丢失时,才会启动解码模块17(1-7-1,1-7-N),通过解码恢复出丢失的信元。输出端口 18(1-8-1,..., 1-8-N)用于输出数据包。其中,监测工作由监测器191执行,调度算法由调度模块192执行。
[0021]一种适用于网络编码代数交换系统的VOQ调度算法,是根据VOQ中的占用率,对当前输入端口的流量进行建模,将其归纳为:HeaVy,Fair,Light三种模型,做出相应的调度决策,具体如下:
[0022]对于一个32 X 32 (M = 4,G = 8)代数交换结构来说,其中M为群组数,G为群组大小。系统中共有4个V0Q,每个VOQ的状态分为三类:Light, Fair, Heavy ;设Light的上限,%为Heavy的下限;设ε (i, j)为V0Q(i,j)中信元的占用率。那么,
[0023]a)当 O < ε (i, j) < ε L,则 VOQ (i,j)的状态为 Light ;
[0024]b)当 ε L<= ε (i, j) <= ε Η,则 V0Q(i,j)的状态为 Fair ;
[0025]c)当 ε (i, j) > eHJjV0Q(i,j)的状态为 Heavy ;
[0026]根据以上定义,每个VOQ调度器的工作步骤如下:
[0027]I)按照定义I判断当前四个VOQ的状态。
[0028]2)根据当前VOQ的状态判断输入端口的流量模型。假如有3个以上的VOQ状态均为Heavy,则输入端口流量模型为Heavy ;假如有3个以上的VOQ状态均为Light,则输入端口流量模型为Light ;否则,则该端口流量模型为Fair。
[0029]3)根据端口流量模型选择信元的数量送往交换结构:
[0030]1.Heavy:从ε (i, j)最大的VOQ中选择6个信元,从ε (i, j)第二大的VOQ中选择2个信元,共8个信元送往后级交换模块。
[0031]i1.Fair:从ε (i, j)最大的VOQ中选择4个信元,从ε (i, j)第二大的VOQ中选择4个信元,共8个信元送往后级交换模块。
[0032]ii1.Light:从四个VOQ中各选2个信元送往后级交换模块。假如有VOQ中剩余信元不足2个,则按实际情况输出。
[0033]iv.其他:当队列中信元数量不足或无信元时,则产生无效信元来弥补,后面的解码和组装模块将忽略这些无效信元。
[0034]按照以上调度算法,系统可快速做出决策,在保证具有网络编码功能的代数交换系统吞吐率的条件下,提高交换效率。
[0035]以上内容是结合具体的实施方式对本发明所作的进一步详细说明,不能认定本发明的具体实施只局限于这些说明。对于本发明所属技术领域的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干简单推演或替换。
【主权项】
1.一种具有网络编码功能的代数交换系统, 主要包含以下模块:N个输入端口、数据预处理模块、编码模块、N个VOQ调度模块、代数交换模块、组装模块、解码模块、N个输出端口 ; 其特征在于,上述各个模块相互配合完成数据包在系统中的切割、编码、交换、组装、解码等操作。2.一种具有网络编码功能的代数交换系统的VOQ调度算法,其特征在于, 包括:数据包在预处理、编码之后,按照其目的端口地址进行分流,依次送入N个VOQ中,每个输入端口配有一个检测器,检测器可以实时的记录VOQ中的信元的数量,并将该数量反馈给调度器,调度器按照一定的规则进行分析,并给出决策,最终决定该端口 N个VOQ中哪些信元被送入后级交换结构。
【专利摘要】本发明属于通信技术领域,涉及到VOQ调度算法和代数交换等范围,具体涉及一种具有网络编码功能的代数交换系统及其VOQ调度算法。本发明在具有网络编码功能的代数交换系统上添加了VOQ模块,并设计了适合网络编码和代数交换系统的虚拟输出队列调度算法。本系统的主要特点是:为了更好的实现网络编码,本发明在代数交换系统的基础上设计了一套适合网络编码的代数交换的VOQ调度算法。该算法提供了一种更快、更简单的决策方法,在保证系统具有较高吞吐率、满足系统服务质量(QoS,Quality of Service)的条件下,能够最大程度利用网络编码的特性,从而大大提高了系统的交换效率。
【IPC分类】H04L12/933, H04L12/931
【公开号】CN104917701
【申请号】CN201510298852
【发明人】吕士杰, 李硕彦, 张明龙, 朱键, 马丽, 李挥
【申请人】香港中文大学深圳研究院
【公开日】2015年9月16日
【申请日】2015年6月3日
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1