CN111131066B - 一种流量整形方法及装置 - Google Patents
一种流量整形方法及装置 Download PDFInfo
- Publication number
- CN111131066B CN111131066B CN201811287406.7A CN201811287406A CN111131066B CN 111131066 B CN111131066 B CN 111131066B CN 201811287406 A CN201811287406 A CN 201811287406A CN 111131066 B CN111131066 B CN 111131066B
- Authority
- CN
- China
- Prior art keywords
- queue
- token
- aging
- tokens
- token bucket
- 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
- H04L47/22—Traffic shaping
-
- 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/50—Queue scheduling
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D30/00—Reducing energy consumption in communication networks
- Y02D30/70—Reducing energy consumption in communication networks in wireless communication networks
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本申请公开了一种流量整形方法及装置;上述流量整形方法,包括:通过监控任一队列的令牌消耗信息,确定该队列是否需要老化;当令牌添加表中的任一队列需要老化,将该队列从令牌添加表中移除,并将该队列的令牌桶内的令牌数量更新为大于令牌桶下限阈值的值。本申请提供的流量整形方法及装置可以实现整形快速响应,并降低功耗。
Description
技术领域
本申请涉及但不限于数据通信技术领域,尤指一种流量整形方法及装置。
背景技术
随着互联网和移动互联网的快速发展,人们对于网络提出了更新、更快、更稳定的服务需求,带宽和业务访问量极速增加。网络服务质量的保障需要网络处理器(NetworkProcessor,NP)芯片全方位提升性能。其中,流量整形(Traffic Shaping)是一种保证速率平滑输出的方法,保证网络数据在协商的速率上稳定转发,防止下游网络设备出现拥塞,避免数据报文出现延迟、丢失甚至错误的情况。
常见的网络处理器芯片的流量整形采用定时添加方式。其中,可以为每个业务队列配置一个计时器,根据业务队列的整形权重,计算出某个特定时刻,在特定时刻为业务队列添加令牌,其中,一个令牌等价于若干字节的报文授权;网络处理器发送报文会消耗令牌,通过控制每次下发令牌的数量和时间,就能达到流量整形的作用。
随着网络处理器芯片的能力不断提升,业务层次和业务队列较之前芯片规格成倍增加,同时流量整形精度不断提高,采用定时添加方式会消耗大量的资源。为了降低芯片成本,目前大容量高密度队列的网络处理器芯片基本采用WFQ(Weighted Fair Queuing,加权公平调度)或类似算法实现流量整形;其中,可以根据总带宽,将业务队列整形值转化为权重,使用一个计时器对大容量高密度队列进行调度和令牌添加。然而,在采用WFQ或类似算法实现整形时,由于业务队列申请服务时有时无,导致整形不能及时生效。
发明内容
本申请实施例提供了一种流量整形方法及装置,可以实现整形快速响应,并降低功耗。
一方面,本申请实施例提供一种流量整形方法,包括:通过监控任一队列的令牌消耗信息,确定所述队列是否需要老化;当令牌添加表中的任一队列需要老化,将所述队列从所述令牌添加表中移除,并将所述队列的令牌桶内的令牌数量更新为大于令牌桶下限阈值的值。
另一方面,本申请实施例提供一种流量整形装置,包括:令牌添加模块、老化模块;其中,所述老化模块,适于通过监控任一队列的令牌消耗信息,确定所述队列是否需要老化;所述令牌添加模块,适于当令牌添加表中的任一队列需要老化,将所述队列从所述令牌添加表中移除,并将所述队列的令牌桶内的令牌数量更新大于令牌桶下限阈值的值。
再一方面,本申请实施例提供一种网络处理器,包括上述流量整形装置。
再一方面,本申请实施例提供一种计算机可读介质,存储流量整形程序,所述流量整形程序被处理器执行时实现上述流量整形方法的步骤。
在本申请实施例中,通过监控队列的令牌消耗信息,确定队列是否需要老化;当令牌添加表中的任一队列需要老化,将该队列从令牌添加表中移除,并将该队列的令牌桶内的令牌数量更新为大于令牌桶下限阈值的值。本实施例中,可以将需要老化的队列从令牌添加表中移除,并将队列的令牌桶内的令牌数量更新为大于令牌桶下限阈值的值,使得一旦该队列再次申请服务时,实现整形快速响应,保证业务流量管理快速生效。而且,将需要老化的队列从令牌添加表中移除可以减少不必要的存储读写访问,从而降低功耗。
本申请的其它特征和优点将在随后的说明书中阐述,并且,部分地从说明书中变得显而易见,或者通过实施本申请而了解。本申请的目的和其他优点可通过在说明书、权利要求书以及附图中所特别指出的结构来实现和获得。
附图说明
附图用来提供对本申请技术方案的进一步理解,并且构成说明书的一部分,与本申请的实施例一起用于解释本申请的技术方案,并不构成对本申请技术方案的限制。
图1为采用WFQ算法的令牌消耗过程的示意图;
图2为本申请实施例提供的流量整形方法的流程图;
图3为本申请实施例提供的流量整形装置的示意图;
图4为本申请实施例提供的流量整形装置的一种示例图;
图5为本申请实施例中的RAM内存储的扫描标记和老化标记的更新示意图。
具体实施方式
下面将结合附图对本申请的实施例进行详细说明。需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互任意组合。
在附图的流程图示出的步骤可以在诸如一组计算机可执行指令的计算机系统中执行。并且,虽然在流程图中示出了逻辑顺序,但是在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤。
图1为采用WFQ算法的令牌消耗过程的示意图。采用WFQ或类似算法实现队列整形,可以采用链表或者索引形式,依次对当前时刻需要服务的队列进行令牌添加。其中,使用RAM(Random-Access Memory,随机存取存储器)存储高密度队列的令牌桶内的令牌个数,每一个RAM地址对应一个队列,每个地址的初始令牌个数为配置的令牌个数(如图1(a)所示),初始令牌个数由网络处理器芯片所有整形队列权重之和决定,不能随意配置。当接收到某个队列的令牌消耗信息,会将RAM里对应该队列的令牌桶内的令牌个数减去1个(如图1(b)所示),当令牌个数减为配置的令牌桶下限阈值时,接下来该队列的令牌消耗信息将不会得到令牌授权。令牌添加时,需要逐个队列添加,每次添加都会查询队列的配置信息,若整形使能打开,则按照整形队列的总权重即时添加令牌,直至添加到配置的初始令牌个数,多出的令牌会丢弃。
如图1(c)所示,只有队列的当前令牌个数在令牌桶下限阈值附近时整形才会起作用。队列一旦加入过WFQ链表,除非整形使能关闭,否则该队列将一直参与令牌添加。如果该队列在一段时间内停止申请服务,不再消耗令牌,该队列仍然会继续参与令牌添加,直至恢复成初始令牌个数(如图1(d))。当队列重新申请服务时,令牌个数需要重新消耗至令牌桶下限阈值,整形才会起作用。尤其对于大容量高密度队列的网络处理器而言,队列数较多,相同队列下发消耗令牌授权间隔过长,在此情景下,用户的带宽会有短暂的时间超过分配值,网络出现波动,整形的响应速度难以达到令人满意的效果。而且,在实际应用上,网络中的某个数据业务不会一直申请服务,服务申请总是时有时无,每次申请服务都要等到RAM中令牌数量减至令牌桶下限阈值整形才生效,导致整形不能及时生效,无法保证业务流量管理快速生效。
本申请实施例提供一种流量整形方法及装置,通过监控队列的令牌消耗信息,确定队列是否需要老化;将需要老化的队列从令牌添加表中移除,并将需要老化的队列的令牌桶内的令牌数量更新为大于令牌桶下限阈值的值。如此一来,一旦该队列再次申请服务,整形会立即生效,保证快速响应;而且可以减少不必要的存储读写访问,从而降低功耗。尤其对于大容量高密度队列的网络处理器芯片,可以实现高密度队列的整形快速响应,从而提高网络处理器芯片的性能和效果。
图2为本申请实施例提供的流量整形方法的流程图。本实施例提供的流量整形方法可以应用于网络处理器,比如,大容量高密度队列的网络处理器。
如图2所示,本实施例提供的流量整形方法包括以下步骤:
步骤201、通过监控任一队列的令牌消耗信息,确定该队列是否需要老化;
步骤202、当令牌添加表中的任一队列需要老化,将该队列从令牌添加表中移除,并将该队列的令牌桶内的令牌数量更新为大于令牌桶下限阈值的值。
在一示例性实施方式中,令牌添加表可以用于指示需要添加令牌的多个队列;比如,在令牌添加时,可以按照令牌添加表指示的队列的优先顺序依次给每个队列添加令牌。
在一示例性实施方式中,令牌添加表可以包括加权公平调度(WFQ)链表。其中,当WFQ链表关系建立之后,可以根据链表的高低优先级顺序给每条链表的队列添加链表。然而,本申请对此并不限定。
在一示例性实施方式中,在步骤202中,将需要老化的队列的令牌桶内的令牌数量更新为大于令牌桶下限阈值的值可以包括:将需要老化的队列的令牌桶内的令牌数量更新为令牌桶下限阈值与1之和,或者,令牌桶下限阈值与2之和。换言之,需要老化的队列的令牌桶内的令牌数量可以更新为令牌桶下限阈值加1,或者令牌桶下限阈值加2。如此一来,一旦该队列再次申请服务,可以保证整形快速响应。
在一示例性实施方式中,步骤201可以包括:针对任一队列,当在至少一个监控周期内没有监控到该队列的令牌消耗信息,则确定该队列需要老化。换言之,一旦监控到该队列的令牌消耗信息,则确定该队列不需要老化。其中,监控周期的时间间隔可以根据实际需求设置,本申请对此并不限定。
在一示例性实施方式中,针对任一队列,可以采用一个老化标记指示该队列是否需要老化。在添加令牌时,可以通过读取老化标记来获知该队列是否需要老化。示例性地,老化标记为0可以表示该队列不需要老化;老化标记为1可以表示该队列需要老化。
在一示例性实施方式中,针对任一队列,可以采用一个扫描标记指示一个扫描周期内是否有该队列的令牌消耗信息。其中,一个扫描周期的时长可以等于一个监控周期的时长,或者,一个监控周期的时长可以包括两个或多个扫描周期的时长。然而,本申请对此并不限定。示例性地,扫描标记为0可以表示在一个扫描周期内没有该队列的令牌消耗信息;扫描标记为1可以表示在一个扫描周期内有该队列的令牌消耗信息。
在一示例性实施方式中,本实施例的流量整形方法还可以包括:周期性扫描一个或多个队列的扫描标记和老化标记;其中,当扫描到任一队列的扫描标记指示在前一个扫描周期内有该队列的令牌消耗信息,则将该扫描标记更新为初始值;当扫描到任一队列的扫描标记指示在前一个扫描周期内没有该队列的令牌消耗信息,且该队列的老化标记指示该队列不需要老化,则将该队列的老化标记更新为指示该队列需要老化。本实施例中,通过周期性扫描可以确保扫描标记和老化标记的实时性和有效性。其中,扫描范围(即扫描哪些队列的扫描标记和老化标记)和扫描周期可以根据实际情况进行配置,本申请对此并不限定。
在一示例性实施方式中,本实施例的流量整形方法还可以包括:当令牌添加表中的任一队列不需要老化,则给该队列添加令牌,并根据添加的令牌个数,更新该队列的令牌桶内的令牌数量。其中,该队列的令牌桶内的令牌数量更新为原令牌数量与添加的令牌个数之和。
图3为本申请实施例提供的流量整形装置的示意图。本实施例提供的流量整形装置可以设置在网络处理器内,比如,大容量高密度队列的网络处理器。如图3所示,本实施例提供的流量整形装置包括:令牌添加模块302、老化模块304。
其中,老化模块304,适于通过监控任一队列的令牌消耗信息,确定该队列是否需要老化;令牌添加模块302,适于当令牌添加表中的任一队列需要老化,将该队列从令牌添加表中移除,并将该队列的令牌桶内的令牌数量更新为大于令牌桶下限阈值的值。
在一示例性实施方式中,本实施例的流量整形装置还可以包括:令牌消耗模块,适于当接收到任一队列的令牌消耗信息时,将该队列的令牌桶内的令牌数量减1;并根据该队列的令牌桶内的令牌数量与预设的令牌桶下限阈值的比较结果,确定该队列的令牌桶状态。示例性地,当队列的令牌桶内的令牌数量与令牌桶下限阈值之差大于1,则确定该队列的令牌桶内的令牌数量充足;当队列的令牌桶内的令牌数量与令牌桶下限阈值之差等于1,则确定该队列的令牌桶将空;当队列的令牌桶内的令牌数量等于令牌桶下限阈值,则确定该队列的令牌桶已空。
在一示例性实施方式中,本实施例的流量整形装置还可以包括:存储模块(比如,RAM),适于存储每个队列对应的老化标记;其中,老化标记用于指示该队列是否需要老化。示例性地,存储模块还适于存储每个队列对应的扫描标记。
图4为本申请实施例提供的流量整形装置的一种示例图。下面参照图4,以本实施例提供的流量整形装置部署在大容量高密度队列的网络处理器为例进行说明。在本实施例中,流量整形装置可以采用WFQ算法实现整形。
如图4所示,本实施例提供的流量整形装置40可以包括:令牌消耗模块401、令牌添加模块402、老化模块403以及RAM 404。
在本实施例中,设有深度为队列数量、位宽为2比特(bit)的RAM 404存储各个队列的扫描标记和老化标记。其中,对应于一个队列的2比特中的第1位为扫描标记,第0位为老化标记。示例性地,针对一个队列,扫描标记为0可以表示在一个扫描周期内没有该队列的令牌消耗信息,扫描标记为1可以表示在一个扫描周期内有该队列的令牌消耗信息;老化标记为0可以表示该队列不需要老化,老化标记为1可以表示该队列需要老化。在本实施例中,扫描标记和老化标记的初始值均为0。
在本实施例中,老化模块403可以监控各个队列申请令牌消耗的频率。其中,老化模块403可以包括扫描计数器,扫描计数器的扫描范围和扫描周期可自由配置。比如,扫描计数器可以按照第一扫描周期扫描队列1至队列5,可以按照第二扫描周期扫描队列6至队列10。然而,本申请对此并不限定。
在本实施例中,当老化模块403监控到前级装置42发送任一队列的令牌消耗信息,则可以将RAM 404内对应该队列的地址值写成10;即扫描标记为1,表示该队列在一个扫描周期内有令牌消耗行为,即用户有网络访问;老化标记为0,表示该队列不需要老化。不管该队列的扫描标记和老化标记之前的值为何,只要老化模块403监控到该队列的令牌消耗信息,则可以将RAM 404内该队列的扫描标记更新为1,老化标记更新为0。
在本实施例中,扫描计数器可以按照设定的扫描范围和扫描周期,扫过每一个RAM地址。对于同一个地址,再次扫描到该地址所需的时间t等于扫描范围和扫描周期的乘积。在本示例中,一个监控周期的时长可以等于一个扫描周期的时长。然而,本申请对此并不限定。比如,在其他实施方式中,一个监控周期的时长可以设置为等于两个或更多个扫描周期时长。
在本实施例中,每次扫描,老化模块403可以读出RAM 404内的信息。图5为本申请实施例中的RAM内存储的扫描标记和老化标记的更新示意图。如图5所示,若从RAM 404读出某一队列的扫描标记和老化标记为10,说明t时间内,前级装置42有该队列的令牌消耗行为,则可以将该队列的扫描标记和老化标记回写成00,用于监控在下个t时间内该队列是否再次有令牌消耗。若读出某一队列的扫描标记和老化标记为00,说明t时间内前级装置42没有该队列的令牌消耗行为,满足老化条件,则可以将该队列的扫描标记和老化标记回写成01;还可能是该队列从未有过网络访问,则该队列不会加入链表,令牌添加装置402不会存在错误老化的行为。若读出某一队列的扫描标记和老化标记为01,说明该队列已经符合了老化条件,可以将该队列的扫描标记和老化标记回写成01,即仍满足老化条件。若读出某一队列的扫描标记和老化标记为11,说明标记存在错误,则可以将该队列的扫描标记和老化标记回写成00。
在本实施例中,用户的网络访问会触发前级装置42向流量整形装置40发送相应的队列的令牌消耗信息,流量整形装置40内的令牌消耗模块401接收到该队列的令牌消耗信息后,访问RAM 404中存储的该队列的配置信息以及状态信息;其中,队列的配置信息可以包括:整形使能信息、初始令牌数量XBS;队列的状态信息比如可以包括:链表入队标记、当前令牌数量。对于整形使能开启的队列(即开启整形的队列),令牌消耗模块401可以更新该队列的状态信息,例如,将该队列的链表入队标记更新为1,将当前令牌数量减1。其中,链表入队标记用于区分队列是否已经在WFQ链表中,防止多次重复入队,造成链表错乱。本示例中,链表入队标记为1表示队列进入WFQ链表,链表入队标记为0表示队列从WFQ链表移出。然后,令牌消耗模块401可以将该队列的当前令牌数量和预设的令牌桶下限阈值进行比较,并根据比较结果,将该队列的令牌桶状态上报给前级装置42。其中,令牌桶状态可以包括以下三种类型:令牌数量充足(即当前令牌数量与令牌桶下限阈值的差值大于1),此状态下,前级装置42可以继续申请该队列的令牌消耗;令牌数量将空(即当前令牌数量与令牌桶下限阈值的差值等于1),此状态下,前级装置42只能再申请一次令牌消耗;令牌数量已空(即当前令牌数量等于令牌桶下限阈值),此状态下,前级装置42不能申请令牌消耗。其中,如果队列没有开启整形,则令牌消耗模块401更新队列的状态信息之后,会一直向前级装置42发送令牌数量充足状态,以保证报文正常发送。
在本实施例中,令牌添加模块402可以为每个队列配置预设的整形流量值和初始令牌桶深度,映射成相应的整形权重Wo和初始令牌数量XBS。根据令牌消耗过程可知,前级装置42的令牌消耗信息会触发队列加入WFQ链表。链表的数量可以由网络处理器芯片的最大带宽和整形精度共同决定。链表内所有队列权重之和决定每次分发令牌的数量To,令牌桶的初始令牌个数要大于To,否则整形将不能达到应有的效果。当链表关系建立完毕后,令牌添加模块402可以根据链表的高低优先级顺次服务每条链表的队列,从首到尾添加令牌,当前链表为空链表时,则进行链表之间的跳转。令牌添加模块402在每次添加令牌时,更新该队列的令牌桶内的令牌数量(即更新为当前令牌数量+To),并根据更新后的令牌桶内的令牌数量确定令牌桶状态,然后将令牌桶状态上报给前级装置42。其中,关于令牌桶状态的确定方式可以参照令牌消耗模块401确定令牌桶状态的方式,故于此不再赘述。
在本实施例中,令牌添加模块402在每次给队列添加令牌时,会先从RAM404读取该队列的老化标记,查询该队列是否需要老化,若需要老化(比如,老化标记为1),则不给该队列添加令牌,将该队列的链表入队标记写0(即表示出队,不再参与链表调度),并将该队列的令牌桶的当前令牌数量固定写为令牌桶下限阈值+1。
需要说明的是,上述老化扫描过程、令牌消耗过程以及令牌添加过程之间没有特定的先后顺序。比如,老化扫描过程按照扫描周期执行,令牌消耗过程在接收到令牌消耗信息后执行,令牌添加过程在整形开启后执行。
本实施例中,通过设置老化功能可以避免令牌添加模块402对RAM 404内的配置信息和状态信息产生无效的读写访问,降低了功耗;将令牌桶内的令牌数量写为一个大小略大于令牌桶下限阈值的值,可以保证该队列再次申请服务时,整形可以快速响应。
在一示例中,设10条整形的流队列FLOW1至FLOW10,整形数值均为1G,初始令牌数量XBS为5,令牌桶下限阈值为2。FLOW1第一次进行网络访问,触发流量整形装置的令牌消耗行为,对应的令牌桶的令牌数量更新成4,同时根据整形权重加入对应的WFQ链表,流量整形装置发送的令牌桶状态为令牌数量充足。前级装置接收到令牌桶状态后,会频繁申请该流队列的令牌消耗,当令牌桶内的令牌数量为2或2以下时,令牌桶状态变为令牌将空或已空,前级装置不再进行申请,等待令牌添加。
在本示例中,令牌添加装置根据链表服务各个流队列,每次添加1个令牌,同时查询老化标记。当添加队列为FLOW1,FLOW1不需要老化且令牌数量为1时,经过令牌添加后变成2,令牌桶状态变为令牌数量充足,前级模块得以继续申请该流队列的令牌消耗;若FLOW1满足老化条件,则将FLOW1的令牌数量写为3(即令牌桶下限阈值加1),链表入队标记写为0,离开WFQ链表。当FLOW1再次申请服务,由于令牌桶内的令牌数量会很快在令牌桶下限阈值(即2)上下波动,达到整形快速响应。
本实施例中,对于大容量高密度队列的网络处理器来说,并不是每时每刻都有大量的用户申请网络访问,网络处理器会阶段性地处于轻载的状态,通过将队列进行老化,令牌添加模块不会对长期没有进行网络访问的队列服务,从而降低了功耗,而且这部分队列再次申请服务时,整形可以快速生效,避免了网络波动。
此外,本申请实施例还提供一种网络处理器,包括如上实施例所述的流量整形装置。关于流量整形装置的说明可以参照上述实施例的描述,故于此不再赘述。
此外,本申请实施例还提供一种计算机可读介质,存储流量整形程序,该流量整形程序被处理器执行时实现上述流量整形方法的步骤,比如图2所示的步骤。
本领域普通技术人员可以理解,上文中所公开方法中的全部或某些步骤、系统、装置中的功能模块/单元可以被实施为软件、固件、硬件及其适当的组合。在硬件实施方式中,在以上描述中提及的功能模块/单元之间的划分不一定对应于物理组件的划分;例如,一个物理组件可以具有多个功能,或者一个功能或步骤可以由若干物理组件合作执行。某些组件或所有组件可以被实施为由处理器,如数字信号处理器或微处理器执行的软件,或者被实施为硬件,或者被实施为集成电路,如专用集成电路。这样的软件可以分布在计算机可读介质上,计算机可读介质可以包括计算机存储介质(或非暂时性介质)和通信介质(或暂时性介质)。如本领域普通技术人员公知的,术语计算机存储介质包括在用于存储信息(诸如计算机可读指令、数据结构、程序模块或其他数据)的任何方法或技术中实施的易失性和非易失性、可移除和不可移除介质。计算机存储介质包括但不限于RAM、ROM、EEPROM、闪存或其他存储器技术、CD-ROM、数字多功能盘(DVD)或其他光盘存储、磁盒、磁带、磁盘存储或其他磁存储装置、或者可以用于存储期望的信息并且可以被计算机访问的任何其他的介质。此外,本领域普通技术人员公知的是,通信介质通常包含计算机可读指令、数据结构、程序模块或者诸如载波或其他传输机制之类的调制数据信号中的其他数据,并且可包括任何信息递送介质。
Claims (11)
1.一种流量整形方法,包括:
通过监控任一队列的令牌消耗信息,确定所述队列是否需要老化;
当令牌添加表中的任一队列需要老化,将所述队列从所述令牌添加表中移除,并将所述队列的令牌桶内的令牌数量更新为大于令牌桶下限阈值的值。
2.根据权利要求1所述的方法,其特征在于,所述通过监控任一队列的令牌消耗信息,确定所述队列是否需要老化,包括:
针对任一队列,当在至少一个监控周期内没有监控到所述队列的令牌消耗信息,则确定所述队列需要老化。
3.根据权利要求1所述的方法,其特征在于,针对任一队列,采用一个老化标记指示所述队列是否需要老化。
4.根据权利要求3所述的方法,其特征在于,针对任一队列,采用一个扫描标记指示一个扫描周期内是否有所述队列的令牌消耗信息;
所述方法还包括:周期性扫描一个或多个队列的扫描标记和老化标记;其中,当扫描到任一队列的扫描标记指示在前一个扫描周期内有所述队列的令牌消耗信息,则将所述扫描标记更新为初始值;当扫描到任一队列的扫描标记指示在前一个扫描周期内没有所述队列的令牌消耗信息,且所述队列的老化标记指示所述队列不需要老化,则将所述队列的老化标记更新为指示所述队列需要老化。
5.根据权利要求1所述的方法,其特征在于,所述将所述队列的令牌桶内的令牌数量更新为大于令牌桶下限阈值的值,包括:将所述队列的令牌桶内的令牌数量更新为所述令牌桶下限阈值与1之和,或所述令牌桶下限阈值与2之和。
6.根据权利要求1至5中任一项所述的方法,其特征在于,所述令牌添加表包括加权公平调度WFQ链表。
7.一种流量整形装置,其特征在于,包括:令牌添加模块、老化模块;
所述老化模块,适于通过监控任一队列的令牌消耗信息,确定所述队列是否需要老化;
所述令牌添加模块,适于当令牌添加表中的任一队列需要老化,将所述队列从所述令牌添加表中移除,并将所述队列的令牌桶内的令牌数量更新为 大于令牌桶下限阈值的值。
8.根据权利要求7所述的装置,其特征在于,所述装置还包括:令牌消耗模块,适于当接收到任一队列的令牌消耗信息时,将所述队列的令牌桶内的令牌数量减1;并根据所述队列的令牌桶内的令牌数量与所述令牌桶下限阈值的比较结果,确定所述队列的令牌桶状态。
9.根据权利要求7所述的装置,其特征在于,所述装置还包括:存储模块,适于存储每个队列对应的老化标记;所述老化标记用于指示所述队列是否需要老化。
10.一种网络处理器,其特征在于,包括如权利要求7至9中任一项所述的流量整形装置。
11.一种计算机可读介质,其特征在于,存储流量整形程序,所述流量整形程序被处理器执行时实现如权利要求1至6中任一项所述的流量整形方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811287406.7A CN111131066B (zh) | 2018-10-31 | 2018-10-31 | 一种流量整形方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811287406.7A CN111131066B (zh) | 2018-10-31 | 2018-10-31 | 一种流量整形方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111131066A CN111131066A (zh) | 2020-05-08 |
CN111131066B true CN111131066B (zh) | 2022-08-19 |
Family
ID=70485583
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201811287406.7A Active CN111131066B (zh) | 2018-10-31 | 2018-10-31 | 一种流量整形方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111131066B (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112040489B (zh) * | 2020-09-21 | 2022-03-01 | 中国科学技术大学 | 能对流量整形的物联网安全网关、终端设备和系统 |
CN113645148B (zh) * | 2021-07-01 | 2024-04-05 | 裕太微电子股份有限公司 | 一种时间敏感网络的流量整形器令牌更新系统及方法 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101599905A (zh) * | 2009-06-30 | 2009-12-09 | 中兴通讯股份有限公司 | 一种实现流量整形令牌添加的方法、装置及系统 |
CN108234615A (zh) * | 2017-12-25 | 2018-06-29 | 新华三技术有限公司 | 表项处理方法、主板及主网络设备 |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP5107016B2 (ja) * | 2007-12-17 | 2012-12-26 | Kddi株式会社 | トークンバケットを用いたバッファ装置及びプログラム |
GB2532205B (en) * | 2014-11-06 | 2021-10-20 | Metaswitch Networks Ltd | Controlling enablement of resources |
-
2018
- 2018-10-31 CN CN201811287406.7A patent/CN111131066B/zh active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101599905A (zh) * | 2009-06-30 | 2009-12-09 | 中兴通讯股份有限公司 | 一种实现流量整形令牌添加的方法、装置及系统 |
CN108234615A (zh) * | 2017-12-25 | 2018-06-29 | 新华三技术有限公司 | 表项处理方法、主板及主网络设备 |
Non-Patent Citations (1)
Title |
---|
PRAM模型应用于同步机制的研究;易苗苗;《中国优秀硕士学位论文全文数据库 信息科技辑》;20150515(第05期);第I137-77页 * |
Also Published As
Publication number | Publication date |
---|---|
CN111131066A (zh) | 2020-05-08 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR102317523B1 (ko) | 패킷 제어 방법 및 네트워크 기기 | |
EP2466824B1 (en) | Service scheduling method and device | |
US8391292B2 (en) | Systems and methods for dynamically adjusting QoS parameters | |
CN101547159B (zh) | 一种避免网络拥塞的方法和设备 | |
EP4175232A1 (en) | Congestion control method and device | |
CN111107017A (zh) | 一种交换机报文拥塞的处理方法、设备以及存储介质 | |
CN111181873B (zh) | 数据发送方法、装置、存储介质和电子设备 | |
CN111131066B (zh) | 一种流量整形方法及装置 | |
CN103888377A (zh) | 报文缓存方法及装置 | |
CN102970250A (zh) | 分布式路由器系统中的带宽分配方法和装置、网络设备 | |
CN112433881A (zh) | 一种分布式存储系统的数据恢复方法和装置 | |
CN111245732A (zh) | 一种流量控制方法、装置及设备 | |
CN103685062A (zh) | 缓存管理方法及装置 | |
WO2019109902A1 (zh) | 队列调度方法及装置、通信设备、存储介质 | |
JP3226096B2 (ja) | Atmセルバッファシステム及びその輻輳制御方法 | |
CN117793583A (zh) | 报文转发方法、装置、电子设备及计算机可读存储介质 | |
CN107231284B (zh) | 一种消息的发送方法和终端设备 | |
CN114401235B (zh) | 一种队列管理中重载处理方法、系统、介质、设备及应用 | |
US8254380B2 (en) | Managing messages transmitted in an interconnect network | |
US11388115B2 (en) | Circuit within switch and method for managing memory within switch | |
CN114500402A (zh) | 报文处理的方法、设备及存储介质 | |
CN110708255B (zh) | 一种报文控制方法及节点设备 | |
CN111654886A (zh) | 一种限制用户带宽的方法和装置 | |
CN109379302B (zh) | 一种实现令牌处理的方法及装置 | |
CN112312467A (zh) | 一种网络传输控制方法及装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |