CN1848803A - 一种基于三级交换网的下行队列快速反压传送装置及方法 - Google Patents
一种基于三级交换网的下行队列快速反压传送装置及方法 Download PDFInfo
- Publication number
- CN1848803A CN1848803A CNA2005100872010A CN200510087201A CN1848803A CN 1848803 A CN1848803 A CN 1848803A CN A2005100872010 A CNA2005100872010 A CN A2005100872010A CN 200510087201 A CN200510087201 A CN 200510087201A CN 1848803 A CN1848803 A CN 1848803A
- Authority
- CN
- China
- Prior art keywords
- queue
- pressure
- cell
- module
- grades
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Images
Abstract
本发明是一种基于三级交换网的下行队列快速反压传送装置及方法。包括各16个上、下行队列管理器组。第三级输出模块将每个下行队列管理器的下行队列反压状态信息送至对应的各上行队列管理器;第一级输入模块将接收到的下行队列反压信息以带内方式传送给中间级反压处理模块;中间级反压处理模块对下行队列反压状态信息进行处理,并以带内方式发给第三级输出模块的各下行队列管理器;第三级输出模块提取从中间级反压处理模块送来的下行队列反压状态信息,并将其送至与其对应的上行队列管理器;第一级输入模块每个上行队列管理器根据所收到的下行队列反压状态信息控制各个队列的信元发送。本发明可用于三级交换网下行队列快速反压传送。
Description
技术领域
本发明属于数据交换技术领域,尤其是一种基于三级交换网的下行队列快速反压传送装置及方法,利用空闲信元的净荷一次性携带下行队列反压状态的位图信息,结合使用数据信元的信元头分批次携带下行队列反压状态的位图信息,从而快速地将其传送给上行模块,提高反压响应速度和可靠性。
技术背景
交换网(Switch Fabric)是宽带交换设备如交换机(ATM)/路由器的核心部分,它完成端口之间数据包或信元的交换,即把到达输入端口的数据包或信元根据其携带的目的端口信息交换至相应的输出端口。
按照交换媒介的不同,交换网可以分为时分交换和空分交换两种结构。
在时分交换结构中,各端口以时分复用的方式共享一个通信媒体,这个媒体既可以是存储器,也可以是总线或者环。显然,共享媒体的带宽就决定了交换网的容量。时分交换网的典型例子是共享缓存和共享总线交换结构,由于其扩展性较差,一般只用在小容量交换设备中。
空分交换结构是利用连线和电子开关完成端口之间的互连,可分为单级和多级交换网。典型的单级交换网包括交叉连接矩阵(Crossbar)结构,多级交换网则包括科洛斯(Clos)结构、榕树(Banyan)结构等。由于空分交换结构具有很好的扩展性,因而更多地应用于大容量交换设备中。
现有技术中,更多的商用交换网采用的是混合交换结构,图1即是一种典型的M-S-M(Memory-Space-Memory)三级交换网。
M-S-M交换网采用三级Clos结构:第一级和第三级为共享缓存交换结构,第一级完成对输入信元的缓存、路由选择和队列管理,第三级完成对输出信元的缓存、交换以及队列管理;中间级为空分交换结构,主要完成信元的交换功能。第一级和中间级之间通过高效的调度算法保证进入中间级的信元不发生碰撞。这种结构综合了共享缓存交换和Crossbar空分交换的优点,使得构造高效率、自路由的大型交换网成为可能。
在交换网的第一级,为了解决队头阻塞问题,采用虚拟输出队列(VOQ,Virtual Output Queue)结构,即输入信元按照其目的端口来排队。这样,竞争一个输出端口失败的信元不会影响该输入端口获得其他空闲输出端口。
在交换网的第三级,信元按输出端口进行排队。当输出端口发生阻塞导致输出队列过长时,第三级就要通知所有输入端口队列中对应于该输出端口的VOQ停止向其发送信元,以免第三级队列溢出导致丢弃信元,这就是下行队列反压。
然而,这种下行队列反压的粒度过粗,因为某个第三级队列产生反压会影响到所有的输入端口队列中与之对应的VOQ。
为了解决这个问题,在第三级输出队列中引入虚拟输入排队(VIQ,VirtualInput Queue)结构,将信元输出队列进一步按照其源输入端口进行排队。这样,第三级VIQ就与第一级VOQ一一对应,从而使下行队列反压的粒度达到较细。
对于一个N×N交换网,支持K种优先级,则第三级输出队列中总共会有N×K个VIQ。只有快速准确地将下行队列反压信息传送给第一级,才能保证整个交换网不丢弃信元且保持高通过率。
下行队列反压通常采用带外传送和带内传送两种方式。在带外传送方式下,每个第三级模块通过专门的反压信号线将队列反压信息传给各个第一级模块。它又有两种方式:
第一,第三级模块直接引出反压信号线到各个第一级模块。如果交换端口数为N,则反压信号线总数为N×N。
第二,每个第三级模块引一根反压信号线到中间级,中间级模块将来自各个第三级模块的下行队列反压信息处理后分发给各个第一级模块。因此,如果交换端口数为N,且中间级只有一个模块负责处理反压信息,则反压信号线总数为2×N。为可靠起见,中间级通常会有更多的模块来处理反压信息,每增加一个模块,反压信号线就会增加2×N条。
采用带外方式传送下行队列反压信息,最大的问题就是反压信号线数目过多。随着模块数目的增多,反压信号线将呈平方增长,对于布线非常密集的多端口、大容量交换网,其物理实现难度非常大。
下行队列反压带内传送方式,即将第三级反压信息附加上数据信元头中,利用三级Clos交换网的折叠对应性,将其传送给相应的第一级模块。
如图2下行队列反压采用带内传送示意图所示,假设第三级输出端口m中的VIQn过长,则需反压第一级输入端口n中的VOQm。队列反压状态的传送过程如下:第三级端口m将队列反压状态传送给对应的第一级端口m,第一级端口m将其附加到输出数据流的头部送给中间级。中间级的反压处理模块(BPP,Back-Pressure Processor)将反压状态提取并处理后,将其附加到向第三级端口n交换的数据流的头部。第三级端口n提取出反压状态后,将其送给对应的第一级端口n。输入端口n收到来自VIQn的队列反压状态后,暂停向端口m发送信元。反压状态的解除过程同样如此。
对于一个N×N交换网,支持K种优先级,则第三级输出队列中总共会有N×K个VIQ。传送这N×K个下行队列的反压状态,有两种方式:
第一,采用位图(bitmap)方式传送,每个位(bit)对应一个队列的状态,1表示反压,0表示未反压。对于N×K个VIQ,需要用N×K个bit。
第二,只传送队列反压状态发生变化的队列,包括其队列号、反压状态及反压状态变化。
对于采用bitmap方式传送下行队列反压状态,当队列数目特别多时,会造成信元头开销过大,影响正常的数据交换。例如,对于一个64×64、支持4种优先级的交换网,第三级总共有256个VIQ,如果每个信元周期都传送下行队列反压状态的话,则需要占用32个字节信元头。显然,这种开销太大了。为了解决这个问题,可以将下行队列的反压状态分成若干个部分,每个信元周期只传送其中一部分。这又会导致反压传送的时延增大,控制不好会导致第一级缓存出现振荡。
对于传送反压状态变化的方式,有以下几个缺点:第一,在很短的信元周期内从很多个队列状态中选出1个或几个状态发生变化的队列,实现难度很大;第二,可靠性差,如果所传送的队列反压状态变化因为某种意外如数据链路误码而丢失,就可能会导致交换网丢包;第三,当发生状态变化的队列数目非常多时,会导致反压传送的时延急剧增大,造成第一级缓存振荡。
发明内容
为克服现有技术的不足,本发明的目的在于提供一种基于三级交换网的下行队列快速反压传送装置及方法,以提高反压响应的速度。
本发明的另一个目的在于提供一种基于三级交换网的下行队列快速反压传送装置及方法,以提高反压响应的可靠性。
为完成上述发明目的,本发明采用的技术方案为:一种基于三级交换网的下行队列快速反压传送装置,所述三级交换网包括第一级输入模块、中间级反压处理模块和第三级输出模块,第一级输入模块中有虚拟输出队列,第三级输出模块中有虚拟输入队列,在每个信元周期,第三级模块将其中虚拟输入队列的反压状态信息传送给对应的第一级模块,第一级模块的输出端口将其封装在输出信元中送给中间级反压处理模块,反压处理模块提取出反压状态信息并进行处理,经过处理后的反压状态信息封装在输出信元中送至第三级模块,第三级输出模块提取出反压状态信息并将其送给对应的第一级输入模块,第一级输入模块收到队列反压状态信息后控制其中的虚拟输出队列向第三级的虚拟输入队列发送信元,所述第一级输入模块包括一组上行队列管理器,每一上行队列管理器包括有单播信元队列组和多播信元队列组,用于输入第三级输出模块输出的下行队列反压信息,并将其封装在输出信元中一对多传送给中间级反压处理模块;所述中间级反压处理模块,用于将上行队列管理器送来的反压状态信息进行处理并分发给对应的第三级模块;所述第三级输出模块包括一组下行队列管理器,数量与上行队列管理器相同,下行队列管理器包括有单播信元队列组和多播信元队列组,用于将队列反压状态信息送至与其相对应的上行队列管理器和将中间级反压处理模块处理后送来的反压状态信息传给与其对应的上行队列管理器。
所述上行队列管理器和下行队列管理器个数分别为16。
所述每一上行队列管理器的单播输入队列组个数为16。
所述每一上行队列管理器的每一个单播信元队列组分为4个单播虚拟输出队列,每个单播虚拟输出队列根据优先级划分为4个子队列,共有256个单播子队列。
所述每一上行队列管理器的多播信元队列组个数为16。
所述每一上行队列管理器的多播信元队列组分为1个多播虚拟输出队列,每个多播虚拟输出队列根据优先级划分为4个子队列,共有64个多播子队列。
所述每一下行队列管理器的单播信元队列组个数为4。
所述每一下行队列管理器的每一个单播信元队列组分为16个单播虚拟输入队列,每个单播虚拟输入队列根据优先级划分为4个子队列,共有256个单播子队列。
所述每一下行队列管理器的多播信元队列组个数为1。
所述每一下行队列管理器的多播信元队列组分为16个多播虚拟输入队列,每个多播虚拟输入队列对应一个上行队列管理器,每个多播虚拟输入队列根据优先级划分为4个子队列,共有64个多播子队列。
所述每一下行队列管理器到相对应的上行队列管理器有至少两组下行队列反压状态信号线,一组信号线用于下行队列管理器将自己的下行队列反压状态信息通过上行队列管理器送给中间级反压处理模块进行处理,另一组信号线用于将中间级反压处理模块处理后的下行队列反压状态信息通过下行队列管理器送给上行队列管理器。
一种基于三级交换网的下行队列快速反压传送方法,包括以下步骤:
步骤1、第三级输出模块将每一个下行管理器队列中的下行队列反压状态信息送至对应的第一级输入模块的各上行队列管理器;
步骤2、第一级输入模块将接收到的下行队列反压信息以带内方式传送给中间级反压处理模块;
步骤3、中间级反压处理模块对下行队列反压状态信息进行处理,并以带内方式发给第三级输出模块的各下行队列管理器;
步骤4、第三级输出模块提取从中间级反压处理模块送来的下行队列反压状态信息,并将其发送至与其对应的上行队列管理器;
步骤5、第一级输入模块每个上行队列管理器根据所收到的下行队列反压状态信息控制各个队列的信元发送。
所述步骤1中的行队列反压状态信息为320位。
所述步骤1中的上行队列管理器的出口带宽大于入口带宽。
所述步骤1中的对应具体是指下行队列管理器n的单播队列组和多播队列组中的虚拟输入队列m与第m个上行队列管理器中的单播信元队列组n和多播信元队列组n一一对应。
所述步骤2中的带内方式为上行队列管理器定期向中间级反压处理模块发送空闲信元,利用空闲信元净荷部分一次性将下行队列反压信息传送给中间级反压处理模块的方式。
所述空闲信元包括每4个字节传一组虚拟输入队列的反压状态信息的20位信息位和1位水平奇校验位。
所述步骤2中的带内方式还可以为利用数据信元的信元头部分的传送方式。
所述数据信元头一次传送包括8个单播队列和2个多播队列的40位下行队列反压状态信息。
所述利用数据信元的信元头部分传送所有320位下行队列反压状态信息的时间为8个信元周期。
所述数据信元头还有一个标示,用于识别正在传送的某一下行队列的反压状态信息。
本发明技术方案带来的有益效果。本发明在三级交换网第一级输入模块设有上行队列管理器,上行队列管理器包括16个单播信元队列组和16个多播信元队列组,根据下行队列反压状态控制各个队列的信元发送,第三级输出模块设有下行队列管理器,它包括4个单播信元队列组和单独一个多播信元队列组,能将下行队列反压信息送给对应的上行队列管理器,由上行队列管理器以带内方式传送给中间级反压处理模块,经过中间级反压处理模块处理后将需要送给每个下行队列管理器的反压信息以带内方式送至第三级输出模块,下行队列管理器将各个中间级反压处理模块处理后送来的下行队列反压状态合并后送至对应的上行队列管理器。中间级反压处理模块,能够将各上行队列管理器送来的反压状态信息进行处理,并将处理后的下行队列反压信息以带内方式送至各下行队列管理器。本发明利用空闲信元净荷携带下行队列反压状态信息,一个信元周期即可完成全部下行队列反压状态的传送,速度快。提高了反压传送的速度。或者结合使用数据信元的信元头分批次传送下行队列反压状态信息,可以保证在数据流量很大的情况依然能对反压状态定期进行更新,提高了交换网的可靠性。
附图说明
图1为现有技术的M-S-M三级交换网示意图;
图2为现有技术的下行队列反压采用带内传送示意图;
图3为64×64三级交换网示意图;
图4为上行队列管理器和下行队列管理器的队列对应关系图;
图5为上行队列管理器至中间级反压处理模块信元头的队列反压帧格式图;
图6为中间级反压处理信息模块对下行队列反压状态的变换过程图;
图7为中间级反压处理模块至下行队列管理器信元头的队列反压帧格式图。
具体实施方式
下面结合说明书附图来说明本发明的具体实施方式。
N×N交换网包括三级模块,包括第一级输入模块、中间级反压处理模块和第三级输出模块,第一级输入模块中有虚拟输出队列,第三级输出模块中有虚拟输入队列,在每个信元周期,第三级模块将其中虚拟输入队列的反压状态信息传送给对应的第一级模块,第一级模块的输出端口将其封装在输出信元中送给中间级反压处理模块,反压处理模块提取出反压状态信息并进行处理,经过处理后的反压状态信息封装在输出信元中送至第三级模块,第三级输出模块提取出反压状态信息并将其送给对应的第一级输入模块,第一级输入模块收到队列反压状态信息后控制其中的虚拟输出队列向第三级的虚拟输入队列发送信元。
本发明的N×N三级交换网的第一级输入模块包括有一组上行队列管理器,它一端连接第三级输出模块下行队列管理器的输出端口,另一端连接中间处理模块,每一上行队列管理器包括有单播信元队列组和多播信元队列组,根据处理器的指令,用于输入第三级输出模块输出的下行队列反压信息,并将其封装在输出信元中一对多传送给中间级反压处理模块。中间级反压处理模块主要用于将上行队列管理器送来的反压状态信息进行处理并分发给对应的第三级模块。第三级输出模块包括有一组下行队列管理器,数量与上行队列管理器相同,它一端连接中间处理模块,另一端连接第一级输出模块的上行队列管理器的输入端口,下行队列管理器包括有单播信元队列组和多播信元队列组,根据处理器的指令,用于将队列反压状态信息送至与其相对应的上行队列管理器和将中间级反压处理模块处理后送来的反压状态信息传给与其对应的上行队列管理器。
图3所示是一个64×64的三级交换网,它支持4种优先级和多播。交换网的第一级模块称为上行队列管理器组(iQM,ingress Queue Manager),用于完成对输入信元的缓存和上行队列管理;第三级模块称为下行队列管理器组(eQM,egress Queue Manager),完成对输出信元的缓存和下行队列管理;中间级反压处理模块为交叉连接矩阵组(Crossbar),完成信元交换、仲裁和下行队列反压处理。
在iQM中,单播信元按下行输出端口排队,总共64个虚拟输出队列(VOQ)。每个VOQ又根据优先级划分为4个子队列,因此iQM中共有256个单播子队列。多播信元在iQM中先复制一次,最多进入16个多播队列,每个多播队列对应一个eQM。每个多播队列又根据优先级划分为4个子队列,因此iQM中共有64个多播子队列。合在一起,iQM中有320个队列。
在eQM中,单播信元首先按照目的输出端口排队,有4个单播队列组。每个单播输出队列组再将信元按照来自哪个iQM排队,分为16个单播输入队列(VIQ)。每个单播VIQ再根据优先级划分为4个子队列,因此eQM中共有4×16×4=256个单播子队列。同时,多播信元单独进多播队列组,根据多播信元来自哪个eQM又分为16个多播VIQ。每个多播VIQ再根据优先级划分为4个子队列,因此eQM中共有16×4=64个多播子队列。合在一起,eQM中也有320个子队列。
如图4所示,上行队列管理器iQM与下行队列管理器eQM中的子队列是一一对应的。例如,第m个iQM中的虚拟输出队列VOQn与下行输出端口n的虚拟输入队列VIQm相对应。因此,当输出端口n中的子队列VIQm被反压时,就需要通知对应的第m个iQM中的VOQn停止发送信元。
将总共16个eQM、每个eQM的320个队列反压状态快速准确地传送给相应的iQM的步骤如下:
1、在每个信元周期,将eQM中的320-bits的下行队列反压状态位通过信号线送至与该eQM对应的iQM。
2、iQM将这320-bits的下行队列反压信息以带内方式传送给中间级BPP模块,有两种方式:
第一种方式,利用空闲信元的净荷部分。在三级交换网中,为了提高中间级Crossbar的通过率,会在一、二级之间采用一定的加速,也就是说iQM的出口带宽比入口带宽要大。因此,iQM会定期向中间级发送空闲信元。利用空闲信元的净荷,每个信元周期可以一次性将320-bits的下行队列反压信息传送给中间级,提高了反压传送的速度。定义iQM至中间级的空闲信元格式如表1:
表1上行队列管理器至中间级反压处理模块的空闲信元净荷格式
字节编号 | bit[31:16] | bit[15:12] | bit[11] | bit[10:0] |
0-3 | UQGroup[4:1]/VIQ1_Pri[3:0] | MQGroup/VIQ1_Pri[3:0] | 水平奇校验位 | 0x000 |
4-7 | UQGroup[4:1]/VIQ2_Pri[3:0] | MQGroup/VIQ2_Pri[3:0] | 水平奇校验位 | 0x000 |
8-11 | UQGroup[4:1]/VIQ3_Pri[3:0] | MQGroup/VIQ3_Pri[3:0] | 水平奇校验位 | 0x000 |
12-15 | UQGroup[4:1]/VIQ4_Pri[3:0] | MQGroup/VIQ4_Pri[3:0] | 水平奇校验位 | 0x000 |
16-19 | UQGroup[4:1]/VIQ5_Pri[3:0] | MQGroup/VIQ5_Pri[3:0] | 水平奇校验位 | 0x000 |
20-23 | UQGroup[4:1]/VIQ6_Pri[3:0] | MQGroup/VIQ6_Pri[3:0] | 水平奇校验位 | 0x000 |
24-27 | UQGroup[4:1]/VIQ7_Pri[3:0] | MQGroup/VIQ7_Pri[3:0] | 水平奇校验位 | 0x000 |
28-31 | UQGroup[4:1]/VIQ8_Pri[3:0] | MQGroup/VIQ8_Pri[3:0] | 水平奇校验位 | 0x000 |
32-35 | UQGroup[4:1]/VIQ9_Pri[3:0] | MQGroup/VIQ9_Pri[3:0] | 水平奇校验位 | 0x000 |
36-39 | UQGroup[4:1]/VIQ10_Pri[3:0] | MQGroup/VIQ10_Pri[3:0] | 水平奇校验位 | 0x000 |
40-43 | UQGroup[4:1]/VIQ11_Pri[3:0] | MQGroup/VIQ11_Pri[3:0] | 水平奇校验位 | 0x000 |
44-47 | UQGroup[4:1]/VIQ12_Pri[3:0] | MQGroup/VIQ12_Pri[3:0] | 水平奇校验位 | 0x000 |
48-51 | UQGroup[4:1]/VIQ13_Pri[3:0] | MQGroup/VIQ13_Pri[3:0] | 水平奇校验位 | 0x000 |
52-55 | UQGroup[4:1]/VIQ14_Pri[3:0] | MQGroup/VIQ14_Pri[3:0] | 水平奇校验位 | 0x000 |
56-59 | UQGroup[4:1]/VIQ15_Pri[3:0] | MQGroup/VIQ15_Pri[3:0] | 水平奇校验位 | 0x000 |
60-63 | UQGroup[4:1]/VIQ16_Pri[3:0] | MQGroup/VIQ16_Pri[3:0] | 水平奇校验位 | 0x000 |
如表1所示,每4个字节传一组VIQ的反压状态信息,共20-bits,同时增加1-bit的水平奇校验位,以提高传送的可靠性。
第二种方式,利用数据信元的信元头部分。由于信元头长度有限,因此每个iQM至中间级的数据信元头一次传送40-bits的下行队列反压状态,包括8个单播队列和2个多播队列,每个队列有4个优先级子队列,总共需要8个信元周期来传送所有320-bits下行队列反压状态。
每个iQM包括4个输出端口,每个输出端口与Crossbar的一个输入端口相连。320-bit反压状态信息复制4份到4个输出端口,通过数据信元头或空闲信元净荷输出。两种方式同时使用,如果有数据信元传送,则使用方式二;否则使用方式一。
下行队列反压帧结构如图5所示,其中,每个信元头携带40个下行子队列的反压状态位图(bitmap),连续8个信元携带全部320-bits反压状态bitmap,通过反压同步时标(BPSYNC)(0-7)来标识正在传送的是哪一部分下行队列反压状态信息。
3、中间级BPP模块收到从iQM送来的所有eQM的下行队列反压状态信息后,进行处理后分发给相应的iQM。参见图3,从中间级模块送给第三级输出模块,其中:到iQM1的队列反压状态信息从中间级模块的端口1输出,……,至到iQM16的队列反压状态从中间级模块的端口16输出。第三级输出模块的4个输入端口会收到来自4个BPP的队列反压状态信息。由于4个BPP送来的320-bit队列反压状态信息完全相同,因此需要将其取“或”,由于第三级输出模块和第一级输入模块在物理上是一个芯片,因此这320-bit队列反压状态信息通过内部信号线传给iQM。
请参阅图6,下行队列反压状态的变换过程如下:传给iQM1的反压信息包括eQM1、eQM2、……、eQM16中所有VIQ1的队列反压状态信息;传给iQM2的反压信息包括eQM1、eQM2、……、eQM16中所有VIQ2的队列反压状态信息;……;传给iQM16的反压信息包括eQM1、eQM2、……、eQM16中所有VIQ16的队列反压状态信息。这样,传给每个iQM的eQM队列反压信息也恰好是320-bits。
4、经过中间级BPP模块处理后需要送给每个iQM的320-bits下行队列反压信息同样以带内方式先送至与iQM对应的eQM,仍然有两种方式:
第一种方式,利用空闲信元的净荷部分,每个信元周期一次性将320-bits的下行队列反压信息送至eQM。定义中间级至eQM的空闲信元格式如表2:
表2中间级反压处理模块至下行队列管理器的空闲信元净荷格式
字节编号 | bit[31:16] | bit[15:12] | bit[11] | bit[10:0] |
0-3 | VOQ[4:1]_Pri[3:0] | MQ1_Pri[3:0] | 水平奇校验位 | 0x000 |
4-7 | VOQ[8:5]_Pri[3:0] | MQ2_Pri[3:0] | 水平奇校验位 | 0x000 |
8-11 | VOQ[12:9]_Pri[3:0] | MQ3_Pri[3:0] | 水平奇校验位 | 0x000 |
12-15 | VOQ[16:13]_Pri[3:0] | MQ4_Pri[3:0] | 水平奇校验位 | 0x000 |
16-19 | VOQ[20:17]_Pri[3:0] | MQ5_Pri[3:0] | 水平奇校验位 | 0x000 |
20-23 | VOQ[24:21]_Pri[3:0] | MQ6_Pri[3:0] | 水平奇校验位 | 0x000 |
24-27 | VOQ[28:25]_Pri[3:0] | MQ7_Pri[3:0] | 水平奇校验位 | 0x000 |
28-31 | VOQ[3229]_Pri[3:0] | MQ8_Pri[3:0] | 水平奇校验位 | 0x000 |
32-35 | VOQ[36:33]_Pri[3:0] | MQ9_Pri[3:0] | 水平奇校验位 | 0x000 |
36-39 | VOQ[40:37]_Pri[3:0] | MQ10_Pri[3:0] | 水平奇校验位 | 0x000 |
40-43 | VOQ[44:41]_Pri[3:0] | MQ11_Pri[3:0] | 水平奇校验位 | 0x000 |
44-47 | VOQ[48:45]_Pri[3:0] | MQ12_Pri[3:0] | 水平奇校验位 | 0x000 |
48-51 | VOQ[52:49]_Pri[3:0] | MQ13_Pri[3:0] | 水平奇校验位 | 0x000 |
52-55 | VOQ[56:53]_Pri[3:0] | MQ14_Pri[3:0] | 水平奇校验位 | 0x000 |
56-59 | VOQ[60:57]_Pri[3:0] | MQ15_Pri[3:0] | 水平奇校验位 | 0x000 |
60-63 | VOQ[64:61]_Pri[3:0] | MQ16_Pri[3:0] | 水平奇校验位 | 0x000 |
如上所示,每4个字节传一组队列的反压状态信息,共20-bits,同时增加1-bit的水平奇校验位,以提高传送的可靠性。
第二种方式,利用数据信元的信元头部分。每个中间级至eQM的数据信元头一次传送40-bits的下行队列反压状态,包括8个单播队列和2个多播队列(每个队列有4个优先级子队列),总共需要8个信元周期来传送所有320-bits下行队列反压状态。
每个Crossbar包括16个输出端口,每个输出端口与1个eQM的一个输入端口相连,经过处理后的320-bit下行队列反压状态信息通过数据信元头或空闲信元净荷输出。因此4个Crossbar会送4份320-bit反压状态信息到eQM的4个输入端口。
队列反压帧结构如图7所示,其中,每个信元头携带40个子队列的反压状态bitmap,连续8个信元携带全部320-bits反压状态bitmap,通过BPSYNC(0-7)来标识正在传送的是哪一部分下行队列反压状态信息。
5、eQM收到从中间级BPP送来的320-bits的下行队列反压状态信息后,将其传给与其对应iQM,iQM根据所收到的下行队列反压状态后就可以控制各个队列的信元发送,停止向下行被反压的队列发送信元,或继续向下行未被反压的队列发送信元。
需要说明的是,eQM到iQM有两组下行队列反压状态信号线:一组是eQM将自己的下行队列反压状态信息通过iQM送给中间级BPP进行处理;另一组则是中间级BPP将处理后的下行队列反压状态信息通过eQM送给iQM。
以上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的权利要求范围之内。
Claims (21)
1、一种基于三级交换网的下行队列快速反压传送装置,所述三级交换网包括第一级输入模块、中间级反压处理模块和第三级输出模块,第一级输入模块中有虚拟输出队列,第三级输出模块中有虚拟输入队列,在每个信元周期,第三级模块将其中虚拟输入队列的反压状态信息传送给对应的第一级模块,第一级模块的输出端口将其封装在输出信元中送给中间级反压处理模块,反压处理模块提取出反压状态信息并进行处理,经过处理后的反压状态信息封装在输出信元中送至第三级模块,第三级输出模块提取出反压状态信息并将其送给对应的第一级输入模块,第一级输入模块收到队列反压状态信息后控制其中的虚拟输出队列向第三级的虚拟输入队列发送信元,其特征在于,
所述第一级输入模块包括一组上行队列管理器,每一上行队列管理器包括有单播信元队列组和多播信元队列组,用于输入第三级输出模块输出的下行队列反压信息,并将其封装在输出信元中一对多传送给中间级反压处理模块;
所述中间级反压处理模块,用于将上行队列管理器送来的反压状态信息进行处理并分发给对应的第三级模块;
所述第三级输出模块包括一组下行队列管理器,数量与上行队列管理器相同,下行队列管理器包括有单播信元队列组和多播信元队列组,用于将队列反压状态信息送至与其相对应的上行队列管理器和将中间级反压处理模块处理后送来的反压状态信息传给与其对应的上行队列管理器。
2、根据权利要求1所述的基于三级交换网的下行队列快速反压传送装置,其特征在于,所述上行队列管理器和下行队列管理器个数分别为16。
3、根据权利要求1所述的基于三级交换网的下行队列快速反压传送装置,其特征在于,所述每一上行队列管理器的单播信元队列组个数为16。
4、根据权利要求1所述的基于三级交换网的下行队列快速反压传送装置,其特征在于:所述每一上行队列管理器的每一个单播信元队列组分为4个单播虚拟输出队列,每个单播虚拟输出队列根据优先级划分为4个子队列,共有256个单播子队列。
5、根据权利要求1所述的基于三级交换网的下行队列快速反压传送装置,其特征在于,所述每一上行队列管理器的多播信元队列组个数为16。
6、根据权利要求1所述的基于三级交换网的下行队列快速反压传送装置,其特征在于:所述每一上行队列管理器的多播信元队列组分为1个多播虚拟输出队列,每个多播虚拟输出队列根据优先级划分为4个子队列,共有64个多播子队列。
7、根据权利要求1所述的基于三级交换网的下行队列快速反压传送装置,其特征在于,所述每一下行队列管理器的单播信元队列组个数为4。
8、根据权利要求1所述的基于三级交换网的下行队列快速反压传送装置,其特征在于:所述每一下行队列管理器的每一个单播信元队列组分为16个单播虚拟输入队列,每个单播虚拟输入队列根据优先级划分为4个子队列,共有256个单播子队列。
9、根据权利要求1所述的基于三级交换网的下行队列快速反压传送装置,其特征在于,所述每一下行队列管理器的多播信元队列组个数为1。
10、根据权利要求1所述的基于三级交换网的下行队列快速反压传送装置,其特征在于:所述每一下行队列管理器的多播信元队列组分为16个多播虚拟输入队列,每个多播虚拟输入队列对应一个上行队列管理器,每个多播虚拟输入队列根据优先级划分为4个子队列,共有64个多播子队列。
11、根据权利要求1所述的基于三级交换网的下行队列快速反压传送装置,其特征在于:所述每一下行队列管理器到相对应的上行队列管理器有至少两组下行队列反压状态信号线,一组信号线用于下行队列管理器将自己的下行队列反压状态信息通过上行队列管理器送给中间级反压处理模块进行处理,另一组信号线用于将中间级反压处理模块处理后的下行队列反压状态信息通过下行队列管理器送给上行队列管理器。
12、一种基于三级交换网的下行队列快速反压传送方法,其特征在于,该方法包括以下步骤:
步骤1、第三级输出模块将每一个下行管理器队列中的下行队列反压状态信息送至对应的第一级输入模块的各上行队列管理器;
步骤2、第一级输入模块将接收到的下行队列反压信息以带内方式传送给中间级反压处理模块;
步骤3、中间级反压处理模块对下行队列反压状态信息进行处理,并以带内方式发给第三级输出模块的各下行队列管理器;
步骤4、第三级输出模块提取从中间级反压处理模块送来的下行队列反压状态信息,并将其发送至与其对应的上行队列管理器;
步骤5、第一级输入模块每个上行队列管理器根据所收到的下行队列反压状态信息控制各个队列的信元发送。
13、根据权利要求12所述的基于三级交换网的下行队列快速反压传送方法,其特征在于:所述步骤1中的行队列反压状态信息为320位。
14、根据权利要求12所述的基于三级交换网的下行队列快速反压传送方法,其特征在于:所述步骤1中的上行队列管理器的出口带宽大于入口带宽。
15、根据权利要求12所述的基于三级交换网的下行队列快速反压传送方法,其特征在于:所述步骤1中的对应具体是指下行队列管理器n的单播队列组和多播队列组中的虚拟输入队列m与第m个上行队列管理器中的单播信元队列组n和多播信元队列组n一一对应。
16、根据权利要求12所述的基于三级交换网的下行队列快速反压传送方法,其特征在于:所述步骤2中的带内方式为上行队列管理器定期向中间级反压处理模块发送空闲信元,利用空闲信元净荷部分一次性将下行队列反压信息传送给中间级反压处理模块的方式。
17、根据权利要求16所述的基于三级交换网的下行队列快速反压传送方法,其特征在于:所述空闲信元包括每4个字节传一组虚拟输入队列的反压状态信息的20位信息位和1位水平奇校验位。
18、根据权利要求12所述的基于三级交换网的下行队列快速反压传送方法,其特征在于:所述步骤2中的带内方式还可以为利用数据信元的信元头部分的传送方式。
19、根据权利要求18所述的基于三级交换网的下行队列快速反压传送方法,其特征在于:所述数据信元头一次传送包括8个单播队列和2个多播队列的40位下行队列反压状态信息。
20、根据权利要求19所述的基于三级交换网的下行队列快速反压传送方法,其特征在于:所述利用数据信元的信元头部分传送所有320位下行队列反压状态信息的时间为8个信元周期。
21、根据权利要求20所述的基于三级交换网的下行队列快速反压传送方法,其特征在于:所述数据信元头还有一个标示,用于识别正在传送的某一下行队列的反压状态信息。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CNB2005100872010A CN100417136C (zh) | 2005-07-27 | 2005-07-27 | 一种基于三级交换网的下行队列快速反压传送装置及方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CNB2005100872010A CN100417136C (zh) | 2005-07-27 | 2005-07-27 | 一种基于三级交换网的下行队列快速反压传送装置及方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN1848803A true CN1848803A (zh) | 2006-10-18 |
CN100417136C CN100417136C (zh) | 2008-09-03 |
Family
ID=37078172
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CNB2005100872010A Expired - Fee Related CN100417136C (zh) | 2005-07-27 | 2005-07-27 | 一种基于三级交换网的下行队列快速反压传送装置及方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN100417136C (zh) |
Cited By (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2008092404A1 (fr) * | 2007-01-25 | 2008-08-07 | Huawei Technologies Co., Ltd. | Procédé et appareil de réalisation de contrôle de flux sur la base d'une file d'attente de sortie |
WO2008095445A1 (fr) * | 2007-02-10 | 2008-08-14 | Huawei Technologies Co., Ltd. | Procédé de contre-pression, système et nœud d'un réseau de commutation multi-étages et nœud de commutation d'étage intermédiaire |
CN101656893B (zh) * | 2009-08-04 | 2012-02-01 | 华为技术有限公司 | 一种多级交换网 |
CN102780611A (zh) * | 2012-06-06 | 2012-11-14 | 华为技术有限公司 | 包交换电路及包交换方法 |
WO2013173966A1 (zh) * | 2012-05-21 | 2013-11-28 | 华为技术有限公司 | 基于三级互联交换网络的调度方法、装置及系统 |
CN104092632A (zh) * | 2014-07-14 | 2014-10-08 | 杭州华三通信技术有限公司 | 一种网络设备 |
CN104486237A (zh) * | 2014-12-18 | 2015-04-01 | 西安电子科技大学 | clos网络中无乱序分组路由及调度方法 |
WO2015070393A1 (en) * | 2013-11-13 | 2015-05-21 | Qualcomm Incorporated | Method and apparatus for qcn-like cross-chip function in multi-stage ethernet switching |
CN111431811A (zh) * | 2019-01-10 | 2020-07-17 | 华为技术有限公司 | 一种报文传输控制方法、装置和网络设备 |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7023841B2 (en) * | 2000-12-15 | 2006-04-04 | Agere Systems Inc. | Three-stage switch fabric with buffered crossbar devices |
US7161906B2 (en) * | 2000-12-15 | 2007-01-09 | Agere Systems Inc. | Three-stage switch fabric with input device features |
CN1279713C (zh) * | 2003-08-18 | 2006-10-11 | 烽火通信科技股份有限公司 | 一种三级克洛斯矩阵无阻塞扩展方法 |
EP1665654A4 (en) * | 2003-09-06 | 2006-11-02 | Technologies Inc Teak | STRICTLY NON-BLOCKING MULTI-STAGE LINEAR MULTI-STAGE MULTI-STAGE NETWORKS |
CN1529458B (zh) * | 2003-09-26 | 2010-04-14 | 中兴通讯股份有限公司 | 一种程控交换网中大容量无阻碍交换的方法 |
-
2005
- 2005-07-27 CN CNB2005100872010A patent/CN100417136C/zh not_active Expired - Fee Related
Cited By (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2008092404A1 (fr) * | 2007-01-25 | 2008-08-07 | Huawei Technologies Co., Ltd. | Procédé et appareil de réalisation de contrôle de flux sur la base d'une file d'attente de sortie |
US8174987B2 (en) | 2007-01-25 | 2012-05-08 | Huawei Technologies Co., Ltd. | Method and apparatus for implementing output queue-based flow control |
WO2008095445A1 (fr) * | 2007-02-10 | 2008-08-14 | Huawei Technologies Co., Ltd. | Procédé de contre-pression, système et nœud d'un réseau de commutation multi-étages et nœud de commutation d'étage intermédiaire |
US8102763B2 (en) | 2007-02-10 | 2012-01-24 | Huawei Technologies Co., Ltd. | Method, system and node for backpressure in multistage switching network |
CN101656893B (zh) * | 2009-08-04 | 2012-02-01 | 华为技术有限公司 | 一种多级交换网 |
US8897133B2 (en) | 2009-08-04 | 2014-11-25 | Huawei Technologies Co., Ltd. | Multi-stage switch fabric |
WO2013173966A1 (zh) * | 2012-05-21 | 2013-11-28 | 华为技术有限公司 | 基于三级互联交换网络的调度方法、装置及系统 |
CN102780611A (zh) * | 2012-06-06 | 2012-11-14 | 华为技术有限公司 | 包交换电路及包交换方法 |
WO2015070393A1 (en) * | 2013-11-13 | 2015-05-21 | Qualcomm Incorporated | Method and apparatus for qcn-like cross-chip function in multi-stage ethernet switching |
CN104092632A (zh) * | 2014-07-14 | 2014-10-08 | 杭州华三通信技术有限公司 | 一种网络设备 |
CN104092632B (zh) * | 2014-07-14 | 2017-11-14 | 新华三技术有限公司 | 一种网络设备 |
CN104486237A (zh) * | 2014-12-18 | 2015-04-01 | 西安电子科技大学 | clos网络中无乱序分组路由及调度方法 |
CN104486237B (zh) * | 2014-12-18 | 2017-10-27 | 西安电子科技大学 | clos网络中无乱序分组路由及调度方法 |
CN111431811A (zh) * | 2019-01-10 | 2020-07-17 | 华为技术有限公司 | 一种报文传输控制方法、装置和网络设备 |
Also Published As
Publication number | Publication date |
---|---|
CN100417136C (zh) | 2008-09-03 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN1848803A (zh) | 一种基于三级交换网的下行队列快速反压传送装置及方法 | |
CN101296186B (zh) | 一种路由交换设备、方法和交换线卡板 | |
US7023841B2 (en) | Three-stage switch fabric with buffered crossbar devices | |
US7161906B2 (en) | Three-stage switch fabric with input device features | |
CN101052013A (zh) | 一种网络设备内部管理通道实现的方法及系统 | |
EP1891778B1 (en) | Electronic device and method of communication resource allocation. | |
CN1623302A (zh) | 具有集成以太网交换机接口的atm端口模块 | |
CN1812367A (zh) | 一种多协议标签交换网络的数据传输方法及系统 | |
EP2632099B1 (en) | Data flow switch control method and relevant device | |
CN101043341A (zh) | 以太网供电中跨设备及其分配电能的方法及包含该中跨设备的通信系统 | |
JP3322195B2 (ja) | Lanスイッチ | |
CN1897492A (zh) | 通信链路结合设备和方法 | |
CN1825804A (zh) | 实现分布式系统板间通信的系统和方法 | |
CN102111327B (zh) | 信元调度方法和系统 | |
CN1866927A (zh) | 实现信息交换的系统及方法和调度算法 | |
CN1859382A (zh) | 支持多业务的通信设备及其方法 | |
CN103257946A (zh) | 一种紧耦合多控存储系统控制器之间的高速互联方法 | |
CN103136141A (zh) | 一种多控制器间的高速互联方法 | |
US20020131412A1 (en) | Switch fabric with efficient spatial multicast | |
CN110290074A (zh) | FPGA片间互连的Crossbar交换单元设计方法 | |
CN1449160A (zh) | 用于包括无阻塞交换结构和线路卡接口的系统的包调度 | |
CN1859279A (zh) | 一种调度纵横式交换矩阵中变长数据包队列的方法 | |
CN1130951C (zh) | 多级异步转移模式节点的分段性能监视 | |
CN104333516A (zh) | 用于组合输入交叉点缓存交换结构的旋转轮训调度方法 | |
EP2477366B1 (en) | Data transmission method, apparatus and system |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20080903 |
|
CF01 | Termination of patent right due to non-payment of annual fee |