CN104104617A - 一种报文仲裁方法及装置 - Google Patents
一种报文仲裁方法及装置 Download PDFInfo
- Publication number
- CN104104617A CN104104617A CN201410386717.4A CN201410386717A CN104104617A CN 104104617 A CN104104617 A CN 104104617A CN 201410386717 A CN201410386717 A CN 201410386717A CN 104104617 A CN104104617 A CN 104104617A
- Authority
- CN
- China
- Prior art keywords
- message
- output port
- request
- sent
- port
- 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
Landscapes
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明提供了一种报文调度方法及装置,包括通过先将待发送报文缓存,在接收端口与输出端口间建立信息交互渠道,当输出端口空闲时,使接收端口获知,若接收端口有发送至该输出端口的报文时向该输出端口发送连接请求,而输出端口对各接收端口的请求进行仲裁后择一响应,接收端口在得到输出端口响应后,将该报文调度至输出端口后发送出去,从而确保了输出端口总有报文发送,而每个接收端口上的缓存的报文也能在得到响应后即刻发送,无需按端口分队列依次等待。采用本发明实施例中的技术方案,能够用于多端口减缓队头阻塞,提高了吞吐率,同一个端口的报文集中缓存,空间利用率高且消耗资源少。
Description
技术领域
本发明涉及计算机技术领域,特别涉及一种报文仲裁方法及装置。
背景技术
按照数据缓存方式的不同,交换一般可采用IQ(Input Queue,输入队列)缓存、OQ(Output Queue,输出队列)缓存、以及CIOQ(Combined Input OutputQueuing,组合队列)缓存。
这三种缓存都存在各自的问题,例如:OQ需要很高的吞吐率,且丢包比较严重;CIOQ在输入和输出端都设置缓存队列,消耗较多的缓存;IQ只在数据的输入端设置缓存队列,控制简单,消耗资源少,但是IQ缓存方式的存在HOL(head of line,队头阻塞)问题。
现有技术中解决队头阻塞的一种方法是设置VOQ(Virtual Output Queue,虚拟输出队列),在每个输入端口设置N个队列,输入的数据根据目的端口分别送入相应的队列中,这样由于每一个队列对应一个输出端口,从而可以避免队头阻塞。但消耗的缓存容量也变为N倍。
另一种是共享缓存的方法,将交换机所有端口的数据存入一个共享缓存中,然后将数据从共享缓存转发到输出端口,各个端口分时共享缓存。共享缓存方式能够提高缓存利用率,但要求访问缓存的带宽是每个端口的N倍,因此难以用于端口较多的情况。
现有技术的不足在于:现有技术中缺乏一种用于多端口、高吞吐率、空间利用率高且消耗资源少的解决队头阻塞的方法。
发明内容
本发明实施例中提供了一种报文仲裁方法及装置,用以解决队头阻塞。
本发明实施例中提供了一种报文仲裁方法,包括步骤:
将每一接收端口接收到的待发送报文置于该接收端口的缓冲区内缓存;
在输出端口空闲时,通知各接收端口该输出端口处于可发送状态;
确定接到通知的接收端口缓冲区内有发送至所述输出端口的报文时,向所述输出端口发送连接请求;
在得到所述输出端口响应后,将该报文调度至所述输出端口后发送。
本发明实施例中还提供了一种报文仲裁装置,包括:分别位于各接收端口的请求模块,以及分别位于各输出端口的仲裁模块,其中:
请求模块,用于将接收端口接收到的待发送报文置于该接收端口的缓冲区内缓存;
仲裁模块,用于在输出端口空闲时,通知各接收端口该输出端口处于可发送状态;
请求模块进一步用于在接到通知后,确定接收端口缓冲区内有发送至所述输出端口的报文时,向所述输出端口的仲裁模块发送连接请求;
请求模块进一步用于在得到所述输出端口仲裁模块的响应后,将该报文调度至所述输出端口后发送。
本发明的有益效果是:
本发明实施例中提供的报文调度方法和装置,通过先将待发送报文缓存,在接收端口与输出端口间建立信息交互渠道,采用握手的方式完成请求与仲裁,这样,当输出端口空闲时,使接收端口获知,若接收端口有发送至该输出端口的报文时向该输出端口发送连接请求,而输出端口对各接收端口的请求进行仲裁后择一响应,接收端口在得到输出端口响应后,将该报文调度至输出端口后发送出去,从而确保了输出端口总有报文发送,而每个接收端口上的缓存的报文也能在得到响应后即刻发送,无需按端口分队列依次等待。采用本发明实施例中的技术方案,能够用于多端口减缓队头阻塞,提高了吞吐率,同一个端口的报文集中缓存,空间利用率高且消耗资源少。
附图说明
下面将参照附图描述本发明的具体实施例,其中:
图1为本发明实施例中的报文调度方法的使用流程示意图。
图2为本发明实施例中的接收端口的结构示意图。
图3为本发明实施例中的接收端口上的状态机示意图。
图4为本发明实施例中的报文调度装置的实施结构示意图。
具体实施方式
为了使本发明实施例中的技术方案及优点更加清楚明白,以下结合附图对本发明的示例性实施例进行进一步详细的说明,显然,所描述的实施例仅是本发明的一部分实施例,而不是所有实施例的穷举。
发明人在发明过程中注意到:由于一般队列是先进先出的,当队列中前面的数据没有及时转发,那么同一队列中后面的数据也将被阻塞,即使后面数据的目的端口是空闲的。这就是队头阻塞的问题。
目前现有技术中,解决队头阻塞的的方法有两种,一种是设置虚拟输出队列VOQ,一种是共享缓存。
设置虚拟输出队列的解决方法是在每个输入端口设置N个队列,输入的数据根据报文的目的端口分别送入相应的队列中,这样由于每一个队列对应一个输出端口,从而可以避免队头阻塞。但消耗的缓存容量也变为N倍。
共享缓存的解决方法是将交换机所有端口的数据存入一个共享缓存中,然后将数据从共享缓存转发到输出端口,各个端口分时共享缓存。共享缓存方式能够提高缓存利用率,但要求访问缓存的带宽是每个端口的N倍,因此难以用于端口较多的情况。
针对上述不足,本发明实施例中提供了一种报文调度方法及装置,下面进行说明。
图1为本发明实施例中报文调度方法的使用流程示意图,如图所示,可以包括步骤:
步骤101、将每一接收端口接收到的待发送报文置于该接收端口的缓冲区内缓存;
步骤102、在输出端口空闲时,通知各接收端口该输出端口处于可发送状态;
步骤103、确定接到通知的接收端口缓冲区内有发送至所述输出端口的报文时,向所述输出端口发送连接请求;
步骤104、在得到所述输出端口响应后,将该报文调度发送至所述输出端口后发送。
具体实施中,将每个接收端口接收到的待发送的报文放入缓冲区,在报文的输出端口空闲时发出请求,若输出端口不空闲,则进入等待状态。其中,输出端口按现有机制能够获知自己是否空闲,在空闲时,可以通知所有接收端口自己处于空闲,接到通知后,检查接收端口缓冲区内是否有可以发送至此空闲输出端口的报文,在当输出端口空闲且缓冲区内有目的端口为此输出端口的报文时,向输出端口发出请求。实施中可以用握手的方式实现接收端口与输出端口之间的交互。
为了便于理解,实施例中会提到“目的端口”这一用语,该用语主要是在从报文角度描述时采用,表达的是接收端口中的某个报文总会有一个输出端口是其“目的端口”。例如,上述内容也可描述成:将每个接收端口接收到的待发送的报文放入缓冲区,在报文的目的端口空闲时发出请求,若目的端口不空闲,则进入等待状态。输出端口在空闲时,可以通知所有接收端口自己处于空闲,接到通知后,检查接收端口缓冲区内是否有可以发送至此空闲输出端口的报文,在当输出端口空闲且缓冲区内有目的端口为此输出端口的报文时,向输出端口发出请求。
具体实施中,为避免队头阻塞,报文缓冲区没有采用FIFO(First Input FirstOutput,先入先出队列),可以采用随机访问的RAM(Random-Access Memory,随机存取存储器)。当最前面报文的目的端口忙时,可以查看后续报文的目的端口是否空闲,如果作为该报文目的端口的输出端口空闲,则可先行发送。为此,可以将一定数目的报文缓存在寄存器中,便于同时查看多个报文的信息,采用的结构如图2所示。
如图2所示,PktDataRam和PktCtrlFifo为接收端口的数据缓冲区和控制缓冲区。数据缓冲区用于寄存报文,控制缓冲区用于保存报文的控制信息,包括目的端口、长度、报文在PktDataRam中的地址等。利用检查窗口同时查看多个报文。检查窗口中的每一个元素为一个slot(条目),每个slot保存一个从PktCtrlFifo中读取的报文信息。
实施中,根据报文的长度,在报文发送将要结束时,可以提前对后续的请求进行响应。
具体实施中,一个报文从发起请求到仲裁结束到发送通常需要花费若干周期,为了减少发送报文之间的间隔,提高吞吐率,本发明实施例中采用提前发送报文结束信号的方式,因此将报文长度作为控制信息缓存,即图2中的PktLen。所谓提前发送结束,就是说在报文还没有发送完毕,还有一定长度没有发送完,就提前发出“数据即将结束”等信息的通知,比如还差一定长度(3或4个周期)就结束时,发送报文即将结束信号。
实施中,利用检查窗口来同时检查多个报文,以确定接到通知的接收端口缓冲区内是否有发送至所述输出端口的报文,其中检查窗口的宽度为同时检查的报文的数目。
具体实施中,利用检查窗口可以同时检查若干个报文,窗口的宽度即为同时检查的报文数目。具体地,如图2所示,检查窗口中的每个元素称为一个slot,一个slot有若干个寄存器,保存待发送报文的各种信息,如表1所示为:
表1 slot保存的信息
Name | Bits | Description |
W | 1 | 是否有等待发送报文 |
DestPort | 4 | 报文的目的端口 |
Addr | 9 | 等待报文在数据缓冲区中的首地址 |
PktLen | 8 | 等待报文的长度,以字为单位 |
其中,检查窗口中每个slot保存的信息包括:W,表示是否有等待发送的报文;DestPort,表示报文的目的端口;Addr,表示等待报文在数据缓冲区中的首地址;PktLen,表示等待报文的长度,以字为单位。表中每个信息占用的位数可以根据实际需要调整。
窗口头部的slot优先级高,即如果两个slot的报文都能发送,那么优先发送前面slot的报文。
具体实施中,检查窗口是属于控制缓冲区的一个功能,数据缓冲区用于寄存报文。
实施中,当检查窗口内前面报文的输出端口状态为非空闲而后续报文的输出端口为空闲时,可以向后续报文的输出端口发送连接请求。也即,当检查窗口内前面报文的目的端口状态为非空闲而后续报文的目的端口为空闲时,可以向后续报文的输出端口发出请求。
实施中,在向输出端口发送连接请求之后,还可以包括:
在接到请求的输出端口上,对各接收端口的请求进行仲裁后,确定该输出端口响应的接收端口。
也即,在向输出端口发出请求之后,接到请求的输出端口上,将对各接收端口发出的请求进行仲裁,仲裁后确定该输出端口响应哪个接收端口的请求。
具体实施中,输出端口根据某种策略对请求给出响应。该策略可以是轮转调度,也可以是其他相对公平的仲裁策略,只要能够对各请求进行相对公平的仲裁后选择出响应的接收端口即可,实施中当然可以按照需要选用各种仲裁策略,这是本领域技术人员容易知晓的。这里,可能多个接收端口同时向同一个输出端口发出请求,而输出端口只能响应其中的一个,那些没有获得响应的报文则放弃请求,进入等待状态,接收端口仍持续检查缓冲区中的报文,当其中某个报文的目的端口空闲(不一定是上次请求失败的报文)后,立即发起请求。
实施中,在将报文调度发送至所述输出端口发送完毕后,还可以进一步包括:在检查窗口中前移后续报文和/或将缓冲区内缓存的报文添加至检查窗口尾部。
具体实施中,当检查窗口中一个slot的报文被发送后,那么该slot成为空闲的,如果与其相邻的后一slot中有报文,那么可以将后面slot的报文移到该slot中。移动的目的是让空闲的slot集中在窗口的尾部,从而允许读入新的报文。
具体实施中,当检查窗口尾部有空闲slot时,可以从缓冲区中读取新的报文信息,填充进检查窗口。这样的目的是保证所有接收端口的报文都能够保证顺序的发送至目的端口。
实施中,还可以进一步包括:当检查窗口中最前面报文的输出端口状态为忙且正发送后续报文至输出端口时,为最前面报文设定阈值T,在正在发送的报文将要结束的T个周期内,若最前面报文的输出端口空闲,则提前对最前面的报文向其输出端口发出请求,其中阈值T随调度结束的报文数目增加。
也即,当检查窗口中最前面报文的目的端口状态为忙且正发送后续报文至目的端口时,可以为最前面报文设定阈值T,在正在发送的报文将要结束的T个周期内,提前对最前面报文进行响应,其中阈值T随调度结束的报文数目增加而增加。
具体实施中,检查窗口里面等待的最前面报文的目的端口空闲,但这时恰好有报文正在发送,不能发出请求;当报文发送完毕之后,最前面报文的目的端口可能已被其它端口获得。为此,需要为检查窗口中最前面报文设定一个阈值T,允许正在发送的报文发送完毕之前T个周期内,如果最前面报文的目的端口空闲,则可提前发出请求,尝试占据目的端口,随着等待窗口中处理完毕的报文的数量逐渐增大,该阈值应该动态增加。
下面结合一个具体的实施示例来进行说明。
图3为接收端口上的状态机。如图3所示,将每个接收端口接收到的待发送的报文放入缓冲区,即IDLE状态。在缓冲区内利用检查窗口同时对多个报文进行检查,若有报文请求且其目的端口空闲,则向输出端口发出请求,即进入REQUEST状态。在接到请求的输出端口上,对各接收端口的请求进行仲裁,等待仲裁的状态即为GNT_WAIT状态。进行仲裁后,确定该输出端口响应的接收端口。由于可能多个可发送报文同时发出请求,而在输出端口上只能响应其中一个,那些没有获得响应的请求不能立即发送,即请求失败,回到IDLE状态。在请求被响应,即进入GNT_OK状态后,又进入PKT_SEND状态,即请求的目的端口正好有响应,此时开始发送报文,在报文发送即将结束时(便于下一个报文提前发出请求)状态机回到IDLE状态。在向所述输出端口发送报文时,在报文还没有发送完毕,可以提前发送报文结束信号。
基于同一发明构思,本发明实施例中还提供了一种报文调度装置,由于该装置解决问题的原理与一种报文调度方法相似,因此该装置的实施可以参见报文调度方法的实施,重复之处不再赘述。
图4为本发明实施例中报文调度装置的实施结构示意图,可以包括:分别位于各接收端口的请求模块(如图所示,分别标记为4011、4012至401N),以及分别位于各输出端口的仲裁模块(如图所示,分别标记为4021、4022至402N),其中:
请求模块,用于将接收端口接收到的待发送报文置于该接收端口的缓冲区内缓存;
仲裁模块,用于在输出端口空闲时,通知各接收端口该输出端口处于可发送状态;
请求模块进一步用于在接到输出端口空闲通知后,确定接收端口缓冲区内有发送至所述目的端口的报文时,向所述输出端口的仲裁模块发送连接请求;
请求模块进一步用于在得到所述输出端口仲裁模块的响应后,将该报文调度至所述输出端口后发送。
进一步的,请求模块还用于根据报文的长度在报文发送将要结束时,通知仲裁模块;
仲裁模块还用于提前对后续报文的请求进行响应。
进一步的,请求模块利用检查窗口来同时检查多个报文,以确定接到通知的接收端口缓冲区内是否有发送至所述输出端口的报文,其中检查窗口的宽度为同时检查的报文的数目。
进一步的,请求模块还用于当检查窗口内前面报文的输出端口状态为非空闲而后续报文的输出端口为空闲时,向后续报文的输出端口发送连接请求。
进一步的,仲裁模块还用于在接到各接收端口上请求模块发出的的请求之后,对各接收端口的请求进行仲裁,确定该输出端口要响应的接收端口。
进一步的,请求模块还用于在将报文调度至所述输出端口发送完毕后,在检查窗口中前移后续报文和/或将缓冲区内缓存的报文添加至检查窗口尾部。
进一步的,请求模块还用于当检查窗口中最前面报文的输出端口状态为忙且正发送后续报文至输出端口时,为最前面报文设定阈值T,在正在发送的报文将要结束的T个周期内,若最前面报文的输出端口空闲,则提前对最前面的报文向其输出端口发出请求,其中阈值T随调度结束的报文数目增加。
为了描述的方便,以上所述报文调度装置的各部分以功能分为各种部件或单元分别描述。当然,在实施本发明时可以把各部件或单元的功能在同一个或多个软件或硬件中实现。
本发明实施例提供的报文调度方法和装置,通过先将待发送报文缓存,当目的端口空闲且接收端口有发送至该目的端口的报文时向该输出端口发出请求,在得到输出端口响应后,将该报文调度至该输出端口发送。其中包括:位于窗口内的所有报文被同时检查,能够保证去往同一个目的端口的报文先后顺序;请求模块和仲裁模块之间采用握手的方式完成请求与仲裁;以及采用提前发送报文结束信号的方法,当报文快结束时,请求模块提前告知仲裁模块将要结束,从而允许仲裁模块在当前报文尚未结束时就开始仲裁新的报文。采用本发明实施例中提供的技术方案,能够用于多端口减缓队头阻塞,提高了吞吐率,同一个端口的报文集中缓存,空间利用率高且消耗资源少。
以上实施例仅用以说明本发明的技术方案,而非对其进行限制。因此,在不背离本发明的精神及其实质的情况下,本领域技术人员可作出各种改变、替换和变型。很显然,但这些改变、替换和变型都应涵盖于本发明权利要求的保护范围之内。
Claims (14)
1.一种报文调度方法,其特征在于,所述方法包括步骤:
将每一接收端口接收到的待发送报文置于该接收端口的缓冲区内缓存;
在输出端口空闲时,通知各接收端口该输出端口处于可发送状态;
确定接到通知的接收端口缓冲区内有发送至所述输出端口的报文时,向所述输出端口发送连接请求;
在得到所述输出端口响应后,将该报文调度至所述输出端口后发送。
2.如权利要求1所述的报文调度方法,其特征在于,进一步包括:根据报文的长度在报文发送将要结束时,提前对后续报文的请求进行响应。
3.如权利要求1至2任一所述的报文调度方法,其特征在于,利用检查窗口同时检查多个报文,以确定接到通知的接收端口缓冲区内是否有发送至所述输出端口的报文,其中检查窗口的宽度为同时检查的报文的数目。
4.如权利要求3所述的报文调度方法,其特征在于,进一步包括:当检查窗口内前面报文的输出端口状态为非空闲而后续报文的输出端口为空闲时,向后续报文的输出端口发送连接请求。
5.如权利要求1所述的报文调度方法,其特征在于,在向所述输出端口发送连接请求之后,进一步包括:
在接到请求的输出端口上,对各接收端口的请求进行仲裁后,确定该输出端口响应的接收端口。
6.如权利要求2至5任一所述的报文调度方法,其特征在于,在将报文调度至所述输出端口发送完毕后,进一步包括:在检查窗口中前移后续报文和/或将缓冲区内缓存的报文添加至检查窗口尾部。
7.如权利要求6所述的报文调度方法,其特征在于,进一步包括:
当检查窗口中最前面报文的输出端口状态为忙且正发送后续报文至输出端口时,为最前面报文设定阈值T,在正在发送的报文将要结束的T个周期内,若最前面报文的输出端口空闲,则提前对最前面的报文向其输出端口发出请求,其中阈值T随调度结束的报文数目增加。
8.一种报文调度装置,其特征在于,包括:分别位于各接收端口的请求模块,以及分别位于各输出端口的仲裁模块,其中:
请求模块,用于将接收端口接收到的待发送报文置于该接收端口的缓冲区内缓存;
仲裁模块,用于在输出端口空闲时,通知各接收端口该输出端口处于可发送状态;
请求模块进一步用于在接到通知后,确定接收端口缓冲区内有发送至所述输出端口的报文时,向所述输出端口的仲裁模块发送连接请求;
请求模块进一步用于在得到所述输出端口仲裁模块的响应后,将该报文调度至所述输出端口后发送。
9.如权利要求8所述的报文调度装置,其特征在于,请求模块进一步用于根据报文的长度在报文发送将要结束时,通知仲裁模块;
仲裁模块进一步用于提前对后续报文的请求进行响应。
10.如权利要求8至9任一所述的报文调度装置,其特征在于,请求模块进一步利用检查窗口同时检查多个报文,以确定接到通知的接收端口缓冲区内是否有发送至所述输出端口的报文,其中检查窗口的宽度为同时检查的报文的数目。
11.如权利要求10所述的报文调度装置,其特征在于,请求模块进一步用于当检查窗口内前面报文的输出端口状态为非空闲而后续报文的输出端口为空闲时,向后续报文的输出端口发送连接请求。
12.如权利要求8所述的报文调度装置,其特征在于,仲裁模块进一步用于在收到接收端口上请求模块发出的连接请求之后,对各接收端口的请求进行仲裁后,确定该输出端口响应的接收端口。
13.如权利要求9至12任一所述的报文调度装置,其特征在于,请求模块进一步用于在将报文调度至所述输出端口发送完毕后,在检查窗口中前移后续报文和/或将缓冲区内缓存的报文添加至检查窗口尾部。
14.如权利要求13任一所述的报文调度装置,其特征在于,请求模块进一步用于当检查窗口中最前面报文的输出端口状态为忙且正发送后续报文至输出端口时,为最前面报文设定阈值T,在正在发送的报文将要结束的T个周期内,若最前面报文的输出端口空闲,则提前对最前面的报文向其输出端口发出请求,其中阈值T随调度结束的报文数目增加。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410386717.4A CN104104617B (zh) | 2014-08-07 | 2014-08-07 | 一种报文仲裁方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410386717.4A CN104104617B (zh) | 2014-08-07 | 2014-08-07 | 一种报文仲裁方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN104104617A true CN104104617A (zh) | 2014-10-15 |
CN104104617B CN104104617B (zh) | 2017-10-17 |
Family
ID=51672424
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201410386717.4A Active CN104104617B (zh) | 2014-08-07 | 2014-08-07 | 一种报文仲裁方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN104104617B (zh) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104618266A (zh) * | 2015-02-09 | 2015-05-13 | 浪潮集团有限公司 | 一种多端口间报文转发的方法和装置 |
CN109660463A (zh) * | 2017-10-11 | 2019-04-19 | 华为技术有限公司 | 一种拥塞流识别方法及网络设备 |
CN111131089A (zh) * | 2019-12-24 | 2020-05-08 | 西安电子科技大学 | 改善多播业务hol阻塞的队列管理方法 |
WO2022160307A1 (zh) * | 2021-01-30 | 2022-08-04 | 华为技术有限公司 | 一种路由器及片上系统 |
Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1604537A (zh) * | 2003-09-29 | 2005-04-06 | 中国人民解放军理工大学通信工程学院 | 一种支持多优先级的高速Crossbar调度策略 |
US7203202B2 (en) * | 2001-10-31 | 2007-04-10 | Polytechnic University | Arbitration using dual round robin matching with exhaustive service of winning virtual output queue |
CN101459598A (zh) * | 2007-12-14 | 2009-06-17 | 华为技术有限公司 | 实现分组交换的方法及其系统 |
CN101465806A (zh) * | 2008-10-22 | 2009-06-24 | 华为技术有限公司 | 一种调度交换网数据包的方法、装置和系统 |
US20090252493A1 (en) * | 2006-12-26 | 2009-10-08 | Huawei Technologies Co., Ltd. | Network node, buffer device, and scheduling method |
CN101582854A (zh) * | 2009-06-12 | 2009-11-18 | 华为技术有限公司 | 一种数据交换方法、装置和系统 |
CN102164067A (zh) * | 2010-02-20 | 2011-08-24 | 华为技术有限公司 | 交换网流控实现方法、交换设备及系统 |
CN103220230A (zh) * | 2013-05-14 | 2013-07-24 | 中国人民解放军国防科学技术大学 | 支持报文交叉存储的动态共享缓冲方法 |
-
2014
- 2014-08-07 CN CN201410386717.4A patent/CN104104617B/zh active Active
Patent Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7203202B2 (en) * | 2001-10-31 | 2007-04-10 | Polytechnic University | Arbitration using dual round robin matching with exhaustive service of winning virtual output queue |
CN1604537A (zh) * | 2003-09-29 | 2005-04-06 | 中国人民解放军理工大学通信工程学院 | 一种支持多优先级的高速Crossbar调度策略 |
US20090252493A1 (en) * | 2006-12-26 | 2009-10-08 | Huawei Technologies Co., Ltd. | Network node, buffer device, and scheduling method |
CN101459598A (zh) * | 2007-12-14 | 2009-06-17 | 华为技术有限公司 | 实现分组交换的方法及其系统 |
CN101465806A (zh) * | 2008-10-22 | 2009-06-24 | 华为技术有限公司 | 一种调度交换网数据包的方法、装置和系统 |
CN101582854A (zh) * | 2009-06-12 | 2009-11-18 | 华为技术有限公司 | 一种数据交换方法、装置和系统 |
CN102164067A (zh) * | 2010-02-20 | 2011-08-24 | 华为技术有限公司 | 交换网流控实现方法、交换设备及系统 |
CN103220230A (zh) * | 2013-05-14 | 2013-07-24 | 中国人民解放军国防科学技术大学 | 支持报文交叉存储的动态共享缓冲方法 |
Non-Patent Citations (2)
Title |
---|
余英,李晶,张玉琢: "ATM交换机输入缓存队列HOL阻塞研究", 《计算机科学》 * |
刘东钢,侯紫峰: "一种基于输入队列的交换机快速会聚调度算法", 《计算机工程与应用》 * |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104618266A (zh) * | 2015-02-09 | 2015-05-13 | 浪潮集团有限公司 | 一种多端口间报文转发的方法和装置 |
CN109660463A (zh) * | 2017-10-11 | 2019-04-19 | 华为技术有限公司 | 一种拥塞流识别方法及网络设备 |
US11146489B2 (en) | 2017-10-11 | 2021-10-12 | Huawei Technologies Co., Ltd. | Congestion flow identification method and network device |
CN111131089A (zh) * | 2019-12-24 | 2020-05-08 | 西安电子科技大学 | 改善多播业务hol阻塞的队列管理方法 |
CN111131089B (zh) * | 2019-12-24 | 2021-07-27 | 西安电子科技大学 | 改善多播业务hol阻塞的队列管理方法 |
WO2022160307A1 (zh) * | 2021-01-30 | 2022-08-04 | 华为技术有限公司 | 一种路由器及片上系统 |
Also Published As
Publication number | Publication date |
---|---|
CN104104617B (zh) | 2017-10-17 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN104067576B (zh) | 用于在网络上传输并发数据流的系统 | |
WO2016127552A1 (zh) | 一种直接内存存取dma控制器及数据传输的方法 | |
CN104104617A (zh) | 一种报文仲裁方法及装置 | |
CN112100097B (zh) | 多测试通道优先级自适应仲裁方法和存储器访问控制器 | |
CN109697122A (zh) | 任务处理方法、设备及计算机存储介质 | |
CN111404931B (zh) | 一种基于持久性内存的远程数据传输方法 | |
CN114257559B (zh) | 一种数据报文的转发方法及装置 | |
CN101656658B (zh) | 一种提高队列管理中出队效率的方法和装置 | |
AU2003234641A1 (en) | Inter-chip processor control plane | |
US20070067531A1 (en) | Multi-master interconnect arbitration with time division priority circulation and programmable bandwidth/latency allocation | |
CN103220230A (zh) | 支持报文交叉存储的动态共享缓冲方法 | |
WO2014101502A1 (zh) | 基于内存芯片互连的内存访问处理方法、内存芯片及系统 | |
US20160246515A1 (en) | Method and arrangement for controlling requests to a shared electronic resource | |
WO2022199357A1 (zh) | 数据处理方法及装置、电子设备、计算机可读存储介质 | |
WO2015021878A1 (zh) | 一种应用于pci-e的流量控制方法、设备及系统 | |
WO2022110681A1 (zh) | 命令响应信息的返回方法、返回控制装置和电子设备 | |
Lu et al. | Local resource shaper for mapreduce | |
CN104104618B (zh) | 一种多播报文调度方法及装置 | |
EP1187422B1 (en) | Method and device for tunable packet arbitration | |
US20050213925A1 (en) | Fiber channel switching system | |
CN109522130A (zh) | 基于共享缓存的逆向调度方法 | |
US9336172B2 (en) | Parallel computer system, data transfer device, and method for controlling parallel computer system for performing arbitration | |
KR100335371B1 (ko) | 로컬 메모리 중재 및 인터페이스 장치 | |
WO2022160307A1 (zh) | 一种路由器及片上系统 | |
CN104717087B (zh) | 一种支持小业务的流量处理电路及方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant | ||
TR01 | Transfer of patent right | ||
TR01 | Transfer of patent right |
Effective date of registration: 20220727 Address after: 100089 building 36, courtyard 8, Dongbeiwang West Road, Haidian District, Beijing Patentee after: Dawning Information Industry (Beijing) Co.,Ltd. Patentee after: DAWNING INFORMATION INDUSTRY Co.,Ltd. Address before: 100193 building 36, Zhongguancun Software Park, 8 North East West Road, Haidian District, Beijing. Patentee before: Dawning Information Industry (Beijing) Co.,Ltd. |