CN102420776A - 动态调整入口资源分配阈值的方法及系统 - Google Patents

动态调整入口资源分配阈值的方法及系统 Download PDF

Info

Publication number
CN102420776A
CN102420776A CN2012100081226A CN201210008122A CN102420776A CN 102420776 A CN102420776 A CN 102420776A CN 2012100081226 A CN2012100081226 A CN 2012100081226A CN 201210008122 A CN201210008122 A CN 201210008122A CN 102420776 A CN102420776 A CN 102420776A
Authority
CN
China
Prior art keywords
flow control
threshold
port
threshold value
value
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.)
Granted
Application number
CN2012100081226A
Other languages
English (en)
Other versions
CN102420776B (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.)
Suzhou Centec Communications Co Ltd
Original Assignee
Centec Networks Suzhou Co Ltd
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 Centec Networks Suzhou Co Ltd filed Critical Centec Networks Suzhou Co Ltd
Priority to CN201210008122.6A priority Critical patent/CN102420776B/zh
Publication of CN102420776A publication Critical patent/CN102420776A/zh
Application granted granted Critical
Publication of CN102420776B publication Critical patent/CN102420776B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

本发明揭示了一种动态调整入口资源分配阈值的方法,其包括如下步骤:配置各输入端口相对应的丢弃阈值组、流控阈值组以及所映射的业务区;根据输入数据包的输入端口号映射相应的业务区;修改与当前输入端口相对应的端口计数器和业务区计数器的值;得出对应的拥塞程度;根据当前拥塞程度,确定相应的流控阈值以及丢弃阈值,并确定当前输入端口对应的流控请求状态;根据所选取丢弃阈值,确定是否接受输入报文并写入共享缓存;根据所选取的流控阈值以及流控请求状态,决定向输入端口发送流控开启请求或关闭请求。本发明根据缓存业务区的拥塞程度情况,动态调整各输入端口丢弃阈值以及流控阈值,合理调控各输入网络端口对缓存资源的共享。

Description

