CN110048964B - 一种业务队列的整形方法、终端及存储介质 - Google Patents
一种业务队列的整形方法、终端及存储介质 Download PDFInfo
- Publication number
- CN110048964B CN110048964B CN201810034173.3A CN201810034173A CN110048964B CN 110048964 B CN110048964 B CN 110048964B CN 201810034173 A CN201810034173 A CN 201810034173A CN 110048964 B CN110048964 B CN 110048964B
- Authority
- CN
- China
- Prior art keywords
- service
- feature group
- weight value
- service feature
- weight
- 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.)
- Active
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/10—Flow control; Congestion control
- H04L47/215—Flow control; Congestion control using token-bucket
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/10—Flow control; Congestion control
- H04L47/22—Traffic shaping
- H04L47/225—Determination of shaping rate, e.g. using a moving window
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/50—Queue scheduling
- H04L47/52—Queue scheduling by attributing bandwidth to queues
- H04L47/527—Quantum based scheduling, e.g. credit or deficit based scheduling or token bank
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
- Telephonic Communication Services (AREA)
Abstract
本发明实施例公开了一种业务队列的整形方法,该方法包括:获取N个业务队列中每一个业务队列对应的特征参数,根据特征参数,将N个业务队列划分为至少两个业务特征组;其中,N为大于等于2的自然数;根据预设总带宽和每一个业务队列对应的整形值,确定每一个业务队列对应的第一权重值和每一个业务特征组对应的第二权重值;根据至少两个业务特征组对应的至少两个第二权重值、预设总带宽和预设权重均衡策略,确定每一个业务特征组对应的第三权重值;根据第三权重值,对至少两个业务特征组进行一级令牌添加,并根据第一权重值,对每一个业务特征组中的每一个业务队列进行二级令牌添加。
Description
技术领域
本发明涉及网络数据通信技术领域,尤其涉及一种业务队列的整形方法、终端及存储介质。
背景技术
随着互联网的快速发展和广泛使用,人们对于网络服务质量的要求越来越高。其中,流量整形是一种主动调整流量输出速率的措施,通过对业务队列整形,添加令牌,能够保证网络数据以比较均匀的速度向外发送,避免下游网络设备出现数据拥堵。
具体的,网络处理器在进行流量整形时,根据协商速率,在预设的单位时间内的预设定时器时刻,为业务队列添加令牌。其中,一个令牌相当于若干字节的报文授权,当授权的报文达到充足数量,即为业务队列添加了足够的令牌时,网络处理器发送出业务队列的报文。因此,达到了调整流量输出速率的作用。
随着网络容量和业务量的增加,网络处理器进行流量整形的业务队列数目越来越多,所需要的计时器的个数也就越来越多,这将导致网路处理器的面积极大。因此,目前提出了加权公平调度或类似算法,根据总带宽,将业务队列的整形值转换为权重值,通过一个计时器对业务队列进行令牌添加,实现业务队列的整形。
然而,加权公平调度或类似算法,是逐一对每个业务队列添加令牌,无法在计时器同一时刻完成多个业务队列的令牌添加。当网络中权重值较大的高优先级业务队列的数量远远小于权重值较小的低优先级业务队列的数量时,网络处理器为低优先级业务队列添加令牌的时间过长。因此,网络处理器为高优先级业务队列添加令牌受到延误,令牌添加不均匀,流量输出易产生抖动。
发明内容
为解决现有存在的技术问题,本发明实施例期望提供一种业务队列的整形方法、终端及存储介质,终端能够为各个业务队列准确的添加令牌,保证了业务队列流量输出的均衡平稳。
为达到上述目的,本发明实施例的技术方案是这样实现的:
本发明实施例提供了一种业务队列的整形方法,所述方法包括:
获取N个业务队列中每一个业务队列对应的特征参数,根据所述特征参数,将N个业务队列划分为至少两个业务特征组;其中,N为大于等于2的自然数;
根据预设总带宽和每一个业务队列对应的整形值,确定每一个业务队列对应的第一权重值和每一个业务特征组对应的第二权重值;
根据至少两个业务特征组对应的至少两个所述第二权重值、所述预设总带宽和预设权重均衡策略,确定每一个业务特征组对应的第三权重值;
根据所述第三权重值,对至少两个业务特征组进行一级令牌添加,并根据所述第一权重值,对所述每一个业务特征组中的每一个业务队列进行二级令牌添加。
在上述方案中,所述根据预设总带宽和每一个业务队列对应的整形值,确定每一个业务队列对应的第一权重值和每一个业务特征组对应的第二权重值,包括:
根据所述预设总带宽,将所述整形值映射为所述第一权重值;
对每一个业务特征组中每一个业务队列对应的第一权重值求和,得到所述第二权重值。
在上述方案中,所述根据至少两个业务特征组对应的至少两个所述第二权重值、所述预设总带宽和预设权重均衡策略,确定每一个业务特征组对应的第三权重值,包括:
当所述至少两个所述第二权重值之和小于等于1,且接收到第一压缩指令时,根据所述第二权重值和所述预设总带宽,确定满足预设均衡条件的每一个业务特征组对应的第一权重压缩参数;
根据所述第一权重压缩参数对所述第二权重值进行压缩,获得每一个业务特征组对应的第三权重值。
在上述方案中,所述根据至少两个业务特征组对应的至少两个所述第二权重值、所述预设总带宽和预设权重均衡策略,确定每一个业务特征组对应的第三权重值,包括:
当所述至少两个所述第二权重值之和大于1,且接收到第二压缩指令时,根据所述第二压缩指令,确定第一业务特征组和第二业务特征组;其中,所述第一业务特征组为所述第二压缩指令指示的对应的第二权重值和第三权重值相等的任一业务特征组,所述第二业务特征组为所述第二压缩指令未指示的任一业务特征组;
根据所述预设总带宽和所述第一业务特征组对应的第二权重值,确定剩余总带宽;
根据所述剩余总带宽和所述第二业务特征组对应的第二权重值,确定所述第二业务特征组对应的第二权重压缩参数;
根据所述第二权重压缩参数,对所述第二业务特征组对应的第二权重值进行压缩,获得所述第二业务特征组对应的第三权重值。
在上述方案中,所述根据所述第一权重值,对所述每一个业务特征组中的每一个业务队列进行二级令牌添加,包括:
若第三业务特征组对应的第三权重值小于第二权重值,根据所述第三业务特征组对应的第二权重值和第三权重值,确定预设一次添加令牌数目的增大倍数;其中,所述第三业务特征组为任一业务特征组;
根据所述增大倍数和所述预设一次添加令牌数目,确定目标一次添加令牌数目;
根据所述第三业务特征组中每一个业务队列对应的第一权重值和所述目标一次添加令牌数目,对所述第三业务特征组中的每一个业务队列进行二级令牌添加。
在上述方案中,所述根据所述第一权重值,对所述每一个业务特征组中的每一个业务队列进行二级令牌添加,包括:
若所述第三业务特征组对应的第三权重值和第二权重值相等,根据所述第三业务特征组中每一个业务队列对应的第一权重值和所述预设一次添加令牌数目,对所述第三业务特征组中的每一个业务队列进行二级令牌添加。
本发明实施例还提供了一种终端,所述终端包括:网络处理器和存储器;
所述存储器位于所述网络处理器内部或外部;
所述网络处理器用于执行所述存储器中存储的业务队列的整形程序,以实现以下步骤:
获取N个业务队列中每一个业务队列对应的特征参数,根据所述特征参数,将N个业务队列划分为至少两个业务特征组;其中,N为大于等于2的自然数;根据预设总带宽和每一个业务队列对应的整形值,确定每一个业务队列对应的第一权重值和每一个业务特征组对应的第二权重值;根据至少两个业务特征组对应的至少两个所述第二权重值、所述预设总带宽和预设权重均衡策略,确定每一个业务特征组对应的第三权重值;根据所述第三权重值,对至少两个业务特征组进行一级令牌添加,并根据所述第一权重值,对所述每一个业务特征组中的每一个业务队列进行二级令牌添加。
在上述终端中,所述网络处理器,具体用于执行所述业务队列的整形程序,以实现以下步骤:
根据所述预设总带宽,将所述整形值映射为所述第一权重值;对每一个业务特征组中每一个业务队列对应的第一权重值求和,得到所述第二权重值。
在上述终端中,所述网络处理器,具体用于执行所述业务队列的整形程序,以实现以下步骤:
当所述至少两个所述第二权重值之和小于等于1,且接收到第一压缩指令时,根据所述第二权重值和所述预设总带宽,确定满足预设均衡条件的每一个业务特征组对应的第一权重压缩参数;根据所述第一权重压缩参数对所述第二权重值进行压缩,获得每一个业务特征组对应的第三权重值;
当所述至少两个所述第二权重值之和大于1,且接收到第二压缩指令时,根据所述第二压缩指令,确定第一业务特征组和第二业务特征组;其中,所述第一业务特征组为所述第二压缩指令指示的对应的第二权重值和第三权重值相等的任一业务特征组,所述第二业务特征组为所述第二压缩指令未指示的任一业务特征组;根据所述预设总带宽和所述第一业务特征组对应的第二权重值,确定剩余总带宽;根据所述剩余总带宽和所述第二业务特征组对应的第二权重值,确定所述第二业务特征组对应的第二权重压缩参数;根据所述第二权重压缩参数,对所述第二业务特征组对应的第二权重值进行压缩,获得所述第二业务特征组对应的第三权重值。
在上述终端中,所述网络处理器,具体用于执行所述业务队列的整形程序,以实现以下步骤:
若第三业务特征组对应的第三权重值小于第二权重值,根据所述第三业务特征组对应的第二权重值和第三权重值,确定预设一次添加令牌数目的增大倍数;其中,所述第三业务特征组为任一业务特征组;根据所述增大倍数和所述预设一次添加令牌数目,确定目标一次添加令牌数目;根据所述第三业务特征组中每一个业务队列对应的第一权重值和所述目标一次添加令牌数目,对所述第三业务特征组中的每一个业务队列进行二级令牌添加;若所述第三业务特征组对应的第三权重值和第二权重值相等,根据所述第三业务特征组中每一个业务队列对应的第一权重值和所述预设一次添加令牌数目,对所述第三业务特征组中的每一个业务队列进行二级令牌添加。
本发明实施例还提供了一种计算机可读存储介质,所述计算机可读存储介质存储有一个或者多个程序,所述一个或者多个程序可以被一个或者多个处理器执行,以实现上述业务队列的整形方法。
由此可见,在本发明实施例的技术方案中,终端获取N个业务队列中每一个业务队列对应的特征参数,根据特征参数,将N个业务队列划分为至少两个业务特征组;其中,N为大于等于2的自然数;根据预设总带宽和每一个业务队列对应的整形值,确定每一个业务队列对应的第一权重值和每一个业务特征组对应的第二权重值;根据至少两个业务特征组对应的至少两个第二权重值、预设总带宽和预设权重均衡策略,确定每一个业务特征组对应的第三权重值;根据第三权重值,对至少两个业务特征组进行一级令牌添加,并根据第一权重值,对每一个业务特征组中的每一个业务队列进行二级令牌添加。也就是说,在本发明实施例的技术方案中,终端能够为各个业务队列准确的添加令牌,保证了业务队列流量输出的均衡平稳。
附图说明
图1为本发明实施例提供的一种业务队列的整形方法的流程图;
图2为本发明实施例提供的一种第一权重值和第二权重值的确定方法的流程图;
图3为本发明实施例提供的一种第三权重值的确定方法的流程图一;
图4为本发明实施例提供的一种第三权重值的确定方法的流程图二;
图5(a)为本发明实施例提供的一种终端的结构示意图一;
图5(b)为本发明实施例提供的一种终端的结构示意图二。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述。
实施例一
本发明实施例提供了一种业务队列的整形方法,如图1所示,该方法可以包括:
S101、获取N个业务队列中每一个业务队列对应的特征参数,根据特征参数,将N个业务队列划分为至少两个业务特征组;其中,N为大于等于2的自然数。
在本发明的实施例中,终端中网络处理器可以获取到每一个业务队列对应的特征参数,根据特征参数,将属于同一类型的特征参数的业务队列划分到一个业务特征组中。
需要说明的是,在本发明的实施例中,一组特征参数可以包括:整形值和优先级,终端可以为每一个业务队列配置相应的优先级和整形值。
示例性的,终端可以预先为普通业务队列配置低优先级,为紧急业务队列配置高优先级,从而根据优先级的不同,将N个业务队列划分为两个业务特征组,一个业务特征组包括的均为高优先级的业务队列,另一个业务特征组包括的均为低优先级的业务队列。
需要说明的是,在本发明的实施例中,终端还可以针对N个业务队列配置多种优先级,而不仅仅划分为高优先级和低优先级,但是仍可以采用本发明实施例提供的业务队列整形方法。具体的优先级数目本发明实施例不作限定。
S102、根据预设总带宽和每一个业务队列对应的整形值,确定每一个业务队列对应的第一权重值和每一个业务特征组对应的第二权重值。
在本发明的实施例中,终端在对N个业务队列进行业务特征组的划分后,可以根据预设总带宽和每一个业务队列对应的整形值,确定每一个业务队列对应的第一权重值,再根据每一个业务队列对应的第一权重值,确定每一个业务特征组对应的第二权重值。
具体的,图2为本发明实施例提供的一种第一权重值和第二权重值的确定方法的流程图。如图2所示,主要包括以下步骤:
S201、根据预设总带宽,将整形值映射为第一权重值。
在本发明的实施例中,终端可以根据每一个业务队列对应的整形值在总带宽中所占的比例,将每一个业务队列对应的整形值映射为每一个业务队列对应的第一权重值。
示例性的,预设总带宽为10Gbps,存在高优先级业务特征组和低优先级业务特征组,高优先级业务特征组包括一个整形值为6Gbps的高优先级业务队列,低优先级业务特征组包括两个整形值为2Gbps的低优先级业务队列,其中,该高优先级业务队列的整形值为预设总带宽的3/5,即该高优先级业务队列对应的第一权重值为3/5,两个低优先级业务队列的整型值分别为预设总带宽的1/5,即每一个低优先级业务队列对应的第一权重值为1/5。
S202、对每一个业务特征组中每一个业务队列对应的第一权重值求和,得到第二权重值。
在本发明的实施例中,终端在确定了每一个业务队列对应的第一权重值之后,可以根据每一个业务队列所属的业务特征组,对每一个业务特征组中每一个业务队列对应的第一权重值求和,得到每一个业务特征组对应的第二权重值。
示例性的,预设总带宽为10Gbps,存在高优先级业务特征组和低优先级业务特征组,高优先级业务特征组包括一个整形值为6Gbps的高优先级业务队列,低优先级业务特征组包括两个整形值为2Gbps的低优先级业务队列,其中,高优先级业务队列对应的第一权重值为3/5,每一个低优先级业务队列对应的第一权重值为1/5。由于高优先级业务特征组仅包括一个高优先级业务队列,因此,高优先级业务特征组对应的第二权重值为3/5,低优先级业务特征组对应的第二权重值为2/5,即每一个低优先级业务队列对应的第一权重值之和。
S103、根据至少两个业务特征组对应的至少两个第二权重值、预设总带宽和预设权重均衡策略,确定每一个业务特征组对应的第三权重值。
在本发明的实施例中,当终端确定了每一个业务队列对应的第一权重值和每一个业务特征组对应的第二权重值之后,可以根据得到的至少两个业务特征组对应的至少两个第二权重值、预设总带宽和预设权重均衡策略,进一步确定每一个业务特征组对应的第三权重值。
需要说明的是,在本发明的实施例中,终端根据具体情况对每一个业务特征组对应的第三权重值进行确定。
具体的,图3为本发明实施例提供的一种第三权重值的确定方法的流程图一。如图3所示,主要包括以下步骤:
S301、当至少两个第二权重值之和小于等于1,且接收到第一压缩指令时,根据第二权重值和预设总带宽,确定满足预设均衡条件的每一个业务特征组对应的第一权重压缩参数。
在本发明的实施例中,终端确定了每一个业务特征组对应的第二权重值之后,可以对这些第二权重值进行求和,当第二权重值之和小于等于1,说明N个业务队列的整形值并未超出预设总带宽。此时,终端如果接收到第一压缩指令,就可以根据每一个业务特征组对应的第二权重值和预设总带宽,按照预设均衡条件,确定每一个业务特征组对应的第一权重压缩参数。
示例性的,在本发明的实施例中,终端共划分了高优先级业务特征组和低优先级业务特征组,高优先级业务特征组对应的第二权重值为A,低优先级业务特征组对应的第二权重值为B,为了使A和B接近,判断是否满足预设均衡条件,预设均衡条件如不等式(1)所示:
1-aA≥bB (1)
其中,a为高优先级业务特征组对应的第一权重压缩参数,b为低优先级业务特征组对应的第一权重压缩参数。
需要说明的是,用户可以根据实际需求进行不同程度的压缩,即设置不同的预设均衡条件,具体的预设均衡条件本发明实施例不作限定。
S302、根据第一权重压缩参数对第二权重值进行压缩,获得每一个业务特征组对应的第三权重值。
在本发明的实施例中,终端在确定了每一个业务特征组对应的第一权重压缩参数之后,对每一个业务特征组对应的第二权重值进行压缩,从而获得了每一个业务特征组对应的第三权重值。
示例性的,高优先级业务特征组对应的第二权重值为1/2,对应的第一权重压缩参数为3/4,那么该高优先级业务特征组对应的第三权重值为3/8。
具体的,图4为本发明实施例提供的一种第三权重值的确定方法的流程图二。如图4所示,主要包括以下步骤:
S401、当至少两个第二权重值之和大于1,且接收到第二压缩指令时,根据第二压缩指令,确定第一业务特征组和第二业务特征组;其中,第一业务特征组为第二压缩指令指示的对应的第二权重值和第三权重值相等的任一业务特征组,第二业务特征组为第二压缩指令未指示的任一业务特征组。
需要说明的是,在本发明的实施例中,第二压缩指令中指示了不需要压缩对应的第二权重值的业务特征组。也就是说,第一业务特征组为对应的第三权重值和第二权重值相等的业务特征组。
可以理解的是,在本发明的实施例中由于第一业务特征组对应的第二权重值和第三权重值相等,因此,仅需要确定第二业务特征组对应的第三权重值。
S402、根据预设总带宽和第一业务特征组对应的第二权重值,确定剩余总带宽。
在本发明的实施例中,终端在确定了第一业务特征组和第二业务特征组之后,由于第一业务特征组对应的第二权重值和第三权重值相等,因此,可以确定出第一业务特征组对应的带宽,将预设总带宽减去每一个第一业务特征组对应的第二权重值之和,从而确定剩余总带宽。
示例性的,预设总带宽为10Gbps,终端确定了两个第一业务特征组,两个业务特征组对应的第二权重值均为2/5,那么两个第一业务特征组对应的带宽分别为4Gbps,两个第一业务特征组对应的带宽之和为8Gbps,剩余总带宽即为2Gbps。
S403、根据剩余总带宽和第二业务特征组对应的第二权重值,确定第二业务特征组对应的第二权重压缩参数。
在本发明的实施例中,终端在确定剩余总带宽之后,根据剩余总带宽和第二业务特征组对应的第二权重值,确定每一个第二业务特征组对应的第二权重压缩参数。
示例性的,预设总带宽为10Gbps,剩余总带宽为2Gbps,终端确定了1个第二业务特征组,该第二业务特征组对应的第二权重值为2/5,即第二业务特征组对应的带宽为4Gbps,即可确定第二业务特征组对应的第二权重压缩参数为1/2。
S404、根据第二权重压缩参数,对第二业务特征组对应的第二权重值进行压缩,获得第二业务特征组对应的第三权重值。
在本发明的实施例中,终端在确定了每一个第二业务特征组对应的第二权重压缩参数之后,将对应的第二权重值和对应的权第二重压缩参数相乘,从而确定每一个第二业务特征组对应的第三权重值。
S104、根据第三权重值,对至少两个业务特征组进行一级令牌添加,并根据第一权重值,对每一个业务特征组中的每一个业务队列进行二级令牌添加。
在本发明的实施例中,终端在确定每一个业务特征组对应的第三权重值之后,根据每一个业务特征组对应的第三权重值进行一级加权公平排队,分别对不同优先级进行一级令牌添加。之后,再根据每一个业务队列对应的第一权重值,对每一个业务特征组中的每一个业务队列进行二级令牌添加。
需要说明的是,终端在对每一个业务特征组中的每一个业务队列进行二级令牌添加时,需要根据每一个业务队列所对应的业务特征组是否进行权重压缩进行令牌添加。
具体的,在本发明的实施例中,若第三业务特征组对应的第三权重值小于第二权重值,根据第三业务特征组对应的第二权重值和第三权重值,确定预设一次添加令牌数目的增大倍数;其中,第三业务特征组为任一业务特征组;根据增大倍数和预设一次添加令牌数目,确定目标一次添加令牌数目;根据第三业务特征组中每一个业务队列对应的第一权重值和目标一次添加令牌数目,对第三业务特征组中的每一个业务队列进行二级令牌添加;若第三业务特征组对应的第三权重值和第二权重值相等,根据第三业务特征组中每一个业务队列对应的第一权重值和预设一次添加令牌数目,对第三业务特征组中的每一个业务队列进行二级令牌添加。
示例性的,预设总带宽为10Gbps,一个高优先级业务队列整形值为5Gbps,对应的第一权重值为1/2,该高优先级业务队列组成高优先级业务特征组,8个低优先级业务队列整形值分别为0.625Gbps,对应的第一权重值分别为1/16,8个低优先级业务队列组成低优先级业务特征组,采用4bit计时器进行计时。通过本发明的方法可以得到,高优先级业务特征组对应的第二权重值也为1/2,低优先级业务特征组对应的第二权重值为8个1/16相加,即1/2,由于高优先级业务特征组对应的第二权重值与低优先级业务特征组对应的第二权重值之和等于1,即可以选择不对第二权重值进行压缩,也就是高优先级业务特征组和低优先级业务特征组对应的第三权重值均为1/2。终端可以按照表1所示进行一级令牌添加。
表1
实际时刻 | 一级令牌添加 |
0000 | Q(H) |
0001 | Q(L) |
0010 | Q(H) |
0011 | Q(L) |
0100 | Q(H) |
0101 | Q(L) |
0110 | Q(H) |
0111 | Q(L) |
1000 | Q(H) |
1001 | Q(L) |
1010 | Q(H) |
1011 | Q(L) |
1100 | Q(H) |
1101 | Q(L) |
1110 | Q(H) |
1111 | Q(L) |
其中,Q(H)为高优先级业务特征组,Q(L)为低优先级业务特征组。
进一步的,由于高优先级业务特征组中只有一个高优先级业务队列,因此进行二级令牌添加也是均匀的。低优先级业务特征组包括8个低优先级业务队列,由于对应的第一权重值均相同,因此进行二级令牌添加仍然均匀,最终令牌添加表2所示。
表2
实际时刻 | 最终令牌添加 |
0000 | Q(H) |
0001 | Q(L1) |
0010 | Q(H) |
0011 | Q(L2) |
0100 | Q(H) |
0101 | Q(L3) |
0110 | Q(H) |
0111 | Q(L4) |
1000 | Q(H) |
1001 | Q(L5) |
1010 | Q(H) |
1011 | Q(L6) |
1100 | Q(H) |
1101 | Q(L7) |
1110 | Q(H) |
1111 | Q(L8) |
其中,Q(L1)到Q(L8)分别为8个低优先级业务队列。
需要说明的是,第三业务特征组对应的第三权重值小于第二权重值,说明第三业务特征组对应的第二权重值进行了压缩,第三业务特征组对应的第三权重值和第二权重值相等,说明第三业务特征组对应的第二权重值并未压缩。
示例性的,预设总带宽为10Gbps,1个视频业务队列整形值为8Gbps,对应的第一权重值为4/5,1个视频业务队列组成视频业务特征组,对应的第二权重值为4/5,8个音频业务队列整形值分别为0.5Gbps,对应的第一权重值分别为1/8,8个音频业务队列组成音频业务特征组,对应的第二权重值为2/5,9个业务队列的总整形值为12Gbps,超过预设总带宽。如果用户要求必须保证视频业务流量稳定,则在一级令牌添加时,视频业务特征组对应的第三权重值为4/5,即需要分配8Gbps,因此,音频业务特征组对应的第三权重值压缩为对应的第二权重值的1/2,对应的第三权重值为1/5,即只能分配剩余的2Gbps。但是,在音频业务特征组进行二级令牌添加时,若预设一次添加令牌数目为m,那么实际进行二次令牌添加时,对音频业务特征组中的每一个音频业务队列一次添加令牌数目为2m,从而保证了每个音频业务队列整形值仍为0.5Gbps。
本发明实施例提供了一种业务队列的整形方法,终端获取N个业务队列中每一个业务队列对应的特征参数,根据特征参数,将N个业务队列划分为至少两个业务特征组;其中,N为大于等于2的自然数;根据预设总带宽和每一个业务队列对应的整形值,确定每一个业务队列对应的第一权重值和每一个业务特征组对应的第二权重值;根据至少两个业务特征组对应的至少两个第二权重值、预设总带宽和预设权重均衡策略,确定每一个业务特征组对应的第三权重值;根据第三权重值,对至少两个业务特征组进行一级令牌添加,并根据第一权重值,对每一个业务特征组中的每一个业务队列进行二级令牌添加。也就是说,在本发明实施例的技术方案中,终端能够为各个业务队列准确的添加令牌,保证了业务队列流量输出的均衡平稳。
实施例二
图5(a)为本发明实施例提供的一种终端的结构示意图一,图5(b)为本发明实施例提供的一种终端的结构示意图二。如图5(a)和图5(b)所示,该终端包括:网络处理器501和存储器502;
所述存储器502位于所述网络处理器501内部或外部;如图5(a)所示,所述存储器502位于所述网络处理器501外部时,所述网络处理器501和所述存储器502通过通信总线进行连接通信。如图5(b)所示,所述存储器502位于所述网络处理器501内部,即所述存储器502可以集成在所述网络处理器501中。
所述网络处理器501用于执行所述存储器502中存储的业务队列的整形程序,以实现以下步骤:
获取N个业务队列中每一个业务队列对应的特征参数,根据所述特征参数,将N个业务队列划分为至少两个业务特征组;其中,N为大于等于2的自然数;根据预设总带宽和每一个业务队列对应的整形值,确定每一个业务队列对应的第一权重值和每一个业务特征组对应的第二权重值;根据至少两个业务特征组对应的至少两个所述第二权重值、所述预设总带宽和预设权重均衡策略,确定每一个业务特征组对应的第三权重值;根据所述第三权重值,对至少两个业务特征组进行一级令牌添加,并根据所述第一权重值,对每一个业务特征组中的每一个业务队列进行二级令牌添加。
可选的,所述网络处理器501具体用于执行所述业务队列的整形程序,以实现以下步骤:
根据所述预设总带宽,将所述整形值映射为所述第一权重值;对每一个业务特征组中每一个业务队列对应的第一权重值求和,得到所述第二权重值。
可选的,所述网络处理器501具体用于执行所述业务队列的整形程序,以实现以下步骤:
当所述至少两个所述第二权重值之和小于等于1,且接收到第一压缩指令时,根据所述第二权重值和所述预设总带宽,确定满足预设均衡条件的每一个业务特征组对应的第一权重压缩参数;根据所述第一权重压缩参数对所述第二权重值进行压缩,获得每一个业务特征组对应的第三权重值。
当所述至少两个所述第二权重值之和大于1,且接收到第二压缩指令时,根据所述第二压缩指令,确定第一业务特征组和第二业务特征组;其中,所述第一业务特征组为所述第二压缩指令指示的对应的第二权重值和第三权重值相等的任一业务特征组,所述第二业务特征组为所述第二压缩指令未指示的任一业务特征组;根据所述预设总带宽和所述第一业务特征组对应的第二权重值,确定剩余总带宽;根据所述剩余总带宽和所述第二业务特征组对应的第二权重值,确定所述第二业务特征组对应的第二权重压缩参数;根据所述第二权重压缩参数,对所述第二业务特征组对应的第二权重值进行压缩,获得所述第二业务特征组对应的第三权重值。
可选的,所述网络处理器501具体用于执行所述业务队列的整形程序,以实现以下步骤:
若第三业务特征组对应的第三权重值小于第二权重值,根据所述第三业务特征组对应的第二权重值和第三权重值,确定预设一次添加令牌数目的增大倍数;其中,所述第三业务特征组为任一业务特征组;根据所述增大倍数和所述预设一次添加令牌数目,确定目标一次添加令牌数目;根据所述第三业务特征组中每一个业务队列对应的第一权重值和所述目标一次添加令牌数目,对所述第三业务特征组中的每一个业务队列进行二级令牌添加;若所述第三业务特征组对应的第三权重值和第二权重值相等,根据所述第三业务特征组中每一个业务队列对应的第一权重值和所述预设一次添加令牌数目,对所述第三业务特征组中的每一个业务队列进行二级令牌添加。
本发明实施例提供了一种终端,终端获取N个业务队列中每一个业务队列对应的特征参数,根据特征参数,将N个业务队列划分为至少两个业务特征组;其中,N为大于等于2的自然数;根据预设总带宽和每一个业务队列对应的整形值,确定每一个业务队列对应的第一权重值和每一个业务特征组对应的第二权重值;根据至少两个业务特征组对应的至少两个第二权重值、预设总带宽和预设权重均衡策略,确定每一个业务特征组对应的第三权重值;根据第三权重值,对至少两个业务特征组进行一级令牌添加,并根据第一权重值,对每一个业务特征组中的每一个业务队列进行二级令牌添加。也就是说,在本发明实施例提供的终端,能够为各个业务队列准确的添加令牌,保证了业务队列流量输出的均衡平稳。
本发明实施例还提供了一种计算机可读存储介质,存储有一个或者多个程序,所述一个或者多个程序可以被一个或者多个网络处理器执行,以实现上述业务队列的整形方法。计算机可读存储介质可以是是易失性存储器(volatile memory),例如随机存取存储器(Random-Access Memory,RAM);或者非易失性存储器(non-volatile memory),例如只读存储器(Read-Only Memory,ROM),快闪存储器(flash memory),硬盘(Hard Disk Drive,HDD)或固态硬盘(Solid-State Drive,SSD);也可以是包括上述存储器之一或任意组合的各自设备,如移动电话、计算机、平板设备、个人数字助理等。
本领域内的技术人员应明白,本发明的实施例可提供为方法、***、或计算机程序产品。因此,本发明可采用硬件实施例、软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器和光学存储器等)上实施的计算机程序产品的形式。
本发明是参照根据本发明实施例的方法、设备(***)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
以上所述,仅为本发明的较佳实施例而已,并非用于限定本发明的保护范围。
Claims (11)
1.一种业务队列的整形方法,其特征在于,所述方法包括:
获取N个业务队列中每一个业务队列对应的特征参数,所述特征参数包括整形值和优先级,根据所述特征参数中的所述优先级,将N个业务队列划分为至少两个业务特征组;其中,N为大于等于2的自然数;
根据预设总带宽和每一个业务队列对应的整形值,确定每一个业务队列对应的第一权重值和每一个业务特征组对应的第二权重值;
根据至少两个业务特征组对应的至少两个所述第二权重值、所述预设总带宽和预设权重均衡策略,确定每一个业务特征组对应的第三权重值;
根据所述第三权重值,对至少两个业务特征组进行一级令牌添加,并根据所述第一权重值,对所述每一个业务特征组中的每一个业务队列进行二级令牌添加。
2.根据权利要求1所述的方法,其特征在于,所述根据预设总带宽和每一个业务队列对应的整形值,确定每一个业务队列对应的第一权重值和每一个业务特征组对应的第二权重值,包括:
根据所述预设总带宽,将所述整形值映射为所述第一权重值;
对每一个业务特征组中每一个业务队列对应的第一权重值求和,得到所述第二权重值。
3.根据权利要求1所述的方法,其特征在于,所述根据至少两个业务特征组对应的至少两个所述第二权重值、所述预设总带宽和预设权重均衡策略,确定每一个业务特征组对应的第三权重值,包括:
当所述至少两个所述第二权重值之和小于等于1,且接收到第一压缩指令时,根据所述第二权重值和所述预设总带宽,确定满足预设均衡条件的每一个业务特征组对应的第一权重压缩参数;
根据所述第一权重压缩参数对所述第二权重值进行压缩,获得每一个业务特征组对应的第三权重值。
4.根据权利要求1所述的方法,其特征在于,所述根据至少两个业务特征组对应的至少两个所述第二权重值、所述预设总带宽和预设权重均衡策略,确定每一个业务特征组对应的第三权重值,包括:
当所述至少两个所述第二权重值之和大于1,且接收到第二压缩指令时,根据所述第二压缩指令,确定第一业务特征组和第二业务特征组;其中,所述第一业务特征组为所述第二压缩指令指示的对应的第二权重值和第三权重值相等的任一业务特征组,所述第二业务特征组为所述第二压缩指令未指示的任一业务特征组;
根据所述预设总带宽和所述第一业务特征组对应的第二权重值,确定剩余总带宽;
根据所述剩余总带宽和所述第二业务特征组对应的第二权重值,确定所述第二业务特征组对应的第二权重压缩参数;
根据所述第二权重压缩参数,对所述第二业务特征组对应的第二权重值进行压缩,获得所述第二业务特征组对应的第三权重值。
5.根据权利要求1所述的方法,其特征在于,所述根据所述第一权重值,对所述每一个业务特征组中的每一个业务队列进行二级令牌添加,包括:
若第三业务特征组对应的第三权重值小于第二权重值,根据所述第三业务特征组对应的第二权重值和第三权重值,确定预设一次添加令牌数目的增大倍数;其中,所述第三业务特征组为任一业务特征组;
根据所述增大倍数和所述预设一次添加令牌数目,确定目标一次添加令牌数目;
根据所述第三业务特征组中每一个业务队列对应的第一权重值和所述目标一次添加令牌数目,对所述第三业务特征组中的每一个业务队列进行二级令牌添加。
6.根据权利要求5所述的方法,其特征在于,所述根据所述第一权重值,对所述每一个业务特征组中的每一个业务队列进行二级令牌添加,包括:
若所述第三业务特征组对应的第三权重值和第二权重值相等,根据所述第三业务特征组中每一个业务队列对应的第一权重值和所述预设一次添加令牌数目,对所述第三业务特征组中的每一个业务队列进行二级令牌添加。
7.一种终端,其特征在于,所述终端包括:网络处理器和存储器;
所述存储器位于所述网络处理器内部或外部;
所述网络处理器用于执行所述存储器中存储的业务队列的整形程序,以实现以下步骤:
获取N个业务队列中每一个业务队列对应的特征参数,所述特征参数包括整形值和优先级,根据所述特征参数中的所述优先级,将N个业务队列划分为至少两个业务特征组;其中,N为大于等于2的自然数;根据预设总带宽和每一个业务队列对应的整形值,确定每一个业务队列对应的第一权重值和每一个业务特征组对应的第二权重值;根据至少两个业务特征组对应的至少两个所述第二权重值、所述预设总带宽和预设权重均衡策略,确定每一个业务特征组对应的第三权重值;根据所述第三权重值,对至少两个业务特征组进行一级令牌添加,并根据所述第一权重值,对所述每一个业务特征组中的每一个业务队列进行二级令牌添加。
8.根据权利要求7所述的终端,其特征在于,所述网络处理器,具体用于执行所述业务队列的整形程序,以实现以下步骤:
根据所述预设总带宽,将所述整形值映射为所述第一权重值;对每一个业务特征组中每一个业务队列对应的第一权重值求和,得到所述第二权重值。
9.根据权利要求7所述的终端,其特征在于,所述网络处理器,具体用于执行所述业务队列的整形程序,以实现以下步骤:
当所述至少两个所述第二权重值之和小于等于1,且接收到第一压缩指令时,根据所述第二权重值和所述预设总带宽,确定满足预设均衡条件的每一个业务特征组对应的第一权重压缩参数;根据所述第一权重压缩参数对所述第二权重值进行压缩,获得每一个业务特征组对应的第三权重值;
当所述至少两个所述第二权重值之和大于1,且接收到第二压缩指令时,根据所述第二压缩指令,确定第一业务特征组和第二业务特征组;其中,所述第一业务特征组为所述第二压缩指令指示的对应的第二权重值和第三权重值相等的任一业务特征组,所述第二业务特征组为所述第二压缩指令未指示的任一业务特征组;根据所述预设总带宽和所述第一业务特征组对应的第二权重值,确定剩余总带宽;根据所述剩余总带宽和所述第二业务特征组对应的第二权重值,确定所述第二业务特征组对应的第二权重压缩参数;根据所述第二业务特征组对应的第二权重压缩参数,对所述第二业务特征组对应的第二权重值进行压缩,获得所述第二业务特征组对应的第三权重值。
10.根据权利要求7所述的终端,其特征在于,所述网络处理器,具体用于执行所述业务队列的整形程序,以实现以下步骤:
若第三业务特征组对应的第三权重值小于第二权重值,根据所述第三业务特征组对应的第二权重值和第三权重值,确定预设一次添加令牌数目的增大倍数;其中,所述第三业务特征组为任一业务特征组;根据所述增大倍数和所述预设一次添加令牌数目,确定目标一次添加令牌数目;根据所述第三业务特征组中每一个业务队列对应的第一权重值和所述目标一次添加令牌数目,对所述第三业务特征组中的每一个业务队列进行二级令牌添加;
若所述第三业务特征组对应的第三权重值和第二权重值相等,根据所述第三业务特征组中每一个业务队列对应的第一权重值和所述预设一次添加令牌数目,对所述第三业务特征组中的每一个业务队列进行二级令牌添加。
11.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有一个或者多个程序,所述一个或者多个程序可以被一个或者多个网络处理器执行,以实现权利要求1-6任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810034173.3A CN110048964B (zh) | 2018-01-15 | 2018-01-15 | 一种业务队列的整形方法、终端及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810034173.3A CN110048964B (zh) | 2018-01-15 | 2018-01-15 | 一种业务队列的整形方法、终端及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110048964A CN110048964A (zh) | 2019-07-23 |
CN110048964B true CN110048964B (zh) | 2023-09-12 |
Family
ID=67272750
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201810034173.3A Active CN110048964B (zh) | 2018-01-15 | 2018-01-15 | 一种业务队列的整形方法、终端及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110048964B (zh) |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103259743A (zh) * | 2012-02-15 | 2013-08-21 | 中兴通讯股份有限公司 | 基于令牌桶的输出流量控制的方法及装置 |
CN103778011A (zh) * | 2014-01-21 | 2014-05-07 | 国家电网公司 | 一种电力***中服务平台任务公平随机调度方法 |
CN104079501A (zh) * | 2014-06-05 | 2014-10-01 | 深圳市邦彦信息技术有限公司 | 一种基于多优先级的队列调度方法 |
CN106302231A (zh) * | 2015-05-12 | 2017-01-04 | 深圳市中兴微电子技术有限公司 | 数据流队列整形的方法及装置 |
CN107204930A (zh) * | 2016-03-17 | 2017-09-26 | 深圳市中兴微电子技术有限公司 | 令牌添加方法及装置 |
CN107483363A (zh) * | 2017-08-15 | 2017-12-15 | 无锡职业技术学院 | 一种分层的加权轮询调度装置及方法 |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7342929B2 (en) * | 2001-04-27 | 2008-03-11 | Cisco Technology, Inc. | Weighted fair queuing-based methods and apparatus for protecting against overload conditions on nodes of a distributed network |
US8660006B2 (en) * | 2011-11-29 | 2014-02-25 | Hughes Network Systems, Llc | Method and system for traffic management and resource allocation on a shared access network |
-
2018
- 2018-01-15 CN CN201810034173.3A patent/CN110048964B/zh active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103259743A (zh) * | 2012-02-15 | 2013-08-21 | 中兴通讯股份有限公司 | 基于令牌桶的输出流量控制的方法及装置 |
CN103778011A (zh) * | 2014-01-21 | 2014-05-07 | 国家电网公司 | 一种电力***中服务平台任务公平随机调度方法 |
CN104079501A (zh) * | 2014-06-05 | 2014-10-01 | 深圳市邦彦信息技术有限公司 | 一种基于多优先级的队列调度方法 |
CN106302231A (zh) * | 2015-05-12 | 2017-01-04 | 深圳市中兴微电子技术有限公司 | 数据流队列整形的方法及装置 |
CN107204930A (zh) * | 2016-03-17 | 2017-09-26 | 深圳市中兴微电子技术有限公司 | 令牌添加方法及装置 |
CN107483363A (zh) * | 2017-08-15 | 2017-12-15 | 无锡职业技术学院 | 一种分层的加权轮询调度装置及方法 |
Also Published As
Publication number | Publication date |
---|---|
CN110048964A (zh) | 2019-07-23 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
WO2017000673A1 (zh) | 一种共享缓存分配方法、装置及计算机存储介质 | |
WO2007113517A1 (en) | Prioritising data transmission | |
CN110505105B (zh) | 网络服务质量的控制方法、装置、设备及存储介质 | |
RU2643666C2 (ru) | Способ и устройство для управления авторизацией виртуальной очереди вывода, а также компьютерный носитель информации | |
US20150058485A1 (en) | Flow scheduling device and method | |
JP2017504995A5 (zh) | ||
EP3499818A1 (en) | Method and device for load processing | |
CN107204930B (zh) | 令牌添加方法及装置 | |
CN108243506B (zh) | Lte***中的业务调度方法及装置 | |
CN110048964B (zh) | 一种业务队列的整形方法、终端及存储介质 | |
CN107113823A (zh) | 信道接入期的分配方法、装置及*** | |
CN107155220B (zh) | 一种资源调度方法及装置 | |
CN113453285B (zh) | 一种资源调整方法、装置及存储介质 | |
CN111124672A (zh) | 基于Redis集群的数据分配的方法及相关设备 | |
CN110661722A (zh) | 一种流量控制的方法及装置 | |
CN112188500A (zh) | 一种频谱资源动态分配方法及装置 | |
CN106789745B (zh) | 一种带宽获取方法和装置 | |
CN114124829A (zh) | 一种业务转发控制方法、装置及电子设备 | |
CN112367708A (zh) | 一种网络资源分配方法及装置 | |
CN109429335B (zh) | 集群语音用户跨运营商抢占方法及设备 | |
CN103686874A (zh) | 一种带宽分配方法 | |
CN111885513B (zh) | 公网集群优先抢占方法、装置、设备以及存储介质 | |
CN111132242B (zh) | 一种终端调度的方法和装置 | |
CN110446263B (zh) | 数据传输方法及装置 | |
CN112312174B (zh) | 视频业务的加速方法、装置、电子设备及存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |