JP5107016B2 - トークンバケットを用いたバッファ装置及びプログラム - Google Patents
トークンバケットを用いたバッファ装置及びプログラム Download PDFInfo
- Publication number
- JP5107016B2 JP5107016B2 JP2007325326A JP2007325326A JP5107016B2 JP 5107016 B2 JP5107016 B2 JP 5107016B2 JP 2007325326 A JP2007325326 A JP 2007325326A JP 2007325326 A JP2007325326 A JP 2007325326A JP 5107016 B2 JP5107016 B2 JP 5107016B2
- Authority
- JP
- Japan
- Prior art keywords
- token
- tokens
- token bucket
- bucket
- buffer
- 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
Images
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
-
- 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
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Description
単位量データを読み出す権利となるトークンを一時的に蓄積するものであって、蓄積可能なトークン数を表すトークンバケットサイズが互いに異なる複数のトークンバケットと、
全てのトークンバケットについて同じ数のトークンを消費させる、トークンバケット毎のトークン消費制御手段と、
トークンバケットサイズが大きいほど、単位時間当たり生成されるトークン数を表すトークンレートが低くなるように設定された、トークンバケット毎のトークン生成手段と、
トークンバケットによって消費されたトークン数を計数し、トークンが空となっているトークンバケットについては負のトークン数を計数するトークン消費計数手段と、
消費されたトークン数に応じて、パケットバッファからデータパケットを読み出すバッファ読出手段と
を有し、
単位時間毎に、蓄積されたトークン量が最も多いトークンバケットに基づいてトークン数が規制されることを特徴とする。
いずれか1つのトークンバケットに、トークン最大消費数以上のトークンが蓄積されている場合、全てのトークンバケットについてトークン最大消費数のトークンを消費し、
又は、
全てのトークンバケットについて、トークン最大消費数以上のトークンが蓄積されていない場合、蓄積しているトークン数が最も多いトークンバケットを選択し、そのトークンバケットに蓄積されているトークン数のトークンを、全てのトークンバケットについて消費する
ように制御されることも好ましい。
単位量データを読み出す権利となるトークンを一時的に蓄積するものであって、蓄積可能なトークン数を表すトークンバケットサイズが互いに異なり、且つ、全てのトークンバケットについて同じ数のトークンが消費される複数のトークンバケットと、
トークンバケットサイズが大きいほど、単位時間当たり生成されるトークン数を表すトークンレートが低くなるように設定された、トークンバケット毎のトークン生成手段と、
トークンバケットによって消費されたトークン数を計数し、トークンが空となっているトークンバケットについては負のトークン数を計数するトークン消費計数手段と、
消費されたトークン数に応じて、パケットバッファからデータパケットを読み出すバッファ読出手段と
してコンピュータを機能させ、
単位時間毎に、蓄積されたトークン量が最も多いトークンバケットに基づいてトークン数が規制されることを特徴とする。
[判断1]いずれか1つのトークンバケットに、トークン最大消費数以上のトークンが蓄積されている場合、全てのトークンバケットについてトークン最大消費数のトークンを消費する。
[判断2]全てのトークンバケットについて、トークン最大消費数以上のトークンが蓄積されていない場合、蓄積しているトークン数が最も多いトークンバケットを選択する。そして、そのトークンバケットに蓄積されているトークン数のトークンを、全てのトークンバケットについて消費する。
(補足3)尚、全てのトークン生成部が所定のトークンレートで常に、トークンバケットにトークンを補充入力する限り、全てのトークンバケットについて全くトークンが蓄積されていない状態はありえないと考えられる。
トークン1個当たり120kビット(120kbps)の出力権利
第1のトークンバケットサイズ:最大5個のトークンを蓄積可能
120kビット× 5個=600kビット
第1のトークンレート :1秒当たり3個のトークンを補充入力
120kbps× 3個=360kbps
第2のトークンバケットサイズ:最大10個のトークンを蓄積可能
120kビット×10個=1.2Mビット
第2のトークンレート:1秒当たり2個のトークンを補充入力
120kbps× 2個=240kbps
第3のトークンバケットサイズ:最大15個のトークンを蓄積可能
120kビット×15個=1.8Mビット
第3のトークンレート:1秒当たり1個のトークンを補充入力
120kbps× 1個=120kbps
トークン最大消費数:6個
バッファ装置からの最大読出レート
=トークン最大消費数×1トークンの出力権利
=6個×120kビット
=720kビット
第1のトークンバケットのトークン数= +3個−6個=−3個(負のトークン数)
第2のトークンバケットのトークン数=+10個−6個=+4個
第3のトークンバケットのトークン数=+14個−6個=+8個
最大読出レート=消費されたトークン数×1トークンの出力権利
=6個×120kビット
=720kビット
第1のトークンバケットのトークン数=−3個+3個= 0個
第2のトークンバケットのトークン数=+4個+2個=+6個
第3のトークンバケットのトークン数=+8個+1個=+9個
第1のトークンバケットのトークン数= 0個−6個=−6個
第2のトークンバケットのトークン数=+6個−6個= 0個
第3のトークンバケットのトークン数=+9個−6個=+3個
最大読出レート=6個×120kビット
=720kビット
第1のトークンバケットのトークン数=−6個+3個=−3個
第2のトークンバケットのトークン数= 0個+2個=+2個
第3のトークンバケットのトークン数=+3個+1個=+4個
第1のトークンバケットのトークン数=−3個−4個=−7個
第2のトークンバケットのトークン数=+2個−4個=−2個
第3のトークンバケットのトークン数=+4個−4個= 0個
最大読出レート=4個×120kビット
=480kビット
第1のトークンバケットのトークン数=−7個+3個=−4個
第2のトークンバケットのトークン数=−2個+2個= 0個
第3のトークンバケットのトークン数= 0個+1個=+1個
第1のトークンバケットのトークン数=−4個−1個=−5個
第2のトークンバケットのトークン数= 0個−1個=−1個
第3のトークンバケットのトークン数=+1個−1個= 0個
最大読出レート=1個×120kビット
=120kビット
第1のトークンバケットのトークン数=−5個+3個=−2個
第2のトークンバケットのトークン数=−1個+2個=+1個
第3のトークンバケットのトークン数= 0個+1個=+1個
第1のトークンバケットのトークン数=−2個−1個=−3個
第2のトークンバケットのトークン数=+1個−1個= 0個
第3のトークンバケットのトークン数=+1個−1個= 0個
最大読出レート=1個×120kビット
=120kビット
第1のトークンバケットのトークン数=−3個+3個= 0個
第2のトークンバケットのトークン数= 0個+2個=+2個
第3のトークンバケットのトークン数= 0個+1個=+1個
第1のトークンバケットのトークン数= 0個−2個=−2個
第2のトークンバケットのトークン数=+2個−2個= 0個
第3のトークンバケットのトークン数=+1個−2個=−1個
最大読出レート=2個×120kビット
=240kビット
第1のトークンバケットのトークン数=−2個+3個=+1個
第2のトークンバケットのトークン数= 0個+2個=+2個
第3のトークンバケットのトークン数=−1個+1個= 0個
第1のトークンバケットのトークン数=+1個−2個=−1個
第2のトークンバケットのトークン数=+2個−2個= 0個
第3のトークンバケットのトークン数= 0個−2個=−2個
最大読出レート=2個×120kビット
=240kビット
第1のトークンバケットのトークン数=−1個+3個=+2個
第2のトークンバケットのトークン数= 0個+2個=+2個
第3のトークンバケットのトークン数=−2個+1個=−1個
第1のトークンバケットのトークン数=+2個−2個= 0個
第2のトークンバケットのトークン数=+2個−2個= 0個
第3のトークンバケットのトークン数=−1個−2個=−3個
最大読出レート=2個×120kビット
=240kビット
第1のトークンバケットのトークン数= 0個+3個=+3個
第2のトークンバケットのトークン数= 0個+2個=+2個
第3のトークンバケットのトークン数=−3個+1個=−2個
第1のトークンバケットのトークン数=+3個−3個= 0個
第2のトークンバケットのトークン数=+2個−3個=−1個
第3のトークンバケットのトークン数=−2個−3個=−5個
最大読出レート=3個×120kビット
=360kビット
第1のトークンバケットのトークン数= 0個+3個=+3個
第2のトークンバケットのトークン数=−1個+2個=+1個
第3のトークンバケットのトークン数=−5個+1個=−4個
第1のトークンバケットのトークン数=+3個−3個= 0個
第2のトークンバケットのトークン数=+1個−3個=−2個
第3のトークンバケットのトークン数=−4個−3個=−7個
最大読出レート=3個×120kビット
=360kビット
第1のトークンバケットのトークン数= 0個+3個=+3個
第2のトークンバケットのトークン数=−2個+2個= 0個
第3のトークンバケットのトークン数=−7個+1個=−6個
第1のトークンバケットのトークン数=+3個−3個= 0個
第2のトークンバケットのトークン数= 0個−3個=−3個
第3のトークンバケットのトークン数=−6個−3個=−9個
最大読出レート=3個×120kビット
=360kビット
第1のトークンバケットのトークン数= 0個+3個=+3個
第2のトークンバケットのトークン数=−3個+2個=−1個
第3のトークンバケットのトークン数=−9個+1個=−8個
10 パケットバッファ
11 バッファ読出部
12、121、122、123 トークンバケット
13、131、132、133 トークン生成部
14、141、142、143 トークン消費制御部
151、152、153 トークン消費計数部
Claims (7)
- データパケットを一時的に蓄積するパケットバッファを有するバッファ装置において、
単位量データを読み出す権利となるトークンを一時的に蓄積するものであって、蓄積可能なトークン数を表すトークンバケットサイズが互いに異なる複数のトークンバケットと、
全てのトークンバケットについて同じ数の前記トークンを消費させる、前記トークンバケット毎のトークン消費制御手段と、
前記トークンバケットサイズが大きいほど、単位時間当たり生成されるトークン数を表すトークンレートが低くなるように設定された、前記トークンバケット毎のトークン生成手段と、
前記トークンバケットによって消費されたトークン数を計数し、トークンが空となっているトークンバケットについては負のトークン数を計数するトークン消費計数手段と、
消費されたトークン数に応じて、前記パケットバッファから前記データパケットを読み出すバッファ読出手段と
を有し、
単位時間毎に、蓄積されたトークン量が最も多いトークンバケットに基づいてトークン数が規制されることを特徴とするバッファ装置。 - 単位時間毎に、全てのトークン消費制御手段が、各トークンバケットからトークンを消費すると共に、全てのトークン生成手段が、前記トークンレートに応じて前記トークンバケットにトークンを補充入力することを特徴とする請求項1に記載のバッファ装置。
- 前記トークン消費計数手段は、前記トークン数が負である場合、前記トークンバケットにトークンが補充入力される毎に、負のトークン数を増分させることを特徴とする請求項1又は2に記載のバッファ装置。
- 前記バッファ読出手段の最大読出レートに応じて、全てのトークンバケットについて、トークンを一度に消費できるトークン最大消費数を設定することを特徴とする請求項1から3のいずれか1項に記載のバッファ装置。
- 前記トークンバケットは、
いずれか1つのトークンバケットに、トークン最大消費数以上のトークンが蓄積されている場合、全てのトークンバケットについてトークン最大消費数のトークンを消費し、
又は、
全てのトークンバケットについて、トークン最大消費数以上のトークンが蓄積されていない場合、蓄積しているトークン数が最も多いトークンバケットを選択し、そのトークンバケットに蓄積されているトークン数のトークンを、全てのトークンバケットについて消費する
ように制御されることを特徴とする請求項4に記載のバッファ装置。 - 請求項1から5のいずれか1項に記載のバッファ装置を備え、データパケットを送信することを特徴とする通信装置。
- データパケットを一時的に蓄積するパケットバッファに対する読み出し制御としてコンピュータを機能させるプログラムにおいて、
単位量データを読み出す権利となるトークンを一時的に蓄積するものであって、蓄積可能なトークン数を表すトークンバケットサイズが互いに異なり、且つ、全てのトークンバケットについて同じ数の前記トークンが消費される複数のトークンバケットと、
前記トークンバケットサイズが大きいほど、単位時間当たり生成されるトークン数を表すトークンレートが低くなるように設定された、前記トークンバケット毎のトークン生成手段と、
前記トークンバケットによって消費されたトークン数を計数し、トークンが空となっているトークンバケットについては負のトークン数を計数するトークン消費計数手段と、
消費されたトークン数に応じて、前記パケットバッファから前記データパケットを読み出すバッファ読出手段と
してコンピュータを機能させ、
単位時間毎に、蓄積されたトークン量が最も多いトークンバケットに基づいてトークン数が規制されることを特徴とするバッファ用の読出制御プログラム。
Priority Applications (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2007325326A JP5107016B2 (ja) | 2007-12-17 | 2007-12-17 | トークンバケットを用いたバッファ装置及びプログラム |
PCT/JP2008/072830 WO2009078398A1 (ja) | 2007-12-17 | 2008-12-16 | トークンバケットを用いたバッファ装置及びその制御方法 |
US12/816,663 US8311052B2 (en) | 2007-12-17 | 2010-06-16 | Control of packet buffer using token buckets with different token bucket sizes |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2007325326A JP5107016B2 (ja) | 2007-12-17 | 2007-12-17 | トークンバケットを用いたバッファ装置及びプログラム |
Publications (3)
Publication Number | Publication Date |
---|---|
JP2009147833A JP2009147833A (ja) | 2009-07-02 |
JP2009147833A5 JP2009147833A5 (ja) | 2009-08-13 |
JP5107016B2 true JP5107016B2 (ja) | 2012-12-26 |
Family
ID=40795513
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2007325326A Active JP5107016B2 (ja) | 2007-12-17 | 2007-12-17 | トークンバケットを用いたバッファ装置及びプログラム |
Country Status (3)
Country | Link |
---|---|
US (1) | US8311052B2 (ja) |
JP (1) | JP5107016B2 (ja) |
WO (1) | WO2009078398A1 (ja) |
Families Citing this family (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20110075562A1 (en) * | 2009-09-25 | 2011-03-31 | Isaksson Martin | Rate Shaping For Wireless Communication Using Token Bucket That Allows Token Debt |
JP5445271B2 (ja) * | 2010-03-30 | 2014-03-19 | 富士通株式会社 | 帯域制御装置,帯域制御方法,及びプログラム |
US8619564B2 (en) * | 2010-11-02 | 2013-12-31 | Cisco Technology, Inc. | Synchronized bandwidth reservations for real-time communications |
US8913501B2 (en) | 2012-08-16 | 2014-12-16 | International Business Machines Corporation | Efficient urgency-aware rate control scheme for multiple bounded flows |
US9262505B2 (en) * | 2013-05-17 | 2016-02-16 | Amazon Technologies, Inc. | Input-output prioritization for database workload |
US9178827B2 (en) * | 2013-08-05 | 2015-11-03 | Globalfoundries U.S. 2 Llc | Rate control by token buckets |
JP2015037227A (ja) * | 2013-08-13 | 2015-02-23 | 日本電信電話株式会社 | パケット転送装置およびパケット転送方法 |
US9170752B2 (en) * | 2013-12-19 | 2015-10-27 | International Business Machines Corporation | Dynamic feedback-based throughput control for black-box storage systems |
US9654483B1 (en) * | 2014-12-23 | 2017-05-16 | Amazon Technologies, Inc. | Network communication rate limiter |
KR101637840B1 (ko) * | 2015-06-23 | 2016-07-07 | 강원대학교산학협력단 | 토큰 버킷 기법을 이용한 비디오 스트리밍 서비스 제공 시스템 및 방법 |
CN108881055B (zh) * | 2018-06-27 | 2022-01-04 | 深圳市风云实业有限公司 | 令牌管理方法及装置 |
CN111131066B (zh) * | 2018-10-31 | 2022-08-19 | 深圳市中兴微电子技术有限公司 | 一种流量整形方法及装置 |
Family Cites Families (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
FI100158B (fi) * | 1995-11-09 | 1997-09-30 | Nokia Telecommunications Oy | Liikenteen ohjaus tietoliikennejärjestelmässä |
US6522628B1 (en) * | 1999-03-01 | 2003-02-18 | Cisco Technology, Inc. | Method and system for managing transmission resources in a wireless communication network |
US8032653B1 (en) * | 2000-09-08 | 2011-10-04 | Juniper Networks, Inc. | Guaranteed bandwidth sharing in a traffic shaping system |
US7382727B2 (en) * | 2001-02-21 | 2008-06-03 | Cisco Technology, Inc. | System and method for asymmetrical bandwidth management |
WO2004023745A1 (en) * | 2002-09-06 | 2004-03-18 | Infineon Technologies Ag | Method and system for controlling bandwidth allocation |
US7535843B2 (en) * | 2004-12-30 | 2009-05-19 | Alcatel-Lucent Usa Inc. | Method, apparatus and system for granular policing based on multiple arrival curves |
JP4704147B2 (ja) | 2005-08-12 | 2011-06-15 | Kddi株式会社 | トラフィック制御装置、トラフィック制御方法及びコンピュータプログラム |
JP4593426B2 (ja) | 2005-09-30 | 2010-12-08 | Kddi株式会社 | 無線端末及び無線トラフィック制御方法 |
US7660250B2 (en) * | 2005-11-08 | 2010-02-09 | Arris Group, Inc. | Method and system for regulating traffic in a network device |
JP4577220B2 (ja) | 2006-01-16 | 2010-11-10 | Kddi株式会社 | トークンバケットによるトラヒック制御装置、方法及びプログラム |
JP4577230B2 (ja) | 2006-02-17 | 2010-11-10 | Kddi株式会社 | トークンバケットによるトラヒック制御装置、方法及びプログラム |
JP4570586B2 (ja) * | 2006-06-05 | 2010-10-27 | 日本電信電話株式会社 | トラヒック制御方法とシステムおよびプログラム |
US8045456B1 (en) * | 2006-11-27 | 2011-10-25 | Marvell International Ltd. | Hierarchical port-based rate limiting |
US7911958B2 (en) * | 2008-05-13 | 2011-03-22 | Broadcom Corporation | Token bucket with variable token value |
-
2007
- 2007-12-17 JP JP2007325326A patent/JP5107016B2/ja active Active
-
2008
- 2008-12-16 WO PCT/JP2008/072830 patent/WO2009078398A1/ja active Application Filing
-
2010
- 2010-06-16 US US12/816,663 patent/US8311052B2/en active Active
Also Published As
Publication number | Publication date |
---|---|
US20100246596A1 (en) | 2010-09-30 |
US8311052B2 (en) | 2012-11-13 |
WO2009078398A1 (ja) | 2009-06-25 |
JP2009147833A (ja) | 2009-07-02 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP5107016B2 (ja) | トークンバケットを用いたバッファ装置及びプログラム | |
CN1881937B (zh) | 将存储空间动态分配给多个队列的方法及设备 | |
CN102413063B (zh) | 动态调整出口资源分配阈值的方法及系统 | |
CN102420776B (zh) | 动态调整入口资源分配阈值的方法及系统 | |
Charara et al. | Methods for bounding end-to-end delays on an AFDX network | |
EP1774714B1 (en) | Hierarchal scheduler with multiple scheduling lanes | |
CN100426738C (zh) | 一种数据流量约束控制的实现方法 | |
US7898953B2 (en) | Deficit and group round robin scheduling for efficient network traffic management | |
CN103326953A (zh) | 一种基于令牌桶的流量限制方法和装置 | |
CN103838659B (zh) | 一种系统日志的控制方法和装置 | |
US7843940B2 (en) | Filling token buckets of schedule entries | |
CN102387076B (zh) | 一种结合整形的分级式队列调度方法 | |
JP4893646B2 (ja) | 帯域制御装置および帯域制御方法 | |
WO2020142867A1 (zh) | 一种流量整形方法及相关设备 | |
US7333436B2 (en) | Network device with traffic shaping functions and bandwidth control method using leaky bucket algorithm | |
EP2432170A1 (en) | A token bucket based data packet traffic shapping device | |
CN109660468A (zh) | 一种端口拥塞管理方法、装置和设备 | |
CN101707789B (zh) | 流量控制方法及系统 | |
CN103685062A (zh) | 缓存管理方法及装置 | |
CN102739531B (zh) | 流量整形方法和流量整形设备 | |
CN101094188A (zh) | 随机先期检测装置及其硬件实现方法 | |
CN109905331A (zh) | 队列调度方法及装置、通信设备、存储介质 | |
CN100450103C (zh) | 流量整形的方法和装置 | |
CN106533971A (zh) | 基于令牌桶机制的卫星通信速率控制方法 | |
CN100376099C (zh) | 基于网络处理器平台实现的综合队列管理方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20090601 |
|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20100712 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20120727 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20120814 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20121001 |
|
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20121003 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 5107016 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20151012 Year of fee payment: 3 |