CN101741603B - 一种基于令牌桶的流量监管方法及设备 - Google Patents

一种基于令牌桶的流量监管方法及设备 Download PDF

Info

Publication number
CN101741603B
CN101741603B CN2008102173052A CN200810217305A CN101741603B CN 101741603 B CN101741603 B CN 101741603B CN 2008102173052 A CN2008102173052 A CN 2008102173052A CN 200810217305 A CN200810217305 A CN 200810217305A CN 101741603 B CN101741603 B CN 101741603B
Authority
CN
China
Prior art keywords
leaky bucket
message
bucket
token
parameter
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.)
Expired - Fee Related
Application number
CN2008102173052A
Other languages
English (en)
Other versions
CN101741603A (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 CN2008102173052A priority Critical patent/CN101741603B/zh
Publication of CN101741603A publication Critical patent/CN101741603A/zh
Application granted granted Critical
Publication of CN101741603B publication Critical patent/CN101741603B/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

本发明公开了一种基于令牌桶的流量监管方法及设备,设备包括设置模块、存储器、控制模块、流量监管模块,相应的方法为:1)设置不同漏桶算法规则,建立流ID与漏桶算法规则的映射关系表;2)获取待监管的报文,以流ID为索引查找其对应的漏桶算法规则及漏桶参数,据此确定当前平均漏桶和峰值漏桶中可用令牌数,将所述报文的长度与平均漏桶和峰值漏桶中可用令牌数分别比较,采用相应的漏桶算法规则根据比较结果对报文进行着色,更新并保存所述漏桶参数以作为处理下级具有相同流ID的报文的待用参数,然后根据着色结果对述报文进行丢弃或者转发。本发明同时支持单速率和双速率标记算法,具良好的兼容性;突破了处理能力的瓶颈;具有高处理速率。

Description

