用于分组交换网络中的队列管理的方法和系统的利记博彩app_3

文档序号:9916911阅读:来源:国知局
a_b针对所接收到的每种业务类型的分组进行测量。这里针对每个类型示出了一个权重计算器209a_b,但是它们的功能能够被组合。
[0047]第二实施例的优势在于,每个业务类型能够使用其自己的队列配置以及AQM方案及配置,而两种或更多业务类型的带宽被公平划分从而保证了每个流独立于其业务类型而被近似地提供以其链路容量的公平份额。
[0048]图3示出了用于在分组交换网络中控制拥塞的系统和方法的第三实施例。该系统包括接收模块302、两个队列缓冲器305a-b、两个计算模块303a-b、两个丢弃/标记控制器306a-b、两个队列测量设备307a-b、优先权调度器310以及最大值模块311。该系统在中间节点处提供,后者从发送节点接收分组P并且将分组P,传送至接收节点。
[0049]接收模块302被配置为用于接收属于要求不同拥塞控制机制的两个或更多类型的业务的分组P1、P2。作为示例,这两个业务类型在这里通过它们的颜色编码而进行区分。在所图示的实施例中,接收模块302包括分类器304,其对所接收到的不同业务类型的分组P1、P2进行区分,并且将它们归类于相应队列305a-b中。
[0050]缓冲器队列305a_b在到来的分组Pl、P2被送至接收节点之前对它们进行临时存储。丢弃/标记控制器306a-b对相应缓冲器队列306a-b进行操作从而依据相对应的标记或丢弃概率丢弃或标记分组。作为示例,该示例中所示的两种业务类型中的每一种都由不同的缓冲器队列305a_b进行处理,但是能够预见到其它的顺序,例如通过将若干业务类型在一个缓冲器队列中进行耦合(如图1中所示的示例),或者通过将一个类型的业务的分组在两个或更多缓冲器队列中进行散布,或者它们的任意组合。
[0051]计算模块303a_b被配置为基于它们相应的队列测量设备307a_b所提供的一个或多个所测量参数而针对它们相应的类型计算标记或丢弃概率。
[0052]队列测量设备307a_b能够从经过它们的相应队列305a_b的业务中提取参数。这些参数可以是本领域技术人员公知的并且在现有技术的主动队列管理(AQM)系统中使用的瞬时队列长度、平均队列长度、分组留存时间、进入业务速率、外出业务速率、瞬时分组队列溢出、平均队列溢出速率等。
[0053]队列305a、队列测量设备307a、计算模块303a以及丢弃/标记控制器306a共同形成第一主动队列管理(AQM)系统,其可以与现有技术中已知的AQM系统相同,而相应的b组件则形成第二AQM系统。还注意到,尾部丢弃队列意在与该表示形式相匹配。第一AQM系统和第二AQM系统之间的耦合通过具有最大值模块311而达到,其计算以下的最大值:
[0054]-第一队列测量设备307a所测量的参数或从其所得出的数值;和
[0055]-第二队列测量设备307a所测量的参数或从其所得出的数值。
[0056]该最大值被用来确定第二丢弃/标记控制器206b所使用的第二丢弃/标记概率。
[0057]在第三实施例中,第一计算模块303a还被配置为计算被用来计算第二丢弃/标记概率的数值,上述第二丢弃/标记概率针对第二业务类型所使用的具体拥塞控制机制进行调适,使得第二业务类型的个体流的稳定状态速率接近于第一业务类型的稳定状态速率。该数值基于第一队列测量设备307a的输出。
[0058]优先权调度器310将首先对来自第二队列305b的分组进行调度,并且如果该队列中没有分组则对来自第一队列305a的分组进行调度。作为结果,第二队列305b将保持几乎为空,并且第二计算模块303b通常将提供非常低的丢弃/标记概率。另一方面,第一队列305a将以最大程度负载而处于拥塞,并且将因此生成较高的分组丢弃/标记,后者针对相应业务类型的拥塞控制机制进行调适。这使得第一计算模块303a所提供的第二丢弃/标记概率被最大值模块311所选择。第一计算模块303a所提供的第二丢弃/标记概率被丢弃/标记控制器306b应用于第二类型的业务。这使得每个流的速率在来自两个业务类型的流之间保持平衡。仅在没有第一业务类型的流时,或者在生成了异常高的第二业务类型的负载时,计算模块303b所生成的较高的分组丢弃/标记概率才将被触发,从而第二丢弃/标记控制器306b将被第二计算模块303b的数值所驱动。
[0059]第三实施例的优势在于,针对具有最高调度优先权的一个或多个业务类型,排队延时得以被最小化,同时保持了不同业务类型的所有流之间大致的带宽公平共享,并且利用最低优先权进行调度的业务类型的队列大小会很大从而保证完全的链路利用。
[0060]在图4的描述中提供了图1中所描述的总体方法的具体实施例的示例。作为对图1的实施例加以说明的示例,对包括TCP Reno和DCTCP的混合业务的具体情形进行讨论。已知TCP Reno流具有稳定状态吞吐量(b_Reno),其随标记或丢弃概率,即丢弃或标记概率(p_Reno)和往返时间(rtt)的变化而变化。丢弃或标记概率(p_Reno)是时间间隔中被丢弃或标记的分组(或字节)除以分组(或字节)的总数所得到的数字。稳定状态吞吐量(b_Reno)大致定义如下:
[0061]b_Reno = 1.225/(rtt*p_Reno'0.5) (I)
[0062]这是例如已知的近似方式,例如在Mathis,Μ.、Semke,J.、Mahdavi,J.和Ott,Τ.的(1997),“The macroscopic behav1r of the TCP congest1n avoidance algorithm”,ACM SIGCOMM Computer Communicat1n Review,27(3) ,67-82中有所解释。
[0063]对于DCTCP而言,稳定状态吞吐量(b_dctcp)也可以根据标记或丢弃概率(p_dctcp)和往返时间(rrt)由近似公式进行表达。在具有非常小的往返时间(rrt)的数据中心环境以及针对DCTCP所配置的RED AQM中(其中瞬时队列大小以及最小和最大阈值被配置为相同数值(这在队列大小超过阈值的情况下导致100%的标记)),该关系能够被近似为:
[0064]b_dctcp = 2/(rtt*p_dctcp~2) (2)
[0065]这从以下等式所得出:
[0066]p_dctcp = (2/ff_max) '0.5 (3)
[0067]其中p_dctcp是总分组中被标记分组的数目,因此分组标记概率,以及W_max最大拥塞窗口如以下论文中所描述:Alizadeh,M.、Greenberg,A.、Maltz,D.A.、Padhye,J.、Patel ,P.、Prabhakar,B.、...&Sridharan,M.(2010) , “Data center tcp(dctcp),,,ACMSIGCOMM Computer Communicat1n Review,40(4),63-74。
[0068]我们能够将(3)重新排列为:
[0069]ff_max = 2/p_dctcp'2 (4)
[0070]在基于窗口的拥塞控制机制中,该稳定状态带宽被定义为:
[0071 ] b=ff/rtt (5)
[0072]其中b是一个流的稳定状态带宽,W是平均窗口大小并且rtt是平均往返时间。在缓冲器小的情况下,最大窗口将接近于该平均窗口,并且将(4)用在(5)中将得到(2)。
[0073]在WAN网络环境中,往返时间更大,并且对于随机提早标记而言,能够针对DCTCP假设每个rtt都有一些分组将被标记。该窗口将在每个rtt被加1,或者每个所确认的分组将会导致1/W的增量,其中W是平均窗口大小。DCTCP将会在每个rtt将窗口减小p_dctcp_r/2,其中p_dc t cp_r是随机标记的分组标记概率。因此,对于稳定状态而言,这两个数值应当互相补偿,从而导致:
[0074]p_dctcp_r/2 = 1/ff (6)
[0075]同样,在重新排列(6)并且将其用在(5)之中后将会导致:
[0076]b_dctcp_r = 2/ (rtt*p_dctcp_r) (7)
[0077]从而根据上下文,能够使用(2)或(7)或者其组合。
[0078]为了使得两个TCPReno分组流和DCTCP分组流取得相同的份额,目标是使得(注意,也可能在其优选的情况下例如设置60%/40%份额而不是相同份额):
[0079]b_dctcp(_r) =b_Reno (8)
[0080]本发明的第一实施例旨在将来自两个类型的流的标记或丢弃概率进行耦合。将等式(1)、(7)和(8)进行组合给出了以下解决方案:
[0081]p_Reno = (1.225/2*p_dctcp_r) '2 (9)
[0082]或者
[0083]p_dctcp_r = 2/l.225*p_Reno'0.5 (10)
[0084]将等式(1)、(2)和(8)进行组合给出了以下解决方案:
[0085]p_Reno = (I.225/2) ~2*p_dctcp~4 (11)
[0
当前第3页1 2 3 4 5 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1