CN103259743B - 基于令牌桶的输出流量控制的方法及装置 - Google Patents

基于令牌桶的输出流量控制的方法及装置 Download PDF

Info

Publication number
CN103259743B
CN103259743B CN201210033798.0A CN201210033798A CN103259743B CN 103259743 B CN103259743 B CN 103259743B CN 201210033798 A CN201210033798 A CN 201210033798A CN 103259743 B CN103259743 B CN 103259743B
Authority
CN
China
Prior art keywords
token
flow
weight
data
token bucket
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
Application number
CN201210033798.0A
Other languages
English (en)
Other versions
CN103259743A (zh
Inventor
郑学进
王建军
王雪松
梁敏超
吴安平
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
ZTE Corp
Original Assignee
ZTE Corp
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by ZTE Corp filed Critical ZTE Corp
Priority to CN201210033798.0A priority Critical patent/CN103259743B/zh
Publication of CN103259743A publication Critical patent/CN103259743A/zh
Application granted granted Critical
Publication of CN103259743B publication Critical patent/CN103259743B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

本发明提供一种基于令牌桶的输出流量控制的方法及装置,所述令牌桶包括:流量限制令牌桶和权重流量令牌桶,其中所述流量限制令牌桶中的流量限制令牌用于限制数据流的最大流量,所述权重流量令牌桶中的权重流量令牌用于保证数据流的最小流量,按照权重进行分配,所述方法包括:从所述流量限制令牌桶中给高优先级数据流和权重数据流分配预设的流量限制令牌;判断高优先级数据流是否能够发送数据;当所有的高优先级数据流均无法发送数据,则按照分组管理策略和/或跨时间片分配策略,从所述权重流量令牌桶中继续给权重数据流分配权重流量令牌。在保证流量满足要求的同时,减少了调度的复杂度。

Description

基于令牌桶的输出流量控制的方法及装置
技术领域
本发明涉及流量控制管理技术领域,尤其涉及一种基于令牌桶的输出流量控制的方法及装置。
背景技术
数据通讯领域,为了保证网络上流量均衡,减少网络上的突发流量,一般会对输出端口进行流量限制;同时,为了区分业务保证QoS(Quality of Service,服务质量)等,一般会对输出端口进行数据流划分,并根据系统要求分配不同的优先级或权重流量。
采用令牌桶进行流量控制是一个普遍的方法。现有的令牌桶算法如下:
1)定时向令牌桶添加令牌,一直到令牌桶满;
2)有数据包发送时,令牌桶中减去数据包长对应的令牌;
3)向缓冲读取数据包,如果数据包长度大于令牌桶当前的令牌数,则等待或其他处理,否则发送数据。
由此可知,现有的令牌桶算法存在以下问题:1)对于可变包长的网络,令牌桶的深度至少要大于网络上的最大包长,这样在短包情况下,有一定的突发冲击概率。2)每次发送数据,均需要首先从缓冲读取数据,把包长与令牌对比后,才能判断是否要发送数据。
而且,在一个端口中,如果划分的数据流较多的话,为了便于进行流量管理,一般会对不同的数据流进行分组管理。在一个存在多组数据流,并且需要区分优先级,以及权重的情况下,为保证流量按照严格按照预设流量发送,则整体的调度会比较复杂。
发明内容
为了解决上述技术问题,本发明提供一种基于令牌桶的输出流量控制的方法及装置,在保证流量满足要求的同时,减少了调度的复杂度。
为了达到上述目的,本发明提供一种基于令牌桶的输出流量控制的方法,所述令牌桶包括:流量限制令牌桶和权重流量令牌桶,其中所述流量限制令牌桶中的流量限制令牌用于限制数据流的最大流量,所述权重流量令牌桶中的权重流量令牌用于保证数据流的最小流量,按照权重进行分配,所述方法包括:
从所述流量限制令牌桶中给高优先级数据流和权重数据流分配预设的流量限制令牌;
判断高优先级数据流是否能够发送数据;
当所有的高优先级数据流均无法发送数据,则按照分组管理策略和/或跨时间片分配策略,从所述权重流量令牌桶中继续给权重数据流分配权重流量令牌。
优选地,所述分组管理策略为:
当物理端口只需控制一个数据流,采用较小的定时器;
当物理端口需控制内部的各个数据流组,采用较长的定时器。
优选地,所述跨时间片分配策略为:
每次令牌分配完毕,保存本次轮询到的数据流编号以及已分配的令牌数据,下次分配时从上次轮询到的编号继续分配。
优选地,所述继续给权重数据流分配权重流量令牌的步骤包括:
当所有高优先级数据流均无法发送数据后,判断权重流量令牌桶中是否还有剩余令牌,如果有剩余令牌,则把剩余令牌根据系统设置的权重流量令牌分配到上次轮询到的权重数据流上;
直到剩余令牌分配完毕,记录下最后轮询到的数据流编号以及已分配的令牌数;
当分组内所有的队列均无法发送数据时,把各个数据流的剩余令牌回收到权重流量令牌桶中。
优选地,所述判断高优先级数据流是否能够发送数据的步骤包括:
根据高优先级数据流的缓冲和流量限制令牌桶中的令牌数,判断高优先级数据流是否能够发送数据;
若高优先级数据流的缓冲不为空,且流量限制令牌桶中的令牌数大于或等于预设的流量限制令牌初值,则高优先级数据流可以发送数据;
若高优先级数据流的缓冲为空,或流量限制令牌桶中的令牌数小于预设的流量限制令牌初值,则高优先级数据流不发送数据。
优选地,所述方法还包括:
判断权重数据流是否能够发送数据;
当权重数据流均不能发送数据时,进入权重令牌收集状态;
当权重数据流可以发送数据,允许权重数据流发送数据。
优选地,所述权重令牌收集状态为:
收集各个权重令牌桶中的剩余令牌到逻辑通道令牌桶中。
优选地,所述判断权重数据流是否能够发送数据的步骤包括:
判断权重数据流是否能够发送数据;
若权重数据流的缓冲不为空,且若流量限制令牌桶中的令牌数大于或等于预设的流量限制令牌初值,且权重令牌桶中的令牌数大于或等于预设的权重令牌值,则权重数据流可以发送数据;
若权重数据流的缓冲为空,或若流量限制令牌桶中的令牌数小于预设的流量限制令牌初值,或权重令牌桶中的令牌数小于预设的权重令牌值,则权重数据流不发送数据。
优选地,所述令牌桶采用预置初值的方式,所述初值大于或等于网络上的最大发送包长;
当所述令牌桶中的令牌数大于所述初值时,可以发送数据,同时减去数据包长对应的令牌数;
每次添加令牌时,如果所述令牌桶中令牌数小于或等于所述初值,则直接添加令牌;如果令牌数大于所述初值,则从初值开始添加令牌。
本发明还提供一种基于令牌桶的输出流量控制的装置,所述令牌桶包括:流量限制令牌桶和权重流量令牌桶,其中流量限制令牌桶用于限制数据流的最大流量,所述权重流量令牌桶用于保证数据流的最小流量,按照权重进行分配,所述装置包括:
第一分配模块,用于从所述流量限制令牌桶中给高优先级数据流和权重数据流分配预设的流量限制令牌;
第一判断模块,用于判断高优先级数据流是否能够发送数据;
第二分配模块,用于当所有的高优先级数据流均无法发送数据,则按照分组管理策略和/或跨时间片分配策略,从所述权重流量令牌桶中继续给权重数据流分配权重流量令牌。
优选地,所述装置还包括:
第二判断模块,用于判断权重数据流是否能够发送数据,当权重数据流均不能发送数据时,进入权重令牌收集状态,然后再进入权重令牌再分配状态。
由上述技术方案可知,本发明的实施例具有如下有益效果:
1)通过跨时间片分配策略分配权重流量令牌,可以使分组内部的权重队列可以在统计时间上按照系统设置的流量比例发送数据;
2)通过分组管理策略采用不同的定时器,可以保证物理端口上流量均匀,而物理端口之上的各个数据流组又有充裕的时间进行令牌分配,调度等;
3)通过本实施例中的令牌桶算法,可以简单精确控制数据流量,减少突发流量发生的概率。
附图说明
图1表示为本发明的实施例中令牌桶中令牌添加示意图;
图2表示为本发明的实施例中一个端口按照三级流量划分的示意图;
图3表示为本发明的实施例中分组流量控制的结构示意图;
图4表示为本发明的实施例中逻辑通道的流量控制装置结构示意图;
图5表示为本发明的实施例中逻辑端口的流量控制装置结构示意图;
图6表示为本发明的实施例中物理端口的流量控制装置结构示意图;
图7表示为本发明的实施例中令牌分配单元的工作流程图;
图8表示为本发明的实施例中基于令牌桶的输出流量控制的方法流程图;
图9表示为本发明的实施例中基于令牌桶的输出流量控制的装置结构示意图。
具体实施方式
在本发明的实施例中,首先从流量限制令牌桶中给高优先级数据流和权重数据流分配预设的流量限制令牌;然后判断高优先级数据流是否能够发送数据;最后,当所有的高优先级数据流均无法发送数据,则按照分组管理策略和/或跨时间片分配策略,从权重流量令牌桶中继续给权重数据流分配权重流量令牌。
为了使本发明实施例的目的、技术方案和优点更加清楚明白,下面结合实施例和附图,对本发明实施例做进一步详细地说明。在此,本发明的示意性实施例及说明用于解释本发明,但并不作为对本发明的限定。
在本实施例中,令牌桶算法为:
令牌桶中令牌数可采用预置初值的方式,初值可设置为大于或等于网络上数据包的最大发送包长。
当令牌桶中的令牌数大于或等于初值时,可以发送数据,同时在令牌桶中减去数据包长对应的令牌数。
令牌桶每次添加令牌时,如果令牌桶中令牌数小于或等于初值,则直接添加令牌;如果令牌数大于初值,则从初值开始添加。图1为令牌桶中令牌添加的三种情况示意图:
(1)令牌桶中令牌数等于初值;
(2)令牌桶中令牌数小于初值;
(3)令牌桶中令牌数大于初值;
在本实施例中,为了避免网络流量浪费,可以对令牌桶中的剩余令牌进行令牌回收操作:即对于无数据发送的令牌桶,如果其令牌数大于或等于初值,可以回收令牌桶中的剩余令牌,以进行令牌的再分配。
在本实施例中,令牌桶可分为两类:
(1)流量限制令牌桶,流量限制令牌桶中的流量限制令牌用于限制数据流的最大流量;
(2)权重流量令牌桶,权重流量令牌桶中的权重流量令牌用于保证数据流的最小流量,按照权重进行分配。
对于物理端口,只有流量限制令牌桶,当流量限制令牌桶中的令牌数大于或等于预设的流量限制令牌初值时,才允许发送数据。
对于逻辑端口通道的数据流,需要流量限制令牌桶和权重流量令牌桶均大于或等于初值,才允许发送数据,也就是,流量限制令牌桶中的令牌数大于或等于预设的流量限制令牌初值,且权重令牌桶中的令牌数大于或等于预设的权重令牌值,才允许权重数据流发送数据。
在本实施例中,令牌分配可采用如下方式:
(1)对于流量限制令牌桶,根据定时器定时添加系统设置的流量限制令牌。
(2)对于权重流量令牌桶,可采用分组管理策略和/或跨时间片分配策略分配权重流量令牌,其中
跨时间片分配策略指:每次令牌分配完毕,保存本次轮询到的数据流编号以及已分配的令牌数等信息,下次分配时从上次轮询到的编号继续分配,步骤如下:
步骤1、当所有高优先级数据流均无法发送数据(数据流缓冲空或该数据流的流量限制令牌数小于初值)后,判断权重流量令牌桶是否还有剩余令牌,如果有剩余令牌,则把剩余令牌根据系统设置的权重流量令牌分配到上次轮询到的权重数据流上。
步骤2、直到剩余令牌分配完毕,记录下最后轮询到的数据流编号以及已分配的令牌数。
步骤3、当分组内所有的队列均无法发送数据时(数据流缓冲空或令牌数小于初值),把各个数据流的剩余令牌回收到权重流量令牌桶,重复步骤1。
在本实施例中,分组管理策略采用不同的定时器,包含以下步骤:
(1)物理端口只需控制一个数据流,不涉及令牌的分配调度等,控制较为简单,可以采用较小的定时器,对流量进行精细的控制,保证网络上流量均匀。
(2)对于物理端口内部的各个数据流组,由于涉及到对各个数据流的轮询,以及令牌的再分配,优先级调度等,采用较长的定时器,保证处理时间充裕。
参见图2,是一个三级流量控制的示例图,一个物理端口上,可以根据用户区分不同的分组;在用户内部,再根据业务区分不同的数据流。
参见图3,是一个四级流量控制的装置示意图。为便于描述,第一级可以称之为物理端口,第二级为逻辑端口,第三级为逻辑通道,第四级为数据流。图中“SCH-FC”表示流控调度模块。
四级流量控制的装置包括:物理端口的流量控制单元(PP_FC),逻辑端口流量控制单元(LP_FC),逻辑通道流量控制单元(LC_FC)。各层之间可以通过先进先出的缓冲队列进行连接,减少不同层次之间的耦合度。
如图4所示,为本发明的实施例中逻辑通道流量控制单元的结构示意图,包括:
(一)逻辑通道令牌桶,包括:流量限制令牌桶(LimitTokenCounter)和权重流量令牌桶(WeightTokenCounter),其中
流量限制令牌桶限制了该逻辑通道在一定时间内允许发送的最大流量,具体方式如下:
(1)每个定时器脉冲时,可根据本发明的令牌桶算法添加系统设置的令牌;
(2)一旦有数据发送,在令牌桶中则减少数据包对应的令牌数;
(3)令牌桶中令牌数小于初值时,该分组不能发送数据。
权重流量令牌桶,配置该逻辑通道按照逻辑端口分配的流量发送数据,具体方式如下:
逻辑端口令牌分配器负责该令牌桶中令牌的添加。令牌的添加满足本发明的令牌桶算法。
逻辑端口令牌分配器可以对该令牌桶进行令牌回收操作。则逻辑端口判断到该逻辑通道无数据发送时,则回收该逻辑通道剩余令牌。剩余令牌指:大于初值的令牌数。
一旦有数据发送,令牌桶中则减少数据包对应的令牌数;
令牌桶中令牌数小于初值时,该分组不能发送数据。
(二)各个数据流的令牌计数器。每个数据流均有流量限制令牌桶(LT_CNT),权重流量令牌桶(WT_CNT)。其结构功能与分组端口上的令牌桶类似。
(三)令牌分配单元(TokenAllocator),负责在本逻辑通道内的各个数据流权重令牌的分配,其工作流程如图7,说明如下:
步骤701、当每个定时脉冲,给每个数据的流量限制令牌桶分配系统预设的流量限制令牌。
步骤702~703、进入优先级数据发送状态,不停判断各个优先级数据流是否能够发送数据。(即数据流缓冲非空,或流量限制令牌桶中令牌数大于或等于初值,则可以发送数据)。
如果所有的优先级数据流均无法发送数据,则进入权重令牌分配状态。
步骤704、权重令牌分配状态,判断逻辑通道令牌桶是否还有剩余令牌。
步骤705、如果没有剩余令牌,则本时间片的工作结束。否则,根据上一个时间已经分配到的数据流,继续给各个权重数据流分配权重流量令牌。
步骤706~707、进入权重数据发送状态,不停判断各个权重数据流是否能够发送数据。(即数据流缓冲非空,则可以发送数据;或流量限制令牌桶中的令牌数大于或等于初值,且权重令牌桶中的令牌数大于或等于初值,则可以发送数据);
如果所有权重数据流均无法发送数据,则进入权重令牌收集状态。
步骤708~709、权重令牌收集状态,收集各个权重令牌桶的剩余令牌到逻辑通道令牌桶,返回到步骤705;
(四)轮询单元(Polling),可用于配置执行如下步骤:
如果逻辑通道的流量限制令牌桶和权重令牌桶中的令牌数均大于或等于初值,则轮询该逻辑通道内各个数据流的状态;
流量限制令牌桶和权重令牌桶中的令牌数都大于或等于初值,或数据缓冲非空,则从该数据缓冲读取数据,发送数据,然后轮询到下一个数据流。否则,不发送数据,直接轮询到下一个数据流。
如果流量限制令牌桶或权重令牌桶中的令牌数小于初值,则等待。
参见图5,为逻辑端口流量控制装置示意图,包括:
(一)逻辑端口令牌计数器,包括流量限制令牌桶(LimitTokenCounter),权重流量令牌桶(WeightTokenCounter)。功能和结构图4的令牌桶类似。
(二)令牌分配单元(TokenAllocator),功能和结构与图4的令牌分配单元类似。
(三)轮询单元(Polling),可用于配置执行如下步骤:
(1)如果该分组的流量限制令牌桶和权重令牌桶都大于或等于初值,则轮询该逻辑端口内各个逻辑通道:判断各个逻辑通道的缓冲是否有数据,有数据,则发送数据;否则轮询下一个数据流。
(2)如果令牌桶中的令牌数小于初值,则等待。
参见图6,为本发明的实施例物理端口流量控制装置示意图,包括:
(一)流量限制令牌桶(LimitTokenCounter):该令牌桶与图4的流量限制令牌桶结构和功能类似,不过其定时时间可以较短。
(二)令牌分配单元(TokenAllocator),其功能和结构与图4的令牌分配单元类似。
(三)轮询单元(Polling),其功能和结构与图5的轮询单元类似。
(四)定时器(Timer),负责整个流控的定时,根据系统的设置,给各级的流量控制提供定时脉冲,脉冲间隔可以不同。
如图8所示,为本发明的实施例中基于令牌桶的输出流量控制的方法流程图,具体步骤如下:
步骤801、从流量限制令牌桶中给高优先级数据流和权重数据流分配预设的流量限制令牌;
步骤802、判断高优先级数据流是否能够发送数据;
例如:根据高优先级数据流的缓冲和流量限制令牌桶中的令牌数,判断高优先级数据流是否能够发送数据;
若高优先级数据流的缓冲不为空,或流量限制令牌桶中的令牌数大于或等于预设的流量限制令牌初值,则高优先级数据流可以发送数据;
若高优先级数据流的缓冲为空,或流量限制令牌桶中的令牌数小于预设的流量限制令牌初值,则高优先级数据流不发送数据。
步骤803、当所有的高优先级数据流均无法发送数据,则按照分组管理策略和/或跨时间片分配策略,从权重流量令牌桶中继续给权重数据流分配权重流量令牌。
在本实施例中,分组管理策略为:
当物理端口只需控制一个数据流,采用较小的定时器;
当物理端口之上的各个数据流组,要求需要控制内部的多个数据流,可以采用较长的定时器。
在本实施例中,跨时间片分配策略为:
每次令牌分配完毕,保存本次轮询到的数据流编号以及已分配的令牌数据,下次分配时从上次轮询到的编号继续分配。
在步骤803中,继续给权重数据流分配权重流量令牌的步骤包括:
当所有高优先级数据流均无法发送数据后,判断该组总的令牌桶是否还有剩余令牌,如果有剩余令牌,则把剩余令牌根据系统设置的权重流量令牌分配到上次轮询到的权重数据流上;
直到剩余令牌分配完毕,记录下最后轮询到的数据流编号以及已分配的令牌数;
当该分组内所有的队列均无法发送数据时,把各个数据流的剩余令牌回收到该组总的令牌桶上。
在本实施例中,该方法还包括:判断权重数据流是否能够发送数据;然后当权重数据流均不能发送数据时,进入权重令牌收集状态。
所述权重令牌收集状态为:
收集各个权重令牌桶中的剩余令牌到逻辑通道令牌桶中。
在本实施例中,所述判断权重数据流是否能够发送数据的步骤为:
判断权重数据流是否能够发送数据;
若权重数据流的缓冲不为空,且若流量限制令牌桶中的令牌数大于或等于预设的流量限制令牌初值,且权重令牌桶中的令牌数大于或等于预设的权重令牌值,则权重数据流可以发送数据;
若权重数据流的缓冲为空,或若流量限制令牌桶中的令牌数小于预设的流量限制令牌初值,或权重令牌桶中的令牌数小于预设的权重令牌值,则权重数据流不发送数据。
如图9表示为本发明的实施例中基于令牌桶的输出流量控制的装置结构示意图,该装置包括:
第一分配模块,用于从所述流量限制令牌桶中给高优先级数据流和权重数据流分配预设的流量限制令牌;
第一判断模块,用于判断高优先级数据流是否能够发送数据;
第二分配模块,用于当所有的高优先级数据流均无法发送数据,则按照分组管理策略和/或跨时间片分配策略,从权重流量令牌桶中继续给权重数据流分配权重流量令牌。
在本发明的另一实施例中,所述装置还包括:
第二判断模块,用于判断权重数据流是否能够发送数据,当权重数据流均不能发送数据时,进入权重令牌收集状态,然后再进入权重令牌再分配状态。
以上所述仅是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以作出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。

