CN1389799A - 多优先级最佳动态域值缓存管理算法 - Google Patents

多优先级最佳动态域值缓存管理算法 Download PDF

Info

Publication number
CN1389799A
CN1389799A CN 02125285 CN02125285A CN1389799A CN 1389799 A CN1389799 A CN 1389799A CN 02125285 CN02125285 CN 02125285 CN 02125285 A CN02125285 A CN 02125285A CN 1389799 A CN1389799 A CN 1389799A
Authority
CN
China
Prior art keywords
priority
thresholding
port
formation
sigma
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.)
Pending
Application number
CN 02125285
Other languages
English (en)
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.)
Tsinghua University
Original Assignee
Tsinghua University
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 Tsinghua University filed Critical Tsinghua University
Priority to CN 02125285 priority Critical patent/CN1389799A/zh
Publication of CN1389799A publication Critical patent/CN1389799A/zh
Pending legal-status Critical Current

Links

Images

Landscapes

  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

多优先级最佳动态域值缓存管理算法属于网络互联路由器中缓存管理技术领域,其特征在于:当所有队列的长度小于可用缓存资源时,优先级为i的队列的域值是各个端口中所有优先级低于或等于i(i越大,优先级越低)的队列的和的最大值,使得高优先级队列的域值大于低优先级队列的域值。当所有队列的长度等于或者大于可用缓存时,优先级为i的队列域值将以分组到达的速率减少。它既可以充分利用缓存资源,又能够保证按照优先级的高低分配缓存资源。它与现有的各种多优先级的DT(动态域值)算法相比,综合性较好。它能充分利用缓存资源,有效地减少分组丢失数量,并能够按照优先级分配资源。

Description

