CN102611605A - 一种数据交换网的调度方法、装置和系统 - Google Patents
一种数据交换网的调度方法、装置和系统 Download PDFInfo
- Publication number
- CN102611605A CN102611605A CN2011100229483A CN201110022948A CN102611605A CN 102611605 A CN102611605 A CN 102611605A CN 2011100229483 A CN2011100229483 A CN 2011100229483A CN 201110022948 A CN201110022948 A CN 201110022948A CN 102611605 A CN102611605 A CN 102611605A
- Authority
- CN
- China
- Prior art keywords
- bandwidth
- output
- request
- port device
- speed
- 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.)
- Granted
Links
- 238000000034 method Methods 0.000 title claims abstract description 76
- 238000005259 measurement Methods 0.000 claims description 84
- 238000004364 calculation method Methods 0.000 claims description 38
- 230000006870 function Effects 0.000 claims description 11
- 238000004891 communication Methods 0.000 claims description 8
- 241001522296 Erithacus rubecula Species 0.000 claims 2
- 238000010586 diagram Methods 0.000 description 13
- 238000006243 chemical reaction Methods 0.000 description 12
- 230000001133 acceleration Effects 0.000 description 8
- 230000011664 signaling Effects 0.000 description 8
- 239000002699 waste material Substances 0.000 description 6
- 230000005540 biological transmission Effects 0.000 description 5
- 230000009286 beneficial effect Effects 0.000 description 2
- 230000006735 deficit Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000000691 measurement method Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000001360 synchronised effect Effects 0.000 description 1
Images
Landscapes
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明公开了一种数据交换网的调度方法、装置和系统。本发明实施例的输入端口设备采用对VOQ进行测量,然后根据测量结果来计算请求带宽,该计算请求带宽的方法相对于现有技术中仅根据数据流的缓存状态,以及数据流的优先级来确定请求带宽的方法而言,可以更准确地反映出数据流的当前状态,所以可以使得输入端口设备对VOQ之间的数据调度更为合理和有效,使得数据调度可以与当前网络的实际状态相适应,可以更适用于大型、高速、远距离的交换网。
Description
技术领域
本发明涉及通信技术领域,具体涉及一种数据交换网的调度方法、装置和系统。
背景技术
在分组交换网中,存在多个输入端口和输出端口,由于多个输入端口的流量都需要去往同一个输出端口,因此会存在资源竞争,为了保证用户体验,使得资源可以得到合理分配,现有技术提出了调度技术。现有的调度方法主要包括集中调度方法和基于信用值(Credit)的请求/许可调度方法。
在集中调度方法中,主要由中央调度器从所有有数据需要发送的输入端口接收带宽请求,然后根据带宽请求执行匹配算法以决定下一个发送周期的输入端口和输出端口对。但是,集中调度方法并不适用于大型数据交换网络,中央调度器无法在每个发送周期都进行大量的匹配计算。
为此,现有技术又提出基于信用值的请求/许可调度方法,在该调度方法中,输入端与输出端之间需要根据可用资源进行协商,以确定输入端的发送带宽。例如,输入端可以根据数据流的缓存状态,以及数据流的优先级向输出端发送状态信息,输出端在接收到该状态信息后,计算每个输入端口可发送的信用值,从而实现对数据的调度。其中,这里的信用值表示可发送的数据字节数,也称为许可值,而状态信息则包括表示空、较少、较满或很满等状态的几种状态信息。
在对现有技术的研究和实践过程中,本发明的发明人发现,现有的两种调度方法均不能适用于大型的、高速的、远距离的数据交换网。首先,由于状态信息只能表示几种状态,所以输出端据此所得的许可值并不是很准确,而且,如果交换网的线卡框与交换框距离较远,那么状态信息以及信用值的发送将会有很大的延迟,那么就必须分配更大的许可值来保证网络线速转发,这就使得调度缺乏准确性,也降低了服务质量。
发明内容
本发明实施例提供一种数据交换网的调度方法、装置和系统,可以提高调度的准确性,适用于大型的、高速的、远距离的数据交换网。
一种数据交换网的调度方法,包括:
对虚拟输出队列(VOQ,Virtual Output Queue)进行测量,得到第一测量结果;
根据第一测量结果计算请求带宽;
根据请求带宽发送带宽请求给输出端口设备;
接收输出端口设备根据缓存占用情况和所述带宽请求返回的带宽分配信息;
根据所述带宽分配信息进行VOQ之间的数据调度。
一种数据交换网的调度方法,包括:
接收输入端口设备发送的带宽请求;
根据缓存占用情况和带宽请求分配带宽,得到带宽分配信息;
将所述带宽分配信息发送给输入端口设备,以便输入端口设备根据该带宽分配信息进行VOQ之间的数据调度。
一种输入端口设备,包括:
测量单元,用于对VOQ进行测量,得到第一测量结果;
运算单元,用于根据测量单元得到的第一测量结果计算请求带宽;
发送单元,用于根据运算单元得到的请求带宽发送带宽请求给输出端口设备;
接收单元,用于接收输出端口设备根据缓存占用情况和所述带宽请求返回的带宽分配信息;
调度单元,用于根据接收单元接收到的带宽分配信息进行VOQ之间的数据调度。
一种输出端口设备,包括:
接收单元,用于接收输入端口设备发送的带宽请求;
分配单元,用于根据缓存占用情况和接收单元接收到的带宽请求分配带宽,得到带宽分配信息;
发送单元,用于将分配单元得到的带宽分配信息发送给输入端口设备,以便输入端口设备根据该带宽分配信息进行VOQ之间的数据调度。
一种通信系统,包括本发明实施例提供的任一种输入端口设备和输出端口设备。
本发明实施例的输入端口设备采用对VOQ进行测量,然后根据测量结果来计算请求带宽,该计算请求带宽的方法相对于现有技术中仅根据数据流的缓存状态,以及数据流的优先级来确定请求带宽的方法而言,可以更准确地反映出数据流的当前状态,所以可以使得输入端口设备对VOQ之间的数据调度更为合理和有效,使得数据调度可以与当前网络的实际状态相适应,调度的准确性更高,可以更适用于大型、高速、远距离的数据交换网。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本发明实施例一提供的数据交换网的调度方法的流程图;
图2是本发明实施例二提供的数据交换网的调度方法的流程图;
图3a是本发明提供的输入端口设备和输出端口设备的结构示意图;
图3b是本发明实施例三提供的数据交换网的调度方法的流程图;
图3c是本发明提供的输入端口设备和输出端口设备的时序示意图;
图4是本发明提供的输入端口设备和输出端口设备的另一结构示意图;
图5a是本发明提供的接入端口设备的结构示意图;
图5b是本发明提供的接入端口设备的另一结构示意图;
图6a是本发明提供的接出端口设备的结构示意图;
图6b是本发明提供的接出端口设备的另一结构示意图;
图6c是本发明提供的接出端口设备的又一结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
本发明实施例提供一种数据交换网的调度方法、装置和系统。以下分别进行详细说明。为了描述方便,在本发明实施例中,将输入端口称为输入端口设备,输出端口称为为输出端口设备。
实施例一、
本实施例将从输入端口设备的角度进行描述。
一种数据交换网的调度方法,包括:对VOQ进行测量,得到第一测量结果,根据该第一测量结果计算请求带宽,根据请求带宽发送带宽请求给输出端口设备,接收输出端口设备根据缓存占用情况和所述带宽请求返回的带宽分配信息,根据所述带宽分配信息进行VOQ之间的数据调度。
参见图1,具体流程如下:
101、对VOQ进行测量,得到相应的测量结果,在本发明实施例中称为第一测量结果。
例如,可以统计每个时间窗(Times Window)内VOQ的输入字节数(VOQInput Bytes),然后根据输入字节数和时间窗的大小(Window size)计算输入端口设备中VOQ的输入速度(Input Rate)。
其中,时间窗指的是一个可配置的固定的统计周期,称为T。输入端口设备根据时间窗周期进行统计和测量,例如系统在时刻t1开始工作,那么输入端口设备将统计[t1,t1+T]这段区间内每个VOQ的输入字节数,并在时刻t1+T计算第一测量结果。然后清除统计值,开始统计[t1+T,t1+2T]区间的数据。
可选的,还可以统计每个时间窗内VOQ的输出字节数(VOQ OutputBytes),然后根据输出字节数和时间窗的大小计算输入端口设备中VOQ的输出速度(Output Rate)。
需说明的是,由于本发明实施例主要是对数据交换网的单播数据进行调度,所以,这里的VOQ的输入字节数指的单播(Unicast)的VOQ的输入字节数(UC VOQ Input Bytes),VOQ的输出字节数指的单播的VOQ的输出字节数(UC VOQ Output Bytes)。
102、根据步骤101得到的第一测量结果计算该VOQ的请求带宽(CalculatedRequested Rate)。
例如,可以根据VOQ的队列深度(UC VOQ Depth)计算附加带宽(Q-Requested Rate),然后根据附加带宽和输入端口设备中VOQ的输入速度计算请求带宽。
其中,根据附加带宽和输入端口设备中VOQ的输入速度计算请求带宽具体可以采用如下任意一种方式:
(1)将附加带宽和输入端口设备中VOQ的输入速度的和作为请求带宽;
(2)将输入端口设备中VOQ的输入速度进行加速后得到的值和附加带宽的和作为请求带宽。
需说明的是,如果当网络发生拥塞时,输入端口设备实际的输出速度(即实际能发送出去的数据带宽)将会比输出端口设备分配给它的带宽小,所以,此时为了防止带宽浪费,以便输出端口设备将带宽分配给其他输入端口设备,输入端口设备可以对输入端口设备中VOQ的输出速度进行加速,然后将加速后的输出速度作为请求带宽,即除了可以根据附加带宽和输入端口设备中VOQ的输入速度来计算请求带宽之外,如果步骤101中已经计算出输入端口设备中VOQ的输出速度,则此时还可以采用如下方法来计算请求带宽:
将输入端口设备中VOQ的输出速度加速后得到的值作为请求带宽。
103、根据步骤102得到的请求带宽发送带宽请求给输出端口设备。
可选的,为了节省输入端口设备和输出端口设备之间的信令流程,以节省带宽资源,还可以判断计算得到的请求带宽与上一次请求带宽之间的差值是否大于一定的范围,比如判断计算得到的请求带宽与上一次请求带宽之间的差值是否大于第一预置阈值,如果超过该第一预置阈值,则发送带宽请求给输出端口设备,如果没有超过该第一预置阈值,则可以不发送带宽请求给输出端口设备。也就是说,在根据请求带宽发送带宽请求给输出端口设备之前还可以包括:
确定计算得到的请求带宽与上一次请求带宽之间的差值大于第一预置阈值。
其中,第一预置阈值可以根据实际应用的需求进行设置。
104、接收输出端口设备根据缓存占用情况和带宽请求返回的带宽分配信息。其中,该带宽分配信息指示分配给该VOQ的带宽的大小。
105、根据步骤104接收到的带宽分配信息进行VOQ之间的数据调度。
根据带宽分配信息,采用加权循环(WRR,Weighted Round Robin)算法、亏损加权循环(DWRR,Deficit Weighted Round Robin)算法或加权公平排队(WFQ,Weighted Fair Queuing)算法进行VOQ之间的数据调度。
由上可知,本实施例的输入端口设备采用对VOQ进行测量,然后根据测量结果来计算请求带宽,该计算请求带宽的方法相对于现有技术中仅根据数据流的缓存状态,以及数据流的优先级来确定请求带宽的方法而言,可以更准确地反映出数据流的当前状态,所以可以使得输入端口设备对VOQ之间的数据调度更为合理和有效,使得数据调度可以与当前网络的实际状态相适应,可以更适用于大型、高速、远距离的数据交换网。
实施例二、
本实施例将从输出端口的角度进行描述。
一种数据交换网的调度方法,包括:接收输入端口设备发送的带宽请求,根据缓存占用情况和带宽请求分配带宽,得到带宽分配信息,将该带宽分配信息发送给输入端口设备,以便输入端口设备根据该带宽分配信息进行VOQ之间的数据调度。
参见图2,具体流程可以如下:
201、接收输入端口设备发送的带宽请求;其中,该带宽请求为输入端口设备根据第一测量结果计算所得,具体可参见实施例一,在此不再赘述。
需说明的是,由于多个输入端口设备的流量可能去往同一个输出端口设备,所以,输出端口设备可以接收多个(即至少一个)输入端口设备发送的带宽请求。
202、根据缓存占用情况和带宽请求分配带宽,得到带宽分配信息。
其中,在本发明实施例中,缓存占用情况包括输出缓存占用情况、输入缓存占用情况和总缓存占用情况,其中,总缓存包括输出缓存和输入缓存,即,总缓存占用情况指的是输出缓存和输入缓存的总体占用情况,相对于输出缓存占用情况而言,总缓存占用情况还需要另外考虑输入缓存的占用情况。
例如,具体可以采用如下任意一种方式来分配带宽,以得到带宽分配信息,如下:
(1)对输出缓存进行测量,得到相应的测量结果,该测量结果在本发明实施例中称为第二测量结果,根据该第二测量结果和带宽请求分配带宽,得到带宽分配信息。具体可以如下:
S1、对输出缓存进行测量,得到第二测量结果;
例如,可以统计输出缓存中每个时间窗内的输入字节数,根据输入字节数和时间窗的大小计算输出端口设备的输入速度。
可选的,除了可以对输出缓存中每个时间窗内的输入字节数进行统计之外,还可以对缓存中每个时间窗内的输出字节数进行统计,即步骤S1还可以包括:
统计输出缓存中每个时间窗内的输出字节数,根据输出字节数和时间窗的大小计算输出端口设备的输出速度。
S2、根据第二测量结果和带宽请求分配带宽,得到带宽分配信息;
例如,可以根据输出缓存的深度计算惩罚带宽(Decrement Rate),根据该计算出的惩罚带宽和输出端口设备的输入速度计算可用带宽(Calculated GrantRate),根据该可用带宽确定最大可分配带宽,根据该带宽请求和最大可分配带宽来分配带宽,得到带宽分配信息。
其中,根据惩罚带宽和输出端口设备的输入速度计算可用带宽具体可以包括:
将输出端口设备的输入速度与惩罚带宽的差作为可用带宽;或者,将对该输出端口设备的输入速度进行加速后所得到的值与惩罚带宽的差作为可用带宽。
如果在步骤S1中已经计算出了输出端口设备的输出速度,则在计算最大可分配带宽时也可以考虑该输出端口设备的输出速度的影响,例如,此时步骤S2中“根据该可用带宽确定最大可分配带宽”可以包括:
根据输出缓存深度、网络拥塞状态、输出端口设备的输出速度和可用带宽来计算最大可分配带宽。计算方法具体可以如下:
A、当所述缓存深度小于缓存深度门限值时,将该可用带宽作为最大可分配带宽;
B、当所述缓存深度大于缓存深度门限值时,判断当前网络是否处于拥塞状态;
若处于拥塞状态,则在该输出端口设备的输出速度小于等于第一速度门限值时,将最大可分配带宽设置为所述可用带宽,在该输出端口设备的输出速度大于第一速度门限值时,将最大可分配带宽设置为最大取值,其中,该最大取值等于加速后的输出端口设备的输出速度和该可用带宽之间的最大值。
若不处于拥塞状态,则在该输出端口设备的输出速度小于等于第二速度门限值时,将最大可分配带宽设置为加速后的输出端口设备的输出速度,在该输出端口设备的输出速度大于第二速度门限值时,将最大可分配带宽设置为该可用带宽。
其中,缓存深度门限值、第一速度门限值和第二速度门限值可以根据实际应用的需求进行调整,比如,可以将第一速度门限值设置为:Input Rate*0.99,将第二速度门限值设置为:Input Rate*(1-Global-Percent),其中,Input Rate表示输出端口设备的输入速度,Global-Percent为预置的一个百分比。
(2)根据总缓存占用情况利用预置函数计算最大可分配带宽(MaxGrant),根据带宽请求和该最大可分配带宽来分配带宽,得到带宽分配信息。
比如,如果用用f(M)来表示预置函数的话,即最大可分配带宽=f(M),其中,M表示总缓存占用情况,M越大,最大可分配带宽越小。
在上述两种带宽分配方法中,步骤“根据带宽请求和最大可分配带宽来分配带宽,得到带宽分配信息”具体可以如下:
根据服务优先级从高到低的顺序将该最大可分配带宽分别分配给各服务优先级的总带宽请求(COSi Request),其中,总带宽请求分配到的带宽称为实际分配总带宽,总带宽请求指的是具有相同服务优先级的所有带宽请求的总和。
比如,可以先为具有最高服务优先级的总带宽请求分配带宽,然后计算剩下的带宽,再从剩下的带宽中为次高服务优先级的总带宽请求分配带宽,以此类推,直至该最大可分配带宽为0或者所有带宽请求分配完毕。
每个服务优先级的总带宽请求在得到实际分配总带宽后,还需要在该服务优先级内为每个带宽请求分配带宽,如下:
若该总带宽请求所请求的带宽小于等于实际分配总带宽,说明实际分配总带宽能够满足所有的带宽请求,则各个带宽请求的分配带宽等于所请求的带宽;
若该总带宽请求所请求的带宽大于实际分配总带宽,说明实际分配总带宽不能够满足所有的带宽请求,则根据流量公平或端口公平进行计算,以便将该实际分配到的总带宽分配给各个带宽请求。
其中,若分配原则为流量公平,则可以按照比例来分配带宽。
例如,若该总带宽请求中包括三个带宽请求:带宽请求A、带宽请求B和带宽请求C,其中,带宽请求A请求带宽为100Mbps,带宽请求B请求带宽为50Mbps,带宽请求C请求带宽为30Mbps,而实际分配总带宽(即本地可用带宽)为100Mbps,小于总请求180Mbps。所以,带宽请求A可以得到的带宽为“100×100/180”Mbps,带宽请求B可以得到的带宽为“100×50/180”Mbps,带宽请求B可以得到的带宽为“100*30/180”Mbps。
若分配原则为端口公平,则可以根据由大到小(Max-min)规则分配带宽:在请求中找出小于平均值的,先满足这些请求,然后递归进行下次分配。当所有请求都大于平均值时,每个请求分配平均值。
例如,同样以该总带宽请求中包括三个带宽请求:带宽请求A、带宽请求B和带宽请求C为例,由于平均可分配带宽“100/3=33.3”Mbps,带宽请求C所请求的带宽(30Mbps)比这个小,所以,可以分配30Mbps给带宽请求C。而对于带宽请求A和带宽请求B,它们所请求的带宽分别为100Mbps和50Mbps,比平均可分配带宽大,所以,剩下的带宽不能同时满足它们的需求,所以可以将剩下的带宽,即“100-30=70”Mbps平均分配给这两个带宽请求,即带宽请求A和带宽请求B可以分配到70/2=35Mbps。
203、将步骤202得到的带宽分配信息发送给输入端口设备,以便输入端口设备根据该带宽分配信息进行VOQ之间的数据调度。
可选的,为了节省输入端口设备和输出端口设备之间的信令流程,以节省带宽资源,还可以判断本次分配的带宽与上一次分配的带宽之间的差值是否大于一定的范围,比如判断本次分配的带宽与上一次分配的带宽之间的差值是否大于第二预置阈值,如果大于该第二预置阈值,则发送带宽分配信息给输入端口设备,如果不大于该第二预置阈值,则可以不发送带宽分配信息给输入端口设备。也就是说,在将所述带宽分配信息发送给输入端口设备之前还可以包括:
确定本次分配的带宽与上一次分配的带宽之间的差值大于第二预置阈值。
其中,第二预置阈值可以根据实际应用的需求进行设置。
由上可知,本实施例的输出端口设备采用根据缓存占用情况和输入端口设备发送的带宽请求来分配带宽,并将带宽分配信息发送给输入端口设备,以便输入端口设备根据该带宽分配信息进行VOQ之间的数据调度,由于其中的带宽请求是根据对VOQ进行测量并计算得到的,所以相对于现有技术中仅根据数据流的缓存状态,以及数据流的优先级来确定请求带宽的方法而言,可以更准确地反映出数据流的当前状态,所以可以使得输入端口设备对VOQ之间的数据调度更为合理和有效,使得数据调度可以与当前网络的实际状态相适应,可以更适用于大型、高速、远距离的交换网。
实施例三、
根据前面实施例所描述的方法,以下将分别在实施三和四中举例作进一步详细说明。
在本实施例中,将以输出端口设备对输出缓存中进行测量,并根据测量结果来确定分配带宽为例进行说明。
参见图3a,该图为输入端口设备和输出端口设备的结构示意图。其中,输入端口设备可以包括测量模块、请求计算模块、权重转换模块、调度模块、请求发送模块和带宽接收模块;输出端口设备可以包括测量模块、带宽计算模块、请求接收模块和带宽发送模块。如下:
(一)输入端口设备
测量模块:用于对VOQ进行测量,得到第一测量结果;
请求计算模块:用于根据测量模块得到的第一测量结果计算请求带宽;
请求发送模块:用于根据请求计算模块计算得到的请求带宽,发送带宽请求给输出端口设备;
带宽接收模块:用于接收输出端口设备发送过来的带宽分配信息;
权重转换模块:用于将带宽接收模块接收到的带宽分配信息确定分配带宽,将分配带宽转化为权重。
调度模块:用于根据权重转换模块得到的权重,利用调度算法,比如WRR、DWRR或WFQ进行VOQ之间的数据调度,具体可参见现有技术,在此不再赘述。
(二)输出端口设备
请求接收模块:用于接收输入端口设备发送的带宽请求;
测量模块:用于对输出缓存中进行测量,得到第二测量结果;
带宽计算模块:用于根据测量模块得到的第二测量结果和请求接收模块接收到的带宽请求分配带宽,得到带宽分配信息;
带宽发送模块:用于将带宽计算模块得到的带宽分配信息发送给输入端口设备,以便输入端口设备根据该带宽分配信息进行VOQ之间的数据调度。
以下将对该调度方法的流程进行详细说明,参见图3b,具体流程可以如下:
301、输入端口设备的测量模块对各个VOQ进行测量,得到第二测量结果。
例如,如图3a所示,在输入端口设备中,包括了VOQ 0、VOQ 1、VOQ 2...VOQ n,输入端口设备的测量模块分别统计这些VOQ在每个时间窗内的输入字节数(即输入测量),以及统计这些VOQ在每个时间窗内的输出字节数(即输出测量),然后根据输入字节数和时间窗的大小计输入端口设备中VOQ的输入速度,根据输出字节数和时间窗的大小计算输入端口设备中VOQ的输出速度。具体可以如下:
输入端口设备中VOQ的输入速度的大小等于输入端口设备的输入字节数与时间窗的大小的比值,用公式表示即为:
输入端口设备中VOQ的输入速度=输入端口设备的输入字节数/时间窗的大小;
输入端口设备中VOQ的输出速度的大小等于输入端口设备的输出字节数与时间窗的大小的比值,用公式表示即为:
输入端口设备中VOQ的输出速度=输入端口设备的输出字节数/时间窗的大小。
302、输入端口设备的请求计算模块计算附加带宽。
例如,可以根据VOQ的队列深度计算附加带宽,如下:
如果VOQ的队列深度小于等于第一深度阈值TH0,则附加带宽为0;
否则,如果VOQ的队列深度大于第一深度阈值TH0而小于等于第二深度阈值TH1,则附加带宽为预置的第一附加带宽值Q-Rate-0;
如果VOQ的队列深度大于第二深度阈值TH1而小于等于第三深度阈值TH2,则附加带宽为预置的第二附加带宽值Q-Rate-1;
如果VOQ的队列深度大于第三深度阈值TH2,则附加带宽为预置的第三附加带宽值Q-Rate-2;
用公式表示即为:
If(UC VOQ Depth≤TH0) Q-Requested Rate←0
Else if(UC VOQ Depth≤TH1) Q-Requested Rate←Q-Rate-0
Else if(UC VOQ Depth≤TH2) Q-Requested Rate←Q-Rate-1
Else Q-Requested Rate←Q-Rate-2
其中,第一深度阈值TH0、第二深度阈值TH1、第三深度阈值TH2、第一附加带宽值Q-Rate-0、第二附加带宽值Q-Rate-1和第三附加带宽值Q-Rate-2的值可以根据实际应用的需求进行设置。其中,TH0≤TH1≤TH2,Q-Rate-0≤Q-Rate-1≤Q-Rate-2。
需说明的是,如果考虑到数据流是稳定的,那么根据步骤301中得到的第一测量结果去计算请求带宽,则获得的分配带宽只能保证将输入的数据流调度出去,而原队列深度仍然保持不变,即队列中已有的数据仍无法调度出去,所以,为了可以在该基础(即根据第一测量结果所能请求到的带宽的基础)上能再多请求一部分带宽,以用于调度队列中已有的数据,以减小原队列深度,在此可以根据VOQ队列深度计算附加带宽。
303、输入端口设备的请求计算模块计算请求带宽,例如,可以如下:
请求带宽=输入端口设备中VOQ的输入速度*(1+R-Factor)+附加带宽;
其中,R-Factor为速率因子,主要是为了在第一测量结果的基础上给一点加速比,以防止带宽浪费;比如输入端口设备中VOQ的输入速度的基础上给一点加速比。
正常情况下,用上述计算出来的结果作为请求带宽即可,但是,如果网络拥塞,那么输入端口设备实际能发送出去的数据带宽(即输入端口设备中VOQ的输出速度)将会比输出端口设备分给它的带宽小,所以,此时为了防止带宽浪费,以便输出端口设备将带宽分配给其他输入端口设备,输入端口设备可以基于输入端口设备中VOQ的输出速度向输出端口设备请求带宽,如下:
请求带宽=输入端口设备中VOQ的输出速度*(1+Speedup-Percent);
其中,Speedup-Percent参数为加速因子,主要是为了试探交换网是否解除拥塞。
304、输入端口设备的请求发送模块根据请求带宽发送带宽请求给输出端口设备;
可选的,为了节省输入端口设备和输出端口设备之间的信令流程,以节省带宽资源,还可以判断计算得到的请求带宽与上一次请求带宽之间的差值是否大于一定的范围,比如判断计算得到的请求带宽与上一次请求带宽之间的差值是否大于第一预置阈值,如果超过该第一预置阈值,则发送带宽请求给输出端口设备,如果没有超过该第一预置阈值,则可以不发送带宽请求给输出端口设备。
其中,第一预置阈值可以根据实际应用的需求进行设置。
305、输出端口设备的请求接收模块收集各个输入端口设备发送的关于不同VOQ的带宽请求,计算每个优先级的带宽请求的和,得到每个优先级的总带宽请求(COSi Request)。
306、输出端口设备的测量模块对输出缓存进行测量,得到第二测量结果。
该测量方法与输入端口设备侧的测量类似,例如,具体可以如下:
参见图3a,输出端口设备的测量模块统计输出缓存在每个时间窗内的输入字节数(即输入测量),以及统计输出缓存在每个时间窗内的输出字节数(即输出测量),然后根据输入字节数和时间窗的大小计算输入端口设备中VOQ的输入速度,根据输出字节数和时间窗的大小计算输入端口设备中VOQ的输出速度。具体可以如下:
输出端口设备的输入速度的大小等于输出端口设备的输入字节数与时间窗的大小的比值,用公式表示即为:
输出端口设备的输入速度=输出端口设备的输入字节数/时间窗的大小;
输出端口设备的输出速度的大小等于输出端口设备的输出字节数与时间窗的大小的比值,用公式表示即为:
输出端口设备的输出速度=输出端口设备的输出字节数/时间窗的大小。
307、输出端口设备的带宽计算模块计算惩罚带宽(Decrement Rate)。
例如,可以根据输出缓存的深度计算惩罚带宽,如下:
如果输出缓存的深度小于等于第四深度阈值TH’0,则惩罚带宽为0;
否则,如果输出缓存的深度大于第四深度阈值TH’0而小于等于第五深度阈值TH’1,则惩罚带宽为预置的第一惩罚带宽值Q’-Rate-0;
如果输出缓存的深度大于第五深度阈值TH’1而小于等于第六深度阈值TH’2,则惩罚带宽为预置的第二惩罚带宽值Q’-Rate-1;
如果输出缓存的深度大于第六深度阈值TH’2,则惩罚带宽为预置的第三惩罚带宽值Q’-Rate-2;
用公式表示即为:
If(UC输出缓存Depth≤TH’0) Decrement Rate←0
Else if(UC输出缓存Depth≤TH’1) Decrement Rate←Q’-Rate-0
Else if(UC输出缓存Depth≤TH’2) Decrement Rate←Q’-Rate-1
Else Decrement Rate←Q’-Rate-2
其中,第三深度阈值TH’0、第四深度阈值TH’1、第五深度阈值TH’2、第一惩罚带宽值Q’-Rate-0、第二惩罚带宽值Q’-Rate-1和第三惩罚带宽值Q’-Rate-2的值可以根据实际应用的需求进行设置。其中,TH’0≤TH’1≤TH’2,Q’-Rate-0≤Q’-Rate-1≤Q-Rate-2。
308、输出端口设备的带宽计算模块根据该计算出的惩罚带宽和输出端口设备的输入速度计算计算可用带宽。
例如,可以将输出端口设备的输入速度与惩罚带宽的差作为可用带宽,即可用带宽=输出端口设备的输入速度-惩罚带宽;或者,
也可以将对该输出端口设备的输入速度进行加速后所得到的值与惩罚带宽的差作为可用带宽,即可用带宽=输出端口设备的输入速度*(1+R-Factor)-惩罚带宽。
其中,R-Factor为速率因子,主要是为了在第二测量结果的基础上给一点加速比,以防止带宽浪费;比如输出端口设备的输入速度的基础上给一点加速比。
309、输出端口设备的带宽计算模块根据该可用带宽确定最大可分配带宽,例如,具体可以如下:
(1)当所述缓存深度小于缓存深度门限值时,则意味着数据流尚未稳定,那么可以将可用带宽作为最大可分配带宽。
(2)当所述缓存深度大于缓存深度门限值时,则意味着数据流已经基本稳定,那么根据输出缓存深度、网络拥塞状态、输出端口设备的输出速度和可用带宽来计算最大可分配带宽,具体计算方法可以如下:
C1、判断网络是否处于拥塞状态,若是,则执行步骤C2,若否,则执行步骤C5;
C2、若处于拥塞状态,则判断该输出端口设备的输出速度是否小于等于第一速度门限值,比如,该第一速度门限值可以设置为“输出端口设备的输入速度*0.99”,若是,则执行步骤C3,若否,则执行步骤C4;
C3、将最大可分配带宽设置为所述可用带宽,即最大可分配带宽=可用带宽;
C4、将最大可分配带宽设置为最大取值,其中,该最大取值等于加速后的输出端口设备的输出速度和该可用带宽之间的最大值,即最大可分配带宽=MAX(输出端口设备的输出速度(1+Speedup-Percent),可用带宽);
C5、若不处于拥塞状态,则判断该输出端口设备的输出速度是否小于等于第二速度门限值,若是,则执行步骤C6,若否,则执行步骤C7;其中,第二速度门限值可以为“输出端口设备的输出速度*(1-Global-Percent)”,其中,Global-Percent为预置的一个百分比;
C6、将最大可分配带宽设置为加速后的输出端口设备的输出速度,即最大可分配带宽=输出端口设备的输出速度(1+Speedup-Percent);
C7、将最大可分配带宽设置为该可用带宽,即最大可分配带宽=可用带宽。
其中,缓存深度门限值、第一速度门限值和第二速度门限值可以根据实际应用的需求进行调整,比如,可以将第一速度门限值设置为:Input Rate*0.99,将第二速度门限值设置为:Input Rate*(1-Global-Percent),其中,Input Rate表示输出端口设备的输入速度,Global-Percent为预置的一个百分比。
310、输出端口设备的带宽计算模块根据带宽请求和最大可分配带宽来分配带宽,得到带宽分配信息。例如,可以根据服务优先级(以下简称优先级)的高低来进行分配,具体可以如下:
将最大可分配带宽优先分配给高优先级的总带宽请求(COSi Request),其中,实际分配总带宽(COSi Grant)等于该总带宽请求,即COSi Grant=COSiRequest,记下剩余带宽(Remain Grant),该剩余带宽等于最大可分配带宽与已分配的实际分配总带宽的差,即Remain Grant=Max Grant-COSi Grant。
剩余带宽再继续分给次高优先级的总带宽请求,以此类推,直至该最大可分配带宽为0或者所有带宽请求分配完毕。
在每个优先级所对应的总带宽请求的带宽分配完毕后,再对该优先级内的带宽请求进行分配,如下:
若该总带宽请求所请求的带宽小于等于实际分配总带宽,即COSi Request=COSi Grant,则说明实际分配总带宽能够满足所有的带宽请求,那么,此时各个带宽请求的分配带宽可以等于所请求的带宽;
若该总带宽请求所请求的带宽大于实际分配总带宽,即COSi Request>COSi Grant,则说明实际分配总带宽不能够满足所有的带宽请求,那么,此时可以采用流量公平或端口公平等方法来将该实际分配到的总带宽分配给各个带宽请求。
其中,若分配原则为流量公平,则可以按照比例来分配带宽。
例如,若该总带宽请求中包括三个带宽请求:带宽请求A、带宽请求B和带宽请求C,其中,带宽请求A请求带宽为100Mbps,带宽请求B请求带宽为50Mbps,带宽请求C请求带宽为30Mbps,而实际分配总带宽(即本地可用带宽)为100Mbps,小于总请求180Mbps。所以,带宽请求A可以得到的带宽为“100×100/180”Mbps,带宽请求B可以得到的带宽为“100×50/180”Mbps,带宽请求B可以得到的带宽为“100*30/180”Mbps。
若分配原则为端口公平,则可以根据由大到小(Max-min)规则分配带宽:在请求中找出小于平均值的,先满足这些请求,然后递归进行下次分配。当所有请求都大于平均值时,每个请求分配平均值。
例如,同样以该总带宽请求中包括三个带宽请求:带宽请求A、带宽请求B和带宽请求C为例,由于平均可分配带宽“100/3=33.3”Mbps,带宽请求C所请求的带宽(30Mbps)比这个小,所以,可以分配30Mbps给带宽请求C。而对于带宽请求A和带宽请求B,它们所请求的带宽分别为100Mbps和50Mbps,比平均可分配带宽大,所以,剩下的带宽不能同时满足它们的需求,所以可以将剩下的带宽,即“100-30=70”Mbps平均分配给这两个带宽请求,即带宽请求A和带宽请求B可以分配到70/2=35Mbps。
311、输出端口设备的带宽发送模块将带宽分配信息发送给输入端口设备。
可选的,为了节省输入端口设备和输出端口设备之间的信令流程,以节省带宽资源,还可以判断VOQ本次分配的带宽与上一次分配的带宽之间的差值是否大于一定的范围,比如判断VOQ本次分配的带宽与上一次分配的带宽之间的差值是否大于第二预置阈值,如果大于该第二预置阈值,则发送该带宽分配信息给输入端口设备,如果不大于该第二预置阈值,则可以不发送该带宽分配信息给输入端口设备。
312、输入端口设备的带宽接收模块各个输出端口设备发送的带宽分配信息后,将这些带宽分配信息发送给输入端口设备的权重转换模块。
313、输入端口设备的权重转换模块根据这些带宽分配信息确定分配带宽,将分配带宽转化为权重。
314、输入端口设备的调度模块根据权重转换模块得到的权重,利用调度算法,比如WRR、DWRR或WFQ进行VOQ之间的数据调度。
参见图3c,该图为输入端口设备和输出端口设备的时序示意图,其中,每个输入端口设备和输出端口设备都具有自身的时间窗,比如,时间窗1、2、3、4......,等等,这些时间窗是相互独立的,且这些时间窗之间不必同步。
其中,每个输入端口设备在自身的时间窗点执行步骤301~304的操作,即计算带宽请求并发送带宽请求。而每个输出端口设备则在自身的时间窗点执行步骤305~311的操作,即计算分配带宽并发送分配带宽信息。同时,每个输入端口设备也只在自己的时间窗点更新调度参数,并将这些调度参数应用到下一个时间窗中,比如,图3c中的输入端口设备0和输入端口设备1在时间窗1中发送带宽请求给输出端口设备0,输出端口设备0分别返回分配带宽信息给输入端口设备0和输入端口设备1,则输入端口设备0和输入端口设备1可以将该在时间窗1中接收到分配带宽信息应用到下次调度中去,即对时间窗2中VOQ之间的数据调度中去。
需说明的是,图3c仅仅只是一个简单的时序示意图,旨在说明上述过程在时间轴上的对应位置,应当理解的是,该图不对本发明实施例造成任何限制。
由上可知,本实施例的输入端口设备采用对VOQ进行测量,然后根据测量结果来计算请求带宽,该计算请求带宽的方法相对于现有技术中仅根据数据流的缓存状态,以及数据流的优先级来确定请求带宽的方法而言,可以更准确地反映出数据流的当前状态,所以可以使得输入端口设备对VOQ之间的数据调度更为合理和有效,使得数据调度可以与当前网络的实际状态相适应。
进一步的,由于输入端口设备在发送带宽请求给输出端口设备之前,还可以对计算得到的请求带宽进行判断,在确定该请求带宽与上一次请求带宽之间的差值大于一定的范围时,才发送带宽请求给输出端口设备,此外,输出端口设备在发送带宽分配信息给输入端口设备之前也可以对分配带宽进行判断,在确定本次分配的带宽与上一次分配的带宽之间的差值大于一定范围时,才发送带宽分配信息给输入端口设备,所以,这种调度算法在网络流量相对稳定的情况下,可以不用发送带宽请求也不用发送带宽分配信息,因此,可以节省网络中控制信元的负载,使得带宽资源得到高效利用,可以更适用于大型、高速、远距离的数据交换网。
实施例四、
与实施例三不同的是,在本实施例中,将以输出端口设备根据总缓存占用情况来计算分配带宽为例进行说明。
参见图4,该图为输入端口设备和输出端口设备的结构示意图。其中,输入端口设备可以包括测量模块、请求计算模块、权重转换模块、调度模块、请求发送模块和带宽接收模块;输出端口设备可以包括带宽计算模块、请求接收模块和带宽发送模块。如下:
(一)输入端口设备
测量模块:用于对VOQ进行测量,得到第一测量结果;
请求计算模块:用于根据测量模块得到的第一测量结果计算请求带宽;
请求发送模块:用于根据请求计算模块计算得到的请求带宽,发送带宽请求给输出端口设备;
带宽接收模块:用于接收输出端口设备发送过来的带宽分配信息;
权重转换模块:用于将带宽接收模块接收到的带宽分配信息确定分配带宽,将分配带宽转化为权重。
调度模块:用于根据权重转换模块得到的权重,利用调度算法,比如WRR、DWRR或WFQ进行VOQ之间的数据调度,具体可参见现有技术,在此不再赘述。
(二)输出端口设备
请求接收模块:用于接收输入端口设备发送的带宽请求;
带宽计算模块:用于根据总缓存占用情况和请求接收模块接收到的带宽请求分配带宽,得到带宽分配信息;
带宽发送模块:用于将带宽计算模块得到的带宽分配信息发送给输入端口设备,以便输入端口设备根据该带宽分配信息进行VOQ之间的数据调度。
本实施例与实施例三的区别仅在步骤306~309,即在本实施例中,无需对输出缓存进行测量,以计算分配带宽,而是根据输出端口设备的总缓存占用情况来进行带宽分配,具体可以如下:
最大可分配带宽=f(M),其中,M表示总缓存占用情况,其反映了当前的网络拥塞情况,M越大表示当前输出端口设备越拥塞,那么需要分配较小的带宽给上行,降低后续的数据接收;M越小表示当前输出端口设备越轻载,可以分配较大的带宽给上行,所以,M越大,最大可分配带宽越小,M越小,最大可分配带宽越大。
由上可知,本发明实施例也可以实现实施例三同样的有益效果,只是其在计算最大可分配带宽时采用了与实施例三不同的计算方法,由于在本实施例中,输出端口设备可以不对输出缓存进行测量,而是直接根据总缓存的占用情况,利用预置函数来计算出最大可分配带宽,所以较实施例三而言,可以减少输出端口设备的测量和运算负担,有利于简化输出端口设备的结构和提高输出端口设备的运行效率。
实施例五、
为了更好地实施以上方法,本发明实施例还相应地提供了一种输入端口设备,如图5a所示,该输入端口设备包括测量单元501、运算单元502、发送单元503、接收单元504和调度单元505;
测量单元501,用于对VOQ进行测量,得到第一测量结果;
运算单元502,用于根据测量单元501得到的第一测量结果计算请求带宽;
发送单元503,用于根据运算单元502得到的请求带宽发送带宽请求给输出端口设备;
接收单元504,用于接收输出端口设备根据缓存占用情况和所述带宽请求返回的带宽分配信息;
调度单元505,用于根据接收单元504接收到的带宽分配信息进行VOQ之间的数据调度。
其中,如图5b所示,测量单元501可以包括统计子单元5011和计算子单元5012;
统计子单元5011,用于统计每个时间窗内VOQ的输入字节数;
计算子单元5012,用于根据时间窗的大小和统计子单元5011统计得到的输入字节数计算输入端口设备中VOQ的输入速度。
其中,如图5b所示,运算单元502可以包括附加带宽计算子单元5021和请求带宽计算子单元5022;
附加带宽计算子单元5021,用于根据VOQ的队列深度计算附加带宽;
请求带宽计算子单元5022,用于根据附加带宽计算子单元5021计算得到的附加带宽和计算子单元5012计算得到的输入速度计算请求带宽。
其中,请求带宽计算子单元5012,具体用于将该附加带宽和输入端口设备中VOQ的输入速度的和作为请求带宽;或者,将该输入端口设备中VOQ的输入速度进行加速后得到的值和所述附加带宽的和作为请求带宽。
可选的,如果当网络发生拥塞时,输入端口设备实际的输出速度(即实际能发送出去的数据带宽)将会比输出端口设备分配给它的带宽小,所以,此时为了防止带宽浪费,以便输出端口设备将带宽分配给其他输入端口设备,输入端口设备可以对输入端口设备中VOQ的输出速度进行加速,然后将加速后的输出速度作为请求带宽,即除了可以根据附加带宽和输入端口设备中VOQ的输入速度来计算请求带宽之外,还可以根据输入端口设备中VOQ的输出速度来计算请求带宽,如下:
统计子单元5011,还用于统计每个时间窗内VOQ的输出字节数;
计算子单元5012,还用于根据时间窗的大小和统计子单元5011统计得到的输出字节数计算输入端口设备中VOQ的输出速度;
则运算单元502,具体用于将计算子单元5012计算得到的输出速度加速后得到的值作为请求带宽。
可选的,为了节省输入端口设备和输出端口设备之间的信令流程,以节省带宽资源,如图5b所示,该输入端口设备还可以包括确定单元506;
确定单元506,用于确定运算单元502计算得到的请求带宽与上一次请求带宽之间的差值是否大于第一预置阈值;
则发送单元503,用于在确定单元506确定计算得到的请求带宽与上一次请求带宽之间的差值大于第一预置阈值时,根据运算单元502得到的请求带宽发送带宽请求给输出端口设备。
具体实施时,以上各个单元可以作为独立的实体进行实现,也可以进行任意组合,作为一个或若干个实体来实现,例如,测量单元501可以作为实施例三和四中的带宽测量模块,运算单元502可以作为实施例三和四中的请求计算模块,发送单元503可以作为实施例三和四中的请求发送模块,接收单元504可以作为实施例三和四中的带宽接收模块,调度单元505可以作为实施例三和四中的权重转换模块和调度模块,等等。
以上各个单元的具体实施可参见前面实施例,在此不再赘述。
由上可知,本实施例的输入端口设备的测量单元501可以对VOQ进行测量,然后由运算单元502根据测量结果来计算请求带宽,该计算请求带宽的方法相对于现有技术中仅根据数据流的缓存状态,以及数据流的优先级来确定请求带宽的方法而言,可以更准确地反映出数据流的当前状态,所以可以使得输入端口设备对VOQ之间的数据调度更为合理和有效,使得数据调度可以与当前网络的实际状态相适应,可以更适用于大型、高速、远距离的数据交换网。
实施例六、
相应地,本发明实施例还提供一种输出端口设备,如图6a所示,该输出端口设备包括接收单元601、分配单元602和发送单元603;
接收单元601,用于接收输入端口设备发送的带宽请求;
分配单元602,用于根据缓存占用情况和接收单元601接收到的带宽请求分配带宽,得到带宽分配信息;
发送单元603,用于将分配单元602得到的带宽分配信息发送给输入端口设备,以便输入端口设备根据该带宽分配信息进行VOQ之间的数据调度。
其中,如图6b所示,分配单元602可以包括测量子单元A6021和分配子单元A6022;
测量子单元A6021,用于对输出缓存中进行测量,得到第二测量结果;
分配子单元A6022,用于根据测量子单元A6021得到的第二测量结果和接收单元601接收到的带宽请求分配带宽,得到带宽分配信息。
则发送单元603,用于将分配子单元A6022得到的带宽分配信息发送给输入端口设备。
其中,测量子单元A6021可以包括统计子级单元和计算子级单元;
统计子级单元,用于统计输出缓存在每个时间窗内的输入字节数;
计算子级单元,用于根据时间窗的大小和统计子级单元得到的输入字节数计算输出端口设备的输入速度。
分配子单元可以包括惩罚带宽计算子级单元、可用带宽计算子级单元、确定子级单元和分配子级单元;
惩罚带宽计算子级单元,用于根据输出缓存的深度计算惩罚带宽;
可用带宽计算子级单元,用于根据惩罚带宽计算子级单元得到的惩罚带宽和计算子级单元得到的输出端口设备的输入速度计算可用带宽;
确定子级单元,用于根据可用带宽计算子级单元得到的可用带宽确定最大可分配带宽;
分配子级单元,用于根据接收单元接收到的带宽请求和确定子级单元确定的最大可分配带宽来分配带宽,得到带宽分配信息。
可选的,可用带宽计算子级单元,具体用于将输出端口设备的输入速度与惩罚带宽的差作为可用带宽;或者,将对输出端口设备的输入速度进行加速后所得到的值与惩罚带宽的差作为可用带宽。
可选的,在计算最大可分配带宽时也可以考虑该输出端口设备的输出速度的影响,即:
统计子级单元,还用于统计输出缓存在每个时间窗内的输出字节数;
计算子级单元,还用于根据时间窗的大小和统计子级单元得到的输出字节数计算输出端口设备的输出速度;
则确定子级单元,具体用于根据输出缓存深度、网络拥塞状态、可用带宽和计算子级单元得到的输出端口设备的输出速度来计算最大可分配带宽。
其中,确定子级单元,具体用于当该输出缓存深度小于缓存深度门限值时,将该可用带宽作为最大可分配带宽;当该输出缓存深度大于缓存深度门限值时,判断当前网络是否处于拥塞状态,若处于拥塞状态,则在该输出端口设备的输出速度小于等于第一速度门限值时,将最大可分配带宽设置为小于等于该可用带宽,在该输出端口设备的输出速度大于第一速度门限值时,将最大可分配带宽设置为小于等于最大取值,其中,该最大取值等于加速后的输出端口设备的输出速度和所述可用带宽之间的最大值;若不处于拥塞状态,则在输出端口设备的输出速度小于等于第二速度门限值时,将最大可分配带宽设置为小于等于加速后的输出端口设备的输出速度,在输出端口设备的输出速度大于第二速度门限值时,将最大可分配带宽设置为小于等于所述可用带宽。
可选了,除了可以根据测量输出缓存的占用情况来来分配带宽的方式之外,还可以根据总缓存的占用情况开分配带宽,如下:
参见图6c,分配单元602可以包括函数计算子单元B6021和B6022;
函数计算子单元B6021,用于根据总缓存占用情况利用预置函数计算最大可分配带宽;
第一分配子单元B6022,根据接收单元601接收到的带宽请求和函数计算子单元B6021得到的最大可分配带宽来分配带宽,得到带宽分配信息。
则发送单元603,用于将第一分配子单元B6022得到的带宽分配信息发送给输入端口设备。
进一步的,为了节省输入端口设备和输出端口设备之间的信令流程,以节省带宽资源,参见图6d,该输出端口设备还可以包括确定单元604;
确定单元604,用于确定本次分配的带宽与上一次分配的带宽之间的差值是否大于第二预置阈值;
则发送单元603,用于在确定单元604确定本次分配的带宽与上一次分配的带宽之间的差值大于第二预置阈值时,将分配单元602得到的带宽分配信息发送给输入端口设备。
具体实施时,以上各个单元可以作为独立的实体进行实现,也可以进行任意组合,作为一个或若干个实体来实现,例如,接收单元601可以作为实施三和四中的请求接收模块,分配单元602可以作为实施三中的带宽计算模块和带宽测量模块,或者,配单元602也可以作为实施四中的带宽计算模块,发送单元603可以作为实施三和四中的带宽发送模块,等等。
以上各个单元的具体实施可参见前面实施例,在此不再赘述。
由上可知,本实施例的输出端口设备分配单元602采用根据缓存占用情况和输入端口设备发送的带宽请求来分配带宽,并由发送单元603将带宽分配信息发送给输入端口设备,以便输入端口设备根据该带宽分配信息进行VOQ之间的数据调度,由于其中的带宽请求是由接入端口设备根据对VOQ进行测量并计算得到的,所以相对于现有技术中仅根据数据流的缓存状态,以及数据流的优先级来确定请求带宽的方法而言,可以更准确地反映出数据流的当前状态,所以可以使得输入端口设备对VOQ之间的数据调度更为合理和有效,使得数据调度可以与当前网络的实际状态相适应,可以更适用于大型、高速、远距离的数据交换网。
实施例七、
相应地,本发明实施例还提供一种通信系统,包括本发明实施例提供的任意一种接入端口设备和输出端口设备;
接入端口设备,用于对VOQ进行测量,得到第一测量结果,根据第一测量结果计算请求带宽,根据请求带宽发送带宽请求给输出端口设备,接收输出端口设备根据缓存占用情况和所述带宽请求返回的带宽分配信息,根据该带宽分配信息进行VOQ之间的数据调度。
输出端口设备,用于接收输入端口设备发送的带宽请求,根据缓存占用情况和带宽请求分配带宽,得到带宽分配信息,将该带宽分配信息发送给输入端口设备,以便输入端口设备根据该带宽分配信息进行VOQ之间的数据调度。
以上设备的具体实施可参见前面实施例,在此不再赘述。
以下将具体对该通信系统的执行作简略说明。具体流程如下:
步骤1、输入端口设备分别统计各个VOQ在每个时间窗内的输入字节数,以及统计这些VOQ在每个时间窗内的输出字节数,然后根据输入字节数和时间窗的大小计算输入端口设备中VOQ的输入速度,根据输出字节数和时间窗的大小计算输入端口设备中VOQ的输出速度。
步骤2、输入端口设备根据VOQ的队列深度计算附加带宽;
步骤3、输入端口设备计算请求带宽:请求带宽=输入端口设备中VOQ的输入速度*(1+R-Factor)+附加带宽;
其中,R-Factor为速率因子,主要是为了在第一测量结果的基础上给一点加速比,以防止带宽浪费;比如在输入端口设备中VOQ的输入速度的基础上给一点加速比。
正常情况下,用上述计算出来的结果作为请求带宽即可,但是,如果网络拥塞,则:请求带宽=输入端口设备中VOQ的输出速度*(1+Speedup-Percent);
其中,Speedup-Percent参数为加速因子,主要是为了试探交换网是否解除拥塞。
步骤4、输入端口设备根据请求带宽发送带宽请求给输出端口设备;
可选的,为了节省输入端口设备和输出端口设备之间的信令流程,以节省带宽资源,还可以判断计算得到的请求带宽与上一次请求带宽之间的差值是否大于一定的范围,比如判断计算得到的请求带宽与上一次请求带宽之间的差值是否大于第一预置阈值,如果超过该第一预置阈值,则发送带宽请求给输出端口设备,如果没有超过该第一预置阈值,则可以不发送带宽请求给输出端口设备。
其中,第一预置阈值可以根据实际应用的需求进行设置。
步骤5、输出端口设备收集各个输入端口设备发送的关于不同VOQ的带宽请求,计算每个优先级的带宽请求的和,得到每个优先级的总带宽请求(COSiRequest)。
步骤6、输出端口设备统计输出缓存在每个时间窗内的输入字节数,以及统计这些VOQ在每个时间窗内的输出字节数,然后根据输入字节数和时间窗的大小计算输入端口设备中VOQ的输入速度,根据输出字节数和时间窗的大小计算输入端口设备中VOQ的输出速度。
步骤7、输出端口设备计算惩罚带宽;
步骤8、输出端口设备根据该计算出的惩罚带宽和输出端口设备的输入速度计算计算可用带宽,如下:
可用带宽=输出端口设备的输入速度-惩罚带宽;或者,
可用带宽=输出端口设备的输入速度*(1+R-Factor)-惩罚带宽。
其中,R-Factor为速率因子,主要是为了在第二测量结果的基础上给一点加速比,以防止带宽浪费;比如输出端口设备的输入速度的基础上给一点加速比。
步骤9、输出端口设备根据该可用带宽确定最大可分配带宽,参见实施例三,在此不再赘述。
步骤10、输出端口设备的带宽计算模块根据带宽请求和最大可分配带宽来分配带宽,得到带宽分配信息。例如,可以根据服务优先级(以下简称优先级)的高低来进行分配,详见实施例三,在此不再赘述。
步骤11、输出端口设备的带宽发送模块将带宽分配信息发送给输入端口设备。
可选的,为了节省输入端口设备和输出端口设备之间的信令流程,以节省带宽资源,还可以判断本次分配的带宽与上一次分配的带宽之间的差值是否大于一定的范围,比如判断本次分配的带宽与上一次分配的带宽之间的差值是否大于第二预置阈值,如果大于该第二预置阈值,则发送该带宽分配信息给输入端口设备,如果不大于该第二预置阈值,则可以不发送该带宽分配信息给输入端口设备。
步骤12、输入端口设备的带宽接收模块各个输出端口设备发送的带宽分配信息后,将这些带宽分配信息发送给输入端口设备的权重转换模块。
步骤13、输入端口设备的权重转换模块根据这些带宽分配信息确定分配带宽,将分配带宽转化为权重。
步骤14、输入端口设备的调度模块根据权重转换模块得到的权重,利用调度算法,比如WRR、DWRR或WFQ进行VOQ之间的数据调度。
可选的,其中,也可以不执行步骤6~步骤9,即无需对出书缓存中的VOQ进行测量,以计算分配带宽,而是根据输出端口设备的总缓存占用情况来进行带宽分配,具体可以如下:最大可分配带宽=f(M),其中,M表示总缓存占用情况,其反映了当前的网络拥塞情况,M越大表示当前输出端口设备越拥塞,M越小表示当前输出端口设备越轻载。参见实施例四,在此不再赘述。
由上可知,本实施例通信系统中的输入端口设备可以采用对VOQ进行测量,然后根据测量结果来计算请求带宽,该计算请求带宽的方法相对于现有技术中仅根据数据流的缓存状态,以及数据流的优先级来确定请求带宽的方法而言,可以更准确地反映出数据流的当前状态,所以可以使得输入端口设备对VOQ之间的数据调度更为合理和有效,使得数据调度可以与当前网络的实际状态相适应。
进一步的,由于本实施例通信系统中的输入端口设备在发送带宽请求给输出端口设备之前,还可以对计算得到的请求带宽进行判断,在确定该请求带宽与上一次请求带宽之间的差值大于一定的范围时,才发送带宽请求给输出端口设备,此外,本实施例通信系统中的输出端口设备在发送带宽分配信息给输入端口设备之前也可以对分配带宽进行判断,在确定本次分配的带宽与上一次分配的带宽之间的差值大于一定范围时,才发送带宽分配信息给输入端口设备,所以,这种调度算法在网络流量相对稳定的情况下,可以不用发送带宽请求也不用发送带宽分配信息,因此,可以节省网络中控制信元的负载,使得带宽资源得到高效利用,可以更适用于大型、高速、远距离的数据交换网。
本领域普通技术人员可以理解上述实施例的各种方法中的全部或部分步骤是可以通过程序来指令相关的硬件来完成,该程序可以存储于一计算机可读存储介质中,存储介质可以包括:只读存储器(ROM,Read Only Memory)、随机存取记忆体(RAM,Random Access Memory)、磁盘或光盘等。
以上对本发明实施例所提供的一种数据交换网的调度方法、装置和系统进行了详细介绍,本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。
Claims (34)
1.一种数据交换网的调度方法,其特征在于,包括:
对虚拟输出队列VOQ进行测量,得到第一测量结果;
根据第一测量结果计算请求带宽;
根据请求带宽发送带宽请求给输出端口设备;
接收输出端口设备根据缓存占用情况和所述带宽请求返回的带宽分配信息;
根据所述带宽分配信息进行VOQ之间的数据调度。
2.根据权利要求1所述的方法,其特征在于,所述对VOQ进行测量,得到第一测量结果包括:
统计每个时间窗内VOQ的输入字节数;
根据输入字节数和时间窗的大小计算输入端口设备中VOQ的输入速度。
3.根据权利要求2所述的方法,其特征在于,所述根据第一测量结果计算请求带宽包括:
根据VOQ的队列深度计算附加带宽;
根据所述附加带宽和输入端口设备中VOQ的输入速度计算请求带宽。
4.根据权利要求3所述的方法,其特征在于,所述根据所述附加带宽和输入端口设备中VOQ的输入速度计算请求带宽包括:
将所述附加带宽和输入端口设备中VOQ的输入速度的和作为请求带宽;或者,
将所述输入端口设备中VOQ的输入速度进行加速后得到的值和所述附加带宽的和作为请求带宽。
5.根据权利要求1所述的方法,其特征在于,所述对VOQ进行测量,得到第一测量结果包括:
统计每个时间窗内VOQ的输出字节数;
根据输出字节数和时间窗的大小计算输入端口设备中VOQ的输出速度。
6.根据权利要求5所述的方法,其特征在于,所述根据第一测量结果计算请求带宽包括:
将所述输入端口设备中VOQ的输出速度加速后得到的值作为请求带宽。
7.根据权利要求1至6任一项所述的方法,其特征在于,所述根据请求带宽发送带宽请求给输出端口设备之前还包括:
确定计算得到的请求带宽与上一次请求带宽之间的差值大于第一预置阈值。
8.根据权利要求1至6任一项所述的方法,其特征在于,所述根据所述带宽分配信息进行VOQ之间的数据调度包括:
根据带宽分配信息,采用加权循环WRR算法、亏损加权循环DWRR算法或加权公平排队WFQ算法进行VOQ之间的数据调度。
9.一种数据交换网的调度方法,其特征在于,包括:
接收输入端口设备发送的带宽请求;
根据缓存占用情况和带宽请求分配带宽,得到带宽分配信息;
将所述带宽分配信息发送给输入端口设备,以便输入端口设备根据该带宽分配信息进行虚拟输出队列VOQ之间的数据调度。
10.根据权利要求9所述的方法,其特征在于,所述根据缓存占用情况和带宽请求分配带宽,得到带宽分配信息包括:
对输出缓存进行测量,得到第二测量结果;
根据所述第二测量结果和带宽请求分配带宽,得到带宽分配信息。
11.根据权利要求10所述的方法,其特征在于,所述对输出缓存进行测量,得到第二测量结果包括:
统计输出缓存中每个时间窗内的输入字节数;
根据输入字节数和时间窗的大小计算输出端口设备的输入速度。
12.根据权利要求11所述的方法,其特征在于,所述根据第二测量结果和带宽请求分配带宽,得到带宽分配信息包括:
根据输出缓存的深度计算惩罚带宽;
根据所述惩罚带宽和输出端口设备的输入速度计算可用带宽;
根据所述可用带宽确定最大可分配带宽;
根据带宽请求和所述最大可分配带宽来分配带宽,得到带宽分配信息。
13.根据权利要求12所述的方法,其特征在于,所述根据惩罚带宽和输出端口设备的输入速度计算可用带宽包括:
将所述输出端口设备的输入速度与惩罚带宽的差作为可用带宽;或者,
将对所述输出端口设备的输入速度进行加速后所得到的值与惩罚带宽的差作为可用带宽。
14.根据权利要求12所述的方法,其特征在于,所述对输出缓存进行测量,得到第二测量结果还包括:
统计输出缓存中每个时间窗内的输出字节数;
根据输出字节数和时间窗的大小计算输出端口设备的输出速度;
则所述根据所述可用带宽确定最大可分配带宽包括:根据输出缓存深度、网络拥塞状态、输出端口设备的输出速度和所述可用带宽来计算最大可分配带宽。
15.根据权利要求14所述的方法,其特征在于,所述根据输出缓存深度、网络拥塞状态、输出端口设备的输出速度和所述可用带宽来计算最大可分配带宽包括:
当所述输出缓存深度小于缓存深度门限值时,将所述可用带宽作为最大可分配带宽;
当所述输出缓存深度大于缓存深度门限值时,判断当前网络是否处于拥塞状态,若处于拥塞状态,则在所述输出端口设备的输出速度小于等于第一速度门限值时,将最大可分配带宽设置为所述可用带宽,在所述输出端口设备的输出速度大于第一速度门限值时,将最大可分配带宽设置为最大取值,所述最大取值等于加速后的输出端口设备的输出速度和所述可用带宽之间的最大值;若不处于拥塞状态,则在所述输出端口设备的输出速度小于等于第二速度门限值时,将最大可分配带宽设置为加速后的输出端口设备的输出速度,在所述输出端口设备的输出速度大于第二速度门限值时,将最大可分配带宽设置为所述可用带宽。
16.根据权利要求9所述的方法,其特征在于,所述根据缓存占用情况和带宽请求分配带宽,得到带宽分配信息包括:
根据总缓存占用情况利用预置函数计算最大可分配带宽;
根据带宽请求和所述最大可分配带宽来分配带宽,得到带宽分配信息。
17.根据权利要求12或16所述的方法,其特征在于,所述根据带宽请求和所述最大可分配带宽来分配带宽,得到带宽分配信息包括:
根据服务优先级从高到低的顺序将所述最大可分配带宽分别分配给各服务优先级的总带宽请求,所述总带宽请求分配到的带宽称为实际分配总带宽;
若所述总带宽请求所请求的带宽小于等于实际分配总带宽,则各个带宽请求的分配带宽等于所请求的带宽;
若所述总带宽请求所请求的带宽大于实际分配总带宽,则根据流量公平或端口公平进行计算,以便将所述实际分配到的总带宽分配给各个带宽请求。
18.根据权利要求9至16任一项所述的方法,其特征在于,所述将带宽分配信息发送给输入端口设备之前还包括:
确定本次分配的带宽与上一次分配的带宽之间的差值大于第二预置阈值。
19.一种输入端口设备,其特征在于,包括:
测量单元,用于对虚拟输出队列VOQ进行测量,得到第一测量结果;
运算单元,用于根据测量单元得到的第一测量结果计算请求带宽;
发送单元,用于根据运算单元得到的请求带宽发送带宽请求给输出端口设备;
接收单元,用于接收输出端口设备根据缓存占用情况和所述带宽请求返回的带宽分配信息;
调度单元,用于根据接收单元接收到的带宽分配信息进行VOQ之间的数据调度。
20.根据权利要求19所述的输入端口设备,其特征在于,所述测量单元包括:
统计子单元,用于统计每个时间窗内VOQ的输入字节数;
计算子单元,用于根据时间窗的大小和统计子单元统计得到的输入字节数计算输入端口设备中VOQ的输入速度。
21.根据权利要求20所述的输入端口设备,其特征在于,所述运算单元包括:
附加带宽计算子单元,用于根据VOQ的队列深度计算附加带宽;
请求带宽计算子单元,用于根据附加带宽计算子单元计算得到的附加带宽和计算子单元计算得到的输入速度计算请求带宽。
22.根据权利要求21所述的输入端口设备,其特征在于,
请求带宽计算子单元,具体用于将所述附加带宽和输入端口设备中VOQ的输入速度的和作为请求带宽;或者,将所述输入端口设备中VOQ的输入速度进行加速后得到的值和所述附加带宽的和作为请求带宽。
23.根据权利要求20所述的输入端口设备,其特征在于,
所述统计子单元,还用于统计每个时间窗内VOQ的输出字节数;
所述计算子单元,还用于根据时间窗的大小和统计子单元统计得到的输出字节数计算输入端口设备中VOQ的输出速度;
则所述运算单元,具体用于将计算子单元计算得到的输出速度加速后得到的值作为请求带宽。
24.根据权利要求20所述的输入端口设备,其特征在于,还包括确定单元;
确定单元,用于确定运算单元计算得到的请求带宽与上一次请求带宽之间的差值是否大于第一预置阈值;
则发送单元,用于在确定单元确定计算得到的请求带宽与上一次请求带宽之间的差值大于第一预置阈值时,根据运算单元得到的请求带宽发送带宽请求给输出端口设备。
25.一种输出端口设备,其特征在于,包括:
接收单元,用于接收输入端口设备发送的带宽请求;
分配单元,用于根据缓存占用情况和接收单元接收到的带宽请求分配带宽,得到带宽分配信息;
发送单元,用于将分配单元得到的带宽分配信息发送给输入端口设备,以便输入端口设备根据该带宽分配信息进行虚拟输出队列VOQ之间的数据调度。
26.根据权利要求25所述的输出端口设备,其特征在于,所述分配单元包括:
测量子单元,用于对输出缓存中进行测量,得到第二测量结果;
分配子单元,用于根据测量子单元得到的第二测量结果和接收单元接收到的带宽请求分配带宽,得到带宽分配信息。
27.根据权利要求26所述的输出端口设备,其特征在于,所述测量子单元包括:
统计子级单元,用于统计输出缓存中每个时间窗内的输入字节数;
计算子级单元,用于根据时间窗的大小和统计子级单元得到的输入字节数计算输出端口设备的输入速度。
28.根据权利要求27所述的输出端口设备,其特征在于,所述分配子单元包括:
惩罚带宽计算子级单元,用于根据输出缓存的深度计算惩罚带宽;
可用带宽计算子级单元,用于根据惩罚带宽计算子级单元得到的惩罚带宽和计算子级单元得到的输出端口设备的输入速度计算可用带宽;
确定子级单元,用于根据可用带宽计算子级单元得到的可用带宽确定最大可分配带宽;
分配子级单元,用于根据接收单元接收到的带宽请求和确定子级单元确定的最大可分配带宽来分配带宽,得到带宽分配信息。
29.根据权利要求28所述的输出端口设备,其特征在于,
所述可用带宽计算子级单元,具体用于将所述输出端口设备的输入速度与惩罚带宽的差作为可用带宽;或者,将对所述输出端口设备的输入速度进行加速后所得到的值与惩罚带宽的差作为可用带宽。
30.根据权利要求28所述的输出端口设备,其特征在于,
所述统计子级单元,还用于统计输出缓存中每个时间窗内的输出字节数;
所述计算子级单元,还用于根据时间窗的大小和统计子级单元得到的输出字节数计算输出端口设备的输出速度;
则确定子级单元,具体用于根据输出缓存深度、网络拥塞状态、可用带宽和计算子级单元得到的输出端口设备的输出速度来计算最大可分配带宽。
31.根据权利要求30所述的输出端口设备,其特征在于,
所述确定子级单元,具体用于当所述输出缓存深度小于缓存深度门限值时,将所述可用带宽作为最大可分配带宽;当所述输出缓存深度大于缓存深度门限值时,判断当前网络是否处于拥塞状态,若处于拥塞状态,则在所述输出端口设备的输出速度小于等于第一速度门限值时,将最大可分配带宽设置为所述可用带宽,在所述输出端口设备的输出速度大于第一速度门限值时,将最大可分配带宽设置为最大取值,所述最大取值等于加速后的输出端口设备的输出速度和所述可用带宽之间的最大值;若不处于拥塞状态,则在所述输出端口设备的输出速度小于等于第二速度门限值时,将最大可分配带宽设置为加速后的输出端口设备的输出速度,在所述输出端口设备的输出速度大于第二速度门限值时,将最大可分配带宽设置为所述可用带宽。
32.根据权利要求25所述的输出端口设备,其特征在于,所述分配单元包括:
函数计算子单元,用于根据总缓存占用情况利用预置函数计算最大可分配带宽;
第一分配子单元,根据接收单元接收到的带宽请求和函数计算子单元得到的最大可分配带宽来分配带宽,得到带宽分配信息。
33.根据权利要求25所述的输出端口设备,其特征在于,还包括确定单元;
确定单元,用于确定本次分配的带宽与上一次分配的带宽之间的差值是否大于第二预置阈值;
则发送单元,用于在确定单元确定本次分配的带宽与上一次分配的带宽之间的差值大于第二预置阈值时,将分配单元得到的带宽分配信息发送给输入端口设备。
34.一种通信系统,其特征在于,包括权利要求19至24任一项所述的输入端口设备和权利要求25至33任一项所述的输出端口设备。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201110022948.3A CN102611605B (zh) | 2011-01-20 | 2011-01-20 | 一种数据交换网的调度方法、装置和系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201110022948.3A CN102611605B (zh) | 2011-01-20 | 2011-01-20 | 一种数据交换网的调度方法、装置和系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN102611605A true CN102611605A (zh) | 2012-07-25 |
CN102611605B CN102611605B (zh) | 2015-02-25 |
Family
ID=46528774
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201110022948.3A Expired - Fee Related CN102611605B (zh) | 2011-01-20 | 2011-01-20 | 一种数据交换网的调度方法、装置和系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN102611605B (zh) |
Cited By (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103546337A (zh) * | 2013-09-25 | 2014-01-29 | 上海交通大学 | 分组和电路混合交换系统中的流量需求估计方法 |
CN104125158A (zh) * | 2014-07-02 | 2014-10-29 | 广州金山网络科技有限公司 | 一种内容分发网络流量控制方法、装置以及终端 |
CN105187272A (zh) * | 2015-08-24 | 2015-12-23 | 阔地教育科技有限公司 | 一种网络状态检测方法及装置 |
CN105302497A (zh) * | 2015-11-24 | 2016-02-03 | 浪潮(北京)电子信息产业有限公司 | 一种缓存管理方法与系统 |
WO2017028545A1 (zh) * | 2015-08-14 | 2017-02-23 | 中兴通讯股份有限公司 | 端口队列堵塞的监控方法及系统 |
CN105207841B (zh) * | 2015-08-24 | 2018-12-18 | 阔地教育科技有限公司 | 一种基于在线课堂的网络状态检测方法及装置 |
CN109639585A (zh) * | 2017-10-09 | 2019-04-16 | 中兴通讯股份有限公司 | 流量控制方法、装置、网络设备和计算机可读存储介质 |
CN111046091A (zh) * | 2019-10-24 | 2020-04-21 | 杭州数梦工场科技有限公司 | 数据交换系统的运行方法、装置及设备 |
WO2020248166A1 (zh) * | 2019-06-12 | 2020-12-17 | 华为技术有限公司 | 流量调度方法、设备及存储介质 |
CN114157604A (zh) * | 2021-12-01 | 2022-03-08 | 锐捷网络股份有限公司 | 一种调节交换网板拥塞的方法、装置及系统 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1635739A (zh) * | 2003-12-26 | 2005-07-06 | 上海贝尔阿尔卡特股份有限公司 | 一种无源光网络动态带宽分配装置及方法 |
CN1787424A (zh) * | 2005-12-21 | 2006-06-14 | 中国科学院计算技术研究所 | 适于带宽变化的链路分层共享和管理域的带宽重分配方法 |
CN101287299A (zh) * | 2007-04-13 | 2008-10-15 | 三星电子株式会社 | 宽带无线接入系统中的上行链路带宽请求装置及方法 |
CN101729386A (zh) * | 2008-11-03 | 2010-06-09 | 华为技术有限公司 | 一种基于令牌调度的流量控制方法及装置 |
-
2011
- 2011-01-20 CN CN201110022948.3A patent/CN102611605B/zh not_active Expired - Fee Related
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1635739A (zh) * | 2003-12-26 | 2005-07-06 | 上海贝尔阿尔卡特股份有限公司 | 一种无源光网络动态带宽分配装置及方法 |
CN1787424A (zh) * | 2005-12-21 | 2006-06-14 | 中国科学院计算技术研究所 | 适于带宽变化的链路分层共享和管理域的带宽重分配方法 |
CN101287299A (zh) * | 2007-04-13 | 2008-10-15 | 三星电子株式会社 | 宽带无线接入系统中的上行链路带宽请求装置及方法 |
CN101729386A (zh) * | 2008-11-03 | 2010-06-09 | 华为技术有限公司 | 一种基于令牌调度的流量控制方法及装置 |
Cited By (17)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103546337A (zh) * | 2013-09-25 | 2014-01-29 | 上海交通大学 | 分组和电路混合交换系统中的流量需求估计方法 |
CN104125158A (zh) * | 2014-07-02 | 2014-10-29 | 广州金山网络科技有限公司 | 一种内容分发网络流量控制方法、装置以及终端 |
CN104125158B (zh) * | 2014-07-02 | 2018-01-23 | 广州金山网络科技有限公司 | 一种内容分发网络流量控制方法、装置以及终端 |
CN106470126A (zh) * | 2015-08-14 | 2017-03-01 | 中兴通讯股份有限公司 | 端口队列堵塞的监控方法及系统 |
WO2017028545A1 (zh) * | 2015-08-14 | 2017-02-23 | 中兴通讯股份有限公司 | 端口队列堵塞的监控方法及系统 |
CN105187272B (zh) * | 2015-08-24 | 2018-12-18 | 阔地教育科技有限公司 | 一种网络状态检测方法及装置 |
CN105207841B (zh) * | 2015-08-24 | 2018-12-18 | 阔地教育科技有限公司 | 一种基于在线课堂的网络状态检测方法及装置 |
CN105187272A (zh) * | 2015-08-24 | 2015-12-23 | 阔地教育科技有限公司 | 一种网络状态检测方法及装置 |
CN105302497A (zh) * | 2015-11-24 | 2016-02-03 | 浪潮(北京)电子信息产业有限公司 | 一种缓存管理方法与系统 |
CN105302497B (zh) * | 2015-11-24 | 2019-09-24 | 浪潮(北京)电子信息产业有限公司 | 一种缓存管理方法与系统 |
CN109639585A (zh) * | 2017-10-09 | 2019-04-16 | 中兴通讯股份有限公司 | 流量控制方法、装置、网络设备和计算机可读存储介质 |
WO2020248166A1 (zh) * | 2019-06-12 | 2020-12-17 | 华为技术有限公司 | 流量调度方法、设备及存储介质 |
CN113906720A (zh) * | 2019-06-12 | 2022-01-07 | 华为技术有限公司 | 流量调度方法、设备及存储介质 |
CN113906720B (zh) * | 2019-06-12 | 2024-05-10 | 华为技术有限公司 | 流量调度方法、设备及存储介质 |
CN111046091A (zh) * | 2019-10-24 | 2020-04-21 | 杭州数梦工场科技有限公司 | 数据交换系统的运行方法、装置及设备 |
CN111046091B (zh) * | 2019-10-24 | 2023-12-08 | 杭州数梦工场科技有限公司 | 数据交换系统的运行方法、装置及设备 |
CN114157604A (zh) * | 2021-12-01 | 2022-03-08 | 锐捷网络股份有限公司 | 一种调节交换网板拥塞的方法、装置及系统 |
Also Published As
Publication number | Publication date |
---|---|
CN102611605B (zh) | 2015-02-25 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN102611605B (zh) | 一种数据交换网的调度方法、装置和系统 | |
US8767553B2 (en) | Dynamic resource partitioning for long-term fairness to non-elastic traffic on a cellular basestation | |
CN101621457B (zh) | 一种多业务调度方法和系统 | |
KR20060064627A (ko) | 네트워크 스위치에서의 대역폭 보장 및 과부하 보호 방법및 장치 | |
US9439102B2 (en) | Transmitting apparatus, transmission method, and transmission system | |
WO2009074095A1 (fr) | Procédé, système et appareil d'ajustement de la qualité du service aux utilisateurs | |
CN115473855B (zh) | 网络系统、数据传输方法 | |
US11477121B2 (en) | Packet transfer apparatus, method, and program | |
JP2004266389A (ja) | パケット転送制御方法及びパケット転送制御回路 | |
US7522624B2 (en) | Scalable and QoS aware flow control | |
Soni et al. | Optimizing network calculus for switched ethernet network with deficit round robin | |
CN102594669A (zh) | 数据报文的处理方法、装置及设备 | |
CN112055382B (zh) | 一种基于精细化区分的业务接入方法 | |
EP2063580A1 (en) | Low complexity scheduler with generalized processor sharing GPS like scheduling performance | |
CN113824652A (zh) | 一种用于调度队列的方法及装置 | |
JP2012028850A (ja) | 通信システム、トラフィック制御方法及びトラフィック制御プログラム | |
Tong et al. | Quantum varying deficit round robin scheduling over priority queues | |
US10742710B2 (en) | Hierarchal maximum information rate enforcement | |
CN114363267B (zh) | 一种队列调度方法及装置 | |
RU2804500C1 (ru) | Способ резервирования пропускной способности для агрегированного фрактального трафика с адаптацией к текущей нагрузке | |
Ghaffar et al. | The output-controlled round robin scheduling in differentiated services edge switches | |
Yuan et al. | Research on QoS Optimization Method of Wireless Access Network | |
Rahbar et al. | Loan-Grant based Round Robin scheduling | |
CN118540287A (zh) | 一种基于网络处理器的自适应近似公平队列调度方法 | |
Yousefi | A fair spectrum sharing approach in cognitive radio 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: 20150225 Termination date: 20190120 |
|
CF01 | Termination of patent right due to non-payment of annual fee |