队列调整方法及装置制造方法及图纸

技术编号:6910151 阅读:407 留言:0更新日期:2012-04-11 18:40
本发明专利技术公开了一种队列调整方法及装置,其中,队列调整方法包括:比较当前服务质量QOS出队列的内存空间被占用长度与设定的第一阈值和第二阈值的关系,其中,第一阈值和第二阈值均小于当前QOS出队列的内存空间长度,第一阈值小于第二阈值;若当前QOS出队列的内存空间被占用长度大于第二阈值,则从其它的内存空间被占用长度小于第一阈值的QOS出队列中选择一个队列,其中,当前QOS出队列和其它QOS出队列中均设置有借用缓冲区;将选择的QOS出队列的借用缓冲区借用到当前QOS出队列的队尾。通过本发明专利技术,达到了充分利用QOS出队列整体资源,提高服务质量的效果。

【技术实现步骤摘要】
队列调整方法及装置
本专利技术涉及通信领域,具体而言,涉及一种服务质量(QualityOfService,QOS)出队列的队列调整方法及装置。
技术介绍
服务质量QOS是指允许用户在吞吐量、延迟、抖动、丢包率等方面获得可预期的服务水平的一系列技术的集合。对于QOS出队列,端口QOS出队列长度是平均分配来实现的,交换机为所有端口各分配了8个相同长度的队列。目前,QOS出队列技术是当一个QOS出队列满时,放入该队列的报文就会被丢弃,而此时,其他QOS出队列则可能是空闲的。例如,当端口1的某个队列(例如队列7)满时,队列7上的新增加的报文就会被丢弃,这时,该端口的其它队列则有可能是空闲的或者报文很少,此外,其它端口的QOS出队列也可能是空闲的或者报文很少。可见,在实际的使用中,大多数情况是较少的队列会满,而较多的队列是空闲或者报文很少,队列资源不能充分利用。由此,目前的QOS出队列技术方案中存在当部分端口的队列因队列满而导致丢包时,其它的QOS出队列此时可能是空闲或者使用的很少,从而使得QOS出队列在整体上队列资源没有被充分使用的问题。
技术实现思路
本专利技术的主要目的在于提供一种QOS出队列的队列调整方法及装置,以至少解决上述现有QOS出队列在整体上队列资源没有被充分使用的问题。根据本专利技术的一个方面,提供了一种队列调整方法,包括:比较当前服务质量QOS出队列的内存空间被占用长度与设定的第一阈值和第二阈值的关系,其中,第一阈值和第二阈值均小于当前QOS出队列的内存空间长度,第一阈值小于第二阈值;若当前QOS出队列的内存空间被占用长度大于第二阈值,则从其它的内存空间被占用长度小于第一阈值的QOS出队列中选择一个队列,其中,当前QOS出队列和其它QOS出队列中均设置有借用缓冲区;将选择的QOS出队列的借用缓冲区借用到当前QOS出队列的队尾。优选地,借用缓冲区的长度为:借用缓冲区的长度=QOS出队列长度-第二阈值+(第二阈值-第一阈值)×N%,其中,N为0-100之间的整数。优选地,队列调整方法还包括:若当前QOS出队列的内存空间被占用长度小于第一阈值,则设置当前QOS出队列为可借用队列,允许向其它QOS出队列供出其借用缓冲区。优选地,队列调整方法还包括:若当前QOS出队列的内存空间被占用长度小于或等于第二阈值且大于或等于第一阈值,则当前QOS出队列判断其借用缓冲区是否借出;若是,则收回其借用缓冲区,并为借用其借用缓冲区的QOS出队列重新分配借用缓冲区;若否,则设置当前QOS出队列为不可借用队列,拒绝向其它QOS队列借出其借用缓冲区。优选地,队列调整方法还包括:当当前QOS出队列的内存空间被占用长度由大于第二阈值减小到小于或等于第二阈值,则当前QOS出队列归还借用的借用缓冲区。优选地,队列调整方法还包括:系统保存当前QOS出队列和其借用的借用缓冲区所属的QOS出队列的对应关系,并实时更新。根据本专利技术的另一方面,提供了一种队列调整装置,包括:比较模块,用于比较当前服务质量QOS出队列的内存空间被占用长度与设定的第一阈值和第二阈值的关系,其中,第一阈值和第二阈值均小于当前QOS出队列的内存空间长度,第一阈值小于第二阈值;第一分配模块,用于当比较模块的比较结果为当前QOS出队列的内存空间被占用长度大于第二阈值时,从其它的内存空间被占用长度小于第一阈值的QOS出队列中选择一个队列,其中,当前QOS出队列和其它QOS出队列中均设置有借用缓冲区;将选择的QOS出队列的借用缓冲区借用到当前QOS出队列的队尾。优选地,借用缓冲区的长度为:借用缓冲区的长度=QOS出队列长度-第二阈值+(第二阈值-第一阈值)×N%,其中,N为0-100之间的整数。优选地,队列调整装置还包括:第二分配模块,用于若比较模块的比较结果为当前QOS出队列的内存空间被占用长度小于第一阈值,则设置当前QOS出队列为可借用队列,允许向其它QOS出队列供出其借用缓冲区;和/或,第三分配模块,用于若比较模块的比较结果为当前QOS出队列的内存空间被占用长度小于或等于第二阈值且大于或等于第一阈值,则当前QOS出队列判断其借用缓冲区是否借出;若是,则收回其借用缓冲区,并为借用其借用缓冲区的QOS出队列重新分配借用缓冲区;若否,则设置当前QOS出队列为不可借用队列,拒绝向其它QOS队列借出其借用缓冲区。优选地,队列调整装置还包括:归还模块,用于当当前QOS出队列的内存空间被占用长度由大于第二阈值减小到小于或等于第二阈值,则当前QOS出队列归还借用的借用缓冲区。通过本专利技术,采用对所有QOS出队列都划分出一个可以共享的队列缓冲区,当某个QOS出队列的使用超过第二阈值时,将其它使用队列长度小于第一阈值的QOS出队列中的队列缓冲区借用增加到该队列,使得该队列的长度大于原先初始分配的长度,从而使得当该QOS出队列中的报文超过该QOS出队列初始长度时,报文仍可以缓存在该QOS出队列中,而不会被丢弃,从而解决了现有QOS出队列在整体上队列资源没有被充分使用的问题,进而达到了充分利用QOS出队列整体资源,提高服务质量的效果。附图说明此处所说明的附图用来提供对本专利技术的进一步理解,构成本申请的一部分,本专利技术的示意性实施例及其说明用于解释本专利技术,并不构成对本专利技术的不当限定。在附图中:图1是根据本专利技术实施例一的一种队列调整方法的步骤流程图;图2是根据本专利技术实施例二的一种队列调整方法的步骤流程图;图3是根据本专利技术实施例三的一种队列调整方法中的队列初始分配图;图4是根据本专利技术实施例三的一种队列调整方法中的缓冲队列管理图;图5是根据本专利技术实施例三的一种队列调整方法中的队列可借用长度图;图6是根据本专利技术实施例三的一种队列调整方法中的缓冲队列回收图;图7是根据本专利技术实施例三的一种队列调整方法中的缓冲队列借用图;图8是根据本专利技术实施例三的一种队列调整方法中的缓冲队列归还图;图9是根据本专利技术实施例三的一种队列调整方法中的缓冲队列借用管理图;图10是根据本专利技术实施例四的一种队列调整装置的结构框图。具体实施方式下文中将参考附图并结合实施例来详细说明本专利技术。需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互组合。实施例一参照图1,示出了根据本专利技术实施例一的一种队列调整方法的步骤流程图。本实施例的队列调整方法包括以下步骤:步骤S102:比较当前QOS出队列的内存空间被占用长度与设定的第一阈值和第二阈值的关系;其中,第一阈值和第二阈值均小于当前QOS出队列的内存空间长度,并且,第一阈值小于第二阈值。本实施例中,一个端口的所有QOS出队列中均设置有借用缓冲区,当一个QOS出队列空闲或使用的很少时,其借用缓冲区可以借出给其它QOS出队列使用;相反当一个QOS出队列很满时,则可以借用其它可借用的借用缓冲区来增加队列长度,扩展队列空间。在本实施例中,当队列空间占用长度小于第一阈值时,说明该队列较空闲,还有较多的空闲队列空间可被使用,可以向其它队列借出;当队列占用空间长度大于等于第一阈值且小于等于第二阈值时,说明该队列较忙,不能向其它队列借出其借用缓冲区,且有可能向其它队列借用可借用的借用缓冲区;当队列占用空间长度大于第二阈值时,则说明该队列很忙,需要向其它可借出缓冲区的队列借用相应的借用缓冲区。步骤S1本文档来自技高网...
队列调整方法及装置

【技术保护点】
1.一种队列调整方法,其特征在于,包括:比较当前服务质量QOS出队列的内存空间被占用长度与设定的第一阈值和第二阈值的关系,其中,所述第一阈值和所述第二阈值均小于所述当前QOS出队列的内存空间长度,所述第一阈值小于所述第二阈值;若所述当前QOS出队列的内存空间被占用长度大于所述第二阈值,则从其它的内存空间被占用长度小于所述第一阈值的QOS出队列中选择一个队列,其中,所述当前QOS出队列和其它QOS出队列中均设置有借用缓冲区;将选择的所述QOS出队列的所述借用缓冲区借用到所述当前QOS出队列的队尾。

【技术特征摘要】
1.一种队列调整方法,其特征在于,包括:比较当前服务质量QOS出队列的内存空间被占用长度与设定的第一阈值和第二阈值的关系,其中,所述第一阈值和所述第二阈值均小于所述当前QOS出队列的内存空间长度,所述第一阈值小于所述第二阈值;若所述当前QOS出队列的内存空间被占用长度大于所述第二阈值,则从其它的内存空间被占用长度小于所述第一阈值的QOS出队列中选择一个队列,其中,所述当前QOS出队列和其它QOS出队列中均设置有借用缓冲区;将选择的所述QOS出队列的所述借用缓冲区借用到所述当前QOS出队列的队尾。2.根据权利要求1所述的方法,其特征在于,所述借用缓冲区的长度为:所述借用缓冲区的长度=QOS出队列长度-所述第二阈值+(所述第二阈值-所述第一阈值)×N%,其中,N为0-100之间的整数。3.根据权利要求1或2所述的方法,其特征在于,还包括:若所述当前QOS出队列的内存空间被占用长度小于所述第一阈值,则设置所述当前QOS出队列为可借用队列,允许向其它QOS出队列供出其借用缓冲区。4.根据权利要求1或2所述的方法,其特征在于,还包括:若所述当前QOS出队列的内存空间被占用长度小于或等于所述第二阈值且大于或等于所述第一阈值,则所述当前QOS出队列判断其借用缓冲区是否借出;若是,则收回其借用缓冲区,并为借用其借用缓冲区的QOS出队列重新分配借用缓冲区;若否,则设置所述当前QOS出队列为不可借用队列,拒绝向所述其它QOS队列借出其借用缓冲区。5.根据权利要求1所述的方法,其特征在于,还包括:当所述当前QOS出队列的内存空间被占用长度由大于所述第二阈值减小到小于或等于所述第二阈值,则所述当前QOS出队列归还借用的所述借用缓冲区。6.根据权利要求1所述的方法,其特征在于,还包括:系统保存所述当前QOS出队列和其借用的所述借用缓冲区所属的QOS出队列的对应关系,并...

【专利技术属性】
技术研发人员:李建国
申请(专利权)人:中兴通讯股份有限公司
类型:发明
国别省市:94

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1