多优先级最佳动态域值缓存管理算法
技术领域
多优先级最佳动态域值缓存管理算法属于网络互联路由器中缓存管理的领域。
背景技术
互联网的全球化使数据流量从子网内部逐渐转移到网间,同时底层的通讯数据链路的速率随着技术的进步也在飞速发展,从而将互联网上的核心设备——路由器推到了网络技术的焦点位置。
路由器的转发过程中,有三个主要瓶颈:交换、查找和输出调度。而随着多媒体数据流需求迅速增长,输出调度和缓存管理问题就成为路由器尤其是高性能路由器进一步发展的重要瓶颈。
缓存分配决定了路由器的各个输出端口如何使用整个缓存空间的问题。从排队系统的角度看,共享缓存路由器的模型如图1。路由器有N个输入,输入速率分别是λ1λ2…λN;N个输出端口,输出速率分别是μ1μ2…μN。整个缓存空间的大小是B,每个输出端口分配的缓存是k1k2…kN。所有的分配的缓存之和不得超过整个缓存的大小B。缓存管理的任务就是调整在个缓存空间B中的缓存分配,限制各端口对缓存的使用,以到达最好的传输效果如丢失率、延迟等。可以帮助输出排队的共享内存路由器在超负荷的条件下很好的的实现交换功能。
在已有的缓存策略中动态域值缓存管理策略兼有静态域值策略的简单性和PUSHOUT策略的适应性。依照发展过程依次提出过以下三种算法:
DT(Dynamic Threshold)即动态域值算法,它提出在任何时候输出队列的域值跟系统中当前未用缓存的数量成比例。假设T(t)表示时刻t的控制域值;Qi(t)表示等待队列i的长度; Q ( t ) = Σ i Q i ( t ) 表示所有队列长度总和,也就是整个缓存空间已占用的部分;以B表示整个缓存的大小,那么控制域值T(t)=α·(B-Q(t)),α是未用缓存的系数。这就是说,如果Qi(t)≥T(t)新到来的进入队列i的信元将会被阻塞,直到这个队列的长度降到控制域值以下,或者域值升高到这个队列长度以上。其缺点是需要预留一部分空间,使得缓存资源不能被充分利用。
最佳DT算法,其目标是最大限度的提高缓存利用率,并保证缓存分配公平。它在时刻t的控制域值为:
Figure A0212528500032
其中Q0=α·B作为本算法对于超负荷时各个端口队列长度的管理目标; Q ( t ) = Σ k = 1 K Q k ( t ) 表示所有队列长度总和;K为端口个数;Told是上一时刻的控制域值;Tm表示最小的缓存域值,初始时设置,默认可为0;参数α决定共享的缓存数量,0<α≤1。公式(5)说明,当所有队列的长度Q(t)等于或者大于Q0时,T将以信元到达的速率减少;当Q(t)小于Q0时,到达的信元总能被接收,域值T更新为当前的最大队列长度值。队列变化量都设为一个分组大小。该算法没有预留护缓存,所以资源利用率要高,尤其在低负载和中等负载情况下。缺点是没有考虑优先级问题。
多优先级的DT算法,它是DT算法扩展到多丢失优先级情况。它的控制域值有三种形式:
1.根据某个控制参数按比例分配缓存和输出负载,以保证每个优先级端口都得到不同的资源:
定义
Figure A0212528500042
(t)为时刻t端口i的优先级为p的信元数量,则域值控制的公式是(t)<αp·(B-Q(t))。αp为优先级为p的缓存参数;它是将因子α变成有优先级分别α0>α1>…>αP-1来分配缓存和输出负载的。
2.将大部分资源分配给高优先级:
域值公式为 Q p i ( t ) < &alpha; p &CenterDot; ( B - &Sigma; k &le; p Q k i ( t ) ) . 它将Q(t)替换为部分队列长度和∑k≤pQ(t),把大部分缓存分配给高优先级分组,它是通过加大控制域值来实现的。
3.在极度拥塞情况下只给高优先级分配缓存资源:
域值公式是 (t)<αp·(Bp-Q(t))。它是将B按照不同优先级划分为B=B0>B1>...>BP=0;BP表示对应优先级为p的有效缓存大小,它是采用减小控制域值来实现的。
上述多优先级DT算法建立在DT算法之上,同样存在缓存利用不充分的问题。
发明内容
本发明的目的在于提供一种利用率高且又能保证优先级的缓存资源分配的多优先级最佳动态域值算法。
本发明的特征在于:它是一种充分利用缓存资源并保证按照优先级的高低分配缓存资源的方法,即
当系统有K个输出端口队列,I个丢失优先级,i=0,…,I-1,优先级依次降低,
(t):时刻t端口k的优先级为i的分组数量;
Q k ( t ) = &Sigma; i Q k i ( t ) : 第k个端口的分组数量;
Q i ( t ) = &Sigma; k Q k i ( t ) : 各端口中优先级为i的分组数量;
Q ( t ) = &Sigma; k &Sigma; i Q k i ( t ) : 各端口所有分组的数量。
则当所有队列的长度Q(t)小于可用缓存资源Q0=α·B时,优先级为i的队列的域值Ti更新为 max k &Element; K { &Sigma; j &GreaterEqual; i Q k i ( t ) } , 也就是说,此时的优先级为i的队列域值是各个端口中所有优先级低于或等于i(i越大,优先级越低)的队列的和的最大值。使得高优先级队列的域值大于低优先级队列的域值;
当所有队列的长度Q(t)等于或者大于Q0时,优先级为i的队列域值Ti将以分组到达的速率减少;
即每个优先级的分组队列长度的控制域值为
Figure A0212528500054
其中α是算法可使用的缓存资源的因子,一般取0<α<1;
c是队列的变化值,如果队列长度变化量为一个分组的大小,那么c=1;
Tm表示最小的缓存域值,初始时设置,默认为0;
(t):上一时刻的控制域值;
B:缓存空间大小。
当Q(t)小于Q0时,到达的分组总能被接收,并且域值Ti更新为当前的各个端口中所有优先级低于或等于i的队列的和的最大值,即
Figure A0212528500056
使用证明它达到了预期的目的。
附图说明
图1:共享缓存路由器的排队论模型。
图2:多优先级最佳动态域值缓存管理(MPODT)算法的计算机流程框图。
具体实施方式
图2为循环处理每一个到达的计算机流程框图。为了判定是否接收到达的分组,我们首先要根据算法修改当前队列域值 (t)。
本算法已在高档路由器中用硬件实现,也可在的低档路由器中用软件实现。
现给出一个实例对图2的流程框图进行说明。
初始条件:系统有2个端口队列称为端口0和1,对应优先级分别为0和1,最大优先级为0,初始时两个端口队列长度为0;假设最大小为1.5KB,则初始时,两个队列的域值为1.5KB。缓存大小B=10,000KB,控制因子α=0.9,可用缓存资源α*B=9,000KB。
系统达到稳定后的某个时刻:端口0的队列长为5,000KB,端口1的队列长为3,000KB,Q(t)=Q0(t)+Q1(t)=8,000KB<α*B。如果此时到达一个分组其大小为1KB,优先级为0,那么端口0的域值 (t)更新为 (t)=Q(t)+该分组大小=8,001KB。如果这时该分组的目的端口队列长度为5,000KB那么这个分组将被接收。
再经过一段时间后,端口0的队列为6,000KB,端口1的队列长为3,000KB,此时Q(t)=Q0(t)+Q1(t)=9,000KB<α*B。如果此时到达一个优先级为0的分组大小为0.5KB,
Figure A0212528500063
(t)=8,500KB,那么端口0的域值更新为 T new 0 ( t ) = T old 0 ( t ) - 0.5 KB = 8,499.5 KB . 如果其端口队列长度大于对应的域值,就丢弃分组。

