一种令牌分配方法和装置制造方法及图纸

技术编号:16841925 阅读:65 留言:0更新日期:2017-12-20 00:30
本发明专利技术实施例提供一种令牌分配方法和装置,通过获取到达的各业务需消耗的令牌数,业务至少包括关键业务;获取当前令牌桶中令牌的数量;在关键业务需消耗的令牌数大于当前令牌桶中令牌的数量的情况下,则将当前令牌桶中全部令牌分配给关键业务,不足关键业务消耗的部分则等待令牌桶中令牌数量更新后进行分配,并将关键业务通过主链路转发,采用上述方案,可以保证全部关键业务都能分配到令牌,且将关键业务通过主链路转发,不会造成关键业务丢失,使得网络资源也能得到合理的利用。

A token allocation method and device

The embodiment of the invention provides a method and apparatus for token distribution, each business by acquiring the number of tokens consumed to reach business, including at least a key business; the number of tokens in the token bucket; in the token number of key business costs is greater than the number of token token bucket in the current circumstances, the current total token token bucket is assigned to the key business, lack of key business consumption part is waiting for a token token bucket number updated distribution, and key business by link forwarding, the adoption of the scheme, to ensure that all key business can be assigned to the token, and the key business by link forwarding, will not cause the key business lost, the cyber source can also get a reasonable use.

