一种动态带宽分配方法和装置的制作方法

文档序号:7847213阅读:193来源:国知局
专利名称:一种动态带宽分配方法和装置的制作方法
技术领域
本发明涉及通信领域,特别涉及一种动态带宽分配方法和装置。
背景技术
为了提升带宽利用率,在主要由局端的OLT(Optical Line Termination,光线路终端)、用户端的ONU (Optical Network Unit,光网络单元)及中间的ODN (Optical Distribution Network,光分配网络)组成的 PON(Passive Optical Network,无源光纤网络)系统中,OLT通过广播的方式向各个ONU下发Grant (授权),通知ONU发送数据的起始时间及时间长度,以此来管理ONU采用时分复用方式向OLT发送数据,而该下发Grant的过程即为带宽分配。现有技术在进行带宽分配时,通常采用有周期的DBA (Dynamic Bandwidth Allocation,动态带宽分配)方式。该方式通过所有ONU向OLT发送R印ort (带宽申请), 再由OLT根据上一周期收集到的ONU发送的R印ort及SLA(Service Level Agreement,服务等级协议)为每个ONU动态分配带宽。另外,由于数据在光通路上的传输存在RTT (Round Trip Time,往返时间)延时,即OLT下发Grant到ONU接收Grant的延时及ONU使用Grant 向OLT发送数据到OLT收到数据的延时,因此,现有技术通过时延补偿来保证各ONU有效利用Grant,时延补偿的方法是以Max_RTT(Max Round Trip Time,最大往返时间)的终点作为Grant中指定的收到ONU发送的数据的起始时间。在实现本发明的过程中,发明人发现现有技术至少存在以下问题由于现有技术以Max_RTT的终点作为Grant中指定的收到ONU发送的数据的起始时间,则ONU发送的数据及R印ort将在Max_RTT后到达0LT,如果Max_RTT与分配周期的长度不相等,OLT在当前分配周期收集到的R印ort中会有上一分配周期和当前分配周期下发 Grant后ONU发送的R印ort。所以,OLT在当前分配周期收集到的R印ort并不能准确反应一个分配周期内实际所需要的带宽,从而导致以此计算出来的Grant不准确,不仅不能有效利用带宽,反而会降低带宽利用率。

发明内容
为了克服计算出的Grant不准确、带宽利用率低的缺陷,本发明实施例提供了一种动态带宽分配方法和装置,所述技术方案如下—方面,本发明实施例提供了一种动态带宽分配方法,所述方法包括获取上一分配周期收集到的来自光网络单元的带宽申请;根据所述带宽申请计算当前分配周期为所有光网络单元分配的带宽,所述带宽的起始时间为当前分配周期后的第N个分配周期的起点,所述N为自然数;及将计算出的所述带宽下发给所述光网络单元,以在当前分配周期后的第N个分配周期的起点处收到所述光网络单元发送的数据。另一方面,本发明实施例还提供了一种动态带宽分配装置,所述装置包括
获取模块,用于获取上一分配周期收集到的来自光网络单元的带宽申请;计算模块,用于根据所述获取模块获取的带宽申请计算当前分配周期为所有光网络单元分配的带宽,所述带宽的起始时间为当前分配周期后的第N个分配周期的起点,所述N为自然数;及下发模块,用于将所述计算模块计算出的所述带宽下发给所述光网络单元,以在当前分配周期后的第N个分配周期的起点处收到所述光网络单元发送的数据。本发明实施例提供的技术方案带来的有益效果是在本发明实施例的动态带宽分配方法和装置中,根据上一分配周期收集到的带宽申请计算当前分配周期为所有ONU分配的带宽,该带宽的起始时间为当前分配周期后的第 N个分配周期的起点,使得计算出的带宽位于对应的分配周期内,ONU根据分配带宽中的时间片发送的数据和带宽申请到达OLT的时刻位于对应的分配周期的起始点后并在该分配周期结束时刻之前,不存在同一个分配周期收到不同上传周期的带宽申请,消除了不同上传周期的带宽申请交叠的情况,也就是说,获得的带宽申请是准确的,进而根据该带宽申请计算出的带宽更加准确,从而可以有效提高带宽利用率。