Claims (2)

1.多优先级最佳动态域值缓存管理算法,它是以最佳动态域值缓存管理算法为基础的,其特征在于它是一种充分利用缓存资源并保证按照优先级的高低分配缓存资源的方法,即
当系统有K个输出端口队列,I个丢失优先级,i=0,…,I-1,优先级依次降低,
(t):时刻t端口k的优先级为i的分组数量;
Q k ( t ) = &Sigma; i Q k i ( t ) : 第k个端口的分组数量;
Q i ( t ) = &Sigma; k Q k i ( t ) : 各端口中优先级为i的分组数量;
Q ( t ) = &Sigma; k &Sigma; i Q k i ( t ) : 各端口所有分组的数量。
则当所有队列的长度Q(t)小于可用缓存资源Q0=α·B时,优先级为i的队列的域值Ti更新为 max k &Element; K { &Sigma; j &GreaterEqual; i Q k j ( t ) } , 也就是说,此时的优先级为i的队列域值是各个端口中所有优先级低于或等于i(i越大,优先级越低)的队列的和的最大值,使得高优先级队列的域值大于低优先级队列的域值;
当所有队列的长度Q(t)等于或者大于Q0时,优先级为i的队列域值Ti将以分组到达的速率减少;
即每个优先级的分组队列长度的控制域值为其中α是算法可使用的缓存资源的因子,一般取0<α<1;
c是队列的变化值,如果队列长度变化量为一个分组的大小,那么c=1;
Tm表示最小的缓存域值,初始时设置,默认为0;
Figure A0212528500027
(t):上一时刻的控制域值;
B:缓存空间大小。
2.根据权利要求1所述的多优先级最佳动态域值缓存管理算法,其特征在于:当Q(t)小于Q0时,到达的分组总能被接收,并且域值Ti更新为当前的各个端口中所有优先级低于或等于i的队列的和的最大值,即
CN 02125285 2002-07-31 2002-07-31 多优先级最佳动态域值缓存管理算法 Pending CN1389799A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN 02125285 CN1389799A (zh) 2002-07-31 2002-07-31 多优先级最佳动态域值缓存管理算法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN 02125285 CN1389799A (zh) 2002-07-31 2002-07-31 多优先级最佳动态域值缓存管理算法

Publications (1)

Publication Number Publication Date
CN1389799A true CN1389799A (zh) 2003-01-08

Family

ID=4745510

Family Applications (1)

Application Number Title Priority Date Filing Date
CN 02125285 Pending CN1389799A (zh) 2002-07-31 2002-07-31 多优先级最佳动态域值缓存管理算法

Country Status (1)

Country Link
CN (1) CN1389799A (zh)

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN100366022C (zh) * 2004-04-02 2008-01-30 华为技术有限公司 一种缓存分配方法及装置
CN100426279C (zh) * 2006-09-13 2008-10-15 威盛电子股份有限公司 缓冲区控制装置及方法
CN101090323B (zh) * 2006-06-14 2010-08-25 国际商业机器公司 利用流量控制的交换机中的存储设备分配管理方法和系统
CN102420776A (zh) * 2012-01-12 2012-04-18 盛科网络(苏州)有限公司 动态调整入口资源分配阈值的方法及系统
CN106330834A (zh) * 2015-06-30 2017-01-11 华为技术有限公司 一种虚拟通道连接建立方法及装置
CN108111436A (zh) * 2017-11-30 2018-06-01 浙江宇视科技有限公司 一种网络设备缓存调度方法及系统
CN108959107A (zh) * 2017-05-18 2018-12-07 深圳市中兴微电子技术有限公司 一种共享方法及装置
CN113938441A (zh) * 2021-10-15 2022-01-14 南京金阵微电子技术有限公司 数据缓存方法、资源配置方法、缓存器、介质及电子设备

Cited By (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN100366022C (zh) * 2004-04-02 2008-01-30 华为技术有限公司 一种缓存分配方法及装置
CN101090323B (zh) * 2006-06-14 2010-08-25 国际商业机器公司 利用流量控制的交换机中的存储设备分配管理方法和系统
CN100426279C (zh) * 2006-09-13 2008-10-15 威盛电子股份有限公司 缓冲区控制装置及方法
CN102420776A (zh) * 2012-01-12 2012-04-18 盛科网络(苏州)有限公司 动态调整入口资源分配阈值的方法及系统
CN102420776B (zh) * 2012-01-12 2014-07-09 盛科网络(苏州)有限公司 动态调整入口资源分配阈值的方法及系统
CN106330834A (zh) * 2015-06-30 2017-01-11 华为技术有限公司 一种虚拟通道连接建立方法及装置
CN106330834B (zh) * 2015-06-30 2020-02-14 华为技术有限公司 一种虚拟通道连接建立方法及装置
CN108959107A (zh) * 2017-05-18 2018-12-07 深圳市中兴微电子技术有限公司 一种共享方法及装置
CN108959107B (zh) * 2017-05-18 2020-06-16 深圳市中兴微电子技术有限公司 一种共享方法及装置
CN108111436A (zh) * 2017-11-30 2018-06-01 浙江宇视科技有限公司 一种网络设备缓存调度方法及系统
CN113938441A (zh) * 2021-10-15 2022-01-14 南京金阵微电子技术有限公司 数据缓存方法、资源配置方法、缓存器、介质及电子设备

Similar Documents

Publication Publication Date Title
US5014265A (en) Method and apparatus for congestion control in a data network
CN108616458B (zh) 客户端设备上调度分组传输的系统和方法
JP4490956B2 (ja) ポリシー・ベースのサービス品質
US6092115A (en) Method for supporting per-connection queuing for feedback-controlled traffic
US6757249B1 (en) Method and apparatus for output rate regulation and control associated with a packet pipeline
JP3567828B2 (ja) Atmスイッチ及び動的しきい値設定方法
JP3306705B2 (ja) パケット転送制御装置及びそのスケジューリング方法
US6463484B1 (en) Egress port scheduling using memory efficient request storage
JP3949282B2 (ja) 資源を共有するシステムにおけるサービス要求受付管理方法
Bian et al. Dynamic flow switching. A new communication service for ATM networks
CN108667746B (zh) 一种在深空延时容忍网络中实现业务优先级的方法
CN110266606B (zh) 一种边缘网络中主动队列管理优化方法及装置
CN1389799A (zh) 多优先级最佳动态域值缓存管理算法
US20130243009A1 (en) Energy-efficient network device with coordinated scheduling and rate control using non-zero base power
CN1518296A (zh) 一种支持多业务的综合队列调度的实现方法
CN1298149C (zh) 基于包模式的流量控制装置及方法
CN110891027A (zh) 基于队列调度的命名数据网络传输控制方法、装置和设备
Lin et al. Two-stage fair queuing using budget round-robin
Lizambri et al. Priority scheduling and buffer management for ATM traffic shaping
CN115941634A (zh) 共享缓存的阈值调节方法、装置和计算机设备
CN114866475A (zh) 一种片上网络拥塞控制方法、系统、装置及存储介质
CN1195361C (zh) 基于网络处理器平台实现的动态部分缓冲共享方法
Cheung et al. Pipelined sections: A new buffer management discipline for scalable QoS provision
Davies et al. End-to-end management of mixed applications across networks
Da-gang A new adaptive BLUE algorithm

Legal Events

Date Code Title Description
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C12 Rejection of a patent application after its publication
RJ01 Rejection of invention patent application after publication