CN101150516A - 一种分配带宽的方法、设备和系统 - Google Patents
一种分配带宽的方法、设备和系统 Download PDFInfo
- Publication number
- CN101150516A CN101150516A CNA200710175347XA CN200710175347A CN101150516A CN 101150516 A CN101150516 A CN 101150516A CN A200710175347X A CNA200710175347X A CN A200710175347XA CN 200710175347 A CN200710175347 A CN 200710175347A CN 101150516 A CN101150516 A CN 101150516A
- Authority
- CN
- China
- Prior art keywords
- cnu
- uplink service
- length field
- queue length
- uplink
- 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
Images
Abstract
本发明公开了一种分配带宽的方法,包括:为每一个同轴电缆承载以太网终端(CNU)的每一种上行业务设置对应的令牌桶;在上行传输周期中,每一个CNU首先根据每一种上行业务对应的服务等级协议(SLA)参数更新该上行业务对应的令牌桶中的令牌数,然后,根据每一种上行业务对应的令牌桶中的令牌数,构造携带上行业务流量信息的报告(REPORT)报文,并发送给同轴电缆承载以太网头端(CLT);CLT根据每一个CNU上报的REPORT报文,为每一个CNU分配上行带宽。本发明同时还公开了一种CNU、CLT和分配带宽的系统。本发明能够保证为各个CNU分配合适的上行带宽,从而提高了上行带宽的利用率。
Description
技术领域
本发明涉及网络通信技术,特别是涉及一种分配带宽的方法、设备和系统。
背景技术
目前,借鉴于以太网无源光网络(EPON,Ethernet Passive OpticalNetwork)的网络结构,出现了以太网无源同轴网络(EPCN,Ethernet PassiveCoaxial-cable Network)系统。EPCN系统以以太网为载体,采用点到多点结构、无源同轴电缆传输方式,上行以突发的以太网包方式发送数据流。图1是EPCN系统的结构示意图,如图1所示,EPCN系统主要包括同轴电缆承载以太网头端(CLT,Coaxial-cable Line Terminal)、分支器/分配器、以及多个同轴电缆承载以太网终端(CNU,Coaxial-Cable Network Unit)。EPCN系统通过CLT连接各种以太网设备,并通过CNU连接用户端设备。EPCN系统目前最为常用的就是在楼内的以太网宽带到户使用,此时,CLT主要用于将电视信号发送至各个CNU,并且,CLT与各个CNU之间还可以交互以太网数据,如上网业务数据或IP电话数据等。
在传输以太网数据时,EPCN系统通常会作为半双工系统使用。即,从CLT到各CNU的下行方向和从各CNU到CLT的上行方向分时占用上下行共享的传输介质,也就是说,在下行传输周期,由CLT向各个CNU发送下行数据,各个CNU不会向CLT发送任何信息,在上行传输周期,各个CNU依次向CLT发送上行数据,CLT不会向CNU发送任何信息。
在EPCN系统中,由于有多个CNU,因此,CLT需要为各个CNU分别分配其在上行传输周期中占用的上行带宽。比如,有三个CNU,上行传输周期为9ms,那么,CLT可以为CNU1分配该9ms中的前3ms,CNU1则可以在上行传输周期中的前3ms发送上行数据,并且,CLT可以为CNU2分配该9ms中的中间3ms,CNU2则可以在上行传输周期中的中间3ms发送上行数据,并且,CLT可以为CNU3分配该9ms中的后3ms,CNU3则可以在上行传输周期中的后3ms发送上行数据。
在实际的业务实现中,每个CNU的上行数据流量通常是不相同的,比如,CNU1同时进行上网业务和IP电话业务,需要占用4ms的上行带宽,而CNU2仅进行上网业务,需要占用2ms的上行带宽,这样,如果CLT不考虑CNU的实际业务状况,为每个CNU分配相同的上行带宽,则会导致为部分CNU分配的上行带宽无法满足数据传输需求,而为另一部分CNU分配的上行带宽剩余的情况,从而造成了资源浪费。
可见,在EPCN系统中,根据每个CNU的上行数据流量来动态地为CNU分配上行带宽,已经成为了一个亟待解决的问题。
发明内容
有鉴于此,本发明的一个目的在于提供一种分配带宽的方法,本发明的另一个目的在于提供一种CNU,本发明的再一个目的在于提供一种CLT,本发明的又一个目的在于提供一种分配带宽的系统,以便于能够根据各个CNU的上行数据流量为各个CNU动态分配上行带宽。
为了达到上述目的,本发明的技术方案是这样实现的:
一种分配带宽的方法,为每一个同轴电缆承载以太网终端CNU的每一种上行业务设置对应的令牌桶,该方法包括:
在上行传输周期中,每一个CNU首先根据每一种上行业务对应的服务等级协议SLA参数更新该上行业务对应的令牌桶中的令牌数,然后,根据每一种上行业务对应的令牌桶中的令牌数,构造携带上行业务流量信息的报告REPORT报文,并发送给同轴电缆承载以太网头端CLT;
CLT根据每一个CNU上报的REPORT报文,为每一个CNU分配上行带宽。
一种CNU,该CNU包括:
令牌桶单元,用于保存CNU支持的每一种上行业务对应的令牌桶,在上行传输周期开始时,根据每一种上行业务对应的SLA参数更新该上行业务对应的令牌桶中的令牌数;
上行数据缓存单元,用于保存每一种上行业务的数据;
流量上报单元,用于在上行传输周期中,根据令牌桶单元中每一种上行业务对应的令牌桶中的令牌数,以及上行数据缓存单元中保存的上行业务数据,构造携带上行业务流量信息的REPORT报文,并发送给CLT。
一种CLT,包括:
上行流量信息处理单元,用于接收各个CNU根据每一种上行业务的令牌数构造的携带上行业务流量信息的REPORT报文,从REPORT报文中获取各个上行业务流量信息;
带宽分配单元,用于根据上行流量信息处理单元所获取的上行业务流量信息,为各个CNU分配上行带宽。
一种分配带宽的系统,该系统包括本发明提出的CNU以及CLT。
由此可见,在本发明中,CLT能够动态地获知各个CNU的上行数据流量信息,并且,上行数据流量信息还进一步反映了每个CNU的每种上行业务设置对应的SLA参数,这样,CLT则可以根据上行数据流量信息和SLA参数为各个CNU的各种上行业务分配上行带宽,保证了为各个CNU分配合适的上行带宽,提高了上行带宽的利用率。
附图说明
图1是EPCN系统的结构示意图。
图2是在本发明一个实施例中CLT为各个CNU分配带宽的流程图。
图3是在本发明一个实施例中CNU的队列中存储的数据包与水阈线的关系示意图。
图4是在本发明一个实施例中为各CNU中高优先级的IP电话业务分配上行带宽的流程图。
图5是在本发明一个实施例中为各CNU中低优先级的上网业务分配Length3要求的上行带宽的流程图。
图6是在本发明一个实施例中为各CNU中低优先级的上网业务分配Length5要求的上行带宽的流程图。
图7是在本发明一个实施例中为各CNU中低优先级的上网业务分配其他要求的上行带宽的流程图。
图8是在本发明一个实施例中CNU的内部结构示意图。
图9是在本发明一个实施例中CLT的内部结构示意图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚,下面结合附图及具体实施例对本发明作进一步地详细描述。
为了能够根据各个CNU的上行数据流量为各个CNU动态分配上行带宽,最大程度地提高上行带宽的利用率,则必须由各个CNU周期性地向CLT上报自身的上行数据流量信息,这样,CLT获知各个CNU的上行数据流量信息后,则可以分配下个上行传输周期中适合各个CNU的上行带宽。
另外,在实际的业务实现中,用户通常会要求CNU上的不同上行业务具有不同的服务等级质量。为此,需要针对CNU上的每种不同上行业务设置对应的服务等级协议(SLA,Service Level Agreement)参数,通过该SLA参数要求上行业务可享受的最小上行带宽服务或限制上行业务可享受的最大上行带宽服务。比如,CNU1上进行两种上行业务,一种为高优先级的IP电话业务,另一种为低优先级的上网业务,为了保证CNU1上IP电话业务和上网业务可享受的最小上行带宽服务,则可以在CNU1上设置对应于IP电话业务的SLA参数1,比如SLA参数1为128Kbps,并且,设置对应于上网业务的SLA参数2,比如SLA参数2为512Kbps。这样,CLT在每次分配上行带宽时,还应该考虑各个CNU的SLA参数,比如,CLT应该保证在为CNU1分配上行带宽时,为其进行的IP电话业务至少分配128Kbps,为其进行的上网业务至少分配512Kbps。
根据上述特点,本发明提出了一种分配带宽的方法。在该方法中,为每一个CNU的每一种上行业务设置对应的令牌桶;在上行传输周期中,每一个CNU首先根据每一种上行业务对应的服务等级协议SLA参数更新该上行业务对应的令牌桶中的令牌数,然后,根据每一种上行业务对应的令牌桶中的令牌数,构造携带上行业务流量信息的报告REPORT报文,并发送给CLT;CLT根据每一个CNU上报的REPORT报文,为每一个CNU分配上行带宽。
图2是在本发明一个实施例中CLT为各个CNU分配带宽的流程图。参见图2,在本发明一个实施例中,CLT根据各个CNU的上行数据流量动态地为各个CNU分配带宽的过程具体包括以下步骤:
步骤201:预先为每一个CNU的每一种上行业务设置对应的令牌桶。
这里,设置令牌桶是为了在后续过程中,既能够通过该令牌桶来体现业务的SLA参数的要求,又能够通过该令牌桶来均衡各CNU中上行业务各次被调度的概率。
以CNU1为例,CNU1支持高优先级的IP电话业务和低优先级的上网业务,那么,在本步骤中,则需要为CNU1设置对应高优先级的IP电话业务的令牌桶1,并设置对应低优先级的上网业务的令牌桶2。
这里,在设置了令牌桶后,令牌桶的容量即令牌桶中总共可放入的令牌数则固定了。
步骤202:预先设置用于向CLT上报上行业务流量的报告(REPORT)报文的结构。
步骤203:在每一个上行传输周期到来时,每一个CNU根据支持的每一种上行业务对应的SLA参数更新该上行业务对应的令牌桶中的令牌数。
这里,仍以CNU1为例,预先配置的高优先级的IP电话业务的SLA参数1为64Kbps,预先配置的低优先级的上网业务的SLA参数2为128Kbps,一个上行传输周期为10ms,那么则可以得到,在每一个上行传输周期中,SLA参数1指示的令牌数即应该向IP电话业务的令牌桶1中放入的令牌数为(64000/8)*10/1000=80字节,SLA参数2指示的令牌数即应该向上网业务的令牌桶2中放入的令牌数为(128000/8)*10/1000=160字节。这样,根据CNU1支持的上行业务对应的SLA参数1更新该上行业务对应的令牌桶中的令牌数的过程包括:判断IP电话业务对应的令牌桶1是否已满,如果是,则保持该令牌桶1中的令牌数不变,否则,将得到的80字节的令牌数增加到令牌桶1中;同理,判断上网业务对应的令牌桶2是否已满,如果是,则保持该令牌桶2中的令牌数不变,否则,将得到的160字节的令牌数增加到令牌桶2中。当然,正如本领域技术人员所熟知的,在向令牌桶中增加令牌数的过程中,如果令牌桶已满,则不再继续增加令牌。
步骤204:每一个CNU将支持的每一种上行业务对应的令牌桶中的令牌数确定为每一种上行业务对应的水阈线(threshold)。
这里,确定水阈线是为了在后续过程中,能够根据该水阈线来确定每一种上行业务的队列中必须分配到带宽的上行数据包的长度。
以CNU1为例,IP电话业务对应的水阈线则为当前令牌桶1中的令牌数,假如为200字节,上网业务对应的水阈线则为当前令牌桶2中的令牌数,假如为700字节。
步骤205:每一个CNU根据确定的每种上行业务的水阈线,构造携带上行业务流量信息的REPORT报文。
这里,参见图3,以CNU1为例,CNU1中包括存储高优先级IP电话业务数据包的队列0,存储低优先级上网业务数据包的队列1,且队列0的优先级0高于队列1的优先级1。当CNU1有IP电话业务的数据包产生时,如果队列0未满,则会将产生的数据包放入队列0中,当CNU1有上网业务的数据包产生时,如果队列1未满,则会将产生的数据包放入队列1中。
为了避免队列中存在较大数据包,导致后续新产生的数据包无法进入队列,新产生的数据包无法发送的问题,在本实施例中,对于每一种上行业务的队列,如果该队列已满,则随机丢弃介于该上行业务对应的水阈线与队列尾之间的数据包。比如,参见图3,当产生新的上网业务数据包时,如果队列1已满,则可以丢弃250字节的第三个数据包,或丢弃350字节的第四个数据包。
参见图3,对于高优先级的IP电话业务,在其对应的队列0中,存储有3个待发送的上行数据包,按照队列头至队列尾的顺序,该3个待发送的上行数据包的长度分别为250字节、350字节和250字节,这样,其对应的水阈线200字节则位于第一个上行数据包的中间。对于低优先级的上网业务,在其对应的队列1中,存储有4个待发送的上行数据包,按照队列头至队列尾的顺序,该4个待发送的上行数据包的长度分别为350字节、450字节、250字节和350字节,这样,其对应的水阈线700字节则位于第二个上行数据包的中间。
需要说明的是,为了使得CNU中每一种上行业务的队列中待发送的数据包长度与该种上行业务的SLA参数限制关系能够通过REPORT报文上报给CLT,在上述步骤202中,所设置的REPORT报文的结构中,对应于每一种上行业务均设置有三个队列长度字段,其中,第一队列长度字段表示水阈线之下的数据包长度,即,上行业务的队列中小于水阈线的前整数个数据包的长度值;第二队列长度字段表示水阈线之上的队列总长度,即,上行业务的队列中除去第一队列长度字段表示长度的队列总长度值;第三队列长度字段表示水阈线之上的数据包长度,即,上行业务的队列中未计算在第一队列长度字段表示的长度内且介于水阈线两边的数据包长度值。
表1示出了CNU1中根据水阈线划分的各个队列长度字段对应的数据包长度情况。
队列 | below threshold | above threshold | Packet above threshold |
1 | 350字节 | 1050字节 | 450字节 |
0 | 250字节 | 600字节 | 0字节 |
表1
参见表1,below threshold一栏对应于第一队列长度字段,above threshold一栏对应于第二队列长度字段,Packet above threshold一栏对应于第三队列长度字段。
因此,参见图3,对于IP电话业务,由于其水阈线为200字节,而其对应的队列0中,小于水阈线的前整数个数据包为第一个数据包,其长度值为250字节,因此,可以得到,below threshold一栏即在REPORT报文中对应于IP电话业务的第一队列长度字段记为Lengthl的值为250字节,abovethreshold一栏即在REPORT报文中对应于IP电话业务的第二队列长度字段记为Length2的值为350+250=600字节,对于Packet above threshold一栏,即在REPORT报文中对应于IP电话业务的第三队列长度字段的值,由于介于水阈线两边的为第一个数据包,而第一个数据包已经通过第一队列长度字段上报,因此,对应于IP电话业务的第三队列长度字段的值为0。
参见图3,对于上网业务,由于其水阈线为700字节,而其对应的队列1中,小于水阈线的前整数个数据包为第一个数据包,其长度值为350字节,因此,可以得到,below threshold一栏即在REPORT报文中对应于上网业务的第一队列长度字段记为Length3的值为350字节,above threshold一栏即在REPORT报文中对应于上网业务的第二队列长度字段记为Length4的值为450+250+350=1050字节,Packet above threshold一栏即在REPORT报文中对应于上网业务的第三队列长度字段记为Length5的值为队列1中第二个数据包的长度值,即450字节。
这样,参见表2,则可以得到CNU1构造的REPORT报文中的上行业务流量信息。
Length1 | Length2 | Length3 | Length4 | Length5 |
250 | 600 | 350 | 1050 | 450 |
表2
步骤206:每一个CNU将其构造的REPORT报文上报给CLT。
步骤207:CLT根据每一个CNU发来的REPORT报文,为每一个CNU的每一种上行业务分配上行带宽。
这里,CLT在接收到每一个CNU发来的REPORT报文后,可以根据每个REPORT报文中携带的队列长度字段来维护一个REPORT表,用于记录每一个CNU中每一种上行业务的各部分带宽需求情况,REPORT表的格式可以参见如下表3。
Length1 | Length2 | Length3 | Length4 | Length5 | |
CNU 1 | 250 | 600 | 350 | 1050 | 450 |
CNU 2 | |||||
... | |||||
CNUn |
表3
为了更好地记录为每一个CNU中的每一种上行业务分配的上行带宽,即在上行传输周期中占用的传输时隙,CLT可以建立一个Timing Wheel表,该Timing Wheel表的格式可以参见如下表4所示。
TSSP1 | TSD1 | TSSP2 | TSD2 | TSD3 | |
CNU 1 | |||||
CNU 2 | |||||
... | |||||
CNUn |
表4
参见表4,其中,TSSP1为每个CNU中高优先级IP电话业务队列中数据传输的开始时隙;
TSD1为高优先级IP电话业务队列中数据传输的时隙长度;
TSSP2为低优先级上网业务队列中数据传榆的开始时隙;
TSD2为低优先级上网业务队列中Length3或者Length3+Length5的时隙长度;
TSD3为低优先级上网业务队列中Length4-Length5的时隙长度。
这样,CLT在为每一个CNU的每一种上行业务分配对应的上行带宽即时隙后,CLT进一步将Timing Wheel表中记录的每一种上行业务每一部分数据包的开始时隙和时隙长度通过GATE报文下发给对应的CNU。
在本步骤中,CLT采用的调度策略是Round Robin方式。也就是说,根据各个CNU中上行业务的优先级,首先依次为各个CNU分配其最高优先级上行业务的上行带宽,然后依次为各个CNU分配其次高优先级上行业务的上行带宽,直至依次为各个CNU分配最低优先级上行业务的上行带宽。其中,在依次为各个CNU分别分配同一优先级上行业务的上行带宽时,可以首先依次为各个CNU分配该同一优先级上行业务的第一队列长度字段的值对应的上行带宽,然后,依次为各个CNU分配该同一优先级上行业务的第三队列长度字段的值对应的上行带宽,最后,依次根据各个CNU该同一优先级上行业务的第二队列长度字段的值依次为各个CNU分配对应的上行带宽。
以每一个CNU中均包括高优先级的IP电话业务和低优先级的上网业务为例,CLT为各个CNU分配上行带宽的具体过程也可以包括:
首先,CLT依次为各个CNU中高优先级的IP电话业务分配上行带宽。
图4是在本发明一个实施例中为各CNU中高优先级的IP电话业务分配上行带宽的流程图。参见图4,预先为每个CNU中高优先级的IP电话业务设置对应的标识Flag1,在每个分配周期中,该Flag1的初始值为1,当为1时表示还未为IP电话业务分配过上行带宽,该Flag1为0时表示已经给IP电话业务分配过上行带宽,该具体分配带宽的过程包括以下步骤:
步骤401:CLT判断当前轮询的CNU所对应的Flag1的值是否为1,如果是,则执行步骤402,否则,执行步骤406。
步骤402:将表4所示的Timing Wheel表中对应于当前轮询的CNU高优先级的IP电话业务的TSSP1和TSD1清0。
这里,由于CLT为当前轮询的CNU分配上行带宽是一个周期性执行的处理,因此,在本步骤中由于还未给IP电话业务分配上行带宽,因此,需要将IP电话业务的TSSP1和TSD1清0,以避免记录的上次给IP电话业务分配的上行带宽信息的干扰。
步骤403:CLT根据当前轮询的CNU发来的REPORT报文,判断其中的Length1+Length2的长度是否大于0,如果是,则执行步骤404,否则,将当前轮询CNU对应的Flag1值设置为0,然后执行步骤406。
这里,如果判断出Length1+Length2的长度大于0,则表示当前轮询的CNU的IP电话业务的队列中有待发送的数据包,因此,需要为当前轮询的CNU的IP电话业务分配上行带宽,即执行后续步骤404,如果判断出Length1+Length2的长度为0,则表示当前轮询的CNU的IP电话业务的队列中没有待发送的数据包,因此,执行为其他CNU的IP电话业务分配带宽的处理,即执行步骤406。
步骤404:CLT判断是否当前剩余带宽>=(Sync Time+Length1+Length2+IDG),如果是,则执行步骤405,否则,执行步骤407。
这里,Sync Time表示CNU与CLT在每个上行传输周期中进行同步所需的时间,IDG表示在每个上行传输周期中从上一个CNU切换到本CNU时的切换时间,由于在每个上行传输周期中,每个CNU必须耗费Sync Time和IDG的带宽,因此,如果剩余带宽>=(Sync Time+Length1+Length2+IDG),则表示,剩余带宽可以满足传输高优先级IP电话业务队列中的所有数据包的需求,因此,执行后续步骤405,否则,需要进一步判断是否可以为高优先级的水阈线之下的数据包分配带宽,以便于保证业务SLA参数的传输带宽要求,即继续执行后续步骤407。
步骤405:CLT执行为当前轮询的CNU的IP电话业务分配(Sync Time+Length1+Length2+IDG)的上行带宽处理。
本步骤的处理包括:
(1)、为当前轮询的CNU的IP电话业务分配(Sync Time+Length1+Length2+IDG)的上行带宽,即在上行传输周期中的开始时隙和时隙长度;
(2)、将表3所示REPORT表中当前轮询的CNU对应的Length1和Length2一栏的值清0;
(3)、将为IP电话业务分配的上行带宽,即在上行传输周期中的开始时隙和时隙长度,分别记录在表4所示的Timing Wheel表中当前轮询的CNU对应的TSD1和TSSP2一栏中;
(4)、将为高优先级的IP电话业务分配带宽的指针后移一位;
(5)、将当前轮询的CNU对应的标识Flag1的值设置为0,表示已经为该CNU分配过IP电话业务的上行带宽。
步骤406:CLT判断针对Length1当前是否还存在未被轮询过的CNU,如果是,则返回步骤401,否则,结束当前流程。
在本步骤中,在结束当前流程之前,CLT还会记住当前指针的位置,以便于在下一个分配周期到来时,从当前指针位置继续开始轮询过程。
407:CLT根据当前轮询的CNU发来的REPORT报文,判断其中的Length1的长度是否大于0,如果是,则执行步骤408,否则,将当前轮询CNU对应的Flag1值设置为0,然后执行步骤406。
Length1表示水阈线之下的数据包长度,即队列中位于头部的数据包的长度值,在正常情况下,数据包放入队列的顺序是从队列头到队列尾依次放入的,因此,在正常情况下,当Length1+Length3的长度大于0时,队列头部一定有数据包,即Length1的长度应该大于0。虽然,执行到本步骤时,已经判断出Length1+Length3的长度大于0,但是,在实际的业务实现中,也有可能出现队列中头部没有数据包而在其他位置如尾部有数据包的异常情况,为了保证针对该种异常情况出现时,能够继续为其他业务正常的CNU分配上行带宽,需要进一步执行本步骤中判断Length1的长度是否大于0的处理,当判断出Length1的长度为0时,则可确定该CNU的该种上行业务出现异常情况,因此,执行为其他业务正常的CNU分配上行带宽的处理,即转向执行步骤406。
这里,如果判断出Length1的长度大于0,则表示当前轮询的CNU的IP电话业务的队列中有待发送的数据包,因此,需要为当前轮询的CNU的IP电话业务分配上行带宽,即执行后续步骤408,如果判断出Length1长度不大于0,则表示当前轮询的CNU的IP电话业务的队列中没有待发送的数据包,因此,执行为其他CNU的IP电话业务分配带宽的处理,即执行步骤406。
步骤408:CLT判断是否当前剩余带宽>=(Sync Time+Length1+IDG),如果是,则执行步骤409,否则,将当前轮询CNU对应的Flag1值设置为0,然后执行步骤406。
步骤409:CLT执行为当前轮询的CNU的IP电话业务分配(Sync Time+Length1+IDG)的上行带宽处理。
本步骤的处理包括:
(1)、为当前轮询的CNU的IP电话业务分配(Sync Time+Length1+IDG)上行带宽,即分配在上行传输周期中的开始时隙和时隙长度;
(2)、将表3所示REPORT表中当前轮询的CNU对应的Length1一栏的值清0;
(3)、为IP电话业务分配上行带宽,即分配在上行传输周期中的开始时隙和时隙长度,并分别记录在表4所示的Timing Wheel表中当前轮询的CNU对应的TSD1和TSSP2一栏中;
(4)、为高优先级的IP电话业务分配带宽的指针后移一位;
(5)、将当前轮询的CNU对应的标识Flag1的值设置为0,表示已经为该CNU分配过IP电话业务的上行带宽。
其次,在为各个CNU中高优先级的IP电话业务分配上行带宽后,如果有带宽剩余,则CLT依次为各个CNU中低优先级的上网业务分配上行带宽。
CNU上报的REPORT报文中低优先级的上网业务的上行流量信息体现为Length3、Length4和Length5三部分,其中,Length3为水阈线之下的数据包长度,为了保证SLA参数的带宽要求,必须首先为各个CNU的Length3对应的数据包长度分配上行带宽。另外,由于Length4表示水阈线之上的队列总长度,即,以太网上行业务的队列中除去Length3表示长度的队列总长度值,通常该总长度的值较大,CLT的剩余带宽往往无法满足该Length4表示的总长度的需求,而Length5表示水阈线之上的数据包长度,即,上行业务的队列中未计算在Length3表示的长度内且介于水阈线两边的数据包长度值,CLT的剩余带宽在无法满足Length4表示的总长度的需求时,通常可以满足Length5表示的数据包的带宽需要。
因此,首先为各个CNU的Length3对应的以太网业数据包长度分配上行带宽,然后,如果有带宽剩余,则按照先为各个CNU的Length5对应的以太网业数据包长度分配上行带宽再为各个CNU的Length4对应的以太网业数据包长度分配上行带宽的顺序继续分配。
图5是在本发明一个实施例中为各CNU中低优先级的上网业务分配Length3要求的上行带宽的流程图。参见图5,预先为每个CNU中低优先级的上网业务设置对应的标识Flag3,在每个分配周期中,该Flag3的初始值为1,当为1时表示还未为Length3对应的数据包分配过上行带宽,该Flag3为0时表示已经给Length3对应的数据包分配过上行带宽,该具体分配带宽的过程包括以下步骤:
步骤501:CLT判断当前轮询的CNU所对应的Flag3的值是否为1,如果是,则执行步骤502,否则,执行步骤506。
步骤502:根据已经为各个CNU高优先级的IP电话业务分配的上行带宽,更新当前的剩余带宽。
这里,更新当前的剩余带宽的处理包括:当前剩余带宽对应的开始时隙AP1=AP1+(Sync Time+Preamble+64+IPG+IDG);当前剩余带宽对应的时隙长度T=available time slot。
其中,Preamble为REPORT报文的以太网前导码,缺省为8字节;IPG为REPORT报文的以太网帧间隔,缺省为12字节;Sync Time表示CNU与CLT在每个上行传输周期中进行同步所需的时间,IDG表示在每个上行传输周期中从上一个CNU切换到本CNU时的切换时间。
步骤503:CLT根据当前轮询的CNU发来的REPORT报文,判断其中的Length3的长度是否大于0,如果是,则执行步骤504,否则,执行步骤507。
这里,如果判断出Length3的长度大于0,则表示当前轮询的CNU的上网业务的队列中有待发送的数据包,因此,需要为当前轮询的CNU的上网业务分配上行带宽,即执行后续步骤504,如果判断出Length3的长度为0,则表示当前轮询的CNU的上网业务的队列中没有待发送的数据包,因此,只需为当前轮询的CNU分配其发送REPORT报文所需的上行带宽,即执行步骤507。
步骤504:CLT判断是否当前剩余带宽>=(Sync Time+Length3+REPORT+IDG),如果是,则执行步骤505,否则,将当前轮询CNU对应的Flag3值设置为0,执行步骤507。
这里,由于Sync Time、IDG和REPORT报文所需带宽均是每个CNU在上行传输周期中必须使用的,因此,如果当前剩余带宽大于等于(Sync Time+Length3+REPORT+IDG),才能够实现为Length3分配上行带宽,否则,需要进一步判断是否可以只为必须上报的REPORT报文分配带宽,以便于保证CLT能够在每个周期中动态获取CNU中的上行数据流量信息,即继续执行后续步骤507。
步骤505:CLT执行为当前轮询的CNU的上网业务分配(Sync Time+Length3+REPORT+IDG)的上行带宽处理。
本步骤的处理包括:
(1)、为当前轮询的CNU的上网业务分配(Sync Time+Length3+REPORT+IDG)上行带宽,即分配在上行传输周期中的开始时隙和时隙长度;
(2)、将表3所示REPORT表中当前轮询的CNU对应的Length3一栏的值清0;
(3)、为Length3分配上行带宽,即分配在上行传输周期中的开始时隙,并记录在表4所示的Timing Wheel表中当前轮询的CNU对应的TSSP3一栏中;
(4)、将为低优先级的上网业务的Length3分配带宽的指针后移一位;
(5)、将当前轮询的CNU对应的标识Flag3的值设置为0,表示已经为该CNU分配过Length3所要求的上行带宽。
步骤506:CLT判断针对Length3当前是否还存在未被轮询过的CNU,如果是,则返回步骤501,否则,结束当前流程。
在本步骤中,在结束当前流程之前,CLT还会记住当前指针的位置,以便于在下一个分配周期到来时,从当前指针位置继续开始轮询过程。
507:CLT判断是否当前剩余带宽>=(Sync Time+REPORT+IDG),如果是,则执行步骤508,否则,结束流程。
这里,由于Sync Time、IDG和REPORT报文所需带宽均是每个CNU在上行传输周期中必须使用的,因此,如果当前剩余带宽大于等于(Sync Time+REPORT+IDG),则必须分配,否则,表示,当前的剩余带宽无法为任何一个CNU的上网业务分配上行带宽,因此,需要结束本次分配周期中的所有分配处理。
步骤508:CLT执行为当前轮询的CNU的REPORT报文分配上行带宽的处理,然后返回步骤506。
本步骤的处理包括:
(1)、为当前轮询的CNU分配(Sync Time+REPORT+IDG)上行带宽,即分配在上行传榆周期中的开始时隙和时隙长度;
(2)、将为当前轮询的CNU分配的REPORT报文的开始时隙和时隙长度分别记录在表4所示的Timing Wheel表中;
(3)、将为Length3分配带宽的指针后移一位;
(4)、将当前轮询的CNU对应的标识Flag3的值设置为0,表示已经为该CNU分配过Length3的上行带宽。
图6是在本发明一个实施例中为各CNU中低优先级的上网业务分配Length5要求的上行带宽的流程图。参见图6,预先为每个CNU中低优先级的上网业务设置对应的标识Flag5,在每个分配周期中,Flag5的初始值为1,当为1时表示还未为Length5对应的数据包分配过上行带宽,该Flag5为0时表示已经给Length5对应的数据包分配过上行带宽,该具体分配带宽的过程包括以下步骤:
步骤601:CLT判断当前轮询的CNU所对应的Flag5的值是否为1,如果是,则执行步骤602,否则,执行步骤606。
步骤602:更新当前的剩余带宽。
步骤603:CLT根据当前轮询的CNU发来的REPORT报文,判断其中的Length5长度是否大于0,如果是,则执行步骤604,否则,将当前轮询CNU对应的Flag5值设置为0,然后执行步骤606。
步骤604:CLT判断是否当前剩余带宽>=Length5,如果是,则执行步骤605,否则,将当前轮询CNU对应的Flag5值设置为0,执行步骤606。
步骤605:CLT执行为当前轮询的CNU的Length5分配上行带宽的处理。
步骤606:CLT判断针对Length5当前是否还存在未被轮询过的CNU,如果是,则返回步骤601,否则,结束当前流程。
在为各CNU中低优先级的上网业务分配Length5要求的上行带宽之后,CLT根据当前的分配模式来决定是否执行为各CNU中低优先级的上网业务分配其他要求的上行带宽的处理,参见图7,该过程预先为每个CNU中低优先级的上网业务设置对应的标识Flag4,在每个分配周期中,Flag4的初始值为1,当为1时表示还未为Length4对应的数据包分配过上行带宽,该Flag4为0时表示已经给Length4对应的数据包分配过上行带宽,具体包括以下步骤:
步骤701:CLT判断预先设置的带宽分配模式是共享(share)模式还是独立(individual)模式,如果是独立模式,则执行步骤702,如果是共享模式,则执行步骤703。
这里,共享模式表示只要CLT有剩余带宽就可为CNU分配上行带宽,除保证业务的SLA参数之外,还进一步满足业务更多的带宽要求。这样,在本步骤中,如果判断出是共享模式,那么则说明在为反映SLA参数要求的Length3和Length5分配完带宽后,还需要继续为各个CNU分配所要求的其他的上行带宽,因此,执行后续步骤703。
独立模式表示CLT为每个CNU的上行业务分配的带宽只需保证该业务的SLA参数。这样,在本步骤中,如果判断出是独立模式,那么则说明在为反映SLA参数要求的Length3和Length5分配完带宽后,无需再分配上行带宽,因此,执行后续步骤702。
步骤702:结束本次分配周期中为各个CNU分配上行带宽的所有处理。
步骤703:CLT判断当前轮询的CNU所对应的Flag5的值是否为1,如果是,则执行步骤704,否则,执行步骤708。
步骤704:更新当前的剩余带宽。
步骤705:CLT根据当前轮询的CNU发来的REPORT报文,判断其中的(Length4-Length5)长度是否大于0,如果是,则执行步骤706,否则,将当前轮询CNU对应的Flag4值设置为0,然后执行步骤708。
步骤706:CLT判断是否当前剩余带宽>=(Length4-Length5),如果是,则执行步骤707,否则,将当前轮询CNU对应的Flag4值设置为0,执行步骤708。
步骤707:CLT执行为当前轮询的CNU的(Length4-Length5)分配上行带宽的处理。
步骤708:CLT判断针对Length4当前是否还存在未被轮询过的CNU,如果是,则返回步骤703,否则,结束本次分配周期中为各个CNU分配上行带宽的所有处理。
需要说明的是,在上述分配上行带宽的流程中,由于CLT可以根据超过SLA参数要求即超过令牌桶中令牌数的Length5和(Length4-Length5)为CNU分配上行带宽,因此,CLT为一个CNU的一种上行业务分配的上行带宽可能大于该CNU中该种上行业务对应的令牌桶中的令牌数,这样,该CNU在发送该种上行业务的数据包时,则可能会透支使用令牌桶中的令牌数,使得令牌桶中的令牌数为负,针对此种情况,如果在下一个分配周期中CLT仍然为该CNU的该种上行业务分配上行带宽,那么,则会使得该CNU的该种上行业务无法受到其SLA参数要求的带宽限制,也就是说,无法对CNU用户的该上行业务进行很好的带宽使用限制,从而会损坏运营商的利益。比如,根据CNU1用户上网业务的交费情况规定,在一个上行传输周期中CNU1的上网业务最多传输700字节的数据,即SLA参数为700字节,如果该上网业务对应的令牌桶中的令牌数为负,那么,则说明在本次上行传榆周期中,CNU1的上网业务传输的数据大于SLA参数限制的700字节,因此,为了均衡考虑各个CNU的上行带宽需求,并对CNU1的上网业务进行限制,本发明一个实施例中可以在下一个分配周期中,不再为该CNU的该种上行业务分配上行带宽,具体的实现包括:在上述图2所示的步骤203中,在每一个上行传输周期到来时,每一个CNU首先不执行更新令牌桶中的令牌数的处理,而是首先判断对应每一种上行业务的令牌桶中的令牌数是否为负,比如CNU1在判断出对应上网业务的令牌桶中的令牌数为负后,在执行完步骤203中根据该上网业务对应的SLA参数更新该上网业务对应的令牌桶中的令牌数的处理后,在图2后续处理中,CNU1在REPORT报文中将上网业务对应的第一队列长度字段、第二队列长度字段和第三队列长度字段的值均设置为0,使得CLT在本次分配周期中,不再为CNU1的上网业务分配上行带宽。
另外,本发明提出了一种CNU。图8是在本发明一个实施例中CNU的内部结构示意图。参见图8,该CNU包括:
令牌桶单元,用于保存CNU支持的每一种上行业务对应的令牌桶,在上行传输周期开始时,根据每一种上行业务对应的SLA参数更新该上行业务对应的令牌桶中的令牌数;
上行数据缓存单元,用于保存每一种上行业务的数据;
流量上报单元,用于在上行传输周期中,根据令牌桶单元中每一种上行业务对应的令牌桶中的令牌数,以及上行数据缓存单元中保存的上行业务数据,构造携带上行业务流量信息的REPORT报文,并发送给CLT。
其中,所述令牌桶单元可以包括:
令牌桶保存子单元,用于保存CNU支持的每一种上行业务对应的令牌桶;
令牌桶计算子单元,用于在上行传输周期开始时,判断令牌桶保存子单元中每一种上行业务对应的令牌桶是否已满,如果是,则保持该令牌桶的令牌数不变,否则,得到该种上行业务对应的SLA参数指示的令牌数,将得到的令牌数增加到令牌桶保存子单元中该种上行业务对应的令牌桶中。
其中,所述上行数据缓存单元包括每一种上行业务对应的队列,每一个队列中存储有对应上行业务的数据包;
所述流量上报单元包括:
REPORT报文构造子单元,用于在上行传输周期中,对于支持的每一种上行业务,将令牌桶单元中该上行业务对应的令牌桶中的当前令牌数确定为该上行业务对应的水阈线的值,将该上行业务的队列中小于水阈线的前整数个数据包的长度值写入REPORT报文中对应于该种上行业务的第一队列长度字段,将该上行业务的队列中除去该第一队列长度字段表示长度的队列总长度值写入REPORT报文中对应于该种上行业务的第二队列长度字段。
REPORT报文发送子单元,用于将REPORT报文构造子单元生成的REPORT报文发送给CLT。
在本发明一个实施例中,所述REPORT报文构造子单元进一步将该种上行业务的队列中未计算在第一队列长度字段表示的长度内且介于水阈线两边的数据包长度值写入REPORT报文中对应于该种上行业务的第三队列长度字段。
较佳地,该CNU进一步包括队列处理单元,用于监测每一种上行业务的队列,当监测到一种上行业务的队列已满时,随机丢弃介于该上行业务对应的水阈线与该队列的队列尾之间的数据包。
CNU中还可以进一步包括:
上行数据发送单元,用于在上行传输周期中,判断令牌桶单元中每一种上行业务对应的令牌桶中是否有令牌,如果有,则根据为该种上行业务分配的带宽发送该种上行业务的数据。
本发明还提出了一种CLT。图9是在本发明一个实施例中CLT的内部结构示意图。参见图9,CLT包括:
上行流量信息处理单元,用于接收各个CNU根据每一种上行业务的令牌数构造的携带上行业务流量信息的REPORT报文,从REPORT报文中获取各个上行业务流量信息;
带宽分配单元,用于根据上行流量信息处理单元所获取的上行业务流量信息,为各个CNU分配上行带宽。
其中,所述上行流量信息处理单元包括:
上行流量信息接收子单元,用于接收各个CNU根据每一种上行业务的令牌数构造的携带上行业务流量信息的REPORT报文;
上行流量信息获取子单元,用于从各个REPORT报文中获取对应每种上行业务的第一队列长度字段的值,以及对应每种上行业务的第二队列长度字段的值;
所述带宽分配单元包括:
剩余带宽保存子单元,用于实时更新所保存的剩余带宽;
分配执行子单元,用于按照各个CNU中上行业务的优先级,首先依次为各个CNU分配其最高优先级上行业务的上行带宽,然后依次为各个CNU分配其次高优先级上行业务的上行带宽,直至依次为各个CNU分配最低优先级上行业务的上行带宽;其中,在依次为各个CNU分别分配同一优先级上行业务的上行带宽时,首先依次为各个CNU分配该同一优先级上行业务的第一队列长度字段的值对应的上行带宽,然后,依次根据各个CNU该同一优先级上行业务的第二队列长度字段的值依次为各个CNU分配对应的上行带宽。
所述上行流量信息获取子单元进一步用于从各个REPORT报文中获取对应每种上行业务的第三队列长度字段的值;
所述分配执行子单元,在为各个CNU分配同一优先级上行业务的第一队列长度字段的值对应的上行带宽之后,并在根据各个CNU该同一优先级上行业务的第二队列长度字段的值依次为各个CNU分配对应的上行带宽之前,进一步依次为各个CNU分配该同一优先级上行业务的第三队列长度字段的值对应的上行带宽,并且,在执行所述的根据各个CNU该同一优先级上行业务的第二队列长度字段的值依次为各个CNU分配对应的上行带宽时,该分配最终根据的为第二队列长度字段的值减去第三队列长度字段的值。
CLT可以进一步包括:模式设置单元,用于将带宽分配模式设置为共享模式或独立模式;
所述分配执行子单元,在依次为各个CNU分配该同一优先级上行业务的第三队列长度字段的值对应的上行带宽之后,并在根据各个CNU该同一优先级上行业务的第二队列长度字段的值依次为各个CNU分配对应的上行带宽之前,进一步判断当前的分配模式是共享模式还是独立模式,如果是共享模式,则继续执行所述的根据各个CNU该同一优先级上行业务的第二队列长度字段的值依次为各个CNU分配对应的上行带宽的处理,如果是独立模式,则结束所有分配带宽的处理。
另外,本发明还提出了一种分配带宽的系统。该系统包括CNU以及CLT,其中,CNU可以采用本发明上述实施例提供的任意一种CNU来实现,CLT可以采用本发明上述实施例提供的任意一种CLT来实现。
总之,以上所述仅为本发明的较佳实施例而已,并非用于限定本发明的保护范围。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (21)
1.一种分配带宽的方法,其特征在于,为每一个同轴电缆承载以太网终端CNU的每一种上行业务设置对应的令牌桶,该方法包括:
在上行传输周期中,每一个CNU首先根据每一种上行业务对应的服务等级协议SLA参数更新该上行业务对应的令牌桶中的令牌数,然后,根据每一种上行业务对应的令牌桶中的令牌数,构造携带上行业务流量信息的报告REPORT报文,并发送给同轴电缆承载以太网头端CLT;
CLT根据每一个CNU上报的REPORT报文,为每一个CNU分配上行带宽。
2.根据权利要求1所述的方法,其特征在于,所述根据每一种上行业务对应的SLA参数更新该上行业务对应的令牌桶中的令牌数的步骤包括:判断每一种上行业务对应的令牌桶是否已满,如果是,则保持该令牌桶的令牌数不变,否则,得到该种上行业务对应的SLA参数指示的令牌数,将得到的令牌数增加到该种上行业务对应的令牌桶中。
3.根据权利要求1或2所述的方法,其特征在于,该方法进一步包括:对于CNU支持的每一种上行业务,在REPORT报文中均设置对应的第一队列长度字段和第二队列长度字段;
所述构造携带上行业务流量信息的REPORT报文的步骤包括:每一个CNU对于支持的每一种上行业务,将该上行业务对应的令牌桶中的当前令牌数确定为该上行业务对应的水阈线的值,将该上行业务的队列中小于水阈线的前整数个数据包的长度值写入REPORT报文中对应于该种上行业务的第一队列长度字段,将该上行业务的队列中除去该第一队列长度字段表示长度的队列总长度值写入REPORT报文中对应于该种上行业务的第二队列长度字段。
4.根据权利要求3所述的方法,其特征在于,所述分配上行带宽的步骤包括:所述CLT按照各个CNU中上行业务的优先级,首先依次为各个CNU分配其最高优先级上行业务的上行带宽,然后依次为各个CNU分配其次高优先级上行业务的上行带宽,直至依次为各个CNU分配最低优先级上行业务的上行带宽;
其中,在依次为各个CNU分别分配同一优先级上行业务的上行带宽时,首先依次为各个CNU分配该同一优先级上行业务的第一队列长度字段的值对应的上行带宽,然后,依次根据各个CNU该同一优先级上行业务的第二队列长度字段的值依次为各个CNU分配对应的上行带宽。
5.根据权利要求4所述的方法,其特征在于,该方法进一步包括:对于CNU支持的每一种上行业务,在REPORT报文中均设置对应的第三队列长度字段;
所述构造携带上行业务流量信息的REPORT报文的步骤进一步包括:将该上行业务的队列中未计算在第一队列长度字段表示的长度内且介于水阈线两边的数据包长度值写入REPORT报文中对应于该种上行业务的第三队列长度字段。
6.根据权利要求5所述的方法,其特征在于,在为各个CNU分配同一优先级上行业务的第一队列长度字段的值对应的上行带宽之后,并在根据各个CNU该同一优先级上行业务的第二队列长度字段的值依次为各个CNU分配对应的上行带宽之前,进一步包括:依次为各个CNU分配该同一优先级上行业务的第三队列长度字段的值对应的上行带宽,则
在执行所述的根据各个CNU该同一优先级上行业务的第二队列长度字段的值依次为各个CNU分配对应的上行带宽时,该分配最终根据的为第二队列长度字段的值减去第三队列长度字段的值。
7.根据权利要求6所述的方法,其特征在于,该方法进一步包括:设置低优先级业务的带宽分配模式为共享模式或独立模式;
在依次为各个CNU分配该同一优先级上行业务的第三队列长度字段的值对应的上行带宽之后,并在根据各个CNU该同一优先级上行业务的第二队列长度字段的值依次为各个CNU分配对应的上行带宽之前,进一步包括:判断当前的分配模式是共享模式还是独立模式,如果是共享模式,则继续执行所述的根据各个CNU该同一优先级上行业务的第二队列长度字段的值依次为各个CNU分配对应的上行带宽的步骤,如果是独立模式,则结束流程。
8.根据权利要求4至7中任意一项所述的方法,其特征在于,在为各个CNU分配所指定的同一低优先级上行业务的第一队列长度字段的值对应的上行带宽时,首先保证为CNU发送的REPORT报文分配上行带宽,然后在剩余带宽足够时为该指定同一优先级上行业务的第一队列长度字段的值分配对应的上行带宽。
9.根据权利要求1至7中任意一项所述的方法,其特征在于,该方法进一步包括:对于每一种上行业务的队列,如果该队列已满,则随机丢弃介于该上行业务对应的水阈线与队列尾之间的数据包。
10.根据权利要求1至7中任意一项所述的方法,其特征在于,在每一个CNU根据每一种上行业务对应的SLA参数更新该上行业务对应的令牌桶中的令牌数之前,进一步包括:该CNU判断该种上行业务对应的令牌桶中的令牌数是否为负,如果是,
则在根据该种上行业务对应的SLA参数更新该上行业务对应的令牌桶中的令牌数之后,在构造所述REPORT报文时,在REPORT报文中不再携带该种上行业务的流量信息。
11.一种CNU,其特征在于,该CNU包括:
令牌桶单元,用于保存CNU支持的每一种上行业务对应的令牌桶,在上行传输周期开始时,根据每一种上行业务对应的SLA参数更新该上行业务对应的令牌桶中的令牌数;
上行数据缓存单元,用于保存每一种上行业务的数据;
流量上报单元,用于在上行传输周期中,根据令牌桶单元中每一种上行业务对应的令牌桶中的令牌数,以及上行数据缓存单元中保存的上行业务数据,构造携带上行业务流量信息的REPORT报文,并发送给CLT。
12.根据权利要求11所述的CNU,其特征在于,所述令牌桶单元包括:
令牌桶保存子单元,用于保存CNU支持的每一种上行业务对应的令牌桶;
令牌桶计算子单元,用于在上行传输周期开始时,判断令牌桶保存子单元中每一种上行业务对应的令牌桶是否已满,如果是,则保持该令牌桶的令牌数不变,否则,得到该种上行业务对应的SLA参数指示的令牌数,将得到的令牌数增加到令牌桶保存子单元中该种上行业务对应的令牌桶中。
13.根据权利要求11所述的CNU,其特征在于,所述上行数据缓存单元包括每一种上行业务对应的队列,每一个队列中存储有对应上行业务的数据包;
所述流量上报单元包括:
REPORT报文构造子单元,用于在上行传输周期中,对于支持的每一种上行业务,将令牌桶单元中该上行业务对应的令牌桶中的当前令牌数确定为该上行业务对应的水阈线的值,将该上行业务的队列中小于水阈线的前整数个数据包的长度值写入REPORT报文中对应于该种上行业务的第一队列长度字段,将该上行业务的队列中除去该第一队列长度字段表示长度的队列总长度值写入REPORT报文中对应于该种上行业务的第二队列长度字段。
REPORT报文发送子单元,用于将REPORT报文构造子单元生成的REPORT报文发送给CLT。
14.根据权利要求13所述的CNU,其特征在于,所述REPORT报文构造子单元进一步将该种上行业务的队列中未计算在第一队列长度字段表示的长度内且介于水阈线两边的数据包长度值写入REPORT报文中对应于该种上行业务的第三队列长度字段。
15.根据权利要求13所述的CNU,其特征在于,该CNU进一步包括队列处理单元,用于监测每一种上行业务的队列,当监测到一种上行业务的队列已满时,随机丢弃介于该上行业务对应的水阈线与该队列的队列尾之间的数据包。
16.根据权利要求11至15中任意一项所述的CNU,其特征在于,该CNU进一步包括:
上行数据发送单元,用于在上行传输周期中,判断令牌桶单元中每一种上行业务对应的令牌桶中是否有令牌,如果有,则根据为该种上行业务分配的带宽发送该种上行业务的数据。
17.一种CLT,其特征在于,包括:
上行流量信息处理单元,用于接收各个CNU根据每一种上行业务的令牌数构造的携带上行业务流量信息的REPORT报文,从REPORT报文中获取各个上行业务流量信息;
带宽分配单元,用于根据上行流量信息处理单元所获取的上行业务流量信息,为各个CNU分配上行带宽。
18.根据权利要求17所述的CLT,其特征在于,
所述上行流量信息处理单元包括:
上行流量信息接收子单元,用于接收各个CNU根据每一种上行业务的令牌数构造的携带上行业务流量信息的REPORT报文;
上行流量信息获取子单元,用于从各个REPORT报文中获取对应每种上行业务的第一队列长度字段的值,以及对应每种上行业务的第二队列长度字段的值;
所述带宽分配单元包括:
剩余带宽保存子单元,用于实时更新所保存的剩余带宽;
分配执行子单元,用于按照各个CNU中上行业务的优先级,首先依次为各个CNU分配其最高优先级上行业务的上行带宽,然后依次为各个CNU分配其次高优先级上行业务的上行带宽,直至依次为各个CNU分配最低优先级上行业务的上行带宽;其中,在依次为各个CNU分别分配同一优先级上行业务的上行带宽时,首先依次为各个CNU分配该同一优先级上行业务的第一队列长度字段的值对应的上行带宽,然后,依次根据各个CNU该同一优先级上行业务的第二队列长度字段的值依次为各个CNU分配对应的上行带宽。
19.根据权利要求18所述的CLT,其特征在于,所述上行流量信息获取子单元进一步用于从各个REPORT报文中获取对应每种上行业务的第三队列长度字段的值;
所述分配执行子单元,在为各个CNU分配同一优先级上行业务的第一队列长度字段的值对应的上行带宽之后,并在根据各个CNU该同一优先级上行业务的第二队列长度字段的值依次为各个CNU分配对应的上行带宽之前,进一步依次为各个CNU分配该同一优先级上行业务的第三队列长度字段的值对应的上行带宽,并且,在执行所述的根据各个CNU该同一优先级上行业务的第二队列长度字段的值依次为各个CNU分配对应的上行带宽时,该分配最终根据的为第二队列长度字段的值减去第三队列长度字段的值。
20.根据权利要求19所述的CLT,其特征在于,该CLT进一步包括:模式设置单元,用于将带宽分配模式设置为共享模式或独立模式;
所述分配执行子单元,在依次为各个CNU分配该同一优先级上行业务的第三队列长度字段的值对应的上行带宽之后,并在根据各个CNU该同一优先级上行业务的第二队列长度字段的值依次为各个CNU分配对应的上行带宽之前,进一步判断当前的分配模式是共享模式还是独立模式,如果是共享模式,则继续执行所述的根据各个CNU该同一优先级上行业务的第二队列长度字段的值依次为各个CNU分配对应的上行带宽的处理,如果是独立模式,则结束所有分配带宽的处理。
21.一种分配带宽的系统,其特征在于,该系统包括如权利要求11至16中任意一项所述的CNU以及如权利要求17至20中任意一项所述的CLT。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN200710175347A CN100581139C (zh) | 2007-09-28 | 2007-09-28 | 一种分配带宽的方法、设备和系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN200710175347A CN100581139C (zh) | 2007-09-28 | 2007-09-28 | 一种分配带宽的方法、设备和系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN101150516A true CN101150516A (zh) | 2008-03-26 |
CN100581139C CN100581139C (zh) | 2010-01-13 |
Family
ID=39250865
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN200710175347A Expired - Fee Related CN100581139C (zh) | 2007-09-28 | 2007-09-28 | 一种分配带宽的方法、设备和系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN100581139C (zh) |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101282305B (zh) * | 2008-05-22 | 2010-07-21 | 杭州华三通信技术有限公司 | 分布式系统中的带宽控制方法及业务板 |
WO2010099700A1 (zh) * | 2009-03-04 | 2010-09-10 | 中国移动通信集团公司 | 上行资源分配、状态报告发送方法及装置 |
CN102469007A (zh) * | 2010-11-08 | 2012-05-23 | 高通创锐讯通讯科技(上海)有限公司 | Onu计算上行队列的上报长度的方法 |
CN102740173A (zh) * | 2011-04-05 | 2012-10-17 | 美国博通公司 | 对epon mac流量进行分速率的方法以及物理层芯片 |
CN102984752A (zh) * | 2009-03-04 | 2013-03-20 | 中国移动通信集团公司 | 状态报告发送方法及移动终端 |
US9900099B2 (en) | 2013-05-17 | 2018-02-20 | Zte Corporation | Method and system for scheduling data message in PON and EOC networking, and related device |
-
2007
- 2007-09-28 CN CN200710175347A patent/CN100581139C/zh not_active Expired - Fee Related
Cited By (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101282305B (zh) * | 2008-05-22 | 2010-07-21 | 杭州华三通信技术有限公司 | 分布式系统中的带宽控制方法及业务板 |
WO2010099700A1 (zh) * | 2009-03-04 | 2010-09-10 | 中国移动通信集团公司 | 上行资源分配、状态报告发送方法及装置 |
CN102984752A (zh) * | 2009-03-04 | 2013-03-20 | 中国移动通信集团公司 | 状态报告发送方法及移动终端 |
CN102984752B (zh) * | 2009-03-04 | 2016-09-07 | 中国移动通信集团公司 | 状态报告发送方法及移动终端 |
CN102469007A (zh) * | 2010-11-08 | 2012-05-23 | 高通创锐讯通讯科技(上海)有限公司 | Onu计算上行队列的上报长度的方法 |
CN102740173A (zh) * | 2011-04-05 | 2012-10-17 | 美国博通公司 | 对epon mac流量进行分速率的方法以及物理层芯片 |
CN102740173B (zh) * | 2011-04-05 | 2015-04-01 | 美国博通公司 | 对epon mac流量进行分速率的方法以及物理层芯片 |
US9900099B2 (en) | 2013-05-17 | 2018-02-20 | Zte Corporation | Method and system for scheduling data message in PON and EOC networking, and related device |
Also Published As
Publication number | Publication date |
---|---|
CN100581139C (zh) | 2010-01-13 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US8397267B2 (en) | Hi-split upstream design for DOCSIS | |
EP2222005B1 (en) | Dynamic bandwidth allocation circuit, dynamic bandwidth allocation method, dynamic bandwidth allocation program and recording medium | |
US6778557B1 (en) | Point-to-multipoint communication system | |
US5926476A (en) | Network architecture for broadband data communication over a shared medium | |
US6310886B1 (en) | Method and apparatus implementing a multimedia digital network | |
CN100581139C (zh) | 一种分配带宽的方法、设备和系统 | |
US9008121B2 (en) | Technique for accommodating electronic components on a multilayer signal routing device | |
US20050047783A1 (en) | Method and apparatus for dynamically allocating upstream bandwidth in passive optical networks | |
EP2378721B1 (en) | Bandwidth allocation method and routing apparatus | |
AU5723400A (en) | Method and apparatus for bandwidth allocation | |
EP2560323A1 (en) | Scheduling in a two-tier network | |
CN101141407B (zh) | 一种分配带宽的方法、设备和系统 | |
US20080037575A1 (en) | System, method, and computer program product for scheduling burst profile changes based on minislot count | |
JPWO2010137073A1 (ja) | Ponシステム、ponシステムにおける局側装置およびその制御方法 | |
KR20090119856A (ko) | 수동 광 가입자 망 시스템에 이용되는 동적 대역폭 할당 장치 및 그 구현 방법 | |
US10735129B2 (en) | Bandwidth allocation apparatus and method for providing low-latency service in optical network | |
WO2012116540A1 (zh) | 流量管理的方法和管理装置 | |
CN110492960A (zh) | 基于以太网的同步通信方法 | |
CN101765033A (zh) | 应用于同轴承载以太网设备的动态时隙分配方法 | |
JP3734732B2 (ja) | 動的帯域割当回路、動的帯域割当方法、動的帯域割当プログラムおよび記録媒体 | |
CN103813219A (zh) | 以太网无源光网络(epon)中的总开销降低 | |
CN1196145A (zh) | 向具有多级优先级的用户提供混合式多接入协议的设备、路由器、方法和系统 | |
JP2003087281A (ja) | 動的帯域割当回路、動的帯域割当方法、動的帯域割当プログラムおよび記録媒体 | |
CN108289128B (zh) | 管理物联网终端的方法、装置和计算机可读存储介质 | |
CN102075825A (zh) | 光通信系统中的上行带宽的管理方法和装置 |
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 | ||
CP03 | Change of name, title or address |
Address after: 310052 Binjiang District Changhe Road, Zhejiang, China, No. 466, No. Patentee after: Xinhua three Technology Co., Ltd. Address before: 310053 Hangzhou hi tech Industrial Development Zone, Zhejiang province science and Technology Industrial Park, No. 310 and No. six road, HUAWEI, Hangzhou production base Patentee before: Huasan Communication Technology Co., Ltd. |
|
CP03 | Change of name, title or address | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20100113 Termination date: 20200928 |
|
CF01 | Termination of patent right due to non-payment of annual fee |