一种基于令牌桶的流量监管方法及设备
技术领域
本发明涉及数据传输领域,尤其涉及一种应用于无源光网络(GPON)中的基于令牌桶的流量监管方法及设备。
背景技术
随着因特网的发展,IP业务不断快速增长。GPON技术受到广泛关注,它以前所未有的经济性以原有格式支持传统电信业务,也支持着未来向全分组/全IP网络的演进。
如何提高信息在传输中的质量(QoS)也是一个关键所在。QoS技术就是为用户业务提供端到端的服务质量保证,已成为近几年业界研究的热点。目前存在多种QoS服务模型,其中应用最广的是区分服务模型(DiffServ)。DiffServ模型通过数据包分类、拥塞管理、拥挤避免、速率限制和流量整形技术来实现服务质量控制,在其速率限制和流量整形中,主要使用了令牌桶算法来评估流量速率是否超过规定值。
令牌桶流量监管机制在数据传输领域中使用的相当普遍,其基本原理是以一定的填充速率往令牌桶填充令牌数,然后将需要通过的报文长度与令牌桶的令牌数进行比较,如果令牌桶中的令牌数大于或等于报文长度,则允许报文通过,否则禁止报文通过,从而达到限制流量的目的。
RFC中定义了两种令牌桶算法——单速率三色标记算法和双速率三色标记算法,其评估结果都是为报文打上红、黄、绿三色标记。根据报文的颜色,设置报文的丢弃优先级,其中单速率三色标记算法比较关心报文尺寸的突发,而双速率三色标记算法则关注速率上的突发,两种算法都可工作于色盲模式和非色盲模式。
单速率三色标记算法采用单桶或双桶结构,令牌添加方式和报文处理流程比较简单;双速率三色记算法采用双桶结构,令牌添加方式和报文处理流程相对复杂。前者关注报文尺寸上的突发,后者关注速率上的突发,两者各有优点。其中,双漏桶的结构如图1所示。
目前,人们通常采用单一的单速率三色标记算法或者双速率三色标记算法来进行流量监管,针对于不同种类的报文,这种采用单一算法的监管方法并不适用。
发明内容
本发明所要解决的技术问题是提供一种基于令牌桶的流量监管方法,还提供一种基于令牌桶的流量监管设备,同时支持双漏桶单速率三色标记算法和双漏桶双速率三色标记算法。
为解决上述技术问题,本发明是通过以下技术方案实现的:
一种基于令牌桶的流量监管方法,包括步骤:
(1)预先设置不同漏桶算法规则的各项参数,同时建立流ID与所述漏桶算法规则的映射关系表;
(2)获取待监管的报文,以此报文的流ID为索引查找其对应的漏桶算法规则及漏桶参数,据此确定当前平均漏桶和峰值漏桶中可使用的令牌数,将所述报文的长度与平均漏桶和峰值漏桶中可使用的令牌数分别比较,采用相应的漏桶算法规则根据比较结果对所述报文进行着色,同时更新并保存所述漏桶参数以作为处理下一级具有相同流ID的报文的待用参数,然后根据着色结果对所述报文进行丢弃或者转发处理。
其中,步骤(1)中,所述漏桶算法规则的参数包括:着色规则选择位、平均漏桶填充速率、峰值漏桶填充速率、平均漏桶的深度、峰值漏桶的深度;其中,所述着色规则位用于标识采用的算法为单速率三色标记算法还是双速率三色标记算法;
所述漏桶参数包括流ID、添加令牌的时间标签、平均漏桶中的剩余令牌数、峰值漏桶中的剩余令牌数。
其中,所述步骤(2)中包括以下并行处理的三个步骤:
①由第一流水模块进行以下处理:按级读取待监管的报文,以其流ID为索引查找并获取对应的漏桶算法规则的各项参数;然后将所述报文及其对应的漏桶算法规则的各项参数发送给第二流水模块进行处理;
②由第二流水模块对于所接收到的报文进行以下处理:首先,以流ID为索引从内部存储器或者片外存储器中获取该报文对应的漏桶参数,根据所述漏桶算法规则参数以及漏桶参数,计算此时需要向平均漏桶及峰值漏桶中添加的令牌数,向平均漏桶及峰值漏桶中添加相应数量的令牌,得到当前平均漏桶及峰值漏桶中可用的令牌数;然后,将所述报文的长度分别与平均漏桶和峰值漏桶中可用的令牌数进行比较,采用相应的标记算法根据比较结果对所述报文进行着色,并相应地减少平均漏桶和/或峰值漏桶中的令牌数,同时将本报文对应的漏桶参数各项依次更新为本报文的流ID、本次添加令牌的时间标签、本次处理后的平均漏桶中的剩余令牌数以及峰值漏桶中的剩余令牌数;最后,将所述更新后的漏桶参数存储于内部存储器中并交由第三流水模块处理;
③由第三流水模块进行以下处理:将所述更新后的漏桶参数写入片外存储器中。
其中,所述步骤②中,所述第二流水模块以流ID为索引读取所述报文对应的漏桶参数的方法为:若该报文与本模块处理的前两级报文的流ID均不同,则从片外存储器中读取对应的漏桶参数;若该报文与本模块处理的前一级报文的流ID相同,则从内部存储器中读取本模块在处理前一级报文后所保存的漏桶参数;若该报文与本模块处理的前一级报文的流ID不同,与本模块处理的第前二级报文的流ID相同,则从内部存储器中读取本模块在处理前两级报文后所保存的漏桶参数。
一种基于令牌桶的流量监管设备,包括:设置模块、存储器、控制模块、流量监管模块;
所述设置模块,用于预先设置不同漏桶算法规则的各项参数,同时建立流ID与所述漏桶算法规则的映射关系表,并将所述不同漏桶算法规则及映射关系表存储于存储器中;
所述控制模块,用于获取待监管的报文并将其发送给流量监管模块进行处理;还用于接收流量监管模块发送来的报文,根据其着色情况对此报文进行转发或者丢弃处理;
所述流量监管模块,用于接收待监管的报文,以此报文的流ID为索引查找其对应的漏桶算法规则及漏桶参数,据此确定当前平均漏桶和峰值漏桶中可使用的令牌数,将所述报文的长度与平均漏桶和峰值漏桶中可使用的令牌数分别比较,采用相应的漏桶算法规则根据比较结果对所述报文进行着色,同时更新并保存所述漏桶参数以作为处理下一级具有相同流ID的报文的待用参数,然后将经过着色处理的报文返回给控制模块;
所述存储器,用于存储不同漏桶算法规则的各项参数、流ID与漏桶算法规则的映射关系表;还用于存储所述漏桶参数。
其中,所述漏桶算法规则的参数包括:着色规则选择位、平均漏桶填充速率、峰值漏桶填充速率、平均漏桶的深度、峰值漏桶的深度;其中,所述着色规则位用于标识采用的算法为单速率三色标记算法还是双速率三色标记算法;
所述漏桶参数包括流ID、添加令牌的时间标签、平均漏桶中的剩余令牌数、峰值漏桶中的剩余令牌数。
其中,所述流量监管模块包括并行运行的第一流水模块、第二流水模块、第三流水模块,所述存储器包括内部存储器和片外存储器;
所述第一流水模块,用于按级读取待监管的报文,以其流ID为索引查找并获取对应的漏桶算法规则的各项参数;然后将所述报文及其对应的漏桶算法规则的各项参数发送给第二流水模块进行处理;
所述第二流水模块用于对所接收到的报文进行以下处理:首先,以流ID为索引从内部存储器或者片外存储器中读取该报文对应的漏桶参数,根据所述漏桶算法规则参数以及漏桶参数,计算此时需要向平均漏桶及峰值漏桶中添加的令牌数,向平均漏桶及峰值漏桶中添加相应数量的令牌,得到当前平均漏桶及峰值漏桶中可用的令牌数;然后,将所述报文的长度分别与平均漏桶和峰值漏桶中可用的令牌数进行比较,采用相应的标记算法根据比较结果对所述报文进行着色,并相应地减少平均漏桶和/或峰值漏桶中的令牌数,同时将本报文对应的漏桶参数各项依次更新为本报文的流ID、本次添加令牌的时间标签、本次处理后的平均漏桶中的剩余令牌数以及峰值漏桶中的剩余令牌数;最后,将所述更新后的漏桶参数存储于内部存储器中并交由第三流水模块处理;
所述第三流水模块用于将所述更新后的漏桶参数写入片外存储器中,并将经第二流水模块进行着色处理的报文发送给控制模块;
所述内部存储器,用于存储不同漏桶算法规则的各项参数、流ID与漏桶算法规则的映射关系表、来自第二流水模块的漏桶参数;
所述片外存储器,用于存储来自第三流水模块的漏桶参数。
其中,所述第二流水模块从内部存储器还是片外存储器中读取所述报文对应的漏桶参数的依据为:若该报文与本模块处理的前两级报文的流ID均不同,则从片外存储器中读取对应的漏桶参数;若该报文与本模块处理的前一级报文的流ID相同,则从内部存储器中读取本模块在处理前一级报文后所保存的漏桶参数;若该报文与本模块处理的前一级报文的流ID不同,且与本模块处理的第前二级报文的流ID相同,则从内部存储器中读取本模块在处理前两级报文后所保存的漏桶参数。
其中,所述片外存储器为四倍数据速率静态随机存储器。
其中,还包括流量统计模块,用于根据流量监管模块的处理结果统计报文的丢弃或通过情况。
与现有技术相比,本发明具有以下有益效果:
1)同时支持双漏桶单速率三色标记算法和双漏桶双速率三色标记算法,具有良好的兼容性;
2)本发明将占用大量存储空间的漏桶参数(包括流ID、平均漏桶中的令牌数、峰值漏桶中的令牌数)存储至片外存储器中,不受内部存储器自身容量的限制,突破了处理能力的瓶颈;
3)由于本发明采用并行的三级流水处理方式,因而具有高处理速率。
附图说明
图1是双漏桶的模型;
图2是本发明中流量监管设备的结构示意图。
具体实施方式
下面结合附图及具体实施例对本发明作进一步详细的描述:
请参阅图2,该图所示为本发明所提出的流量监管设备的结构图,该设备的组成部分为:
设置模块,与内部存储器相连,用于预先设置不同漏桶算法规则的各项参数,同时建立流ID与所述漏桶算法规则的映射关系表,并将所述不同漏桶算法规则及映射关系表存储于内部存储器中;
控制模块,与流量统计模块、流量监管模块分别相连,用于获取待监管的报文并将其发送给流量监管模块进行处理;还用于接收流量监管模块发送来的报文,根据其着色情况对此报文进行转发或者丢弃处理;
流量统计模块,与控制模块相连,用于根据流量监管模块的处理结果统计报文的丢弃或通过情况;
流量监管模块,包括并行运行的依次相连的第一流水模块、第二流水模块、第三流水模块;
其中,第一流水模块,用于按级读取待监管的报文,以其流ID为索引查找并获取对应的漏桶算法规则的各项参数;然后将所述报文及其对应的漏桶算法规则的各项参数发送给第二流水模块进行处理;
其中,第二流水模块用于对所接收到的报文进行以下处理:首先,以流ID为索引从内部存储器或者片外存储器中读取该报文对应的漏桶参数,根据所述漏桶算法规则参数以及漏桶参数,计算此时需要向平均漏桶及峰值漏桶中添加的令牌数,向平均漏桶及峰值漏桶中添加相应数量的令牌,得到当前平均漏桶及峰值漏桶中可用的令牌数;然后,将所述报文的长度分别与平均漏桶和峰值漏桶中可用的令牌数进行比较,采用相应的标记算法根据比较结果对所述报文进行着色,并相应地减少平均漏桶和/或峰值漏桶中的令牌数,同时将本报文对应的漏桶参数各项依次更新为本报文的流ID、本次添加令牌的时间标签、本次处理后的平均漏桶中的剩余令牌数以及峰值漏桶中的剩余令牌数;最后,将所述更新后的漏桶参数存储于内部存储器中并交由第三流水模块处理;
其中,第三流水模块用于将所述更新后的漏桶参数写入片外存储器中,并将经第二流水模块进行着色处理的报文发送给控制模块;
存储器,包括内部存储器和片外存储器,内部存储器与第一流水模块和第二流水模块分别相连,用于存储不同漏桶算法规则的各项参数、流ID与漏桶算法规则的映射关系表、来自第二流水模块的漏桶参数;片外存储器与第一流水模块和第二流水模块分别相连,用于存储来自第三流水模块的漏桶参数。
上述流量监管设备的工作原理为:
首先,由设置模块预先设置不同漏桶算法规则的各项参数,同时建立流ID与所述漏桶算法规则的映射关系表,保存于内部存储器中;
然后,由控制模块按级读取待监管的报文并交由流量监管模块进行以下处理:以当前级报文的流ID为索引查找其对应的漏桶算法规则及漏桶参数,据此确定当前平均漏桶和峰值漏桶中可使用的令牌数,将所述报文的长度与平均漏桶和峰值漏桶中可使用的令牌数分别比较,采用相应的漏桶算法规则根据比较结果对所述报文进行着色,同时更新并保存所述漏桶参数以作为处理下一级具有相同流ID的报文的待用参数,然后将着色处理后的报文返回给控制模块;
最后,控制模块按照着色结果将报文转发或者丢弃,同时,流量统计模块统计报文的丢弃或者通过情况。
下面将对流量监管模块的处理流程作进一步详细的描述:
为了提高处理速率,本模块分成三级流水并行处理,每级流水的周期数可根据应用调整,此处举例采用的是8个时钟周期。本实施例中,片外存储器采用的是QDRII SRAM;QDR II SRAM也叫四倍数据速率静态随机存储器,共用一套地址总线,读写数据总线是分开的,可以实现读写同时进行;采用时钟的上升沿和下降沿分别操作。
第一流水模块主要完成QDR读响应及查找令牌桶的参数(注:由于片外QDR响应较慢,读操作提前到上一级流水)。本模块每隔8个时钟从前级取得流ID,将流ID映射到系统规划的多个Profile,每个Profile代表一套漏桶算法规则,参数包括着色规则选择位、平均漏桶的填充速率、峰值漏桶的填充速率、平均漏桶的深度、峰值漏桶的深度,查表得到以上参数。
第二流水模块是操作的核心,完成流量监管处理。8拍时钟的规划为:
1.判断监管运算是采用从片外QDR读出的漏桶参数,还是采用内部存储器中保存的漏桶参数(详细的判断方法见后文);保存第一流水模块发送来的漏桶算法参数包括着色规则选择位、平均漏桶填充速率、峰值漏桶填充速率、平均漏桶的深度、峰值漏桶的深度;并修正待处理报文的包长,加上由CPU配置的修正参数(参数由inter-frame+preamble构成)。若采用从片外QDR读出的漏桶参数,则缓存从QDR中读出的时间标签;
2.计算两次添加令牌的时间间隔ΔT;保存当前时间标签;若采用从片外QDR读出的漏桶参数,则缓存从QDR中读出的平均漏桶中的令牌数;
3.计算需要添加的令牌;若采用从片外QDR读出的漏桶参数,缓存从QDR中读出的峰值漏桶中的令牌数;
4.计算需要添加的令牌;
5.根据计算得到的将要添加的令牌数以及所读取的平均漏桶和峰值漏桶中的令牌数计算当前漏桶中可用比较的令牌数;
6.根据着色规则选择位确定采用单速率三色标记算法还是双速率三色标记算法;将待处理报文的长度与平均漏桶和峰值漏桶的令牌数分别进行比较,采用相应的标记算法根据比较结果对报文进行着色;
7.根据报文的着色结果对平均漏桶和峰值漏桶中的令牌数进行调整;
8.更新漏桶参数,将其保存到内部存储器,包括流ID、本次添加令牌的时间标签、本次处理后平均漏桶中的剩余令牌数、本次处理后峰值漏桶中的剩余令牌数。
第三流水模块完成写QDR、保存漏桶参数和统计值;(QDR读也提前到本级流水的后期)。将更新后的漏桶参数写入QDR中。本实施例中,在QDR写入完成后,QDR读操作提前到此级流水,每隔8个时钟取一次流ID,以流ID为地址向片外QDR申请读上次添加令牌的时间标签、平均漏桶中的令牌数、峰值漏桶中的令牌数。
以下为第二流水模块选择从片外QDR还是内部存储器读取漏桶参数的方法:
为了避免在连续相同流ID的情况下,漏桶参数还未保存到QDR又需要读出,造成处理出错,那么在三级流水处理下,内部存储器至少要保存3组漏桶参数(A、B、C三组);在第三级流水最后一拍,C写到B,B写到A,始终保持保存前2组流ID对应的数据。
在第二级流水第一拍,根据以下判断方法做出判断:
比较A和C的流ID是否相同,相同则标志FLID_AC_equal为1,否则为0.
比较B和C的流ID是否相同,相同则标志FLID_BC_equal为1,否则为0.
根据FLID_AC_equal,FLID_BC_equal的组合判断采用哪组参数
11:采用B组参数;
10:采用A组参数;
01:采用B组参数;
00:采用读QDR的参数。
以上实施例仅用以说明本发明的技术方案而非限制,仅仅参照较佳实施例对本发明进行了详细说明。本领域的普通技术人员应当理解,可以对本发明的技术方案进行修改或者等同替换,而不脱离本发明技术方案的精神和范围,均应涵盖在本发明的权利要求范围当中。

Claims (10)

1.一种基于令牌桶的流量监管方法,其特征在于,包括步骤:
(1)预先设置不同漏桶算法规则的各项参数,同时建立流ID与所述漏桶算法规则的映射关系表;
(2)获取待监管的报文,以此报文的流ID为索引查找其对应的漏桶算法规则及漏桶参数,据此确定当前平均漏桶和峰值漏桶中可使用的令牌数,将所述报文的长度与平均漏桶和峰值漏桶中可使用的令牌数分别比较,采用相应的漏桶算法规则根据比较结果对所述报文进行着色,同时更新并保存所述漏桶参数以作为处理下一级具有相同流ID的报文的待用参数,然后根据着色结果对所述报文进行丢弃或者转发处理。
2.如权利要求1所述的基于令牌桶的流量监管方法,其特征在于,步骤(1)中,所述漏桶算法规则的参数包括:着色规则选择位、平均漏桶填充速率、峰值漏桶填充速率、平均漏桶的深度、峰值漏桶的深度;其中,所述着色规则选择位用于标识采用的算法为单速率三色标记算法还是双速率三色标记算法;
所述漏桶参数包括流ID、添加令牌的时间标签、平均漏桶中的剩余令牌数、峰值漏桶中的剩余令牌数。
3.如权利要求2所述的基于令牌桶的流量监管方法,其特征在于,所述步骤(2)中包括以下三个步骤:
①由第一流水模块进行以下处理:按级读取待监管的报文,以其流ID为索引查找并获取对应的漏桶算法规则的各项参数;然后将所述报文及其对应的漏桶算法规则的各项参数发送给第二流水模块进行处理;
②由第二流水模块对于所接收到的报文进行以下处理:首先,以流ID为索引从内部存储器或者片外存储器中获取该报文对应的漏桶参数,根据所述漏桶算法规则参数以及漏桶参数,计算此时需要向平均漏桶及峰值漏桶中添加的令牌数,向平均漏桶及峰值漏桶中添加相应数量的令牌,得到当前平均漏桶及峰值漏桶中可用的令牌数;然后,将所述报文的长度分别与平均漏桶和峰值漏桶中可用的令牌数进行比较,采用相应的标记算法根据比较结果对所述报文进行着色,并相应地减少平均漏桶和/或峰值漏桶中的令牌数,同时将本报文对应的漏桶参数各项依次更新为本报文的流ID、本次添加令牌的时间标签、本次处理后的平均漏桶中的剩余令牌数以及峰值漏桶中的剩余令牌数;最后,将所述更新后的漏桶参数存储于内部存储器中并交由第三流水模块处理;
③由第三流水模块进行以下处理:将所述更新后的漏桶参数写入片外存储器中。
4.如权利要求3所述的基于令牌桶的流量监管方法,其特征在于,所述步骤②中,所述第二流水模块以流ID为索引读取所述报文对应的漏桶参数的方法为:若该报文与本模块处理的前两级报文的流ID均不同,则从片外存储器中读取对应的漏桶参数;若该报文与本模块处理的前一级报文的流ID相同,则从内部存储器中读取本模块在处理前一级报文后所保存的漏桶参数;若该报文与本模块处理的前一级报文的流ID不同,与本模块处理的前两级报文的流ID相同,则从内部存储器中读取本模块在处理前两级报文后所保存的漏桶参数。
5.一种基于令牌桶的流量监管设备,其特征在于,包括:设置模块、存储器、控制模块、流量监管模块;
所述设置模块,用于预先设置不同漏桶算法规则的各项参数,同时建立流ID与所述漏桶算法规则的映射关系表,并将所述不同漏桶算法规则及映射关系表存储于存储器中;
所述控制模块,用于获取待监管的报文并将其发送给流量监管模块进行处理;还用于接收流量监管模块发送来的报文,根据其着色情况对此报文进行转发或者丢弃处理;
所述流量监管模块,用于接收待监管的报文,以此报文的流ID为索引查找其对应的漏桶算法规则及漏桶参数,据此确定当前平均漏桶和峰值漏桶中可使用的令牌数,将所述报文的长度与平均漏桶和峰值漏桶中可使用的令牌数分别比较,采用相应的漏桶算法规则根据比较结果对所述报文进行着色,同时更新并保存所述漏桶参数以作为处理下一级具有相同流ID的报文的待用参数,然后将经过着色处理的报文返回给控制模块;
所述存储器,用于存储不同漏桶算法规则的各项参数、流ID与漏桶算法规则的映射关系表;还用于存储所述漏桶参数。
6.如权利要求5所述的基于令牌桶的流量监管设备,其特征在于,所述漏桶算法规则的参数包括:着色规则选择位、平均漏桶填充速率、峰值漏桶填充速率、平均漏桶的深度、峰值漏桶的深度;其中,所述着色规则选择位用于标识采用的算法为单速率三色标记算法还是双速率三色标记算法;
所述漏桶参数包括流ID、添加令牌的时间标签、平均漏桶中的剩余令牌数、峰值漏桶中的剩余令牌数。
7.如权利要求6所述的基于令牌桶的流量监管设备,其特征在于,所述流量监管模块包括第一流水模块、第二流水模块、第三流水模块,所述存储器包括内部存储器和片外存储器;
所述第一流水模块,用于按级读取待监管的报文,以其流ID为索引查找并获取对应的漏桶算法规则的各项参数;然后将所述报文及其对应的漏桶算法规则的各项参数发送给第二流水模块进行处理;
所述第二流水模块用于对所接收到的报文进行以下处理:首先,以流ID为索引从内部存储器或者片外存储器中读取该报文对应的漏桶参数,根据所述漏桶算法规则参数以及漏桶参数,计算此时需要向平均漏桶及峰值漏桶中添加的令牌数,向平均漏桶及峰值漏桶中添加相应数量的令牌,得到当前平均漏桶及峰值漏桶中可用的令牌数;然后,将所述报文的长度分别与平均漏桶和峰值漏桶中可用的令牌数进行比较,采用相应的标记算法根据比较结果对所述报文进行着色,并相应地减少平均漏桶和/或峰值漏桶中的令牌数,同时将本报文对应的漏桶参数各项依次更新为本报文的流ID、本次添加令牌的时间标签、本次处理后的平均漏桶中的剩余令牌数以及峰值漏桶中的剩余令牌数;最后,将所述更新后的漏桶参数存储于内部存储器中并交由第三流水模块处理;
所述第三流水模块用于将所述更新后的漏桶参数写入片外存储器中,并将经第二流水模块进行着色处理的报文发送给控制模块;
所述内部存储器,用于存储不同漏桶算法规则的各项参数、流ID与漏桶算法规则的映射关系表、来自第二流水模块的漏桶参数;
所述片外存储器,用于存储来自第三流水模块的漏桶参数。
8.如权利要求7所述的基于令牌桶的流量监管设备,其特征在于,所述第二流水模块从内部存储器还是片外存储器中读取所述报文对应的漏桶参数的依据为:若该报文与本模块处理的前两级报文的流ID均不同,则从片外存储器中读取对应的漏桶参数;若该报文与本模块处理的前一级报文的流ID相同,则从内部存储器中读取本模块在处理前一级报文后所保存的漏桶参数;若该报文与本模块处理的前一级报文的流ID不同,且与本模块处理的前两级报文的流ID相同,则从内部存储器中读取本模块在处理前两级报文后所保存的漏桶参数。
9.如权利要求7或8所述的基于令牌桶的流量监管设备,其特征在于,所述片外存储器为四倍数据速率静态随机存储器。
10.如权利要求5所述的基于令牌桶的流量监管设备,其特征在于,还包括流量统计模块,用于根据流量监管模块的处理结果统计报文的丢弃或通过情况。
CN2008102173052A 2008-11-11 2008-11-11 一种基于令牌桶的流量监管方法及设备 Expired - Fee Related CN101741603B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN2008102173052A CN101741603B (zh) 2008-11-11 2008-11-11 一种基于令牌桶的流量监管方法及设备

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN2008102173052A CN101741603B (zh) 2008-11-11 2008-11-11 一种基于令牌桶的流量监管方法及设备

Publications (2)

Publication Number Publication Date
CN101741603A CN101741603A (zh) 2010-06-16
CN101741603B true CN101741603B (zh) 2013-01-16

Family

ID=42464540

Family Applications (1)

Application Number Title Priority Date Filing Date
CN2008102173052A Expired - Fee Related CN101741603B (zh) 2008-11-11 2008-11-11 一种基于令牌桶的流量监管方法及设备

Country Status (1)

Country Link
CN (1) CN101741603B (zh)

Families Citing this family (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102315956B (zh) * 2010-07-02 2014-10-22 中兴通讯股份有限公司 一种流量监管方法和装置
US8964538B2 (en) 2010-09-24 2015-02-24 Broadcom Corporation Method and apparatus for supporting differentiated performance for multiple categories of packets in a passive optical network
CN102413042A (zh) * 2011-11-14 2012-04-11 盛科网络(苏州)有限公司 基于时戳更新令牌桶的流量监管的方法及系统
CN102984081A (zh) * 2012-10-30 2013-03-20 盛科网络(苏州)有限公司 网络设备中报文处理方法及系统
CN102970238B (zh) * 2012-11-22 2015-09-30 华为技术有限公司 一种流量控制的方法和设备
CN102932272B (zh) * 2012-11-23 2016-05-11 迈普通信技术股份有限公司 基于流量大小的报文转发方法及转发设备
CN103312621B (zh) * 2013-06-07 2016-08-10 深圳中兴网信科技有限公司 流量控制系统和流量控制方法
CN103684863B (zh) * 2013-12-11 2017-07-28 华为技术有限公司 流量监管的处理方法和装置
CN103746876B (zh) * 2013-12-31 2017-08-01 迈普通信技术股份有限公司 一种基于业务的带宽流量检测方法及系统
CN104980367B (zh) * 2014-04-03 2019-04-30 深圳市中兴微电子技术有限公司 一种令牌桶限速方法和装置
CN105577315B (zh) * 2014-10-08 2019-07-09 深圳市中兴微电子技术有限公司 一种链路状态控制方法及装置
CN104836745B (zh) * 2015-05-08 2017-12-12 中国人民解放军61600部队 一种基于单向传输设备的网络层隧道化方法
CN106789703B (zh) * 2017-01-12 2020-10-13 上海斐讯数据通信技术有限公司 一种基于sdn架构的流量监管方法
CN106982174A (zh) * 2017-04-13 2017-07-25 携程旅游网络技术(上海)有限公司 线上流量管控方法及系统
CN110545246B (zh) * 2018-05-29 2023-12-08 北京京东尚科信息技术有限公司 一种基于令牌桶的限流方法、装置和计算机可读介质
CN111355669B (zh) 2018-12-20 2022-11-25 华为技术有限公司 控制网络拥塞的方法、装置及系统
CN114095444B (zh) * 2020-07-15 2023-11-10 中移物联网有限公司 限流方法、装置及电子设备
CN113821286A (zh) * 2021-08-31 2021-12-21 新华三大数据技术有限公司 云桌面环境中虚拟机文件分发方法、装置及存储介质

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1536815A (zh) * 2003-04-03 2004-10-13 华为技术有限公司 采用令牌漏桶进行报文限流的方法
CN1859206A (zh) * 2006-03-24 2006-11-08 华为技术有限公司 一种剩余带宽复用的方法及网络设备
CN1929452A (zh) * 2006-09-20 2007-03-14 华为技术有限公司 流量整形的方法和装置

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1536815A (zh) * 2003-04-03 2004-10-13 华为技术有限公司 采用令牌漏桶进行报文限流的方法
CN1859206A (zh) * 2006-03-24 2006-11-08 华为技术有限公司 一种剩余带宽复用的方法及网络设备
CN1929452A (zh) * 2006-09-20 2007-03-14 华为技术有限公司 流量整形的方法和装置

Also Published As

Publication number Publication date
CN101741603A (zh) 2010-06-16

Similar Documents

Publication Publication Date Title
CN101741603B (zh) 一种基于令牌桶的流量监管方法及设备
CN1770734B (zh) 网络装置的通信量控制方法
US7061862B2 (en) Inter-network relay system and method
CN101714947B (zh) 一种可扩展的全流优先级调度方法及系统
CN101193060B (zh) 在分组网上采用前向纠错机制实现可靠的e1传送的方法
CN1761219B (zh) 在mpls环网中实现拓扑结构自动发现的方法
CN100407701C (zh) 一种网络处理器
CN104133784B (zh) 一种报文缓存管理方法与装置
CN101420461B (zh) 一种基于业务感知的自适应令牌桶的标记方法
CN101510846A (zh) 基于区分服务网络和IPv6扩展头实现自治QoS的系统和方法
CN110224929A (zh) 基于dpdk的链路聚合接口的数据包转发方法
CN109684269A (zh) 一种pcie交换芯片内核及工作方法
CN102387076B (zh) 一种结合整形的分级式队列调度方法
CN106453138A (zh) 一种报文处理方法和装置
CN102427428A (zh) 基于多域最长匹配的流识别方法及设备
CN102932275A (zh) 一种应用于容延时网络的优先级报文转发方法
CN100499575C (zh) 在面向分组的网络中进行业务分配的方法
CN107733813A (zh) 报文转发方法及装置
CN114124781B (zh) SRv6中报文的转发方法、系统、电子设备及存储介质
CN101505283B (zh) 一种报文处理方法及装置
CN105656807A (zh) 一种网络芯片多通道数据传输方法及传输装置
CN101325560B (zh) 一种链路生成方法及其装置
CN111683017A (zh) 高速互连网络中的多等级拥塞控制方法、装置、系统及介质
CN101217486B (zh) 基于网络处理器的移动互联网数据负载分配方法
CN107659505A (zh) 一种sdn网络的选路方法和sdn控制器

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20130116

Termination date: 20211111

CF01 Termination of patent right due to non-payment of annual fee