Claims (9)

1.一种基于令牌桶的输出流量控制的方法,其特征在于,所述令牌桶包括:流量限制令牌桶和权重流量令牌桶,其中所述流量限制令牌桶中的流量限制令牌用于限制数据流的最大流量,所述权重流量令牌桶中的权重流量令牌用于保证数据流的最小流量,按照权重进行分配,所述方法包括:
从所述流量限制令牌桶中给高优先级数据流和权重数据流分配预设的流量限制令牌;
判断高优先级数据流是否能够发送数据;
当所有的高优先级数据流均无法发送数据,则按照分组管理策略和/或跨时间片分配策略,从所述权重流量令牌桶中继续给权重数据流分配权重流量令牌;
所述分组管理策略为:
当物理端口只需控制一个数据流,采用较小的定时器;
当物理端口需控制内部的各个数据流组,采用较长的定时器;
所述跨时间片分配策略为:
每次令牌分配完毕,保存本次轮询到的数据流编号以及已分配的令牌数据,下次分配时从上次轮询到的编号继续分配。
2.根据权利要求1所述的方法,其特征在于,所述继续给权重数据流分配权重流量令牌的步骤包括:
当所有高优先级数据流均无法发送数据后,判断权重流量令牌桶中是否还有剩余令牌,如果有剩余令牌,则把剩余令牌根据系统设置的权重流量令牌分配到上次轮询到的权重数据流上;
直到剩余令牌分配完毕,记录下最后轮询到的数据流编号以及已分配的令牌数;
当分组内所有的队列均无法发送数据时,把各个数据流的剩余令牌回收到权重流量令牌桶中。
3.根据权利要求1所述的方法,其特征在于,所述判断高优先级数据流是否能够发送数据的步骤包括:
根据高优先级数据流的缓冲和流量限制令牌桶中的令牌数,判断高优先级数据流是否能够发送数据;
若高优先级数据流的缓冲不为空,且流量限制令牌桶中的令牌数大于或等于预设的流量限制令牌初值,则高优先级数据流可以发送数据;
若高优先级数据流的缓冲为空,或流量限制令牌桶中的令牌数小于预设的流量限制令牌初值,则高优先级数据流不发送数据。
4.根据权利要求1所述的方法,其特征在于,所述方法还包括:
判断权重数据流是否能够发送数据;
当权重数据流均不能发送数据时,进入权重令牌收集状态;
当权重数据流可以发送数据,允许权重数据流发送数据。
5.根据权利要求4所述的方法,其特征在于,所述权重令牌收集状态为:
收集各个权重令牌桶中的剩余令牌到逻辑通道令牌桶中。
6.根据权利要求4所述的方法,其特征在于,所述判断权重数据流是否能够发送数据的步骤包括:
根据权重数据流的缓冲、流量限制令牌桶中的令牌数和权重令牌桶中的令牌数,判断权重数据流是否能够发送数据;
若权重数据流的缓冲不为空,且若流量限制令牌桶中的令牌数大于或等于预设的流量限制令牌初值,且权重令牌桶中的令牌数大于或等于预设的权重令牌值,则权重数据流可以发送数据;
若权重数据流的缓冲为空,或若流量限制令牌桶中的令牌数小于预设的流量限制令牌初值,或权重令牌桶中的令牌数小于预设的权重令牌值,则权重数据流不发送数据。
7.根据权利要求1所述的方法,其特征在于,所述令牌桶采用预置初值的方式,所述初值大于或等于网络上的最大发送包长;
当所述令牌桶中的令牌数大于所述初值时,可以发送数据,同时减去数据包长对应的令牌数;
每次添加令牌时,如果所述令牌桶中令牌数小于或等于所述初值,则直接添加令牌;如果令牌数大于所述初值,则从初值开始添加令牌。
8.一种基于令牌桶的输出流量控制的装置,其特征在于,所述令牌桶包括:流量限制令牌桶和权重流量令牌桶,其中流量限制令牌桶用于限制数据流的最大流量,所述权重流量令牌桶用于保证数据流的最小流量,按照权重进行分配,所述装置包括:
第一分配模块,用于从所述流量限制令牌桶中给高优先级数据流和权重数据流分配预设的流量限制令牌;
第一判断模块,用于判断高优先级数据流是否能够发送数据;
第二分配模块,用于当所有的高优先级数据流均无法发送数据,则按照分组管理策略和/或跨时间片分配策略,从所述权重流量令牌桶中继续给权重数据流分配权重流量令牌;
所述分组管理策略为:
当物理端口只需控制一个数据流,采用较小的定时器;
当物理端口需控制内部的各个数据流组,采用较长的定时器;
所述跨时间片分配策略为:
每次令牌分配完毕,保存本次轮询到的数据流编号以及已分配的令牌数据,下次分配时从上次轮询到的编号继续分配。
9.根据权利要求8所述的装置,其特征在于,所述装置还包括:
第二判断模块,用于判断权重数据流是否能够发送数据,当权重数据流均不能发送数据时,进入权重令牌收集状态,然后再进入权重令牌再分配状态。
CN201210033798.0A 2012-02-15 2012-02-15 基于令牌桶的输出流量控制的方法及装置 Active CN103259743B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201210033798.0A CN103259743B (zh) 2012-02-15 2012-02-15 基于令牌桶的输出流量控制的方法及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201210033798.0A CN103259743B (zh) 2012-02-15 2012-02-15 基于令牌桶的输出流量控制的方法及装置