为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。图1是PON系统的架构示意图;图2是本发明实施例1提供的一种动态带宽分配方法的流程图;图3a是本发明实施例2的提供的一种动态带宽分配方法的流程图;图3b是本发明实施例2的一个应用的示意图;图4a是本发明实施例3的提供的一种动态带宽分配方法的流程图;图4b是本发明实施例3的一个应用的示意图;图5是本发明实施例4提供的一种动态带宽分配装置的示意图;图6是本发明实施例5提供的一种动态带宽分配装置的示意图。
具体实施例方式为使本发明的目的、技术方案和优点更加清楚,下面将结合附图对本发明实施方式作进一步地详细描述。PON系统是一种宽带接入的网络架构,能够利用无源ODN协助OLT 与多个用户端的ONU进行宽带通讯。如图1所示,PON系统主要由局端的0LT、多个用户端的ONU及中间的ODN组成,ODN实现了一个OLT与多个ONU的光通路连接,光通路的载体为光纤。下文将对PON系统采用的动态带宽分配方法和装置进行详细描述。实施例1如图2所示,本发明实施例提供了一种动态带宽分配方法,其包括以下步骤201 获取上一分配周期收集到的来自ONU的带宽申请。202 根据带宽申请计算当前分配周期为所有ONU分配的带宽,该带宽的起始时间为当前分配周期后的第N个分配周期的起点,N为自然数。进一步地,在该步骤中,N可以根据以下不等式确定(N-I)*分配周期的长度彡计算带宽需要的时间+Max_RTT ( N*分配周期的长度, 其中,计算带宽需要的时间是指OLT计算为所有ONU分配的带宽的时间,Max_RTT为系统中预设的最大往返时间,该最大往返时间大于等于所有ONU的往返时间的最大值。203 将计算出的带宽下发给0NU,以在当前分配周期后的第N个分配周期的起点处收到ONU发送的数据。需要说明的是,前述N在下文中也被称为授权延时,ONU在当前分配周期后的第N 个分配周期使用当前周期分配的带宽发送数据及带宽申请,所以对于ONU而言,当前分配周期后的第N个分配周期也可以称为当前分配周期后的第N个上传周期。具体地,OLT将计算出的带宽下发的时间是在带宽计算完成后、且在计算出的带宽的起始时间减去Max_RTT之前,这样可以保证各ONU能提前收到下发的带宽,从而可以有效地使用指定的时间片发送数据和带宽申请,OLT进而可以在当前分配周期后的第N个分配周期的起点处收到ONU发送的数据。优选地,OLT在下一分配周期开始之前将计算出的带宽下发给0NU,从而减小ONU 发送数据和带宽申请的延时,提高带宽利用率。更优选地,OLT可以在计算完成后立即将带宽下发给0NU。在本发明实施例中,根据上一分配周期收集到的带宽申请计算当前分配周期为所有ONU分配的带宽,该带宽的起始时间为当前分配周期后的第N个分配周期的起点为起始时间,使得计算出的带宽位于对应的分配周期内,ONU根据带宽中的时间片发送的数据和带宽申请到达OLT的时刻位于对应的分配周期的起始点后并在该分配周期结束时刻之前, 不存在同一个分配周期收到不同上传周期的带宽申请,消除了不同上传周期的带宽申请交叠的情况,也就是说,获得的带宽申请是准确的,进而根据该带宽申请计算出的带宽更加准确,从而可以有效提高带宽利用率。实施例2本发明实施例提供了一种动态带宽分配方法,本发明实施例以分配周期的长度固定不变,且每个分配周期的长度相等为例,对本发明实施例提供的方法进行详细说明,如图 3a所示,其包括以下步骤301 获取上一分配周期收集到的来自ONU的带宽申请。302 根据带宽申请计算当前分配周期为所有ONU分配的带宽,该带宽的起始时间为当前分配周期后的第N个分配周期的起点,N为自然数。进一步地,在该步骤中,本实施例不对N的具体数值进行限定,实际应用时,N可以根据以下不等式确定(N-I)*分配周期的长度彡计算带宽需要的时间+Max_RTT ( N*分配周期的长度,其中,计算带宽需要的时间是指OLT计算为所有ONU分配的带宽的时间,Max_RTT 为系统中预设的最大往返时间,该最大往返时间大于等于所有ONU的往返时间的最大值。优选地,可以根据带宽申请以及当前分配周期之前的N个分配周期内分配的带宽计算当前分配周期为所有ONU分配的带宽。具体地,可以根据以下公式计算在第η个分配周期OLT为ONU分配的带宽
g(n) = r (η-1) -g (η-1)-----g (n_N+1) -g (n-N),( 1)且g(-N) = g(l-N)=…=g(0) = 0,(2)其中,r(n)表示第η个分配周期收集到的带宽申请中ONU向OLT申请的带宽,g (η) 表示OLT在第η个分配周期为ONU分配的带宽。如前所述,ONU将在第η+Ν个上传周期使用OLT在第η个分配周期为ONU分配的带宽g(n)。下面简单介绍上述公式(1)的推导过程。 假定a (η)为ONU在第η个分配周期的输入流量,该输入流量为终端设备向ONU输入的上传流量。在实际应用中,ONU根据其接收到的输入流量a(n)向OLT发送r (η),所以对于OLT来说,a(n)不可见,ONU需要的带宽是通过r (η)来体现的。而对于ONU而言,有r(n) = a(n)+r(n-l)-g(n-N),(3)其含义是ONU在第η个周期申请的带宽等于第η个周期接收到的输入流量与ONU 在第η-1个周期申请的带宽的和减去第η个周期已经使用了的带宽g(n-N),由于本实施例中的带宽是提前下发,所以对于OLT而言,g (n-N)表示OLT在第n_N个分配周期分配给ONU 的带宽,而对于ONU而言,g(n-N)等于其在第η个上传周期中可以使用的带宽。在理想状态下,分配给ONU的带宽等于该ONU接收到的输入流量,即g(n) = a (η-1)(4)现假定ONU在第0个周期开始向OLT发送带宽申请,在第0个周期以前,ONU没有向OLT发送带宽申请,进而有初始条件r(-l) =O0由于OLT在收到带宽申请的后一周期才开始计算分配给ONU的带宽,所以可以将第0个周期及以前OLT为ONU分配的带宽记为0, 得到前述公式(2)。当η = 0时,根据公式(2) (3)和初始条件r(_l) = 0,可以得到r(0) = a(0),当η = 1 时,根据公式(4),有:g(l) = a(0)所以g(l) = r(0),且根据公式(2) (3)有 r(l) = a (1)+r (0)-g (I-N)= a⑴+g⑴,所以可以推出a(l) = Hl)-g(l);当η = 2时,根据公式(4),有堪(2) =a⑴,则g(2) = r(l)-g(l),且根据公式(2) (3)有 r(2) = a (2)+r (1)-g (2-N)= a(2)+g(2)+g(l);所以可以推出a (2) = r(2)-g(l)-g(2);当η = 3时,根据公式(4),有堪(3) =a⑵,则g(3) =r(2)-g(2)_g(l),且根据公式(2)(3)有 r (3) = a (3) +r (2) -g (3-N) = a (3) +g (3) +g (2) +g (1),依此类推当η = N 时,根据公式(4),有g(N) = a(N-I),则g(N) = r (N-I)-g (N-I)——g(l),且根据公式(2) (3)有 r(N)=
a (N) +r (N-I) -g (0) = a (N) +g (N) +g (N-I) + …+g (1),所以可以推出 a (N) = r (N) -g (N)-… _g⑵;当 η = N+1 时,g(N+l) = a (N),贝Ij g(N+l) = r (N)-g(N)-----g(2),且 r(N+l) = a(N+l)+r (N)-g(l)=a(N+l)+g(N+l)+...+g(2);依此类推当 η = η 时,r (n) = a (η) +r (η_1) -g (η_Ν) = a (η) +g (η) +g (η_1) +..· +g (η-Ν+1),g(n) = a(n-l),贝Ij g (η) = r (η_1) -g (η_1) -g (η_2)-----g (η-Ν+1) -g (η_Ν)从上述推导过程可以看出,前述公式考虑了 ONU在当前分配周期η之前的N个分配周期中已使用的带宽,所以根据该公式计算出的分配带宽更加准确,可以使得最终下发的分配带宽与输入流量相同或符合SLA,进而使得带宽利用率最大化。容易知道,步骤302也可以采用现有的方法计算分配带宽,即仅根据收到的带宽申请来分配带宽,不考虑ONU在当前分配周期η到第N个分配周期中使用的带宽,在这种情况下,g(n) = r(n-l)。303 将计算出的带宽下发给0NU,以在当前分配周期后的第N个分配周期的起点处收到ONU发送的数据。具体地,OLT将计算出的带宽下发的时间是在带宽计算完成后、且在计算出的带宽的起始时间减去Max_RTT之前,这样可以保证各ONU能提前收到下发的带宽,从而可以有效地使用指定的时间片发送数据和带宽申请,OLT进而可以在当前分配周期后的第N个分配周期的起点处收到ONU发送的数据及新的带宽申请。优选地,OLT在下一分配周期开始之前将计算出的带宽下发给0NU,从而减小ONU 发送数据和带宽申请的延时,提高带宽利用率。更优选地,OLT可以在计算完成后立即将带宽下发给0NU。在本实施例中,各个分配周期的长度是相等的且固定不变的,授权延时为2,即N =2。如图3b所示,在31处,收集第n-1个分配周期Cycle(Ii-I)的带宽申请r(n_l)完成, 并启动分配带宽的计算。在32处,根据带宽申请r(n-l)及历史带宽申请和带宽分配等信息进行分配带宽的计算,计算第η个分配周期Cycle (η)的分配带宽g(n)。33处,计算完成后,下发第η个分配周期Cycle (η)的分配带宽g(n)。34处,收集第η个分配周期Cycle (η) 的带宽申请r(n)完成,启动新一轮的分配带宽的计算,如此循环。35处,ONU在第n+2个分配周期Cycle(n+2)获得分配带宽g (η),并发送报文和带宽申请r (n+2)。从图中可以看出, 计算分配带宽的起点为分配周期的起点且固定不变,收集带宽申请的终点为分配周期的终点且固定不变,分配带宽的时间与分配周期严格对齐,在授权的时间片内ONU的数据准时到达0LT,没有交叠的情况发生。在本发明实施例中,根据上一分配周期收集到的带宽申请计算当前分配周期为所有ONU分配的带宽,该带宽的起始时间为当前分配周期后的第N个分配周期的起点为起始时间,使得计算出的带宽位于对应的分配周期内,ONU根据带宽中的时间片发送的数据和带宽申请到达OLT的时刻位于对应的分配周期的起始点后并在该分配周期结束时刻之前,不存在同一个分配周期收到不同上传周期的带宽申请,消除了不同上传周期的带宽申请交叠的情况,也就是说,获得的带宽申请是准确的,进而根据该带宽申请计算出的分配带宽更加准确,从而可以有效提高带宽利用率。实施例3本实施例提供了一种动态带宽分配方法,本发明实施例以分配周期的长度是可变的来说明本发明实施例提供的方法,如图4a所示,其包括以下步骤401 获取上一分配周期收集到的来自ONU的带宽申请。402 根据带宽申请计算当前分配周期为所有ONU分配的带宽,该带宽的起始时间为当前分配周期后的第N个分配周期的起点,N为自然数。进一步地,在该步骤中,本实施例不对N的具体数值进行限定,实际应用时,N可以根据以下不等式确定(N-I)*分配周期的长度彡计算带宽需要的时间+Max_RTT ( N*分配周期的长度, 其中,计算带宽需要的时间是指OLT计算为所有ONU分配的带宽的时间,Max_RTT为为系统中预设的最大往返时间,该最大往返时间大于等于所有ONU的往返时间的最大值。优选地,根据前述带宽申请以及当前分配周期之前的N个分配周期内分配的带宽计算当前分配周期为所有ONU分配的带宽。具体地,可以根据前述公式(1)和(2)计算在第η个周期OLT为ONU分配的带宽。根据公式(1)和(2)计算出的分配带宽,可以使得最终下发的分配周期与输入流量相同的或符合SLA,进而使得带宽利用率最大化。其原理与前述步骤302相同,在此不再赘述。403:判断计算出的当前分配周期为所有ONU分配的带宽与预设的分配周期的长度是否相等,当前分配周期为各ONU分配的带宽分别为对应的ONU的最大传输单元的整数倍。若不相等,则进入步骤404 ;若相等,则直接进入步骤405。其中,最大传输单元是指ONU可以传输的报文的最大长度。404 调整当前分配周期的长度,以使当前分配周期的长度等于为所有ONU分配的带宽。具体地,在该步骤之前,该动态带宽分配方法还包括设定分配周期的长度的最大调整值,该最大调整值小于等于最大传输单元;相应地,前述调整当前分配周期的长度,具体包括根据最大调整值调整当前分配周期的长度。本实施例不对设定的最大调整值进行限定,实际应用时,最大调整值可以为最大传输单元或最大传输单元的一半。容易知道,根据前述带宽的计算方法,当前分配周期分配的带宽与预设的分配周期的长度差值,不会大于或者等于最大传输单元。进一步地,根据最大调整值调整当前分配周期的长度,具体包括若计算出的当前分配周期为所有ONU分配的带宽大于预设的分配周期的长度,且该带宽与预设的分配周期的长度的差值小于最大调整值,则将该差值累计到下一个分配周期;若计算出的当前分配周期为所有ONU分配的带宽大于预设的分配周期的长度,且该带宽与预设的分配周期的长度的差值大于最大调整值且小于最大传输单元,则从下一个分配周期预借带宽,预借带宽的长度为该差值与最大传输单元的差值;若计算出的当前分配周期为所有ONU分配的带宽小于预设的分配周期的长度,且该带宽与预设的分配周期的长度的差值小于最大调整值,则从下一个分配周期预借带宽, 预借带宽的长度为该差值;若计算出的当前分配周期为所有ONU分配的带宽小于预设的分配周期的长度,且该带宽与预设的分配周期的长度的差值大于最大调整值且小于最大传输单元,则累计带宽到下一分配周期,累计带宽的长度为该差值与最大传输单元的差值。显然,在当前分配周期的长度调整后,在计算下一分配周期OLT为ONU分配的带宽时,需要考虑当前分配周期从下一分配周期预借的带宽的长度或累计到下一分配周期的带宽的长度,以使各分配周期的长度之和的平均值基本上等于预设的分配周期,而各分配周期的长度不一定相同,故这种情况也可以称为隐式固定分配周期,而前述分配周期长度固定不变的情况可以称之为显式分配周期。调整当前分配周期的长度,使得当前分配周期的长度与OLT在当前分配周期计算出的带宽相匹配,OLT才能将当前分配周期计算出的带宽下发给0NU,从而进一步提高带宽的利用率。405 将计算出的当前分配周期分配的带宽下发给0NU,以在当前分配周期后的第 N个分配周期的起点处收到ONU发送的数据。具体地,OLT将计算出的带宽下发的时间是在带宽计算完成后、且在计算出的带宽的起始时间减去Max_RTT之前,这样可以保证各ONU能提前收到下发的带宽,从而可以有效地使用指定的时间片发送数据和带宽申请,OLT进而可以在当前分配周期后的第N个分配周期的起点处收到ONU发送的数据。优选地,OLT在下一分配周期开始之前将计算出的带宽下发给0NU,从而减小ONU 发送数据和带宽申请的延时,提高带宽利用率。更优选地,OLT可以在计算完成后立即将带宽下发给0NU。在本实施例中,分配周期的长度是可变的,授权延时为2,即N = 2。如图4b所示, 在41处,收集第n-1个分配周期Cycle(Ii-I)的带宽申请r(n_l)完成,并启动分配带宽的计算。在42处,根据带宽申请r (n-1)及历史带宽申请和分配带宽等信息进行分配带宽的计算,计算第η个分配周期Cycle (η)的分配带宽g (η)。43处,计算完成后,下发第η个分配周期CycleOi)的分配带宽g(n)。44处,收集第η个分配周期Cycle (η)的带宽申请r(n)完成,启动新一轮的分配带宽的计算,如此循环。45处,ONU在第n+2个分配周期Cycle (n+2) 获得带宽授权g(n),并发送报文和带宽申请r(n+2)。从图中可以看出,计算分配带宽的起点为分配周期的起点但不固定,收集带宽申请的终点为分配周期的终点但不固定。尽管分配周期的长度是可变的,但分配带宽与分配周期依然是对齐的,即分配带宽也是可变的,从而可以减小或消除尾片浪费,进一步提高带宽利用率。由于可以减小或消除尾片浪费,故本实施例尤其适用于EPON(Ethernet Passive Optical Network,以太网无源光网络)系统。在本发明实施例中,根据上一分配周期收集到的带宽申请计算当前分配周期为所有ONU分配的带宽,该带宽的起始时间为当前分配周期后的第N个分配周期的起点为起始时间,使得计算出的分配带宽位于对应的分配周期内,ONU根据带宽中的时间片发送的数据和带宽申请到达OLT的时刻位于对应的分配周期的起始点后并在该分配周期结束时刻之前发送完成,不存在同一个分配周期收到不同上传周期的带宽申请,消除了不同上传周期的带宽申请交叠的情况,也就是说,获得的带宽申请是准确的,进而根据该带宽申请计算出的带宽更加准确,从而可以有效提高带宽利用率。实施例4如图5所示,本发明实施例提供了一种动态带宽分配装置,该装置包括获取模块501,用于获取上一分配周期收集到的来自ONU的带宽申请;CN 102439922 A
说明书
8/10 页

计算模块502,用于根据获取模块501获取的带宽申请计算当前分配周期为所有 ONU分配的带宽,该带宽的起始时间为当前分配周期后的第N个分配周期的起点,N为自然数;及下发模块503,用于将计算模块502计算出的带宽下发给0NU,以在当前分配周期后的第N个分配周期的起点处收到ONU发送的数据。进一步地,该动态带宽分配装置还包括N值确定模块,用于根据以下不等式确定N的值(N-I)*分配周期的长度彡计算带宽需要的时间+Max_RTT ( N*分配周期的长度, 其中,Max_RTT大于等于所有ONU的往返时间的最大值。优选地,计算模块502根据带宽申请以及之前已分配的带宽计算当前分配周期为所有ONU分配的带宽。进一步地,计算模块502根据前述公式(1)和(2)计算当前分配周期为所有ONU 分配的带宽。具体地,在带宽计算完成后,而在计算出的带宽的起始时间减去Max_RTT之前,下发模块503将计算出的带宽下发给0NU,以保证各ONU能提前收到下发的带宽,从而可以有效地使用指定的时间片发送数据和带宽申请,OLT进而可以在当前分配周期后的第N个分配周期的起点处收到ONU发送的数据。优选地,下发模块503在下一分配周期开始之前将计算模块502计算出的带宽下发给0NU,以在当前分配周期后的第N个分配周期的起点处收到ONU发送的数据。在本发明实施例中,根据上一分配周期收集到的带宽申请计算当前分配周期为所有ONU分配的带宽,该带宽的起始时间为当前分配周期后的第N个分配周期的起点为起始时间,使得计算出的带宽位于对应的分配周期内,ONU根据带宽中的时间片发送的数据和带宽申请到达OLT的时刻位于对应的分配周期的起始点后并在该分配周期结束时刻之前,不存在同一个分配周期收到不同上传周期的带宽申请,消除了不同上传周期的带宽申请交叠的情况,也就是说,获得的带宽申请是准确的,进而根据该带宽申请计算出的分配带宽更加准确,从而可以有效提高带宽利用率。实施例5如图6所示,本发明实施例提供了一种动态带宽分配装置,该装置包括获取模块601,用于获取上一分配周期收集到的来自ONU的带宽申请;计算模块602,用于根据获取模块601获取的带宽申请计算当前分配周期为所有 ONU分配的带宽,该带宽的起始时间为当前分配周期后的第N个分配周期的起点,N为自然数;及下发模块603,用于将计算模块602计算出的带宽下发给0NU,以在当前分配周期后的第N个分配周期的起点处收到ONU发送的数据。进一步地,该动态带宽分配装置还包括判断模块604,用于判断计算模块602计算出的当前分配周期为所有ONU分配的带宽与预设的分配周期的长度是否相等,当前分配周期为各ONU分配的带宽分别为对应的 ONU的最大传输单元的整数倍;及分配周期调整模块605,用于当判断模块604的判断结果为否时,调整当前分配周
12期的长度,以使当前分配周期的长度等于为所有ONU分配的带宽。更进一步地,该动态带宽分配装置还包括N值确定模块,用于根据以下公式确定N的值(N-I)*分配周期的长度彡计算带宽需要的时间+Max RTT ( N*分配周期的长度, 其中,Max RTT大于等于所有ONU的往返时间的最大值。更进一步地,该动态带宽分配装置还包括设定模块,用于设定分配周期的长度的最大调整值,该最大调整值小于等于最大传输单元;相应地,分配周期调整模块605根据设定模块设定的最大调整值调整当前分配周期的长度。进一步地,分配周期调整模块605包括比较单元,用于比较当前分配周期为所有ONU分配的带宽与预设的分配周期的长度的差值、和最大调整值的大小;调整单元,用于当计算出的当前分配周期为所有ONU分配的带宽大于预设的分配周期的长度,且该带宽与预设的分配周期的长度的差值小于最大调整值时,将该差值累计到下一个分配周期;当计算出的当前分配周期为所有ONU分配的带宽大于预设的分配周期的长度,且该带宽与预设的分配周期的长度的差值大于最大调整值且小于最大传输单元时,从下一个分配周期预借带宽,预借带宽的长度为该差值与最大传输单元的差值;当计算出的当前分配周期为所有ONU分配的带宽小于预设的分配周期的长度,且该带宽与预设的分配周期的长度的差值小于最大调整值时,从下一个分配周期预借带宽, 预借带宽的长度为该差值;当计算出的当前分配周期为所有ONU分配的带宽小于预设的分配周期的长度,且该带宽与预设的分配周期的长度的差值大于最大调整值且小于最大传输单元时,累计带宽到下一分配周期,累计带宽的长度为该差值与最大传输单元的差值。优选地,计算模块602根据前述带宽申请以及之前已分配的带宽计算当前分配周期为所有ONU分配的带宽。进一步地,计算模块602根据前述公式⑴和(2)计算当前分配周期为所有ONU 分配的带宽。具体地,在带宽计算完成后,而在计算出的带宽的起始时间减去Max_RTT之前,下发模块603将计算出的带宽下发给0NU,以保证各ONU能提前收到下发的带宽,从而可以有效地使用指定的时间片发送数据和带宽申请,OLT进而可以在当前分配周期后的第N个分配周期的起点处收到ONU发送的数据及新的带宽申请。优选地,下发模块603在下一分配周期开始之前将计算模块502计算出的带宽下发给0NU,以在当前分配周期后的第N个分配周期的起点处收到ONU发送的数据。在本发明实施例中,根据上一分配周期收集到的带宽申请计算当前分配周期为所有ONU分配的带宽,该带宽的起始时间为当前分配周期后的第N个分配周期的起点为起始时间,使得计算出的分配带宽位于对应的分配周期内,ONU根据带宽中的时间片发送的数据和带宽申请到达OLT的时刻位于对应的分配周期的起始点后并在该分配周期结束时刻之前发送完成,不存在同一个分配周期收到不同上传周期的带宽申请,消除了不同上传周期的带宽申请交叠的情况,也就是说,获得的带宽申请是准确的,进而根据该带宽申请计算出的分配带宽更加准确,从而可以有效提高带宽利用率。需要说明的是上述实施例提供的动态带宽分配装置在进行带宽分配时,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将装置的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。另外,上述实施例提供的动态带宽分配装置与动态带宽分配方法实施例属于同一构思,其具体实现过程详见方法实施例,这里不再赘述。本领域普通技术人员可以理解实现上述实施例的全部或部分步骤可以通过硬件来完成,也可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,上述提到的存储介质可以是只读存储器,磁盘或光盘等。以上所述仅为本发明的较佳实施例,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
权利要求
1.一种动态带宽分配方法,其特征在于,所述方法包括 获取上一分配周期收集到的来自光网络单元的带宽申请;根据所述带宽申请计算当前分配周期为所有光网络单元分配的带宽,所述带宽的起始时间为当前分配周期后的第N个分配周期的起点,所述N为自然数;及将计算出的所述带宽下发给所述光网络单元,以在当前分配周期后的第N个分配周期的起点处收到所述光网络单元发送的数据。
2.如权利要求1所述的动态带宽分配方法,其特征在于,所述N根据以下不等式确定 (N-I)*分配周期的长度彡计算所述带宽需要的时间+Max_RTT彡N*分配周期的长度,其中,Max_RTT大于等于所有光网络单元的往返时间的最大值。
3.如权利要求1所述的动态带宽分配方法,其特征在于,所述根据所述带宽申请计算当前分配周期为所有光网络单元分配的带宽,具体包括根据所述带宽申请以及当前分配周期之前的N个分配周期内分配的带宽计算当前分配周期为所有光网络单元分配的带宽。
4.如权利要求1-3任一项所述的动态带宽分配方法,其特征在于,所述分配周期的长度是固定不变的,且每个分配周期的长度相同。
5.如权利要求1-3任一项所述的动态带宽分配方法,其特征在于,每个分配周期的长度是可变的,则在将计算出的所述带宽下发给所述光网络单元之前,所述方法还包括判断计算出的当前分配周期为所有光网络单元分配的带宽与预设的分配周期的长度是否相等,当前分配周期为各光网络单元分配的带宽分别为对应的光网络单元的最大传输单元的整数倍;若不相等,则调整当前分配周期的长度,以使当前分配周期的长度等于为所有光网络单元分配的带宽。
6.如权利要求5所述的动态带宽分配方法,其特征在于,在所述调整当前分配周期的长度之前,所述方法还包括设定分配周期的长度的最大调整值,所述最大调整值小于等于最大传输单元; 相应地,所述调整当前分配周期的长度,具体包括 根据所述最大调整值调整当前分配周期的长度。
7.如权利要求6所述的动态带宽分配方法,其特征在于,所述根据所述最大调整值调整当前分配周期的长度,具体包括若计算出的当前分配周期为所有光网络单元分配的带宽大于预设的分配周期的长度, 且所述带宽与所述预设的分配周期的长度的差值小于最大调整值,则将该差值累计到下一个分配周期;若计算出的当前分配周期为所有光网络单元分配的带宽大于预设的分配周期的长度, 且所述带宽与所述预设的分配周期的长度的差值大于最大调整值且小于最大传输单元,则从下一个分配周期预借带宽,预借带宽的长度为该差值与最大传输单元的差值;若计算出的当前分配周期为所有光网络单元分配的带宽小于预设的分配周期的长度, 且所述带宽与所述预设的分配周期的长度的差值小于最大调整值,则从下一个分配周期预借带宽,预借带宽的长度为该差值;若计算出的当前分配周期为所有光网络单元分配的带宽小于预设的分配周期的长度,且所述带宽与所述预设的分配周期的长度的差值大于最大调整值且小于最大传输单元,则累计带宽到下一分配周期,累计带宽的长度为该差值与最大传输单元的差值。
8.如权利要求1所述的动态带宽分配方法,其特征在于,所述将计算出的所述带宽下发给所述光网络单元,具体包括在下一分配周期开始之前将计算出的所述当前分配周期分配的带宽下发给所述光网络单元。
9.一种动态带宽分配装置,其特征在于,所述装置包括获取模块,用于获取上一分配周期收集到的来自光网络单元的带宽申请;计算模块,用于根据所述获取模块获取的带宽申请计算当前分配周期为所有光网络单元分配的带宽,所述带宽的起始时间为当前分配周期后的第N个分配周期的起点,所述N为自然数;及下发模块,用于将所述计算模块计算出的所述带宽下发给光网络单元,以在当前分配周期后的第N个分配周期的起点处接收到所述光网络单元发送的数据。
10.如权利要求9所述的动态带宽分配装置,其特征在于,还包括N值确定模块,用于根据以下不等式确定N的值(N-I)*分配周期的长度彡计算所述带宽需要的时间+Max_RTT彡N*分配周期的长度, 其中,Max_RTT大于等于所有光网络单元的往返时间的最大值。
11.如权利要求9所述的动态带宽分配装置,其特征在于,所述计算模块,用于根据所述带宽申请以及当前分配周期之前的N个分配周期内分配的带宽计算当前分配周期为所有光网络单元分配的带宽。
12.如权利要求9-11任一项所述的动态带宽分配装置,其特征在于,还包括判断模块,用于判断所述当前分配周期为所有光网络单元分配的带宽与预设的分配周期的长度是否相等,当前分配周期为各网络单元分配的带宽分别为对应的光网络单元的最大传输单元的整数倍;分配周期调整模块,用于当所述判断模块的判断结果为否时,调整当前分配周期的长度,以使当前分配周期的长度等于为所有光网络单元分配的带宽。
13.如权利要求12所述的动态带宽分配装置,其特征在于,还包括设定模块,用于设定分配周期的长度的最大调整值;相应地,所述分配周期调整模块根据所述设定模块设定的最大调整值调整当前分配周期的长度。
14.如权利要求13所述的动态带宽分配装置,其特征在于,所述分配周期调整模块包括比较单元,用于比较所述当前分配周期为所有光网络单元分配的带宽与预设的分配周期的长度的差值、和所述最大调整值的大小;调整单元,用于当计算出的当前分配周期为所有光网络单元分配的带宽大于预设的分配周期的长度,且所述带宽与所述预设的分配周期的长度的差值小于最大调整值时,将该差值累计到下一个分配周期;当计算出的当前分配周期为所有光网络单元分配的带宽大于预设的分配周期的长度, 且所述带宽与所述预设的分配周期的长度的差值大于最大调整值且小于最大传输单元时,从下一个分配周期预借带宽,预借带宽的长度为该差值与最大传输单元的差值;当计算出的当前分配周期为所有光网络单元分配的带宽小于预设的分配周期的长度, 且所述带宽与所述预设的分配周期的长度的差值小于最大调整值时,从下一个分配周期预借带宽,预借带宽的长度为该差值;当计算出的当前分配周期为所有光网络单元分配的带宽小于预设的分配周期的长度, 且所述带宽与所述预设的分配周期的长度的差值大于最大调整值且小于最大传输单元时, 累计带宽到下一分配周期,累计带宽的长度为该差值与最大传输单元的差值。
15.如权利要求9所述的动态带宽分配装置,其特征在于,所述下发模块,用于在下一分配周期开始之前将所述计算模块计算出的所述带宽下发给所述光网络单元,以在当前分配周期后的第N个分配周期的起点处收到所述光网络单元发送的数据。
全文摘要
本发明提供了一种动态带宽分配方法和装置,属于通信领域。方法包括获取上一分配周期收集到的来自光网络单元的带宽申请;根据所述带宽申请计算当前分配周期为所有光网络单元分配的带宽,所述带宽的起始时间为当前分配周期后的第N个分配周期的起点,所述N为自然数;及将计算出的所述带宽下发给所述光网络单元。装置包括收集模块、计算模块和下发模块。本发明通过根据上一分配周期收集到的带宽申请计算当前分配周期分配的带宽,所述带宽的起始时间为当前分配周期后的第N个分配周期的起点,使分配带宽的起始时间与第N个周期的起始时间相同,从而消除了带宽申请的在不同分配周期重叠的情况,进而可以提高带宽利用率。
文档编号H04L12/56GK102439922SQ201180002756
公开日2012年5月2日 申请日期2011年10月25日 优先权日2011年10月25日
发明者蒋代林 申请人:深圳市海思半导体有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1