CN100405778C - 用于在基于分组的计算机网络中速率整形的方法和系统 - Google Patents

用于在基于分组的计算机网络中速率整形的方法和系统 Download PDF

Info

Publication number
CN100405778C
CN100405778C CNB028277740A CN02827774A CN100405778C CN 100405778 C CN100405778 C CN 100405778C CN B028277740 A CNB028277740 A CN B028277740A CN 02827774 A CN02827774 A CN 02827774A CN 100405778 C CN100405778 C CN 100405778C
Authority
CN
China
Prior art keywords
rate
error sum
error
present
flow
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.)
Expired - Fee Related
Application number
CNB028277740A
Other languages
English (en)
Other versions
CN1618024A (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.)
Riverstone Networks Inc
Original Assignee
Riverstone Networks Inc
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 Riverstone Networks Inc filed Critical Riverstone Networks Inc
Publication of CN1618024A publication Critical patent/CN1618024A/zh
Application granted granted Critical
Publication of CN100405778C publication Critical patent/CN100405778C/zh
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/22Traffic shaping
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/50Queue scheduling
    • H04L47/52Queue scheduling by attributing bandwidth to queues
    • H04L47/527Quantum based scheduling, e.g. credit or deficit based scheduling or token bank
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/0001Systems modifying transmission characteristics according to link quality, e.g. power backoff
    • H04L1/0002Systems modifying transmission characteristics according to link quality, e.g. power backoff by adapting the transmission rate
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L25/00Baseband systems
    • H04L25/02Details ; arrangements for supplying electrical power along data transmission lines
    • H04L25/0262Arrangements for detecting the data rate of an incoming signal
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/11Identifying congestion
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/22Traffic shaping
    • H04L47/225Determination of shaping rate, e.g. using a moving window
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/24Traffic characterised by specific attributes, e.g. priority or QoS
    • H04L47/2441Traffic characterised by specific attributes, e.g. priority or QoS relying on flow classification, e.g. using integrated services [IntServ]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/32Flow control; Congestion control by discarding or delaying data units, e.g. packets or frames
    • YGENERAL 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
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE 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/00Reducing energy consumption in communication networks
    • Y02D30/50Reducing energy consumption in communication networks in wire-line communication networks, e.g. low power modes or reduced link rate

Abstract

本发明涉及一种用于在基于分组的计算机网络中速率整形的方法和系统。在控制基于分组的流量的流动以满足期望的速率,包括计算在一个链路上基于分组流量的作为运动平均的当前速率,计算所计算的当前速率和期望速率之间的误差之和,并响应于所述计算的误差之和以确定分组是否能够流动。当计算的当前速率和期望速率之间的误差之和表示当前速率小于期望速率时,允许分组流动,而当所述误差之和表示当前速率大于期望速率时,则不允许分组流动。通过人工控制当前速率的最小值和误差之和还能够控制突发的数量。流控制算法能够用于速率整形或速率限制。

Description

用于在基于分组的计算机网络中速率整形的方法和系统
技术领域
本发明涉及一种基于分组的计算机网络,并尤其涉及一种控制基于分组的网络内的流量速率。
背景技术
已知基于分组的网络用于以突发发送数据。突发流量能够导致网络拥塞并当输入缓冲器满时导致分组被丢弃。为了改善网络的性能并提供可靠的服务质量(QoS),有必要能够控制网络中不同位置处的流量至特定的期望速率。控制流量的两种技术通常称为速率整形和速率限制。速率整形包括当分组到达一个位置时缓冲分组,并然后根据给定的算法控制分组流离开缓冲器以满足期望的速率。由于分组被缓冲,所以能够接收分组的突发,然后以可控的方式发送这些分组,从而不会丢弃进入的分组。速率限制包括测量到达一个位置的分组的速率,然后丢弃超出期望速率的分组。
一些用于实现速率整形或速率限制的公共算法包括熟知的漏桶和令牌桶算法。使用漏桶算法实现速率整形包括缓冲进入的分组然后以恒定的速率从缓冲器中发送这些分组,即漏速率(例如以字节/秒测量的)。例如,当接收大小为C(即,几字节)的分组时,在其被从缓冲器发送之前,在缓冲器中将该分组保持C时间周期/漏速率。但是如果缓冲器为空的,那么如漏速率所指示的传输容量变为未使用并且不用于累积分组的后续突发。所以,当分组的新突发在无流量的周期之后到达缓冲器时,新分组仍将被缓冲并以漏速率进行发送。这种技术不能为考虑到基于分组的网络流量的突发本质而提供灵活性。
使用令牌桶算法用于速率整形包括以恒定速率为桶分配比特值(即,1000字节,50单元等)并且只有必须数量的比特,字节,或单元在桶中累积时才允许从缓冲器中发送分组。在无流量的周期中,比特以恒定的速率继续在桶中累积并且流量的以下突发能够使用该累积的比特。尽管这种技术考虑到网络流量的突发本质而提供了灵活性,但是如果桶在无流量的周期中累积了太多的比特,那么将不可能整形后继的分组突发。可允许的突发量能够通过设定桶中所累积的大量比特的最大值来限制,但是桶的最大值必须至少和最大期望的分组一样大,以防止缓冲器中大的分组被截留(trap)。设定最大桶的大小为最大期望分组的大小其不利之处在于,这将允许相对小的分组的大量突发脉冲得不到整形。
能够用于速率整形或速率限制的另一个算法包括计算某一位置处的当前流量速率并比较当前速率和期望的速率以确定是否应该发送以下分组。根据该算法,如果当前速率小于期望速率,那么将允许分组流动,如果当前速率大于期望速率,那么将不允许分组流动。一种已知的算法诸如用于速率整形的算法,被称为指数加权运动平均(EWMA)算法。EWMA算法的一个实例如下表示:
Current_RateN=(1-Gain)·Current_RateN-1+Gain·BytesN
其中,tN+1=tN+Δt
这里Current_RateN为第N个采样间隔的EWMA,Current_RateN-1为第N-1个采样间隔的EWMA,以及BytesN为在第N个采样间隔内发送的字节数量,每个采样间隔的周期为Δt。Gain控制低通滤波器操作所必须的时间常量(即,频率响应)。当用于从缓冲器发送分组时,如果Current_RateN大于预定的期望速率(称之为Desired_Rate)时,那么不发送任何分组。如果Current_RateN小于预定的期望速率时,那么发送这些分组。一种用于控制从缓冲器发送分组的算法在现有技术中如下表示:
如果(Current_RateN>Desired_Rate)
不发送分组
否则
发送分组。
图1描述了在速率整形系统中应用上述EWMA算法产生的流量104与时间(以Δt增加)比值的当前速率的示意图,其中缓冲器被填满了分组。在开始时间,t0,发送流量的突发并且按照EWMA计算的当前速率超出了期望的速率,其中期望速率通过水平虚线106表示。只要当前速率高于期望的速率,那么就不发送任何新流量并且当前速率稳定地下降。一旦当前速率下降到低于期望的速率(即,时间t2),则发送流量的新突发并且当前速率跳回到期望速率之上。如图1所示,在满载的系统中,流量的当前速率几乎完全地高于期望速率,因为当前速率下降到低于期望速率时,将发送更多的分组。由于当前速率几乎完全地高于期望速率,因此在满载周期达到的传输速率将大于期望的速率,这里根据由时间周期分割的发送比特总数计算达到的速率,其中在该时间周期上发送这些比特。例如,在图1中,在满载的系统中在时间周期t0到t9上达到的速率108高于期望的速率。理想状态下,达到的速率应该等于期望的速率。
就需要能够控制特定网络流量至期望的速率,以及现有技术速率整形和速率限制算法的缺点而言,实际需要一种能够有效地控制基于分组的流量速率的算法,即灵活地并容易地实现,特别是在硬件中实现。
发明内容
一种用于控制基于分组的流量流动以满足期望速率的方法和系统包括,计算在一个链路上基于分组流量作为运动平均的当前速率,计算计算的当前速率和期望速率之间的误差之和,并响应于计算的误差之和以确定分组是否能够流动。在一个实施例中,当当前速率和期望速率之间的误差之和小于或等于零时,从缓冲器发送分组到链路上,并且当误差之和大于零时,在缓冲器中保持该分组。由于以响应于当前速率和期望速率之间的误差之和来控制分组流动,所以即使在突发流量环境中,也能保持所获得的流量速率接近于期望的速率。
在本发明的一个实施例中,比较误差之和与门限值以确定是否允许有任何分组流动。如果误差之和低于该门限则允许分组流动,如果误差之和高于该门限,则不允许分组流动。在一个实施例中,门限值为零,如果误差之和小于或等于零则允许分组流动。在另一个实施例中,当误差之和表示达到的流量速率低于期望的速率时允许分组流动,而当误差之和表示达到的流量速率高于期望的速率时则不允许分组流动。
为了控制在无流量周期过后允许流动的突发的大小,可为当前速率设立一个最小值。如果当前速率低于该最小值,则将计算的当前速率调整为该最小值。同理,为误差之和建立一个最小值,如果误差之和低于最小值,则将计算的误差之和调整为该最小值。这些技术都控制从静默周期“所借”带宽的大小。特别是,后者的(第二)技术防止大量的负余项累积。
在一个实施例中,计算当前速率和误差之和以及确定是否在每个周期分组能够重复流动,其中每Δt发生一次循环。
在一个实施例中,如下计算当前速率:
当前速率=前一速率+(Wa·C-Wb·前一速率),
这里C表示在当前周期中发送的比特数量,Wa和Wb为加权。当使用上述提供的表达式时,能够将用于下一个计算周期的前一速率设定为在上一个周期所计算的当前速率。在一个实施例中,Wa为NC和Δt的函数,这里Δt为采样间隔和NC为采样间隔的常量数量。具体而言,Wa可以被定义为Wa=1/(NC·Δt)。在一个实施例中,Wb为NC的函数。更具体而言,Wb可以被定义为Wb=1/NC
当使用上述提供的速率表达式时,通过设立一个初始速率并如果当前速率降低到低于初始速率时将当前速率调整为初始速率,从而能够控制流量突发的大小。
误差之和可以如下计算:
当前误差=前一误差+(当前速率-期望速率),
这里根据上述提供的表达式来计算当前速率。通过为当前误差设立一个最小门限,并如果当前误差降低到低于该门限时,将当前误差调整为该门限,从而能够控制分组突发的大小。当使用上述提供的误差表达式时,将下一个计算周期的前一误差设定为在上一个计算周期中计算的当前误差。在一个实施例中,如果当前误差小于或等于零则允许分组流动,如果当前误差大于零则不允许分组流动。
本发明能够以控制基于分组的流量流动的方法和系统来实施。该方法和系统能够用于速率整形或速率限制并且,通过调整用户提供的初始速率,期望速率,NC和Δt的输入参数,从而能够容易地调整算法的性能特性。
本发明还能够以特别用于速率整形的方法来实施,其中响应于计算的当前速率和期望速率之间的计算误差之和,从而从缓冲器中发送分组。
根据以下结合附图通过实例的方式示例本发明原理的详细描述,本发明的其他方面和好处将显示出来。
附图说明
图1描述了根据现有技术在速率整形系统中应用EWMA算法产生的流量速率与以Δt增加的时间之比值的示意图,其中缓冲器被填满了分组。
图2描述了根据本发明的实施例实现速率整形算法的速率整形系统。
图3A描述了根据本发明的实施例在实现速率整形算法中产生的流量轮廓图。
图3B描述了图3A中计算的当前速率和期望速率之间误差之和的图。
图3C描述了响应于图3B中当前速率和期望速率之间误差之和而产生的开关控制信号图。
图4描述了根据本发明的实施例用于控制基于分组的流量的流率以满足期望的速率。
图5A描述了根据本发明的另一个实施例使用图4所示的速率整形算法产生的未调整速率轮廓的图,其中包括一部分调整的速率轮廓。
图5B描述了根据本发明的另一个实施例在计算速率和根据图5A中速率轮廓产生的期望速率之间误差之未调整的和,其中包括一部分调整的误差之和。
图6描述了根据本发明的另一个实施例,用于控制基于分组的流量的流率以满足期望速率的方法流程图,其中期望速率已考虑无流量的周期而被修改。
图7描述了根据本发明的一个实施例,连接至相同输出链路并由缓冲器专用开关控制的两个缓冲器的示意性实施例,其中实现了图4或图6的速率整形算法的多个实例以允许未使用的带宽由其它缓冲器使用。
图8描述了根据本发明的一个实施例,通过图7的一个选择器实现的逻辑矩阵实例以使得能够共享可用的带宽。
图9描述了根据本发明的一个实施例,QoS系统的一个实施例,其中使用图4或图6的速率整形算法从多个缓冲器发送分组。
具体实施方式
一种用于控制基于分组的流量流动以满足期望速率的方法和系统包括,计算在一个链路上基于分组流量的作为运动平均的当前速率,计算被计算的当前速率和期望速率之间的误差之和,并响应于计算的误差之和以确定分组是否能够流动。在一个实施例中,当当前速率和期望速率之间的误差之和小于或等于零时,从缓冲器发送分组到链路上,并且当误差之和大于零时,在缓冲器中保持该分组。由于响应于当前速率和期望速率之间的误差之和来控制分组流动,所以即使在突发流量环境中,也能保持获得的流量速率接近于期望的速率。
图2描述了为本发明关键的能够用于实现速率整形算法的速率整形系统的实例。速率整形系统包括一个缓冲器112,一个开关114,以及速率整形逻辑116。缓冲器在输入链路118上接收发来的分组并缓冲这些分组直到其被发送到输出链路120。该开关为缓冲器和输出链路之间的网关。该开关受速率整形逻辑的控制并且速率整形逻辑实现如下所述的速率整形算法。速率整形算法的一个实施例需要提供四个域(初始速率,期望速率,Δt和NC)中的初始化信息如用户定义的输入参数给速率整形逻辑。域初始速率,期望速率,Δt和NC如下定义。在工作中,速率整形逻辑接收实际的发送信息,与输出链路相关的C,并输出一个开关控制信号(Switcn_Control)给开关。速率整形逻辑产生的控制信号使开关接通(如果它不总是接通),以便从缓冲器发送分组或关断(如果它不总是关断),以便在缓冲器中保持该分组。尽管图2所述的开关作为从缓冲器发送分组的机制,但是其它的机制也能够用于从缓冲器发送分组。如这里所述,输入和输出链路可能包括一个位于集成电路的总线,位于电路板上的总线,介质诸如电线,光纤,连接两个网络设备的RF信号,或其它用于传送分组化信息的链路。输入和输出链路还可能包括上述链路的任意组合。
在执行本发明算法中的基本步骤之一包括计算基于分组的流量的运动平均,当前速率。以下描述了一种用于计算基于分组流量的当前速率和运动平均的技术,然后描述了一种用于计算计算的当前速率和期望速率之间误差之和的技术。参考图3到图9更详细地描述速率整形算法的一个实施例。
在给定时间周期T的基于分组的流量速率(即,比特/秒)能够如下表示:
R = ΣC T
其中∑C为时间T中发送的比特总数。在N个采样间隔的采样域中,速率能够如下表示:
Rate N = Σ i = 0 N C i N · Δt
这里Δt为采样间隔,N为在其上计算速率的采样间隔的数量。这意味着有关在第N个间隔之前发生的采样间隔的以下速率:
Rate N - 1 = Σ i = 0 N - 1 C i ( N - 1 ) · Δt
接下来在采样间隔0到N中发送的比特之和能够如下表示:
Σ i = 0 N C i = Σ i = 0 N - 1 C i + C N
利用RateN和RateN-1代替上述式子:
RateN·N·Δt=RateN-1·(N-1)·Δt+CN
因此能够递归表示RateN为:
Rate N = Rate N - 1 + C N N · ΔT - Rate N - 1 N
RateN=RateN-1+Wa·CN-Wb·RateN-1
其中如下定义加权Wa和Wb
W a = 1 N · Δt ,
W b = 1 N
尽管在上述推导中N为变量,但是也能够将N设定为常量值以简化速率计算。在一个实施例中,N被设定为常量值,Nc,用于计算加权Wa和Wb,因此:
W a = 1 N c · Δt ,
W b = 1 N c
这里Nc表示采样间隔数量的常数。速率计算能够如下表述:
当前速率=前一速率+[Wa·C-Wb·前一速率]
这里当前速率与RateN有关,前一速率与RateN-1有关,这里使用Nc计算Wa和Wb,并且C为与在最近采样间隔中发送的与比特数量相关的实际发送信息。
在图2的实施例中,C表示在最后的采样间隔,发送给系统的输出链路120的实际比特数量。在图2中,逻辑线路122表示与提供给速率整形逻辑的输出链路相关的实际发送信息。尽管逻辑线路122与图2的输出链路相连接,但是实际的发送信息能够通过各种技术提供给速率整形逻辑,所使用的确切技术对于本发明而言不是关键。例如,实际发送信息可能被从缓冲器提供。
执行该算法的其它基本步骤包括计算计算的当前速率和期望速率之间的误差之和。在整个描述中,计算的当前速率和期望速率之间的误差被称为“余项”,尽管应该理解术语“误差”和“余项”可相互替换。在N个采样间隔的采样域中,第N个采样间隔的瞬时余项表示为ResidueN=RateN-Desired_Rate。第N个采样间隔中的余项之和在这里表示为:
Σ i = 0 N Residue N = Σ i = 0 N ( Rate N - Desired _ Rate )
这意味着在第N个采样间隔之前发生的有关采样间隔的以下式子为:
Σ i = 0 N - 1 Residue N - 1 = Σ i = 0 N - 1 ( Rate N - 1 - Desired _ Rate )
所以,第N个采样间隔的瞬时余项之和还能够以术语即第N-1个采样间隔余项之和加上第N个采样间隔的瞬时余项如下表示:
Σ i = 0 N Residue N = Σ i = 0 N - 1 Residue N - 1 + Residue N
用ResidueN=RateN-Desired_Rate代入得到:
Σ i = 0 N Residue N = Σ i = 0 N - 1 Residue N - 1 + ( Rate N - Desired _ Rate )
所以,第N个采样间隔的余项之和还能够以术语当前余项和前一个余项如下表示:
当前余项=前一余项+(当前速率-期望速率)
这里当前速率如上所述进行计算,前一余项与上一个采样间隔余项之和有关,并且期望速率被提供作为一个用户输入。
使用速率整形的算法包括在每个采样间隔都计算当前速率和当前余项,即每个Δt,并且然后基于当前余项的值产生一个开关控制信号。在一个实施例中,如果当前余项小于或等于零,则产生使开关发送分组的控制信号(即,“1”),如果当前余项大于零,则产生使开关保持分组的控制信号(即,“0”)。当当前余项小于或等于零时发送分组,因为余项之和表示获得的速率当前等于或低于期望速率,反之当当前余项大于零时则保持这些分组,因为余项之和表示获得的速率当前低于期望速率。使用该算法,在时间的扩展周期中,分组流量获得的速率将接近期望的速率。尽管在本实施例中,余项值为零且为发送和保持分组的关键值,在其他实施例中该值可能被数学操作为除了零之外的特定值。
在一个实施例中,循环执行速率整形算法,这里每个循环间隔为与采样间隔相同的时间周期Δt。当开始新的循环时,要更新前一速率和前一余项的值以反映当前的值。具体而言,在前一个循环中计算的当前速率用于前一速率并且在前一个循环中计算的当前余项用于前一余项。整个速率整形算法能够以伪码来表示,例如表示为:
//速率整形算法:每个Δt执行。
//部分I:更新速率和余项:
当前速率=前一速率+Wa·C-Wb·前一速率;
当前余项=前一余项+(当前速率-期望速率);
//部分II:更新切换控制:
如果(当前余项<=0)Switch_Control=1;
否则Switch_Control=0;
前一速率=当前速率;
前一余项=当前余项;
图3A,3B,和3C为一系列时间同步图,其表示实现上述速率整形算法的示例结果。图3A为通过实现上述算法产生的速率轮廓图。该图描述了分组流量的当前速率304的一个实例,该速率根据运动平均与分组流量的期望速率306相关的时间(以Δt增加)之比值而计算。图3B为根据图3A中的速率轮廓产生的余项328之和以及图3C为响应于余项之和根据速率整形算法产生的开关控制信号330的图。在本实例中,开关控制信号“1”使得分组被发送以及开关控制信号“0”使得分组被保持。
在描述图3A-3C的示例结果中,假设在时间t0初始化该算法并且与此同时从缓冲器发送分组的突发。在时间t0的被发送分组使得当前速率迅速上升,如图3A所示。在时间t1,当前速率的增加使得当前余项从零变为大于零的特定值,这反过来使得开关控制信号从“1”变为“0”,从而保持任何剩余的被缓冲的被保留。尽管切换不是发送新的分组,但是分组流量的当前速率在时间t0和t8之间如图3A所示以当前速率的向下斜率而降低。响应于当前速率,如图3B所示,只要当前速率高于期望速率则当前余项就增加,一旦当前速率低于期望速率就降低。当前余项的响应产生于如上所述的当前余项,当前速率,和期望速率之间的关系。在当前余项变得小于或等于零的该点上,开关控制信号从“0”改变为“1”,以允许从缓冲器发送分组的其他突发。例如,在时间t8,当前余项等于零,这使得开关控制信号从“0”变到“1”,如图3C所示。当开关控制信号变为“1”时,释放分组的其他突发并且当前速率迅速上升,如在时间t8通过当前速率所示。参考图3B和3C,每当当前余项变为零时开关控制信号从“0”切换到“1”,然后一旦当前余项增加到大于零则开关控制信号从“1”再切换回“0”。这种机制确保了在满载的系统中整个平均流量速率保持在或接近期望速率。
图4描述了用于执行上述速率整形算法的方法流程图的实施例。在开始第一循环之前,在步骤434为速率整形算法设定期望速率值,Nc,和Δt。设定期望速率值,Nc,和Δt可能包括手动用户输入或响应于较宽QoS系统产生的自动输入。在第一循环开始时,即步骤436,在步骤438设定前一速率和前一余项为零。在步骤440,获取发送信息,C。在步骤442,如上所述使用所提供的表达式计算当前速率。用于计算当前速率的值包括前一速率,C,Wa,和Wb。在步骤444计算当前速率之后,如上所述使用所提供的表达式计算当前余项。用于计算当前余项的值包括前一余项,当前速率,和期望速率。然后计算的当前余项用于在判断点446确定是否应该发送或保持这些分组。如果当前余项小于或等于零则,在步骤448,发送分组;如果当前余项大于零,则在步骤450,保持该分组。在一个实施例中,发送分组包括产生一个打开开关的控制信号,保持分组包括产生一个关断开关的控制信号。在判断点452作出发送或保持分组的判断之后,如果采样间隔Δt已终止,在步骤454开始下一个循环。为了开始下一个循环,在步骤456,在上一循环计算的当前速率值作为前一速率用于以下的速率计算,并在上一循环计算的当前余项的值作为前一余项用于以下的余项计算。在设定前一速率和前一余项的值之后,获得发送信息,C(步骤440)的方法,计算当前速率(步骤442),计算当前余项(步骤444),以及如上所述重复地确定是否发送或保持分组(判断点446)。每Δt时间间隔连续地重复该过程。
尽管当速率整形系统的输入缓冲器满载时上述算法也工作正常,但是当突发通过无流量的周期时,速率整形算法可以允许发送发来的突发而不经过速率整形。当突发通过无流量的周期时,可能发送这些分组而不经过速率整形,因为无流量的周期将允许积累相对大的负余项。根据上述算法,只要当前余项保持低于零,则相对大的负余项将允许发送分组的突发脉冲。为了在无流量周期过后防止流量的大量突发,在特定情况下,将当前速率和当前余项的值人工控制为预先设立的门限。具体而言,在一个实施例中,控制当前速率以便不允许它降低到低于预先设立的速率,这里称之为初始化速率,并控制当前余项以便它不会降低到低于零。保证当前速率和当前余项不会降低到低于特定的门限这样控制能够从无流量的前一个周期所“借”的带宽量。图5A和5B描述了无流量周期所引起的问题以及对当前速率和当前余项所作的调整以保证所有的分组被速率整形,即使在无流量周期过后。图5A描述了使用速率整形算法产生的速率轮廓图,以及图5B为由图5A的速率轮廓而产生的余项之和的时间同步图。
参考图5A,为了示例的目的假设,在时间t0流量的初始化突发之后跟随一个无流量的周期。当时间经历时,计算的当前速率504向零降低除非手动进行调整。为了保持当前速率为最小值,调整当前速率为预定的初始速率556,而不论何时计算的当前速率低于初始速率。图5A描述了如何调整当前速率为预定的初始速率,而不论何时计算的当前速率低于初始速率。
在一个实施例中,使用模拟来找到初始速率值。该模拟用于找到在满载有分组的系统中产生的当前速率的最小值。然后产生的最小值被设定作为初始速率。在一个实施例中,当开始模拟时,初始化当前速率为期望速率。
参考图5B,不论何时来自图5A的当前速率504小于期望速率506,都将减少当前余项528。当当前速率小于期望速率时除非手动地调整它,否则当前余项将无期限地减少。为了将当前余项保持在最小值,不论何时计算的当前余项小于零,都将当前余项调整为零。图5B描述了已被调整为零的当前余项的一部分,因为计算的当前余项小于零。尽管在本实施例中,当前余项被调整为当前余项的最小值零,但是当前余项能够被调整为某些其他的最小门限值。
用于更新的速率整形算法的伪码的一个实施例如下:
//经修改的速率整形算法:每个Δt执行。
//部分I:更新速率和余项:
当前速率=前一速率+Wa·C-Wb·前一速率;
如果(当前速率<初始速率)当前速率=初始速率;
当前余项=前一余项+(当前速率-期望速率);
如果(当前余项<0)当前余项=0;
//部分II:更新切换控制:
如果(当前余项=0)Switch_Control=1;
否则Switch_Control=0;
前一速率=当前速率;
前一余项=当前余项;
图6描述了用于执行经过上述修改的图4的速率整形算法的方法流程图。该方法流程图类似于图4的方法流程图,除了在步骤634设立除其他参数之外的初始速率,在其他步骤660,如果当前速率小于初始速率则将当前速率设定为初始速率,在其他步骤662,如果当前余项小于零则将当前余项设定为零,并且在判断点646,如果当前余项等于零则发送分组,如果当前余项大于零则保持该分组。
在一个可替换的实施例中,能够在多缓冲器系统中实现上述速率整形算法以允许连接到相同链路的其他缓冲器使用可用的带宽。具体而言,当第二缓冲器不能保持任何分组时(即,当第二缓冲器未充分使用它的可用带宽),多缓冲器系统允许将分配给第二缓冲器的带宽由第一缓冲器借用。图7描述了连接到公共输出链路764并受缓冲器专用开关714所控制的两个缓冲器(缓冲器1和缓冲器2)712的示例性实施例。每个缓冲器专用开关通过缓冲器专用选择器766与两个缓冲器专用速率整形器716和717相连接。缓冲器专用速率整形器实现了两种版本的上述速率整形算法。如虚线768所示,每个选择器从其他缓冲器接收缓冲器状态信息并且如线722所示,每个速率整形器接收与其各自的缓冲器相关的实际发送信息。
在图7的实施例中,假设从缓冲器1发送的速率需要控制为期望速率并且发送的速率能够被控制为最大速率,如果在公共输出链路764上存在可用的未使用带宽。对于缓冲器2保持相同。为了在每个缓冲器都获得期望的速率整形,两个速率整形器与每个缓冲器相关联。参考缓冲器1,一个速率整形器,RS1_Desired716,设定速率整形缓冲器1为期望速率(即,算法中的期望速率域被设定为期望速率)并且另一个速率整形器,RS1_Maximum717,设定速率整形缓冲器1为最大速率(即,算法中的期望速率域被设定为最大速率)。同样,参考缓冲器2,RS2_Desired716,设定速率整形缓冲器2为期望速率(即,算法中的期望速率域被设定为期望速率)并且另一个速率整形器,RS2_Maximum717,设定速率整形缓冲器2为最大速率(即,算法中的期望速率域被设定为最大速率)。在图7的实施例中,当每个缓冲器中存在流量时,那么通过速率整形器RS1_Desired和RS2_Desired分别将每个缓冲器控制为它的期望速率。但是,如果其中的一个缓冲器没有已缓冲的流量,那么能够允许其他缓冲器上升到其最大速率。
参考图7和图8为了示例的目的描述了利用双速率整形器对缓冲器1速率整形。图8描述了选择器766为缓冲器1实现的逻辑矩阵770的实例。如果从RS1_Desired716输出的控制信号为“1”,表示能够从缓冲器1发送分组,那么选择器输出一个控制信号“1”到开关并发送该分组。不管RS1_Maximum717的值如何以及是否在缓冲器2中存在分组,选择器将输出控制信号“1”。如果从RS1_Desired输出的控制信号为“0”,以及RS1_Maximum输出的控制信号为“0”,那么选择器输出一个控制信号“0”到开关而不管在缓冲器2中是否存在分组。如果从RS1_Desired输出的控制信号为“0”,以及RS1_Maximum输出的控制信号为“1”,那么选择器将查询缓冲器2的状态以确定是否能够发送分组。如果在缓冲器2中存在分组,选择器则输出一个控制信号“0”并从缓冲器1不发送任何分组。不从缓冲器1发送分组因为,保留用于缓冲器2中分组的带宽不能由其他缓冲器使用。但是,如果在缓冲器2中不存在分组并且RS1_Maximum为“1”,那么用于开关1的选择器将输出一个控制信号“1”到开关1,并将从缓冲器1发送分组。从缓冲器1发送分组受到RS1_Maximum的控制,只要在缓冲器2中不存在任何分组以及RS1_Desired保持为“0”。
能够依比例决定参考图7所述的系统包括控制多于两个的缓冲器。在依比例决定的系统中,用于每个缓冲器的选择器监视所有其他缓冲器的缓冲器状态,或其他缓冲器的某些组合并使用缓冲器信息确定是否能够以指定的最大速率来发送分组。
上述速率整形算法还能够用于同时控制多个缓冲器。图9描述了其中通过相同速率整形逻辑控制多个缓冲器的QoS系统的一个实施例。QoS系统包括一个分组分类器972,缓冲器访问控制器974,存储器976,速率整形逻辑916,以及调度器978。存储器包括多个受缓冲器专用开关914控制的缓冲器(即,缓冲器1到M)。缓冲器专用开关中的每一个通过如上所述的速率整形逻辑控制。速率整形逻辑接收与各自的输出链路920相关的实际发送信息,并使用实际发送信息执行速率整形算法和产生开关控制信号。
在工作中,分类器972确定每个发来的分组应该被缓冲到哪个缓冲器中。在分组分类之后,缓冲器访问控制器974确定是否能够将分组转发到它们的适当缓冲器中。在一个实施例中,缓冲器访问控制器使用加权随机提前丢弃(WRED)算法确定是否应该将分类的分组转发到各个缓冲器。速率整形逻辑916确定是否通过调度器978接收缓冲的分组。在一个实施例中,速率整形逻辑在每个循环中为每个缓冲器执行参考图6所描述的步骤并输出开关控制信号(Switch_1_Control和Switch_M_Control)给各个开关。根据开关的状态,调度器发送分组。例如,发送分组可能用于通过切换结构进行切换。
在一个实施例中,在硬件中实现参考图2到9描述的速率整形算法。如上所述,当前速率的计算需要两步乘法运算。在硬件实现中,乘法运算需要相对大量的资源并且期望限制硬件实现所需的资源。一种减少乘法运算所需资源的方法是将乘法运算减少为移位。以下将描述其中将两步乘法运算减少为移位的速率整形算法的硬件实施例。
加权常量Wa如上定义为1/(NC·Δt),NC为时间间隔的数量。NC能够被选择为2的幂并且在一个实施例中,NC为位于(包括)29到213之间的2的幂。如上所述,每Δt时间间隔执行一次该算法。为了将乘法运算减少为移位,还选择时间间隔Δt以便它为2的幂,更具体而言,2的负幂。在一个实施例中,时间间隔Δt为硬件时钟时间(或周期)以及受速率整形算法控制的缓冲器数量的函数。在优选实施例中,Δt应该大于时钟时间乘以受速率整形算法控制的缓冲器数量(即,Δt>时钟时间·缓冲器数量),从而能够为每个缓冲器在每个Δt时间中更新当前速率,当前余项,以及开关。注意到假设需要花费一个时钟周期来为单个的缓冲器更新当前速率,当前余项,以及开关。表1提供了Δt的示例值,该值能够用作受速率整形算法控制的缓冲器数量的函数以及时钟周期的函数。该表还包括了能够使用的最小Δt以及选择作为2的负幂的Δt。
表1
  缓冲器数量   时钟周期  最小Δt  所选择的Δt  2^(-x)幂的Δt
  32   10ns  320ns  470ns  2^(-21)
  256   10ns  2560ns  3810ns  2^(-18)
  32   10ns  512ns  953ns  2^(-20)