Publications (2)

Publication Number Publication Date
CN103259743A CN103259743A (zh) 2013-08-21
CN103259743B true CN103259743B (zh) 2017-10-27

Family

ID=48963450

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201210033798.0A Active CN103259743B (zh) 2012-02-15 2012-02-15 基于令牌桶的输出流量控制的方法及装置

Country Status (1)

Country Link
CN (1) CN103259743B (zh)

Families Citing this family (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104753809B (zh) * 2013-12-25 2019-04-02 深圳市中兴微电子技术有限公司 一种流量整形中添加令牌的方法及装置
EP3170353B1 (en) 2014-07-17 2018-12-26 Telefonaktiebolaget LM Ericsson (publ) Method and network element for scheduling a communication device
CN107204930B (zh) * 2016-03-17 2020-05-19 深圳市中兴微电子技术有限公司 令牌添加方法及装置
CN106603429B (zh) * 2016-12-16 2019-12-03 无锡路通视信网络股份有限公司 一种基于令牌桶的acs系统过载保护方法
CN106533961B (zh) * 2016-12-30 2020-08-28 中国农业银行股份有限公司 一种流量控制方法及装置
CN106911587B (zh) * 2017-03-16 2020-08-21 恒生电子股份有限公司 交易量控制方法及装置
CN109379302B (zh) * 2017-08-08 2022-01-11 深圳市中兴微电子技术有限公司 一种实现令牌处理的方法及装置
CN109831388A (zh) * 2017-11-23 2019-05-31 中国电信股份有限公司 用于优化流量负载均衡的方法和装置
CN110048964B (zh) * 2018-01-15 2023-09-12 深圳市中兴微电子技术有限公司 一种业务队列的整形方法、终端及存储介质
CN110535784B (zh) * 2018-05-23 2021-01-15 北京三快在线科技有限公司 基于置信区间的流量管理方法和装置以及计算设备
CN111262790B (zh) * 2018-11-30 2023-03-10 深圳市中兴微电子技术有限公司 一种令牌桶实现方法、装置和计算机可读存储介质
CN113810305B (zh) * 2020-06-12 2023-09-01 华为技术有限公司 报文转发方法、装置、转发节点以及计算机可读存储介质
CN111800343A (zh) * 2020-07-06 2020-10-20 哈尔滨工业大学(威海) 一种适用于工控互联网的限速方法和装置
CN113742114A (zh) * 2020-09-28 2021-12-03 北京沃东天骏信息技术有限公司 一种系统限流的方法和装置
CN114039925B (zh) * 2021-10-28 2023-11-28 北京思特奇信息技术股份有限公司 短信网关系统中基于优先级的动态流量控制方法

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1859207A (zh) * 2006-03-24 2006-11-08 华为技术有限公司 一种剩余带宽复用的方法及网络设备
CN101478491A (zh) * 2009-02-10 2009-07-08 中兴通讯股份有限公司 一种实现分组业务区分服务的方法及装置
CN101674247A (zh) * 2009-10-21 2010-03-17 中兴通讯股份有限公司 一种对业务流量进行监管的方法及其装置
CN101834786A (zh) * 2010-04-15 2010-09-15 华为技术有限公司 队列调度的方法和装置

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3961000B2 (ja) * 2005-05-26 2007-08-15 株式会社日立コミュニケーションテクノロジー パケット転送装置及びネットワークシステム

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1859207A (zh) * 2006-03-24 2006-11-08 华为技术有限公司 一种剩余带宽复用的方法及网络设备
CN101478491A (zh) * 2009-02-10 2009-07-08 中兴通讯股份有限公司 一种实现分组业务区分服务的方法及装置
CN101674247A (zh) * 2009-10-21 2010-03-17 中兴通讯股份有限公司 一种对业务流量进行监管的方法及其装置
CN101834786A (zh) * 2010-04-15 2010-09-15 华为技术有限公司 队列调度的方法和装置

Also Published As

Publication number Publication date
CN103259743A (zh) 2013-08-21

Similar Documents

Publication Publication Date Title
CN103259743B (zh) 基于令牌桶的输出流量控制的方法及装置
US8767553B2 (en) Dynamic resource partitioning for long-term fairness to non-elastic traffic on a cellular basestation
CN103384224B (zh) 用于共享接入电缆网络中的绑定信道上的qos的方法和装置
CN103685072B (zh) 一种网络流量快速分配的方法
JP4287157B2 (ja) データトラフィックの転送管理方法及びネットワークスイッチ
EP2317701B1 (en) Priority-based hierarchical bandwidth sharing
US7948882B2 (en) Dual leaky bucket flow control method and system
US7292532B2 (en) Traffic shaping apparatus and traffic shaping method
CN101179486B (zh) 一种计算机网络数据包转发的car队列管理方法
CN103838659B (zh) 一种系统日志的控制方法和装置
CN102420776B (zh) 动态调整入口资源分配阈值的方法及系统
CN104426799A (zh) 通信量和负载感知动态队列管理
CN101232449A (zh) 一种带宽分配方法及装置
CN103797841B (zh) 一种准入控制方法和装置
CN103379038B (zh) 一种流量调度的装置及方法
CN106793133A (zh) 一种电力无线通信系统中保障多业务QoS的调度方法
CN103139103A (zh) 一种网络拥塞的控制方法及装置
RU2643666C2 (ru) Способ и устройство для управления авторизацией виртуальной очереди вывода, а также компьютерный носитель информации
CN102387076A (zh) 一种结合整形的分级式队列调度方法
CN107800643B (zh) 报文转发方法及装置
CN103874133B (zh) 一种带宽控制的方法、装置及接入点设备
US9985902B2 (en) Method and system for providing deterministic quality of service for communication devices
US7933283B1 (en) Shared memory management
CN101159700A (zh) 一种流量控制方法和控制设备
CN101753423A (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