动态调整入口资源分配阈值的方法及系统
技术领域
本发明涉及网络交换机技术,尤其涉及一种根据缓存拥塞程度动态调整入口资源分配阈值的方法及系统。
背景技术
随着以太网和芯片技术的迅猛发展,交换机芯片的处理带宽不断增大,网络端口容量也与日俱增。同时,随着各端口支持的数据包种类的不断增加,各端口的数据包流的速率也变换多端。对于使用共享缓存的以太网交换机芯片,如何实现存储器资源在各端口之间动态有效合理分配,以满足各端口带宽需求成为决定城域网交换机芯片性能的关键因素。
现有的入口资源管理技术仅对每个端口占用的缓存资源进行统计,对每个端口分别设定一个最小保证的缓存资源阈值,和一个最大的丢弃缓存资源阈值。当网络流量比较小的时候,每个端口可以占用达到丢弃阈值数目的缓存资源;当网络流量出现拥塞以致总缓存资源的占用达到一定程度的时候,每个入端口只能占用达到对应的最小保证阈值数目的缓存资源,超过该阈值时,输入的数据包就会被丢弃。这种管理方式在各端口数据流量比较均匀的时候,能够有效分配各端口占用缓存的数量,从而满足各端口数据包流量的需求。
然而,当同时交换机的网络出口出现拥塞,某一端口的数据包占用大量缓存资源时,但总的缓存占用量并未达到使用最小保证阈值的程度时,其他端口在没有超过设定的丢弃阈值的情况下,可能因为存储器资源耗尽而被迫丢弃输入的数据包。另外,如果出口端口数目较少,而每个端口设定的丢弃阈值又不够大时,缓存的资源不能得到充分的使用,造成资源的浪费。总之,现有的入口资源管理技术针对不同的网络流量情况,需要调整丢弃阈值,不能用一套配置满足所有的情况,资源分配方式不够灵活。
发明内容
本发明的目的在于提供一种动态调整入口资源分配阈值的方法,其根据每个端口所属的业务区中缓存资源使用的情况,对每个端口的丢弃阈值进行动态分配,并支持各端口上的流量控制,从而使得资源分配更为灵活。
相应于所述方法,本发明还提供一种动态调整入口资源分配阈值的系统。
为实现上述发明目的之一,本发明提供的一种动态调整入口资源分配阈值的方法,包括如下步骤:
S1、配置各输入端口相对应的丢弃阈值组、流控阈值组以及所映射的业务区,其中,每个业务区对应配置有若干阶段阈值以对应若干拥塞程度,所述丢弃阈值组包括若干丢弃阈值,所述流控阈值组包括若干对流控阈值,每对流控阈值包括一流控开启阈值和一流控关闭阈值;
S2、根据输入数据包的输入端口号映射相应的业务区;
S3、计算当前数据包所需占用的缓存单元数目,修改与当前输入端口相对应的端口计数器和业务区计数器的值;
S4、根据所述业务区计数器的值与该业务区的各阶段阈值的比较,得出对应的拥塞程度;
S5、根据当前拥塞程度,确定相应的流控阈值以及丢弃阈值,并根据当前端口计数器的值与流控阈值的比较,确定向输入端口发送流控开启请求或关闭请求,并决定当前输入端口对应的流控请求状态;
S6、根据所选取丢弃阈值与端口计数器的值的比较、以及流控请求状态,确定是否接受输入报文并写入共享缓存。
作为本发明的进一步改进,所述步骤S5具体为:
选取与当前拥塞程度匹配的流控阈值和丢弃阈值;
当端口计数器的值大于流控开启阈值时,向输入端口发送流控开启请求,并将流控请求状态置为1;
当端口计数器的值小于流控关闭阈值时,向输入端口发送流控关闭请求,并将流控请求状态置为0;
作为本发明的进一步改进,所述步骤S6具体为:
S61、判断当前流控请求状态的值是否为1,若是,则接收所有输入报文;若否,则跳转步骤S62;
S62、判断当前端口计数器的值是否小于丢弃阈值,若是,则接收输入报文;若否,则丢弃输入报文;
S63、将所有被接收的报文写入共享缓存。
作为本发明的进一步改进,所述步骤S5还包括:
当拥塞程度为所有端口都没有拥塞时,为每个输入端口配置第一类丢弃阈值;
当拥塞程度为某个端口出现拥塞时,为当前拥塞的输入端口配置第二类丢弃阈值;
当拥塞程度为多个端口出现拥塞时,为每个输入端口配置第三类丢弃阈值;
其中,所述第一类丢弃阈值>第二类丢弃阈值>第三类丢弃阈值。
作为本发明的进一步改进,整个数据包缓存分为4个业务区,每个丢弃阈值组包括8个丢弃阈值,每个流控阈值组包括8对流控阈值,每个业务区配置8个阶段阈值对应8个拥塞程度。
为实现本发明另一发明目的,一种动态调整入口资源分配阈值的系统,包括如下单元:
阈值配置单元、用于配置各输入端口相对应的丢弃阈值组、流控阈值组以及所映射的业务区,其中,每个业务区对应配置有若干阶段阈值以对应若干拥塞程度,所述丢弃阈值组包括若干丢弃阈值,所述流控阈值组包括若干对流控阈值,每对流控阈值包括一流控开启阈值和一流控关闭阈值;
业务区映射单元、用于根据输入数据包的输入端口号映射相应的业务区;
缓存单元统计单元、用于计算当前数据包所需占用的缓存单元数目,修改与当前输入端口相对应的端口计数器和业务区计数器的值;
拥塞程度处理单元、用于根据所述业务区计数器的值与该业务区的各阶段阈值的比较,得出对应的拥塞程度;
流控请求控制单元、用于根据当前拥塞程度确定相应的流控阈值,并根据当前端口计数器的值与流控阈值的比较,确定向输入端口发送流控开启请求或关闭请求,并决定当前输入端口对应的流控请求状态;
丢弃控制单元、用于根据当前拥塞程度选取相应的丢弃阈值,并根据所选取丢弃阈值与端口计数器的值的比较、以及流控请求状态,确定是否接受输入报文并写入共享缓存。
作为本发明的进一步改进,所述流控请求控制单元具体用于:
选取与当前拥塞程度匹配的流控阈值和丢弃阈值;
当端口计数器的值大于流控开启阈值时,向输入端口发送流控开启请求,并将流控请求状态置为1;
当端口计数器的值小于流控关闭阈值时,向输入端口发送流控关闭请求,并将流控请求状态置为0;
作为本发明的进一步改进,所述丢弃控制单元具体用于:
判断当前流控请求状态的值是否为1,若是,则接收所有输入报文;若否,则判断当前端口计数器的值是否小于丢弃阈值,若是,则接收输入报文;若否,则丢弃输入报文;
将所有被接收的报文写入共享缓存。
作为本发明的进一步改进,所述丢弃控制单元还用于:
当拥塞程度为所有端口都没有拥塞时,为每个输入端口配置第一类丢弃阈值;
当拥塞程度为某个端口出现拥塞时,为当前拥塞的输入端口配置第二类丢弃阈值;
当拥塞程度为多个端口出现拥塞时,为每个输入端口配置第三类丢弃阈值;
其中,所述第一类丢弃阈值>第二类丢弃阈值>第三类丢弃阈值。
作为本发明的进一步改进,整个数据包缓存分为4个业务区,每个丢弃阈值组包括8个丢弃阈值,每个流控阈值组包括8对流控阈值,每个业务区配置8个阶段阈值对应8个拥塞程度。
与现有技术相比,本发明根据缓存业务区的拥塞程度情况,动态调整各输入端口丢弃阈值和流控阈值,合理调控各输入网络端口对缓存资源的共享。本发明可以使用一套阈值配置保证在任何输入端口拥塞程度下,各输入端口能够公平而有效的占用共享缓存,而且在公平分配缓存资源的前提下,有效吸收突发输入数据包流量,从而使得缓存资源的分配更为灵活。
附图说明
图1是本发明一实施方式中的动态调整入口资源分配阈值的方法的工作流程图;
图2表示本发明一实施方式中缓存资源的业务区分配图;
图3表示图1所示的实施方式中阈值动态分配的原理图;
图4是本发明一实施方式中的动态调整入口资源分配阈值的系统的模块示意图。
具体实施方式
以下将结合附图所示的具体实施方式对本发明进行详细描述。但这些实施方式并不限制本发明,本领域的普通技术人员根据这些实施方式所做出的结构、方法、或功能上的变换均包含在本发明的保护范围内。
图1至图3所示的为本发明动态调整入口资源分配阈值的方法的一具体实施方式,具体为交换机芯片各网络输入端口动态调整资源分配阈值的方法。在本实施方式中,将整个数据包缓存分成若干个业务区(以4个为例),数据包缓存以某个数量(以256字节为例)为单位,划分成若干个缓存单元。
参图1所示,在本发明优选的实施方式中,该方法包括可通过如下步骤来实现:
S1、配置各输入端口相对应的丢弃阈值组、流控阈值组以及所映射的业务区,其中,每个业务区对应配置有若干阶段阈值以对应若干拥塞程度,所述丢弃阈值组包括若干丢弃阈值,所述流控阈值组包括若干对流控阈值,每对流控阈值包括一流控开启阈值和一流控关闭阈值;优选地,在本实施方式中,整个数据包缓存分为4个业务区,每个丢弃阈值组包括8个丢弃阈值,每个流控阈值组包括8对流控阈值,每个业务区配置8个阶段阈值对应8个拥塞程度。具体地,拥塞程度即表示当前各端口的数据输入端口的使用情况,本实施方式中设置的8个阶段阈值分别对应8种拥塞程度不同的情况。当然,在其他实施方式中,阶段阈值的数目可视情况做相应设置。
参图2所示,在本实施方式中,业务区包括4个,分别为业务区0、业务区1、业务区2、业务区3。不同的业务区所对应的标准不尽相同,本发明中,事先需为每个端口配置一个适当的业务区类别。
S2、根据输入数据包的输入端口号映射相应的业务区;优选地,当数据包将要从某输入端口输入时,通过识别当前端口的端口号,相应映射到与该端口号匹配的业务区编号(0、1、2、3),从而获知当前输入端口所映射的业务区。
S3、计算当前数据包所需占用的缓存单元数目,修改与当前输入端口相对应的端口计数器和业务区计数器的值;其中,根据每个输入数据包的长度,计算所需要的缓存单元数量,不足长度单位的数据包长度部分按一个缓存单元计算。本方法按上述原则统计每个输入端口所占用的缓存单元数量,同时统计分配到该端口的缓存业务区已使用的缓存单元数量。
优选地,在本实施方式中,根据数据包输入逻辑和数据包读取逻辑维护缓存单元计数器,统计每个端口和映射到同一个业务区的所有端口总共使用的缓存单元的数量,称为端口计数器和业务区计数器。具体地,当一个数据包待输入时,对应端口计数器和业务区计数器加上该数据包占用的缓存单元数目;当数据包读取逻辑读取一个数据包时,从对应端口计数器和业务区计数器减去该数据包占用的资源单元数目。
S4、根据所述业务区计数器的值与该业务区的各阶段阈值的比较,得出对应的拥塞程度;其中,将输入数据包所属端口映射的业务区计数器的当前值与该业务区对应的8个阶段阈值逐一进行比较,以决定缓存业务区的拥塞程度(以数值0到7表示)。
S5、根据当前拥塞程度,确定相应的流控阈值以及丢弃阈值,并根据当前端口计数器的值与流控阈值的比较,确定向输入端口发送流控开启请求或关闭请求,并决定当前输入端口对应的流控请求状态;其中,流控阈值和丢弃阈值均从之前所述的由8个不同值组成的一个组里面挑选出来的(视当前拥塞程度而定)。
其中,在本实施方式中,步骤S5具体为:
首先,选取与当前拥塞程度匹配的流控阈值和丢弃阈值;
然后,当端口计数器的值大于流控开启阈值时,向输入端口发送流控开启请求,并将流控请求状态置为1(若原来便是1,那便不作改变;若原来是0,则将其变为1);其中,值得一提的是:设置流控请求状态的目的便在于在特殊情况下,需要保证所有输入的数据不被丢弃,那只需要通过将此流控请求状态置为1便可以实现,同时,当输入端口接收到流控开启请求时,应停止输入数据包。
或者,当端口计数器的值小于流控关闭阈值时,向输入端口发送流控关闭请求,并将流控请求状态变为0(若原来便是0,那变不作改变;若原来是1,则将其变为0);
更为重要的是,步骤S5还包括:
当拥塞程度为所有端口都没有拥塞时,为每个输入端口配置第一类丢弃阈值;
当拥塞程度为某个端口出现拥塞时,为当前拥塞的输入端口配置第二类丢弃阈值;
当拥塞程度为多个端口出现拥塞时,为每个输入端口配置第三类丢弃阈值;
其中,所述第一类丢弃阈值>第二类丢弃阈值>第三类丢弃阈值。
具体来说,在本实施方式中,每个输入端口的丢弃阈值可以通过拥塞端口的数量和共享缓存资源的使用情况动态调整。当输入端口流量没有形成拥塞时,每个端口都可以使用一个较大的阈值(第一类丢弃阈值)以吸收比较大的突发数据包流量;当某个端口出现拥塞的时候,共享缓存资源的占用量增大,各端口的阈值有所降低,拥塞端口的阈值(第二类丢弃阈值)较其他端口更大,以满足该拥塞端口的流量需求,当该拥塞端口所占用的缓存单元数量超过该端口的丢弃阈值时,输入的数据包将会被丢弃;当多个端口出现拥塞的时候,各端口使用相似的阈值(第三类丢弃阈值),共享缓存资源在各端口间公平均匀分配。此时,当某端口所占用的缓存单元数量超过该端口的丢弃阈值时,输入的数据包将会被丢弃。此方法能够让输入端口有效的使用数据包缓存,同时在网络流量没有形成拥塞的情况下,能够吸收端口的突发流量。
S6、根据所选取丢弃阈值与端口计数器的值的比较、以及流控请求状态,确定是否接受输入报文并写入共享缓存。该步骤具体为:
S61、判断当前流控请求状态的值是否为1,若是,则接收所有输入报文;若否,则跳转步骤S62;
S62、判断当前端口计数器的值是否小于丢弃阈值,若是,则接收输入报文;若否,则丢弃输入报文;
S63、将所有被接收的报文写入共享缓存。
参图4所示,在本发明一实施方式中,相应于上述方法,一种动态调整入口资源分配阈值的系统,包括如下单元:
阈值配置单元10、用于配置各输入端口相对应的丢弃阈值组、流控阈值组以及所映射的业务区,其中,每个业务区对应配置有若干阶段阈值以对应若干拥塞程度,所述丢弃阈值组包括若干丢弃阈值,所述流控阈值组包括若干对流控阈值,每对流控阈值包括一流控开启阈值和一流控关闭阈值;优选地,在本实施方式中,整个数据包缓存分为4个业务区,每个丢弃阈值组包括8个丢弃阈值,每个流控阈值组包括8对流控阈值,每个业务区配置8个阶段阈值对应8个拥塞程度。具体地,拥塞程度即表示当前各端口的数据输入端口的使用情况,本实施方式中设置的8个阶段阈值分别对应8种拥塞程度不同的情况。当然,在其他实施方式中,阶段阈值的数目可视情况做相应设置。在本实施方式中,业务区包括4个,分别为业务区0、业务区1、业务区2、业务区3。不同的业务区所对应的标准不尽相同,本发明中,事先需为每个端口配置一个适当的业务区类别。
业务区映射单元20、用于根据输入数据包的输入端口号映射相应的业务区;优选地,当数据包将要从某输入端口输入时,通过识别当前端口的端口号,相应映射到与该端口号匹配的业务区编号(0、1、2、3),从而获知当前输入端口所映射的业务区。
缓存单元统计单元30、用于计算当前数据包所需占用的缓存单元数目,修改与当前输入端口相对应的端口计数器和业务区计数器的值;其中,根据每个输入数据包的长度,计算所需要的缓存单元数量,不足长度单位的数据包长度部分按一个缓存单元计算。本方法按上述原则统计每个输入端口所占用的缓存单元数量,同时统计分配到该端口的缓存业务区已使用的缓存单元数量。
优选地,在本实施方式中,根据数据包输入逻辑和数据包读取逻辑维护缓存单元计数器,统计每个端口和映射到同一个业务区的所有端口总共使用的缓存单元的数量,称为端口计数器和业务区计数器。具体地,在该单元中,当一个数据包待输入时,对应端口计数器和业务区计数器加上该数据包占用的缓存单元数目;当数据包读取逻辑读取一个数据包时,从对应端口计数器和业务区计数器减去该数据包占用的资源单元数目。
拥塞程度处理单元40、用于根据所述业务区计数器的值与该业务区的各阶段阈值的比较,得出对应的拥塞程度;其中,将输入数据包所属端口映射的业务区计数器的当前值与该业务区对应的8个阶段阈值逐一进行比较,以决定缓存业务区的拥塞程度(以数值0到7表示)。
流控请求控制单元51、用于根据当前拥塞程度确定相应的流控阈值,并根据当前端口计数器的值与流控阈值的比较,确定向输入端口发送流控开启请求或关闭请求,并决定当前输入端口对应的流控请求状态;
其中,在本实施方式中,流控请求控制单元51具体用于:
首先,选取与当前拥塞程度匹配的流控阈值和丢弃阈值;
然后,当端口计数器的值大于流控开启阈值时,向输入端口发送流控开启请求,并将流控请求状态置为1(若原来便是1,那变不作改变;若原来是0,则将其变为1);其中,值得一提的是:设置流控请求状态的目的便再在于在特殊情况下,需要保证所有输入的数据不被丢弃,那只需要通过将此流控请求状态置为1便可以实现,同时,当输入端口接收到流控开启请求时,应停止输入数据包。
或者,当端口计数器的值小于流控关闭阈值时,向输入端口发送流控关闭请求,并将流控请求状态变为0(若原来便是0,那变不作改变;若原来是1,则将其变为0);
丢弃控制单元52、用于根据当前拥塞程度选取相应的丢弃阈值,并根据所选取丢弃阈值与端口计数器的值的比较、以及流控请求状态,确定是否接受输入报文并写入共享缓存90。
值得一提的是,该装置的实现还包括一数据报文输入处理逻辑70和一数据报文读取逻辑80。
所述丢弃控制单元52具体的实现过程为:
首先,需要判断当前流控请求状态的值是否为1,若是,则在此情况下,无论端口计数器的大小是多少,系统将接收所有输入报文;若否,则判断当前端口计数器的值是否小于丢弃阈值,若是,则接收输入报文;若否,则丢弃输入报文;
在此之后,将所有被接收的报文写入共享缓存90。
所述丢弃控制单元52还用于:
当拥塞程度为所有端口都没有拥塞时,为每个输入端口配置第一类丢弃阈值;
当拥塞程度为某个端口出现拥塞时,为当前拥塞的输入端口配置第二类丢弃阈值;
当拥塞程度为多个端口出现拥塞时,为每个输入端口配置第三类丢弃阈值;
其中,所述第一类丢弃阈值>第二类丢弃阈值>第三类丢弃阈值。
具体来说,在本实施方式中,每个输入端口的丢弃阈值可以通过拥塞端口的数量和共享缓存资源的使用情况动态调整。当输入端口流量没有形成拥塞时,每个端口都可以使用一个较大的阈值(第一类丢弃阈值)以吸收比较大的突发数据包流量;当某个端口出现拥塞的时候,共享缓存资源的占用量增大,各端口的阈值有所降低,拥塞端口的阈值(第二类丢弃阈值)较其他端口更大,以满足该拥塞端口的流量需求,当该拥塞端口所占用的缓存单元数量超过该端口的丢弃阈值时,输入的数据包将会被丢弃;当多个端口出现拥塞的时候,各端口使用相似的阈值(第三类丢弃阈值),共享缓存资源在各端口间公平均匀分配。此时,当某端口所占用的缓存单元数量超过该端口的丢弃阈值时,输入的数据包将会被丢弃。此方法能够让输入端口有效的使用数据包缓存,同时在网络流量没有形成拥塞的情况下,能够吸收端口的突发流量。
本发明设计一种入口资源管理器,通过将数据包缓存划分成不同的业务区,并将各个网络端口分配到不同的业务区中。根据每个端口所属的业务区中缓存资源使用的情况,对每个端口的丢弃阈值进行动态分配。同时,在每个端口上支持流量控制,根据其对应的业务区中缓存的使用情况,动态调整流量控制请求信号的产生阈值,并通过流量控制请求信号适当降低输入数据包的速率。
本发明根据缓存业务区的拥塞程度情况,动态调整各输入端口丢弃阈值和流控阈值,合理调控各输入网络端口对缓存资源的共享。本发明可以使用一套阈值配置保证在任何输入端口拥塞程度下,各输入端口能够公平而有效的占用共享缓存,而且在公平分配缓存资源的前提下,有效吸收突发输入数据包流量。
为了描述的方便,描述以上装置时以功能分为各种单元分别描述。当然,在实施本申请时可以把各单元的功能在同一个或多个软件和/或硬件中实现。
以上所描述的装置实施方式仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施方式方案的目的。本领域普通技术人员在不付出创造性劳动的情况下,即可以理解并实施。
本申请可以在由计算机执行的计算机可执行指令的一般上下文中描述,例如程序模块。一般地,程序模块包括执行特定任务或实现特定抽象数据类型的例程、程序、对象、组件、数据结构等等。也可以在分布式计算环境中实践本申请,在这些分布式计算环境中,由通过通信网络而被连接的远程处理设备来执行任务。在分布式计算环境中,程序模块可以位于包括存储设备在内的本地和远程计算机存储介质中。
应当理解,虽然本说明书按照实施方式加以描述,但并非每个实施方式仅包含一个独立的技术方案,说明书的这种叙述方式仅仅是为清楚起见,本领域技术人员应当将说明书作为一个整体,各实施方式中的技术方案也可以经适当组合,形成本领域技术人员可以理解的其他实施方式。
上文所列出的一系列的详细说明仅仅是针对本发明的可行性实施方式的具体说明,它们并非用以限制本发明的保护范围,凡未脱离本发明技艺精神所作的等效实施方式或变更均应包含在本发明的保护范围之内。

