System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind() 一种用于交换机的队列数据管理系统及方法技术方案_技高网

一种用于交换机的队列数据管理系统及方法技术方案

技术编号:40158195 阅读:10 留言:0更新日期:2024-01-26 23:33
本发明专利技术涉及交换机队列数据管理技术领域,具体为一种用于交换机的队列数据管理系统及方法,所述系统包括流级信息传递模块,所述流级信息传递模块获取流队列中入队或出队时每个报文对应的标记和切片数,记为相应报文的流级信息,并将报文的流级信息传递到端口级缓存中心和系统级缓存中心。本发明专利技术解决了某些业务流拿不到缓存被丢弃的情况,保证了因业务需要增加业务流能加入到缓存而不被丢弃;划分独享共享空间使流量结构上更加合理,芯片的工作性能也更好;对于共享空间对应的丢弃阈值采用动态阈值,这样系统能自适应检测队列拥塞等级,并调整到对应的丢弃阈值;迫使拥塞队列快速和提前丢弃,释放空闲缓存空间供其他业务使用。

【技术实现步骤摘要】

本专利技术涉及交换机队列数据管理,具体为一种用于交换机的队列数据管理系统及方法


技术介绍

1、在交换机中有不同业务的流,每条流承载的业务和功能是不一样的。所以在路由器发生拥塞情况下,需要对业务流做拥塞避免,把一些拥塞流丢弃掉,否则会影响优先级比较高的业务流。现有技术上有td(tail drop)尾部丢弃和wred(weighted random earlydiscard)两种常用的拥塞避免方案,可以有效地丢弃拥塞业务流;但对于业务流比较多和缓存容量的限制导致多条业务流出现竞争占缓存,会引发后加入的业务流没有缓存可进,这样后加入的业务流携带的优先级最高也只能丢弃(优先级都是业务解析后送过来的,队列都是携带优先级的);进而现有技术存在较大的缺陷。


技术实现思路

1、本专利技术的目的在于提供一种用于交换机的队列数据管理系统及方法,以解决上述
技术介绍
中提出的问题。

2、为了解决上述技术问题,本专利技术提供如下技术方案:一种用于交换机的队列数据管理方法,所述方法包括以下步骤:

3、s1、将每条业务流都划分流独享缓存空间和流共享缓存空间,所述流独享缓存空间满足相应业务流自身使用,所述流共享缓存空间满足所有业务流使用;对于入队的业务流在流共享缓存使用空间达到流丢弃动态阈值时,需要尾部丢弃,记为流级丢弃;

4、s2、获取流队列中入队或出队时每个报文对应的标记和切片数,记为相应报文的流级信息,并将报文的流级信息传递到端口级缓存中心和系统级缓存中心;

5、s3、端口级缓存中心和系统级缓存中心分别接收到报文的流级信息中的标记和切片数,对于进入的流独享缓存空间只做统计,对于进入的流共享缓存空间要做拥塞避免处理,当端口累积到端口共享缓存空间阈值发生端口级丢弃,当系统累积到系统共享缓存空间阈值发生系统级丢弃;

6、s4、流级、端口级和系统级这三级任有一级发生丢弃则判断丢弃相应报文,否则不丢弃相应报文,再判断是否更新相应的缓存深度。

7、进一步的,将每个业务流作为一个流队列,每条流队列入队是先进流独享缓存空间,只有在流独享缓存空间满了情况下才进流共享缓存空间;

8、本专利技术在每条流队列入队时,先进流独享缓存空间的过程中,比较新入队的流队列携带的优先级与相应流独享缓存空间中存储的各个流队列的优先级,将优先级最小的流队列缓存到相应的流独享缓存空间,其余的流队列缓存到相应的流共享缓存空间;

9、每条流队列出队先是出流共享缓存空间,只有在流共享缓存空间空了的情况下才出流独享缓存空间;

10、每条待发端口只配置一个端口共享缓存空间,不存在端口独享缓存空间;

11、给系统级只配置一个系统共享缓存空间,不存在系统独享缓存空间;

12、流级丢弃、端口级丢弃和系统级丢弃均可以打开或关闭,通过cpu配置全局的使能来控制。