加权常量定义为1/(NC·Δt)。Wra常量定义为:Wra=log2(Wa)并且如果1/(NC·Δt)为2的幂并且大于1,那么Wa·C减少为以下式子:
Wa·C≈(C<<Wra)
因此,乘法运算被减少为向左移位运算。
加权常量Wb定义为1/N。常量Wrb能够定义为:Wrb=log2(Wb)并且如果1/N大于2的幂并小于1,那么Previous_Rate·Wb减少为以下式子:
Previous_Rate·Wb≈(Previous_Rate>>Wb)
因此,乘法运算被减少为向右移位运算。
由于移位导致丢失比特,所以可能降低计算的精确性。为了避免精确性的降低,实施定点运算并且十进制之后的比特数量称为精确度。硬件实现的速率整形算法能够以伪码来表示,为了示例的目的,如下表示:
//硬件实现的速率整形算法:每个Δt执行。
//部分I:更新速率和余项:
当前速率=前一速率+((C<<精确度)<<Wra)-(前一速率>>Wrb);
如果(当前速率<初始速率)当前速率=初始速率;
当前余项=前一余项+(当前速率-期望速率);
如果(当前余项<0)当前余项=0;
//部分II:更新切换控制:
如果(当前余项=0)开关控制=1;
否则开关控制=0;
前一速率=当前速率;
前一余项=当前余项;
在一个实施例中,在使用可变长度分组的环境中实现速率整形算法,例如,以太网环境,但是,速率整形算法还能够在使用固定长度单元(如分组)的环境中实现。例如,异步传输模式(ATM)环境。
尽管这里实现的算法用于完成速率整形,但是该算法还能够用于完成速率限制或任何其他速率控制技术。当该算法用于速率限制时,当当前余项低于门限(即零)时丢弃分组,并且当当前余项高于门限时发送该分组。
在上述算法的实施例中,以特定的方式使用提供的方程来计算当前速率和期望速率之间的误差之和。但是,应该理解,可以以不同方式来计算当前速率和期望速率之间的误差之和而不偏离这里所描述的并且以下请求保护的本发明的范围和实质。
不论以硬件或软件来实现速率整形算法,通过简单地调整任何用户输入域,如初始速率,期望速率,Δt和Nc都能容易地调整算法性能。对于初始速率,较低的初始速率可有效地允许从无流量的前一周期“借”更多的带宽,允许在静默周期过后大量的分组突发流动。对于Δt,较大的Δt趋于使得流量轮廓更具突发性,因为开关更新之间的时间周期较长。对于Nc,Nc的值越小,则计算的当前速率将越更接近地跟踪瞬时速率,产生了较快的响应时间。通理,Nc的值越大,计算的当前速率将不能更接近地跟踪瞬时速率,产生了较慢的响应时间。
速率整形算法能够在一个宏观层次上实现,其中开关表示网络中的一个节点或在较低层次上实现,其中开关控制从特定缓冲器的发送功能。而且,开关能够是控制分组流入链路的任何机制。
尽管已经描述并示例了本发明的具体实施例,但是本发明并不限制于这些描述和示例的具体形式或部分安排。本发明仅仅通过权利要求书来限定。

Claims (7)

1.一种用于控制基于分组的流量流动以满足期望速率的方法,该方法包括:
计算在一个链路上基于分组流量的作为运动平均的当前速率,所述当前速率如下计算:
当前速率=前一速率+(Wa·C-Wb·前一速率),
这里C表示比特数量,Wa和Wb为加权,Wa=1/(Nc·Δt),和Wb=1/Nc,Δt为采样间隔和Nc为所述采样间隔的数量;
计算所述计算的当前速率和所述期望速率之间的误差之和,所述误差之和如下计算:
当前误差=前一误差+(当前速率-期望速率);以及
响应于所述计算的误差之和以确定分组是否能够流动,如果所述误差之和小于误差门限则允许分组流动,以及如果所述误差之和大于所述误差门限,则不允许分组流动。
2.根据权利要求1所述的方法其中确定分组是否能够流动包括当所述误差之和表示获得的流量速率低于期望速率时允许分组流动,而当所述误差之和表示获得的流量速率高于期望速率时则不允许分组流动。
3.根据权利要求1所述的方法还包括,为所述当前速率设立一个最小值并且当所述当前速率低于所述最小值时调整所述当前速率的值。
4.根据权利要求1所述的方法包括为所述误差之和设立一个最小值并且当所述误差之和低于所述最小值时调整所述误差之和的值。
5.根据权利要求1所述的方法还包括:
为所述当前速率和所述误差之和设立一个最小值;
如果所述当前速率低于用于所述当前速率的所述最小值时调整所述当前速率的值;和
如果所述误差之和低于用于所述误差之和的所述最小值时调整所述误差之和的值。
6.根据权利要求1所述的方法,其中将所述当前速率计算为加权的运动平均。
7.一种用于控制输入链路和输出链路之间基于分组的流量流动以满足期望速率的系统,该系统包括:
连接于所述输入链路和所述输出链路之间的开关,当所述开关接通时允许流量从所述输入链路向所述输出链路流动,当所述开关关断时不允许分组流动;和
连接控制所述开关的速率整形逻辑设备,所述速率整形逻辑设备包括用于:
计算在所述输入和输出链路其中之一上基于分组流量的作为运动平均的当前速率的装置,所述当前速率如下计算:
当前速率=前一速率+(Wa·C-Wb·前一速率),
这里C表示比特数量,Wa和Wb为加权,Wa=1/(Nc·Δt),和Wb=1/Nc,Δt为采样间隔和Nc为所述采样间隔的数量;
计算所述计算的当前速率和所述期望速率之间的误差之和的装置,所述误差之和如下计算:
当前误差=前一误差+(当前速率-期望速率);以及
响应于所述计算的误差之和以确定分组是否能够通过所述输出链路流动的装置,如果所述误差之和小于误差门限则允许分组流动,以及如果所述误差之和大于所述误差门限,则不允许分组流动。
CNB028277740A 2001-12-05 2002-12-05 用于在基于分组的计算机网络中速率整形的方法和系统 Expired - Fee Related CN100405778C (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US10/007,409 US6798741B2 (en) 2001-12-05 2001-12-05 Method and system for rate shaping in packet-based computer networks
US10/007,409 2001-12-05

Publications (2)

Publication Number Publication Date
CN1618024A CN1618024A (zh) 2005-05-18
CN100405778C true CN100405778C (zh) 2008-07-23

Family

ID=21725974

Family Applications (1)

Application Number Title Priority Date Filing Date
CNB028277740A Expired - Fee Related CN100405778C (zh) 2001-12-05 2002-12-05 用于在基于分组的计算机网络中速率整形的方法和系统

Country Status (7)

Country Link
US (1) US6798741B2 (zh)
EP (1) EP1461627B1 (zh)
JP (1) JP4032027B2 (zh)
KR (1) KR100915185B1 (zh)
CN (1) CN100405778C (zh)
AU (1) AU2002362058A1 (zh)
WO (1) WO2003048903A2 (zh)

Families Citing this family (38)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5048184B2 (ja) * 2001-01-26 2012-10-17 富士通株式会社 伝送レート監視装置および伝送レート監視方法
US7382793B1 (en) * 2002-01-17 2008-06-03 Juniper Networks, Inc. Systems and methods for determining the bandwidth used by a queue
US7352761B2 (en) * 2002-06-04 2008-04-01 Lucent Technologies Inc. Distributing unused allocated bandwidth using a borrow vector
US7310309B1 (en) * 2002-07-17 2007-12-18 Foundry Networks, Inc. Dynamic rate limiting adjustment
ES2321820T3 (es) * 2002-11-04 2009-06-12 Siemens Aktiengesellschaft Procedimiento y aparato para lograr un tiempo de respuesta optimo en un sistema de telecomunicaciones.
US20040179479A1 (en) * 2003-03-13 2004-09-16 Alcatel Determination of average queue depth for RED (random early packet discard)
US7627675B2 (en) * 2003-05-01 2009-12-01 Cisco Technology, Inc. Methods and devices for regulating traffic on a network
US20060190998A1 (en) * 2005-02-17 2006-08-24 At&T Corp Determining firewall rules for reverse firewalls
US8788640B1 (en) 2005-08-16 2014-07-22 F5 Networks, Inc. Employing rate shaping class capacities and metrics to balance connections
US7995474B2 (en) * 2005-09-13 2011-08-09 International Business Machines Corporation Grid network throttle and load collector
US7853948B2 (en) * 2005-10-24 2010-12-14 International Business Machines Corporation Method and apparatus for scheduling grid jobs
US7831971B2 (en) * 2005-10-24 2010-11-09 International Business Machines Corporation Method and apparatus for presenting a visualization of processor capacity and network availability based on a grid computing system simulation
US20070118839A1 (en) * 2005-10-24 2007-05-24 Viktors Berstis Method and apparatus for grid project modeling language
US20070258445A1 (en) * 2006-05-02 2007-11-08 Harris Corporation Systems and methods for protocol filtering for quality of service
US7738377B1 (en) * 2006-05-22 2010-06-15 At&T Intellectual Property Ii, L.P. Method and apparatus for volumetric thresholding and alarming on internet protocol traffic
US8516153B2 (en) 2006-06-16 2013-08-20 Harris Corporation Method and system for network-independent QoS
US8730981B2 (en) 2006-06-20 2014-05-20 Harris Corporation Method and system for compression based quality of service
WO2007147756A1 (en) 2006-06-22 2007-12-27 Xelerated Ab A processor and a method for a processor
EP2033366B1 (en) * 2006-06-26 2010-07-21 Telefonaktiebolaget LM Ericsson (publ) Network node and method for fast traffic measurement and monitoring
US20080013559A1 (en) * 2006-07-14 2008-01-17 Smith Donald L Systems and methods for applying back-pressure for sequencing in quality of service
US8300653B2 (en) * 2006-07-31 2012-10-30 Harris Corporation Systems and methods for assured communications with quality of service
US8027254B2 (en) * 2006-08-16 2011-09-27 France Telecom Method of limiting bit rate in a telecommunications network
KR101007024B1 (ko) 2007-02-01 2011-01-12 삼성전자주식회사 이동통신 시스템에서 서비스품질 트래픽 속도를 보장하기위한 장치 및 방법
TW200838215A (en) * 2007-03-15 2008-09-16 Univ Nat Central System device utilizing policy to manage network service
US8271715B2 (en) * 2008-03-31 2012-09-18 Intel Corporation Modular scalable PCI-Express implementation
US8908540B2 (en) * 2009-02-13 2014-12-09 Toshiba America Research, Inc. Efficient and loss tolerant method and mechanism for measuring available bandwidth
CN102812670B (zh) * 2010-03-22 2015-11-25 飞思卡尔半导体公司 令牌桶管理装置和管理令牌桶的方法
JP5673321B2 (ja) * 2011-04-18 2015-02-18 富士通株式会社 伝送装置およびインタフェースカード
US8913620B2 (en) 2012-03-14 2014-12-16 International Business Machines Corporation Multicast traffic generation using hierarchical replication mechanisms for distributed switches
US8897301B2 (en) * 2012-03-14 2014-11-25 International Business Machines Corporation Multicast bandwidth multiplication for a unified distributed switch
US8953619B2 (en) 2012-03-14 2015-02-10 International Business Machines Corporation Dynamic optimization of a multicast tree hierarchy for a distributed switch
US8811406B2 (en) 2012-03-14 2014-08-19 International Business Machines Corporation Delivering multicast frames to aggregated link trunks in a distributed switch
US9197572B2 (en) * 2013-03-15 2015-11-24 The Regents Of The University Of California Throughput enabled rate adaptation in wireless networks
US20150334703A1 (en) * 2014-05-15 2015-11-19 Qualcomm Incorporated Determining modem information and overhead information
CN106950527B (zh) * 2017-04-14 2020-01-31 中国电子科技集团公司第二十九研究所 一种多基线干涉仪测向体制下的脉冲信号分选方法
US10558392B2 (en) * 2017-06-30 2020-02-11 Seagate Technology Llc Enhancing quality of service of a storage device
US11294850B2 (en) * 2019-03-29 2022-04-05 Intel Corporation System, apparatus and method for increasing bandwidth of edge-located agents of an integrated circuit
JP7010268B2 (ja) * 2019-04-19 2022-01-26 オムロン株式会社 通信監視システムおよび通信監視方法

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1171685A (zh) * 1996-06-20 1998-01-28 冲电气工业株式会社 利用适用于形成整个频带的子频带的传输控制方案对数据传输速率的控制
WO1998030059A1 (en) * 1997-01-03 1998-07-09 Telecommunications Research Laboratories Method for real-time traffic analysis on packet networks
US5790131A (en) * 1996-05-15 1998-08-04 Iterated Systems, Inc. System and method for lossy compression of data with output file size control
US6144639A (en) * 1996-09-03 2000-11-07 Sbc Technology Resources, Inc. Apparatus and method for congestion control in high speed networks
US6167027A (en) * 1997-09-09 2000-12-26 Cisco Technology, Inc. Flow control technique for X.25 traffic in a high speed packet switching network

Family Cites Families (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4750175A (en) 1986-08-29 1988-06-07 Pactel Communications Companies Network diagnostic apparatus and method
US5251213A (en) 1992-05-12 1993-10-05 Microcom Systems, Inc. Multiport source routing token ring bridge apparatus
US5276677A (en) * 1992-06-26 1994-01-04 Nec Usa, Inc. Predictive congestion control of high-speed wide area networks
US5907800A (en) * 1995-06-07 1999-05-25 Lightbridge, Inc. Apparatus for use in inhibiting telecommunication subscriber termination
US5796719A (en) 1995-11-01 1998-08-18 International Business Corporation Traffic flow regulation to guarantee end-to-end delay in packet switched networks
US5754530A (en) 1996-04-18 1998-05-19 Northern Telecom Limited Flow control of ABR traffic in ATM networks
US5748901A (en) 1996-05-21 1998-05-05 Ramot University Authority Ltd. Flow control algorithm for high speed networks
US6052375A (en) 1997-11-26 2000-04-18 International Business Machines Corporation High speed internetworking traffic scaler and shaper
US6407983B1 (en) * 1998-02-20 2002-06-18 Adc Telecommunications, Inc. Circuit and method for shaping traffic in a virtual connection network
US6411946B1 (en) * 1998-08-28 2002-06-25 General Instrument Corporation Route optimization and traffic management in an ATM network using neural computing
US6584111B1 (en) * 1998-11-04 2003-06-24 Northern Telecom Limited ABR flow control using single bit congestion indication and wavelet transform filtering
US6549587B1 (en) * 1999-09-20 2003-04-15 Broadcom Corporation Voice and data exchange over a packet based network with timing recovery
US6917585B1 (en) * 1999-06-02 2005-07-12 Nortel Networks Limited Method and apparatus for queue management

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5790131A (en) * 1996-05-15 1998-08-04 Iterated Systems, Inc. System and method for lossy compression of data with output file size control
CN1171685A (zh) * 1996-06-20 1998-01-28 冲电气工业株式会社 利用适用于形成整个频带的子频带的传输控制方案对数据传输速率的控制
US6144639A (en) * 1996-09-03 2000-11-07 Sbc Technology Resources, Inc. Apparatus and method for congestion control in high speed networks
WO1998030059A1 (en) * 1997-01-03 1998-07-09 Telecommunications Research Laboratories Method for real-time traffic analysis on packet networks
US6167027A (en) * 1997-09-09 2000-12-26 Cisco Technology, Inc. Flow control technique for X.25 traffic in a high speed packet switching network

Also Published As

Publication number Publication date
WO2003048903A3 (en) 2003-10-16
JP2005512365A (ja) 2005-04-28
WO2003048903A2 (en) 2003-06-12
CN1618024A (zh) 2005-05-18
JP4032027B2 (ja) 2008-01-16
KR20040071709A (ko) 2004-08-12
EP1461627A4 (en) 2010-04-14
EP1461627A2 (en) 2004-09-29
US6798741B2 (en) 2004-09-28
EP1461627B1 (en) 2013-02-20
KR100915185B1 (ko) 2009-09-02
AU2002362058A1 (en) 2003-06-17
US20030107988A1 (en) 2003-06-12

Similar Documents

Publication Publication Date Title
CN100405778C (zh) 用于在基于分组的计算机网络中速率整形的方法和系统
KR100234212B1 (ko) 패킷 네트워크에서의 적응 속도기반 혼잡제어
US20050025052A1 (en) EFCI scheme with early congestion detection
EP1475985A2 (en) Traffic scheduling apparatus and method for a base station in a mobile communication system
CA2291802C (en) Explicit rate computation for flow control in computer networks
GB2285196A (en) Evaluating quality of service in an ATM multiplexing apparatus
CN102823206B (zh) 用于降低分组处理线卡中的能量消耗的方法以及分组处理线卡
Ohsaki et al. Analysis of rate-based congestion control algorithms for ATM networks. 1. Steady state analysis
US7342881B2 (en) Backpressure history mechanism in flow control
CN100384109C (zh) 宽带码分多址系统媒体接入控制层的流量控制方法及装置
Aweya et al. A simple, scalable and provably stable explicit rate computation scheme for flow control in communication networks
US6850881B1 (en) ATM connection admission control device for DBR connections
Hu et al. An Oscillation Reducing Rate-based Protocol based on Multiple Time Scale for ABR Flow Control
Zhang et al. Scalable flow control for multicast ABR services
US7142558B1 (en) Dynamic queuing control for variable throughput communication channels
Baiocchi et al. Achieving statistical gain in ATM networks with the same complexity as peak allocation strategy
Berry Some dynamic resource allocation problems in wireless networks
Wu et al. Congestion control using policy rollout
JP3160833B2 (ja) 呼受け付け制御方法及び呼受け付け制御装置
Ryu et al. PAQM: pro-active queue management for Internet congestion control
KR100616577B1 (ko) 데이터 전송장치 내의 전송 데이터 레이트 적응 제어 장치 및 그 방법
Abdelaziz et al. Study of the effectiveness of adaptive rate control for slow arrival processes
Jormakka ABR with bursty traffic sources
Reali Rate control for wideband radios
Habib et al. Flow control of bursty voice traffic in broadband networks

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
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20080723

Termination date: 20191205

CF01 Termination of patent right due to non-payment of annual fee