Claims (10)

1.一种动态调整入口资源分配阈值的方法,其特征在于,该方法包括如下步骤:
S1、配置各输入端口相对应的丢弃阈值组、流控阈值组以及所映射的业务区,其中,每个业务区对应配置有若干阶段阈值以对应若干拥塞程度,所述丢弃阈值组包括若干丢弃阈值,所述流控阈值组包括若干对流控阈值,每对流控阈值包括一流控开启阈值和一流控关闭阈值;
S2、根据输入数据包的输入端口号映射相应的业务区;
S3、计算当前数据包所需占用的缓存单元数目,修改与当前输入端口相对应的端口计数器和业务区计数器的值;
S4、根据所述业务区计数器的值与该业务区的各阶段阈值的比较,得出对应的拥塞程度;
S5、根据当前拥塞程度,确定相应的流控阈值以及丢弃阈值,并根据当前端口计数器的值与流控阈值的比较,确定向输入端口发送流控开启请求或关闭请求,并决定当前输入端口对应的流控请求状态;
S6、根据所选取丢弃阈值与端口计数器的值的比较、以及流控请求状态,确定是否接受输入报文并写入共享缓存。
2.根据权利要求1所述的方法,其特征在于,所述步骤S5具体为:
选取与当前拥塞程度匹配的流控阈值和丢弃阈值;
当端口计数器的值大于流控开启阈值时,向输入端口发送流控开启请求,并将流控请求状态置为1;
当端口计数器的值小于流控关闭阈值时,向输入端口发送流控关闭请求,并将流控请求状态置为0。
3.根据权利要求1所述的方法,其特征在于,所述步骤S6具体为:
S61、判断当前流控请求状态的值是否为1,若是,则接收所有输入报文;若否,则跳转步骤S62;
S62、判断当前端口计数器的值是否小于丢弃阈值,若是,则接收输入报文;若否,则丢弃输入报文;
S63、将所有被接收的报文写入共享缓存。
4.根据权利要求1所述的方法,其特征在于,所述步骤S5还包括:
当拥塞程度为所有端口都没有拥塞时,为每个输入端口选择第一类丢弃阈值;
当拥塞程度为某个端口出现拥塞时,为当前拥塞的输入端口选择第二类丢弃阈值;
当拥塞程度为多个端口出现拥塞时,为每个输入端口选择第三类丢弃阈值;
其中,所述第一类丢弃阈值>第二类丢弃阈值>第三类丢弃阈值。
5.根据权利要求1至4任意一项所述的方法,其特征在于,整个数据包缓存分为4个业务区,每个丢弃阈值组包括8个丢弃阈值,每个流控阈值组包括8对流控阈值,每个业务区配置8个阶段阈值对应8个拥塞程度。
6.一种动态调整入口资源分配阈值的系统,其特征在于,其包括如下单元:
阈值配置单元、用于配置各输入端口相对应的丢弃阈值组、流控阈值组以及所映射的业务区,其中,每个业务区对应配置有若干阶段阈值以对应若干拥塞程度,所述丢弃阈值组包括若干丢弃阈值,所述流控阈值组包括若干对流控阈值,每对流控阈值包括一流控开启阈值和一流控关闭阈值;
业务区映射单元、用于根据输入数据包的输入端口号映射相应的业务区;
缓存单元统计单元、用于计算当前数据包所需占用的缓存单元数目,修改与当前输入端口相对应的端口计数器和业务区计数器的值;
拥塞程度处理单元、用于根据所述业务区计数器的值与该业务区的各阶段阈值的比较,得出对应的拥塞程度;
流控请求控制单元、用于根据当前拥塞程度确定相应的流控阈值,并根据当前端口计数器的值与流控阈值的比较,确定向输入端口发送流控开启请求或关闭请求,并决定当前输入端口对应的流控请求状态;
丢弃控制单元、用于根据当前拥塞程度选取相应的丢弃阈值,并根据所选取丢弃阈值与端口计数器的值的比较、以及流控请求状态,确定是否接受输入报文并写入共享缓存。
7.根据权利要求6所述的系统,其特征在于,所述流控请求控制单元具体用于:
选取与当前拥塞程度匹配的流控阈值和丢弃阈值;
当端口计数器的值大于流控开启阈值时,向输入端口发送流控开启请求,并将流控请求状态置为1;
当端口计数器的值小于流控关闭阈值时,向输入端口发送流控关闭请求,并将流控请求状态置为0。
8.根据权利要求6所述的系统,其特征在于,所述丢弃控制单元具体用于:
判断当前流控请求状态的值是否为1,若是,则接收所有输入报文;若否,则判断当前端口计数器的值是否小于丢弃阈值,若是,则接收输入报文;若否,则丢弃输入报文;
将所有被接收的报文写入共享缓存。
9.根据权利要求6所述的系统,其特征在于,所述丢弃控制单元还用于:
当拥塞程度为所有端口都没有拥塞时,为每个输入端口配置第一类丢弃阈值;
当拥塞程度为某个端口出现拥塞时,为当前拥塞的输入端口配置第二类丢弃阈值;
当拥塞程度为多个端口出现拥塞时,为每个输入端口配置第三类丢弃阈值;
其中,所述第一类丢弃阈值>第二类丢弃阈值>第三类丢弃阈值。
10.根据权利要求6至9任意一项所述的系统,其特征在于,整个数据包缓存分为4个业务区,每个丢弃阈值组包括8个丢弃阈值,每个流控阈值组包括8对流控阈值,每个业务区配置8个阶段阈值对应8个拥塞程度。
CN201210008122.6A 2012-01-12 2012-01-12 动态调整入口资源分配阈值的方法及系统 Active CN102420776B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201210008122.6A CN102420776B (zh) 2012-01-12 2012-01-12 动态调整入口资源分配阈值的方法及系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201210008122.6A CN102420776B (zh) 2012-01-12 2012-01-12 动态调整入口资源分配阈值的方法及系统

Publications (2)

Publication Number Publication Date
CN102420776A true CN102420776A (zh) 2012-04-18
CN102420776B CN102420776B (zh) 2014-07-09

Family

ID=45945016

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201210008122.6A Active CN102420776B (zh) 2012-01-12 2012-01-12 动态调整入口资源分配阈值的方法及系统

Country Status (1)

Country Link
CN (1) CN102420776B (zh)

Cited By (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104298565A (zh) * 2014-10-30 2015-01-21 北京星网锐捷网络技术有限公司 一种初始化端口的方法及装置
CN106559354A (zh) * 2015-09-28 2017-04-05 中兴通讯股份有限公司 一种防止cpu报文拥塞的方法及装置
CN106603335A (zh) * 2016-12-15 2017-04-26 上海斐讯数据通信技术有限公司 私有软件流量监控方法和设备
CN107347039A (zh) * 2016-05-05 2017-11-14 深圳市中兴微电子技术有限公司 一种共享缓存空间的管理方法及装置
CN107547442A (zh) * 2016-06-27 2018-01-05 南京中兴软件有限责任公司 数据传输缓存队列分配方法及装置
CN108111433A (zh) * 2016-11-25 2018-06-01 阿里巴巴集团控股有限公司 一种业务动态流控方法、装置以及电子设备
CN109344093A (zh) * 2018-09-13 2019-02-15 盛科网络(苏州)有限公司 缓存结构、读写数据的方法和装置
CN110138673A (zh) * 2019-05-29 2019-08-16 南京南瑞继保电气有限公司 一种二次设备的网络流量控制单元及流量控制方法
CN110691129A (zh) * 2019-09-26 2020-01-14 杭州网易云音乐科技有限公司 请求处理方法及装置、存储介质和电子设备
CN111404826A (zh) * 2020-03-23 2020-07-10 盛科网络(苏州)有限公司 一种基于出端口反馈的流量规划方法及装置
CN112188557A (zh) * 2020-09-16 2021-01-05 烽火通信科技股份有限公司 一种拥塞时保证绿包优先QoS的方法和装置
CN113259304A (zh) * 2020-02-12 2021-08-13 上海云盾信息技术有限公司 一种基于动态调整的攻击防护方法及设备

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1389799A (zh) * 2002-07-31 2003-01-08 清华大学 多优先级最佳动态域值缓存管理算法
CN1731755A (zh) * 2004-08-04 2006-02-08 杭州华为三康技术有限公司 一种弹性分组环用适配装置及方法
EP1694002A1 (en) * 2005-02-18 2006-08-23 Broadcom Corporation Memory access in a shared memory switch
US20090323526A1 (en) * 2008-06-26 2009-12-31 Alcatel Lucent Providing backpressure flow control to specific traffic flows
CN102223300A (zh) * 2011-06-09 2011-10-19 武汉烽火网络有限责任公司 一种网络设备中多媒体数据的传输控制方法

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1389799A (zh) * 2002-07-31 2003-01-08 清华大学 多优先级最佳动态域值缓存管理算法
CN1731755A (zh) * 2004-08-04 2006-02-08 杭州华为三康技术有限公司 一种弹性分组环用适配装置及方法
EP1694002A1 (en) * 2005-02-18 2006-08-23 Broadcom Corporation Memory access in a shared memory switch
US20090323526A1 (en) * 2008-06-26 2009-12-31 Alcatel Lucent Providing backpressure flow control to specific traffic flows
CN102223300A (zh) * 2011-06-09 2011-10-19 武汉烽火网络有限责任公司 一种网络设备中多媒体数据的传输控制方法

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
李新国 等: "路由器缓存管理算法之比较研究", 《计算机应用研究》 *
李锁钢 等: "一种综合缓存管理和主动队列管理的区分服务节点机制", 《电子学报》 *
李锁钢 等: "面向变长分组的多优先级动态域值缓存管理算法", 《电子学报》 *

Cited By (21)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104298565A (zh) * 2014-10-30 2015-01-21 北京星网锐捷网络技术有限公司 一种初始化端口的方法及装置
CN104298565B (zh) * 2014-10-30 2017-11-24 北京星网锐捷网络技术有限公司 一种初始化端口的方法及装置
CN106559354A (zh) * 2015-09-28 2017-04-05 中兴通讯股份有限公司 一种防止cpu报文拥塞的方法及装置
CN107347039B (zh) * 2016-05-05 2020-02-21 深圳市中兴微电子技术有限公司 一种共享缓存空间的管理方法及装置
CN107347039A (zh) * 2016-05-05 2017-11-14 深圳市中兴微电子技术有限公司 一种共享缓存空间的管理方法及装置
CN107547442A (zh) * 2016-06-27 2018-01-05 南京中兴软件有限责任公司 数据传输缓存队列分配方法及装置
CN108111433A (zh) * 2016-11-25 2018-06-01 阿里巴巴集团控股有限公司 一种业务动态流控方法、装置以及电子设备
CN106603335A (zh) * 2016-12-15 2017-04-26 上海斐讯数据通信技术有限公司 私有软件流量监控方法和设备
CN106603335B (zh) * 2016-12-15 2020-07-07 上海斐讯数据通信技术有限公司 私有软件流量监控方法和设备
CN109344093B (zh) * 2018-09-13 2022-03-04 苏州盛科通信股份有限公司 缓存结构、读写数据的方法和装置
CN109344093A (zh) * 2018-09-13 2019-02-15 盛科网络(苏州)有限公司 缓存结构、读写数据的方法和装置
CN110138673A (zh) * 2019-05-29 2019-08-16 南京南瑞继保电气有限公司 一种二次设备的网络流量控制单元及流量控制方法
CN110138673B (zh) * 2019-05-29 2023-08-08 南京南瑞继保电气有限公司 一种二次设备的网络流量控制方法
CN110691129A (zh) * 2019-09-26 2020-01-14 杭州网易云音乐科技有限公司 请求处理方法及装置、存储介质和电子设备
CN110691129B (zh) * 2019-09-26 2022-06-03 杭州网易云音乐科技有限公司 请求处理方法及装置、存储介质和电子设备
CN113259304A (zh) * 2020-02-12 2021-08-13 上海云盾信息技术有限公司 一种基于动态调整的攻击防护方法及设备
CN113259304B (zh) * 2020-02-12 2022-06-03 上海云盾信息技术有限公司 一种基于动态调整的攻击防护方法及设备
CN111404826B (zh) * 2020-03-23 2022-04-22 苏州盛科通信股份有限公司 一种基于出端口反馈的流量规划方法及装置
CN111404826A (zh) * 2020-03-23 2020-07-10 盛科网络(苏州)有限公司 一种基于出端口反馈的流量规划方法及装置
CN112188557A (zh) * 2020-09-16 2021-01-05 烽火通信科技股份有限公司 一种拥塞时保证绿包优先QoS的方法和装置
CN112188557B (zh) * 2020-09-16 2022-06-17 烽火通信科技股份有限公司 一种拥塞时保证绿包优先QoS的方法和装置

Also Published As

Publication number Publication date
CN102420776B (zh) 2014-07-09

Similar Documents

Publication Publication Date Title
CN102420776B (zh) 动态调整入口资源分配阈值的方法及系统
CN102413063B (zh) 动态调整出口资源分配阈值的方法及系统
CN1881937B (zh) 将存储空间动态分配给多个队列的方法及设备
US9225668B2 (en) Priority driven channel allocation for packet transferring
CN101227402B (zh) 聚合链路流量分担方法及装置
US8032653B1 (en) Guaranteed bandwidth sharing in a traffic shaping system
CN101199168B (zh) 监控通信链路的队列的方法、设备和系统
CN104378308A (zh) 报文发送速率检测方法及装置
JP5107016B2 (ja) トークンバケットを用いたバッファ装置及びプログラム
CN103581042B (zh) 一种数据包发送的方法和设备
CN103081434A (zh) 智能存储器
CN101771627A (zh) 互联网实时深度包解析和控制节点设备和方法
CN103281252A (zh) 一种基于多路径传输的报文流量控制方法和装置
CN1855849A (zh) 通信业务量管制装置和方法
CN104509047A (zh) 报文传输系统中分配报文缓冲区的方法
CN103379038A (zh) 一种流量调度的装置及方法
CN103701710A (zh) 一种数据传输方法、核心转发设备以及端点转发设备
US20200076742A1 (en) Sending data using a plurality of credit pools at the receivers
CN101667974A (zh) 一种实现分层服务质量的方法及网络处理器
CN102387076A (zh) 一种结合整形的分级式队列调度方法
CN103634223B (zh) 一种基于网络业务流的动态控制传输方法和装置
CN101848158B (zh) 一种数据通道的负载均衡方法、装置和网络交换设备
CN103023816B (zh) 实现网络入口资源控制的方法和装置
CN103874133A (zh) 一种带宽控制的方法、装置及接入点设备
CN106027397B (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
C14 Grant of patent or utility model
GR01 Patent grant
PE01 Entry into force of the registration of the contract for pledge of patent right

Denomination of invention: Method and system for dynamically regulating portal resource allocation threshold value

Effective date of registration: 20150629

Granted publication date: 20140709

Pledgee: Zhenhua Group Finance Co. Ltd.

Pledgor: Centec Networks (Suzhou) Inc.

Registration number: 2015320010004

PLDC Enforcement, change and cancellation of contracts on pledge of patent right or utility model
PC01 Cancellation of the registration of the contract for pledge of patent right

Date of cancellation: 20160627

Granted publication date: 20140709

Pledgee: Zhenhua Group Finance Co. Ltd.

Pledgor: Centec Networks (Suzhou) Inc.

Registration number: 2015320010004

PLDC Enforcement, change and cancellation of contracts on pledge of patent right or utility model
PE01 Entry into force of the registration of the contract for pledge of patent right

Denomination of invention: Method and system for dynamically regulating portal resource allocation threshold value

Effective date of registration: 20160718

Granted publication date: 20140709

Pledgee: Zhenhua Group Finance Co. Ltd.

Pledgor: Centec Networks (Suzhou) Inc.

Registration number: 2016320010011

PLDC Enforcement, change and cancellation of contracts on pledge of patent right or utility model
PC01 Cancellation of the registration of the contract for pledge of patent right

Date of cancellation: 20161130

Granted publication date: 20140709

Pledgee: Zhenhua Group Finance Co. Ltd.

Pledgor: Centec Networks (Suzhou) Inc.

Registration number: 2016320010011

PLDC Enforcement, change and cancellation of contracts on pledge of patent right or utility model
CP03 Change of name, title or address

Address after: 215000 unit 13 / 16, 4th floor, building B, No.5 Xinghan street, Suzhou Industrial Park, Jiangsu Province

Patentee after: Suzhou Shengke Communication Co.,Ltd.

Address before: 215021 unit 13 / 16, floor 4, building B, No. 5, Xinghan street, Suzhou Industrial Park, Suzhou, Jiangsu

Patentee before: CENTEC NETWORKS (SU ZHOU) Co.,Ltd.

CP03 Change of name, title or address