本发明专利技术提供了一种队列管理方法及装置,其中,该方法包括:获取当前出队的队列的报文概数,其中,上述报文概数存储在队列管理组件内部,上述报文概数用于指示上述队列中当前有的报文数目的状态;根据上述报文概数判断上述队列允许再次出队的次数。本发明专利技术解决了相关技术中短包处理速率达不到系统带宽要求的问题,从而提高了队列出队(短包处理)的效率,有助于提高流量管理系统的性能。
【技术实现步骤摘要】
队列管理方法及装置
本专利技术涉及通信领域,具体而言,涉及一种队列管理方法及装置。
技术介绍
在数据通信领域,对数据产品的服务质量越来越高,因此对支持的队列数、带宽、步进粒度等流量管理的技术指标提出了更高的要求。流量管理系统的结构框图如图1所示,包括线侧组件,队列管理组件和缓存管理组件。队列管理组件为报文入队分配缓存空间,对报文出队进行调度。如果某个队列有报文并且授权出队时,报文可进行出队调度,因此队列管理系统需要对每个队列的报文数分别进行统计。当前流量管理系统需要支持的队列数越来越多,为了节省片内静态随机存取存储器(StaticRandomAccessMemory,简称为SRAM)资源,一般会将各个队列报文数的统计结果存储在外部QDRSRAM中。由于系统带宽要求越来越高,短包处理的时钟间隔越来越短,当短包处理时钟间隔小于QDRSRAM读延迟所需的时钟周期时,QDRSRAM中的报文数统计无法及时读出,导致无法及时地判断出是否可以再次出队,进而导致短包处理速率达不到系统带宽要求的问题。针对相关技术中上述至少之一的问题,目前尚未提出有效的解决方案。
技术实现思路
本专利技术提供了一种队列管理方法及装置,以至少解决相关技术中短包处理速率达不到系统带宽要求的问题。根据本专利技术的一个方面,提供了一种队列管理方法,其包括:获取当前出队的队列的报文概数,其中,上述报文概数存储在队列管理组件内部,上述报文概数用于指示上述队列中当前有的报文数目的状态;根据上述报文概数判断上述队列允许再次出队的次数。优选地,上述状态包括以下之一:上述报文概数等于0、上述报文概数等于1至N中任意一个数,上述报文概数大于上述N,其中,上述N为获取上述队列中当前有的报文数目所需的时钟周期允许上述队列出队的次数,上述报文数目存储在上述队列管组件的外部。优选地,根据上述报文概数判断上述队列允许再次出队的次数包括:上述报文概数大于1的情况下,判断出上述队列允许再次出队一次;上述报文概数大于2的情况下,判断出上述队列允许再次出队二次;依次判断,上述报文概数大于上述N的情况下,判断出上述队列允许再次出队N次。优选地,上述方法还包括:判断出上述队列允许再次出队的情况下,将上述报文数目减去判断出的上述队列允许再次出队的次数,并根据更新后的报文数目重新确定上述报文概数指示的状态。优选地,上述方法还包括:上述队列入队的情况下,将上述报文概数加上1,将上述报文数目加上1。根据本专利技术的另一方面,提供了一种队列管理装置,其包括:获取模块,用于获取当前出队的队列的报文概数,其中,上述报文概数存储在队列管理组件内部,上述报文概数用于指示上述队列中当前有的报文数目的状态;判断模块,用于根据上述报文概数判断上述队列允许再次出队的次数。优选地,上述状态包括以下之一:上述报文概数等于0、上述报文概数等于1至N中任意一个数,上述报文概数大于上述N,其中,上述N为获取上述队列中当前有的报文数目所需的时钟周期允许上述队列出队的次数,上述报文数目存储在上述队列管组件的外部。优选地,上述判断模块包括:第一判断单元,用于上述报文概数大于1的情况下,判断出上述队列允许再次出队一次;第二判断单元,上述报文概数大于2的情况下,判断出上述队列允许再次出队二次;第N判断单元,用于上述报文概数大于N的情况下,判断出上述队列允许再次出队N次。优选地,上述队列管理装置还包括:第一处理模块,用于判断出上述队列允许再次出队的情况下,将上述报文数目减去判断出的上述队列允许再次出队的次数,并根据更新后的报文数目重新确定上述报文概数指示的状态。优选地,上述队列管理装置还包括:第二处理模块,用于上述队列入队的情况下,将上述报文概数加上1,将上述报文数目加上1。在本专利技术中,通过获取当前出队的队列的报文概数,该报文概数存储在队列管理组件内部,所述报文概数用于指示所述队列中当前有的报文数目的状态,并根据所述报文概数判断所述队列允许再次出队的次数,实现了可以快速地获取报文概数,来及时地判断出允许再次出队的次数,缩短了判断是否允许再次出队所需的时间,从而提高了队列出队(短包处理)的效率,有助于提高流量管理系统的性能。附图说明此处所说明的附图用来提供对本专利技术的进一步理解,构成本申请的一部分,本专利技术的示意性实施例及其说明用于解释本专利技术,并不构成对本专利技术的不当限定。在附图中:图1是根据相关技术的流量管理系统的结构框图;图2是根据本专利技术实施例的队列管理方法流程图;图3是根据本专利技术实施例的队列管理装置的结构框图;图4是根据本专利技术实施例的使用上述队列管理装置的流量管理系统的结构框图;图5是根据本专利技术实施例的使用上述队列管理方法时入队处理流程的示意图;图6是根据本专利技术实施例的使用上述队列管理方法时出队处理流程的示意。具体实施方式下文中将参考附图并结合实施例来详细说明本专利技术。需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互组合。本实施例提供了一种队列管理方法,如图2所示,该队列管理方法包括步骤S202至步骤S204。步骤S202:获取当前出队的队列的报文概数,其中,上述报文概数存储在队列管理组件内部,上述报文概数用于指示上述队列中当前有的报文数目的状态。步骤S204:根据上述报文概数判断上述队列允许再次出队的次数。通过上述步骤,通过获取当前出队的队列的报文概数,该报文概数存储在队列管理组件内部,所述报文概数用于指示所述队列中当前有的报文数目的状态,并根据所述报文概数判断所述队列允许再次出队的次数,实现了可以快速地获取报文概数,来及时地判断出允许再次出队的次数,缩短了判断是否允许再次出队所需的时间,从而提高了队列出队(短包处理)的效率,有助于提高流量管理系统的性能。为了减少队列管理组件片内的存储资源的占用,在本优选实施例中,上述状态包括以下之一:上述报文概数等于0、上述报文概数等于1至N中任意一个数,上述报文概数大于上述N,其中,上述N为获取上述队列中当前有的报文数目所需的时钟周期允许上述队列出队的次数,上述报文数目存储在上述队列管组件的外部。为了减少存储资源的占用,上述报文概数的状态可以采用bits的形式来存储,例如,当N=1时,需要存储报文概数的状态包括以下之一:报文概数=0,报文概数=1,报文概数>1,因此可以采用2bit的形式存储,2’b00来表示无报文(报文概数=0),以2’b01来表示有1个报文(报文概数=1),以2’b10来表示有1个以上报文(报文概数>1);而当N=2时,需要存储报文概数的状态包括以下之一:报文概数=0,报文概数=1,报文概数=2,报文概数>2,因此可以采用2bit的形式存储,2’b00来表示无报文,以2’b01来表示有1个报文,以2’b10来表示有2个报文,以2‘b11来表示有2个以上的报文;而当N=3时报文概数的状态包括以下之一:报文概数=0,报文概数=1,报文概数=2,报文概数=3,报文概数>3,此时可以采用3bit的形式存储,3’b000来表示无报文,以3’b001来表示有1个报文,以3’b010来表示有2个报文,以3’b011来表示有3个报文,以3‘b100来表示有3个以上的报文;上述N的取值可以根据获取外部存储的报文数目所本文档来自技高网...
【技术保护点】
一种队列管理方法,其特征在于,包括:获取当前出队的队列的报文概数,其中,所述报文概数存储在队列管理组件内部,所述报文概数用于指示所述队列中当前有的报文数目的状态;根据所述报文概数判断所述队列允许再次出队的次数。
【技术特征摘要】
1.一种队列管理方法,其特征在于,包括:获取当前出队的队列的报文概数,其中,所述报文概数存储在队列管理组件内部,所述报文概数用于指示所述队列中当前有的报文数目的状态;根据所述报文概数判断所述队列允许再次出队的次数;所述状态包括以下之一:所述报文概数等于0、所述报文概数等于1至N中任意一个数,所述报文概数大于所述N,其中,所述N为获取所述队列中当前有的报文数目所需的时钟周期允许所述队列出队的次数,所述报文数目存储在所述队列管组件的外部。2.根据权利要求1所述的方法,其特征在于,根据所述报文概数判断所述队列允许再次出队的次数包括:所述报文概数大于1的情况下,判断出所述队列允许再次出队一次;所述报文概数大于2的情况下,判断出所述队列允许再次出队二次;依次判断,所述报文概数大于所述N的情况下,判断出所述队列允许再次出队N次。3.根据权利要求1或2所述的方法,其特征在于,所述方法还包括:判断出所述队列允许再次出队的情况下,将所述报文数目减去判断出的所述队列允许再次出队的次数,并根据更新后的报文数目重新确定所述报文概数指示的状态。4.根据权利要求1或2所述的方法,其特征在于,所述方法还包括:所述队列入队的情况下,将所述报文概数加上1,将所述报文数目加上1。5.一种队列管理装置,其...
【专利技术属性】
技术研发人员:杨敏华,宋军辉,
申请(专利权)人:中兴通讯股份有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。