【技术实现步骤摘要】
一种令牌分配方法和装置
本专利技术涉及通信领域,尤其涉及一种令牌分配方法和装置。
技术介绍
在网络中传输业务数据时,为了防止网络拥塞,通常会采用传统的令牌桶算法来限制流出网络的流量,使流量以比较均匀的速度向外发送。大小固定的令牌桶可自行以恒定的速率源源不断地添加令牌,令牌桶中的每一个令牌都代表一个字节。如果令牌不被消耗,或者被消耗的速度小于产生的速度,令牌就会不断地增多,直到把桶填满,后面再添加的令牌就会从桶中溢出,最后桶中可以保存的最大令牌数永远不会超过桶的大小。在为业务分配流量时,传统的令牌桶这种控制机制对于在流量限制之外的业务,其做法是将其丢弃、或者继续发送。若采用上述方案,使得网络资源利用得不够合理,且会造成业务不能传输、或者丢包的问题。针对上述问题,提出一种有效的保证业务正常传输、不丢包、合理的使用网络资源的方法,是本领域技术人员亟待解决的技术问题。
技术实现思路
本专利技术实施例主要解决的技术问题是,提供一种令牌分配方法和装置,解决现有技术中,业务不能传输或者丢包、网络资源使用不合理的问题。为解决上述技术问题,本专利技术实施例提供一种令牌分配方法,包括:获取到达的各业务需消耗的令牌数,业务至少包括关键业务;获取当前令牌桶中令牌的数量;在关键业务需消耗的令牌数大于当前令牌桶中令牌的数量的情况下,则将当前令牌桶中全部令牌分配给关键业务,不足关键业务消耗的部分则等待令牌桶中令牌数量更新后进行分配,并将关键业务通过主链路转发。为解决上述技术问题,本专利技术实施例提供一种令牌分配装置,包括:获取模块,用于获取到达的各业务需消耗的令牌数,业务至少包括关键业务;以及获取当前令牌桶中令牌的数量;处理模块,用于在关键业务需消耗的令牌数大于当前令牌桶中令牌的数量的情况下,则将当前令牌桶中全部令牌分配给关键业务,不足关键业务消耗的部分则等待令牌桶中令牌数量更新后进行分配,并将关键业务通过主链路转发。为解决上述技术问题,本专利技术实施例还提供一种计算机存储介质,计算机存储介质中存储有计算机可执行指令,计算机可执行指令用于执行前述的令牌分配方法。本专利技术的有益效果是:根据本专利技术实施例提供的令牌分配方法和装置,通过获取到达的各业务需消耗的令牌数,业务至少包括关键业务;获取当前令牌桶中令牌的数量;在关键业务需消耗的令牌数大于当前令牌桶中令牌的数量的情况下,则将当前令牌桶中全部令牌分配给关键业务,不足关键业务消耗的部分则等待令牌桶中令牌数量更新后进行分配,并将关键业务通过主链路转发,采用上述方案,可以保证全部关键业务都能分配到令牌,且将关键业务通过主链路转发,不会造成关键业务丢失,使得网络资源也能得到合理的利用。附图说明图1为本专利技术实施例一提供的一种令牌分配方法的流程图;图2为本专利技术实施例二提供的一种令牌分配装置的结构示意图。具体实施方式下面通过具体实施方式结合附图对本专利技术实施例作进一步详细说明。实施例一为了避免业务不能传输或者丢包、网络资源利用得不够合理的问题,本实施例提供一种令牌分配方法,请参见图1,包括以下步骤:S101:获取到达的各业务需消耗的令牌数,业务至少包括关键业务。关键业务包括VoIP(VoiceoverInternetProtocol,网络电话)、IPTV(InternetProtocolTelevision,交互式网络电视)等业务。业务除了是关键业务外,业务还可以同时包括关键业务和非关键业务,非关键业务包括Internet(因特网)业务等。在获取到达的各业务需消耗的令牌数之前,还可以包括:对到达的业务进行识别,识别出其是关键业务、或者是同时包括关键业务和非关键业务。S102:获取当前令牌桶中令牌的数量。其中,大小固定的令牌桶可以自行以恒定的速率源源不断地添加令牌,令牌桶中的每一个令牌都代表一个字节。如果令牌不被消耗,或者被消耗的速度小于产生的速度,令牌就会不断地增多,直到把令牌桶填满,后面再添加的令牌就会从令牌桶中溢出,最后令牌桶中可以保存的最大令牌数永远不会超过令牌桶的大小。在获取当前令牌桶中令牌的数量之前,还包括:判断业务的当前数据包到达令牌桶的时间距离上一数据包到达令牌桶的时间是否大于设定阈值,比如设定阈值为1毫秒,若是,则更新令牌桶中令牌的数量,更新后的令牌桶中令牌的数量即为S102中的当前令牌桶中令牌的数量。其中,可以根据时间差值的大小来决定往令牌桶中添加令牌数量的多少,比如若时间差值为2毫秒,则往令牌桶中添加200个令牌。应当理解的是,若当前数据包与上一个数据包的时间差小于某个设定阈值时,比如设定阈值为1毫秒,不用等到令牌桶更新当前令牌桶中的令牌数,若令牌数足够当前数据包使用,直接将令牌分配给当前数据包。为了尽可能保证令牌桶中的令牌数量足够,往令牌桶中添加令牌的方式包括以下方式中的至少一种:方式一:判断业务的当前数据包到达令牌桶的时间距离上一数据包到达令牌桶的时间是否大于设定阈值,若是,则往令牌桶中添加令牌;方式二:按照恒定速率往令牌桶中添加令牌。S103:判断关键业务需消耗的令牌数是否大于当前令牌桶中令牌的数量,若是,则进入S104,若否,则进入S105。S104:将当前令牌桶中全部令牌分配给关键业务,不足关键业务消耗的部分则等待令牌桶中令牌数量更新后进行分配,并将关键业务通过主链路转发。由于关键业务属于优先级较高的业务,不能被丢弃,所以当关键业务需消耗的令牌数大于令牌桶中令牌的数量时,即使令牌桶中当前令牌不足,也会减去关键业务需消耗的令牌,令牌桶可赤字为负数,下限是令牌桶大小的负值。其中,具体的处理过程为:当业务为关键业务时,将当前令牌桶中全部的令牌都分配给关键业务。令牌全部分配完后,令牌桶赤字。当前未分配到令牌的剩余的关键业务则等待令牌桶中令牌数量的更新,将更新后的令牌分配给剩余的关键业务;分配的令牌的数量与剩余的关键业务需消耗的令牌数相等,由此保证全部关键业务均能分配到令牌,以保证全部关键业务都能分配到令牌,由此使得全部关键业务都能通过主链路转发,不会造成关键业务丢失,且网络资源也能得到合理的利用。其中,主链路包括DSL(DigitalSubscriberLine,数字用户线路)链路。令牌桶算法可以根据数据的流量对数据包进行标色,不超过速率的标示绿色,超过速率部分标示红色。因为DSL链路作为主链路,所以一般取DSL协商速率或者以指定的速率阈值为令牌桶的基准速率,将基准速率作为标示绿色以及红色的判断依据。其中,由于关键业务属于优先级较高的业务,不能被丢弃,所以关键业务不会被标色,也不用进行隧道封装,直接通过DSL链路进行转发,从而保证关键业务不丢失。当业务为同时包括关键业务和非关键业务,且关键业务需消耗的令牌数大于令牌桶中令牌的数量时,对关键业务的处理即按照上述处理过程进行。令牌全部分配完后,令牌桶赤字。至于非关键业务,可以不用消耗令牌,不用等待令牌桶中令牌数量的更新,直接将全部非关键业务标为红色,并将非关键业务进行隧道封装后通过辅链路进行转发,使得网络资源能得到合理的利用,辅链路包括LTE(LongTermEvolution,长期演进)链路。S105:判断业务是否还包括非关键业务,若否,则进入S106,若是,则进入S107。S106:将令牌分配给关键业务,分配的令牌的数量与关键业务需消耗的令牌本文档来自技高网...
一种令牌分配方法和装置

【技术保护点】
一种令牌分配方法,包括:获取到达的各业务需消耗的令牌数,所述业务至少包括关键业务;获取当前令牌桶中令牌的数量;在所述关键业务需消耗的令牌数大于所述当前令牌桶中令牌的数量的情况下,则将所述当前令牌桶中全部所述令牌分配给所述关键业务,不足所述关键业务消耗的部分则等待所述令牌桶中所述令牌数量更新后进行分配,并将所述关键业务通过主链路转发。

【技术特征摘要】
1.一种令牌分配方法,包括:获取到达的各业务需消耗的令牌数,所述业务至少包括关键业务;获取当前令牌桶中令牌的数量;在所述关键业务需消耗的令牌数大于所述当前令牌桶中令牌的数量的情况下,则将所述当前令牌桶中全部所述令牌分配给所述关键业务,不足所述关键业务消耗的部分则等待所述令牌桶中所述令牌数量更新后进行分配,并将所述关键业务通过主链路转发。2.如权利要求1所述的令牌分配方法,其特征在于,在所述获取当前令牌桶中令牌的数量之前,还包括:在所述业务的当前数据包到达所述令牌桶的时间距离上一数据包到达所述令牌桶的时间大于设定阈值的情况下,则更新所述令牌桶中所述令牌的数量。3.如权利要求1或2所述的令牌分配方法,其特征在于,还包括:在所述业务包括所述关键业务和非关键业务、所述关键业务需消耗的令牌数小于所述当前令牌桶中令牌的数量、所述关键业务与所述非关键业务一共需消耗的令牌数小于所述当前令牌桶中令牌的数量的情况下;则从所述当前令牌桶中分配需消耗的令牌数给所述关键业务和所述非关键业务,并将所述关键业务和所述非关键业务通过所述主链路进行转发。4.如权利要求3所述的令牌分配方法,其特征在于,还包括:在所述业务包括所述关键业务和非关键业务、所述关键业务需消耗的令牌数小于所述当前令牌桶中令牌的数量、所述关键业务与所述非关键业务一共需消耗的令牌数大于所述当前令牌桶中令牌的数量的情况下;优先分配所述关键业务需消耗的令牌数给所述关键业务,将所述关键业务通过所述主链路转发;再将所述当前令牌桶中剩余令牌数分配给所述非关键业务,将分配到所述令牌的所述非关键业务通过所述主链路转发;不够剩余所述非关键业务消耗的部分则不进行分配,将未分配到所述令牌的所述非关键业务通过辅链路转发。5.如权利要求4所述的令牌分配方法,其特征在于,所述主链路包括数字用户线路链路,所述辅链路包括长期演进链路。6.一种令牌分...

【专利技术属性】
技术研发人员:何页
申请(专利权)人:中兴通讯股份有限公司
类型:发明
国别省市:广东,44

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

1