13、本专利技术设置流级丢弃、端口级丢弃和系统级丢弃均可以打开或关闭,其目的是让共享缓存空间尽快释放再给其他业务流使用;所有流的独享缓存空间之和不能超配,所有流的共享缓存空间可以超配,端口级共享缓存空间也可以超配,但系统级共享缓存空间不可以超配。

14、进一步的,所述s1中流丢弃动态阈值在检测到某队列在出向授权盈余不足时,根据出向授权盈余对应的数据,将相应队列对应的流丢弃阈值进行自适应调整;授权盈余机制有两个来源:一个是cpu定时给队列下发的授权令牌桶,另外一个是下行出向带宽不足时的老化授权盈余;

15、对于队列级丢弃阈值是动态阈值;目的是系统检测某队列在出向授权盈余不足导致即将发生拥塞,此时需要该队列丢弃阈值跳到较小的阈值,实现上我们会对不同的拥塞程度划分等级,从而划分不同的丢弃阈值。最终实现快速和提早“泄洪”,这样缓存得以释放给其他不拥塞的业务使用。授权盈余机制有两个来源;一个是cpu定时给队列下发的授权到授权令牌桶,另外一个是下行出向带宽不足时需要老化授权盈余。也就是说队列的授权盈余反映了队列在链路上传输的拥塞情况,进而划分不同拥塞等级来得到动态阈值。

16、根据出向授权盈余对应的数据,将相应队列对应的流丢弃阈值进行自适应调整的方法包括以下步骤:

17、步骤z1、获取当前时间相应队列的出现授权盈余对应的数据,记为(m1,m2),所述m1表示当前时间相应队列的令牌请求速度减去cpu定时给相应队列下发的授权令牌桶中的生成令牌的速度的差值,m2表示当前时间下行出向带宽的请求量与实际带宽量的差值;

18、步骤z2、查询数据库预置表单中(m1,m2)所属的授权盈余区间[mb1,mb2],并提取预置表单中授权盈余区间[mb1,mb2]对应的缓存拥塞等级及相应等级对应的丢弃阈值调节系数,记为β;所述mb1与mb2分别对应一个区间,且m1∈mb1,m2∈mb2;

19、步骤z3、得到相应队列对应的流丢弃阈值的自适应调整结果,记为yt,所述yt=β·y/r,其中y表示当前时间相应队列对应的流独享缓存空间,r表示当前时间系统缓存的总使用量(使用的独享缓存空间与使用的共享缓存空间之和)占系统配置的缓存总量(独享缓存空间与共享缓存空间的总和)的比值。

20、进一步的,所述s1中每条业务流划分流独享缓存空间和流共享缓存空间的方法包括以下步骤:

21、s11、获取系统中业务流的总个数,记为in,将第i个业务流记为ai;

22、s12、计算业务流ai划分的流独享缓存空间,记为bai,

23、,

24、其中,bz表示业务流所属系统中的总缓存空间;fai表示基于当前时间的最近单位时长的历史数据中,第i个业务流ai的队列中接收的总报文数;gai表示基于当前时间的最近单位时长的历史数据内第i个业务流ai的队列中接收的总报文数fai中,未丢弃的每个报文对应的关联业务链的平均节点个数,

25、获取报文对应的关联业务链时,获取待测报文对应数据在系统中后续流转的业务个数,流转的每个业务及待测报文所属业务均为待测报文对应的关联业务链上的一个节点,所述流转操作包括提取待测报文对应的数据及提取对待测报文对应的数据的处理数据。

26、进一步的,更新缓存深度时,对于流级相同的业务流编号而言,分三种情况:

27、1)只有入队信息,如果没有发生丢弃,则把当前队列深度读出来加上当前的切片数再更新到缓存深度里,且对入向报文打上标记;如果发生丢弃,不更新缓存深度;

28、2)只有出队信息,则把当前队列深度读出来减去当前的切片数再更新到缓存深度里,且对出向报文打上标记;

29、3)同时有入队信号和出队信息,

30、如果入队的切片数大于等于出队的切片数,将入队的切片数作为真正的入队信息,所述真正的入队信息对应的真正的入队切片数为入队切片数减去出队切片数;

31、当没有发生丢弃时,则把当前队列深度读出来加上当前真正的入队切片数再更新到缓存深度里,且对入向报文打上标记;本文档来自技高网...

【技术保护点】

1.一种用于交换机的队列数据管理方法,其特征在于,所述方法包括以下步骤:

2.根据权利要求1所述的一种用于交换机的队列数据管理方法,其特征在于:将每个业务流作为一个流队列,每条流队列入队是先进流独享缓存空间,只有在流独享缓存空间满了情况下才进流共享缓存空间;

3.根据权利要求1所述的一种用于交换机的队列数据管理方法,其特征在于:所述S1中流丢弃动态阈值在检测到某队列在出向授权盈余不足时,根据出向授权盈余对应的数据,将相应队列对应的流丢弃阈值进行自适应调整;授权盈余机制有两个来源:一个是cpu定时给队列下发的授权令牌桶,另外一个是下行出向带宽不足时的老化授权盈余。

4.根据权利要求1所述的一种用于交换机的队列数据管理方法,其特征在于:所述S1中每条业务流划分流独享缓存空间和流共享缓存空间的方法包括以下步骤:

5.根据权利要求1所述的一种用于交换机的队列数据管理方法,其特征在于:更新缓存深度时,对于流级相同的业务流编号而言,分三种情况:

6.根据权利要求5所述的一种用于交换机的队列数据管理方法,其特征在于:从读出流队列深度到更新流队列深度区间需要做路径上的冲突处理,保证计算的深度为实时最新值,用最新值和相应的流丢弃动态阈值做比较来判断是否丢弃,所述最新值为相应的流独享缓存空间与流共享缓存空间之和;同理,端口级和系统也是按流级送来的标记和切片数来分别统计接收的流独享缓存量和流共享缓存量,其中统计接收的流共享缓存达到相应的端口共享缓存空间阈值或相应的系统共享缓存空间阈值就丢弃,流独享缓存统计仅作为统计计数。

7.一种用于交换机的队列数据管理系统,所述系统应用权利要求1-6中任意一项所述的一种用于交换机的队列数据管理方法实现,其特征在于,所述系统包括:

8.根据权利要求7所述的一种用于交换机的队列数据管理系统,其特征在于:所述每条业务流划分的流独享缓存空间和流共享缓存空间中,所述流独享缓存空间只许本条流使用,流共享缓存空间是所有流都可以使用;

9.根据权利要求7所述的一种用于交换机的队列数据管理系统,其特征在于:所有流的独享缓存空间之和不能超过配置的缓存空间,所有流的共享缓存空间能超过配置的缓存空间且在超过配置的缓存空间时丢弃超出的报文,端口级共享缓存空间能超过配置的缓存空间且在超过配置的缓存空间时丢弃超出的报文,系统级共享缓存空间不能超出配置的缓存空间。

...

【技术特征摘要】

1.一种用于交换机的队列数据管理方法,其特征在于,所述方法包括以下步骤:

2.根据权利要求1所述的一种用于交换机的队列数据管理方法,其特征在于:将每个业务流作为一个流队列,每条流队列入队是先进流独享缓存空间,只有在流独享缓存空间满了情况下才进流共享缓存空间;

3.根据权利要求1所述的一种用于交换机的队列数据管理方法,其特征在于:所述s1中流丢弃动态阈值在检测到某队列在出向授权盈余不足时,根据出向授权盈余对应的数据,将相应队列对应的流丢弃阈值进行自适应调整;授权盈余机制有两个来源:一个是cpu定时给队列下发的授权令牌桶,另外一个是下行出向带宽不足时的老化授权盈余。

4.根据权利要求1所述的一种用于交换机的队列数据管理方法,其特征在于:所述s1中每条业务流划分流独享缓存空间和流共享缓存空间的方法包括以下步骤:

5.根据权利要求1所述的一种用于交换机的队列数据管理方法,其特征在于:更新缓存深度时,对于流级相同的业务流编号而言,分三种情况:

6.根据权利要求5所述的一种用于交换机的队列数据管理方法,其特征在于:从读出流队列深度到更新流队列深度区间需要做路径上的冲突处理,保...

【专利技术属性】
技术研发人员:池维龙马骞陈昌盛仲建锋程仲达李浩陈辉于春霞
申请(专利权)人:南京奕泰微电子技术有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1