发明内容
本发明的目的是克服了上述现有技术中的缺点,提供一种网络通信性能较高、能够很好适应EPON系统开销带宽授权的存在和以太网业务的变帧长的特点、带宽授权性能较好、网络传输效率较高、能够较好满足ONU上行业务的带宽需求、支持TDM业务和以太网业务、适用范围较为广泛的以太网无源光网络多业务动态带宽授权的方法。
为了实现上述的目的,本发明的以太网无源光网络多业务动态带宽授权的方法如下:
该以太网无源光网络多业务动态带宽授权的方法,其主要特点是,包括光线路终端设备OLT和数个光网络单元设备ONU,所述的光线路终端设备OLT的上行链路接口和下行链路接口通过光分布网路和分光器分别与所述的各个光网络单元设备ONU的上行链路接口和下行链路接口相连接,所述的光线路终端设备OLT中具有带宽分配和带宽授权分发装置和业务节点接口,且该带宽分配和带宽授权分发装置与所述的光线路终端设备OLT的上行链路接口和下行链路接口均相连接,所述的带宽分配和带宽授权分发装置包括带宽分配单元、带宽授权计算单元和带宽授权安排与分发单元,所述的光线路终端设备OLT依次通过所述的带宽分配单元、带宽授权计算单元、带宽授权安排与分发单元与所述的下行链路接口,所述的动态带宽授权的方法包括以下步骤:
(1)带宽分配周期计时器开始计时;
(2)判断带宽分配周期计时器是否超时;
(3)如果未超时,则重复上述步骤(1);
(4)如果超时,则带宽分配单元进行相应的带宽分配计算,并分别得到各个ONU的MPCP带宽值、TDM带宽配置值、以太网静态带宽配置值和以太网动态带宽变量;
(5)带宽授权计算单元对各个ONU进行初始化操作;
(6)带宽授权计算单元根据相应的MPCP带宽值对各个ONU进行分配MPCP带宽授权的操作;
(7)带宽授权计算单元根据相应的TDM带宽配置值对各个ONU进行分配TDM带宽授权的操作;
(8)带宽授权计算单元根据相应的以太网静态带宽配置值和以太网动态带宽变量对各个ONU进行以太网业务带宽的累计操作;
(9)带宽授权计算单元对各个ONU依次进行以太网带宽授权的第一轮聚合算法到第六轮聚合算法计算操作;
(10)带宽授权安排与分发单元将上述的带宽授权结果通过下行链路的MPCP Gate帧发送至各个ONU;
(11)将带宽分配周期计时器归零,并重新开始计时;
(12)重复上述步骤(1)。
该以太网无源光网络多业务动态带宽授权的方法的对各个ONU进行初始化操作包括以下步骤:
(1)根据带宽分配周期和上行线路总带宽并按照以下计算规则计算剩余带宽授权变量和开销带宽授权总和变量:
剩余带宽授权变量=带宽分配周期×上行线路总带宽;
开销带宽授权总和变量=0;
(2)依次轮询全部的ONU,包括没有注册的ONU;
(3)对轮询到的每个ONU,根据开销时间并按照以下计算规则计算开销带宽授权变量、预期带宽授权变量和总计带宽授权变量:
开销带宽授权变量=开销时间×上行线路总带宽;
预期带宽授权变量=0;
总计带宽授权变量=0;
其中,开销时间=ONU打开激光器的时间+ONU关闭激光器的时间+OLT激光器的同步时间。
该以太网无源光网络多业务动态带宽授权的方法的对各个ONU进行分配MPCP带宽授权的操作包括以下步骤:
(1)依次轮询全部的ONU,包括没有注册的ONU;
(2)对于轮询到的ONU,根据所述的MPCP带宽值进行实际带宽授权变量、总计带宽授权变量、剩余带宽授权变量和开销带宽授权总和变量的计算操作。
该以太网无源光网络多业务动态带宽授权的方法的对各个ONU进行分配TDM带宽授权的操作包括以下步骤:
(1)依次轮询全部已经注册的ONU;
(2)对于轮询到的每一个ONU,根据所述的TDM带宽值作为输入量进行实际带宽授权变量、总计带宽授权变量、剩余带宽授权变量和开销带宽授权总和变量的计算操作。
该以太网无源光网络多业务动态带宽授权的方法的对各个ONU进行以太网业务带宽的累计操作包括以下步骤:
(1)依次轮询全部已经注册的ONU;
(2)对于轮询到的每一个ONU,根据以太网静态带宽配置值和以太网动态带宽变量并按照以下计算规则计算以太网带宽漏桶计数器变量:
以太网带宽漏桶计数器变量=以太网带宽漏桶计数器变量+以太网静态带宽配置值+以太网动态带宽变量。
该以太网无源光网络多业务动态带宽授权的方法的对各个ONU进行以太网带宽授权的第一轮聚合算法计算操作包括以下步骤:
(1)依次轮询全部已经注册的ONU;
(2)对于轮询到的每一个ONU,如果总计带宽授权变量大于零,同时以太网带宽漏桶计数器变量大于以太网带宽授权高门限配置值,则根据所述的以太网带宽漏桶计数器变量作为输入量进行实际带宽授权变量、总计带宽授权变量、剩余带宽授权变量和开销带宽授权总和变量的计算操作;
(3)根据实际带宽授权变量并按照以下计算规则计算以太网带宽漏桶计数器变量:
以太网带宽漏桶计数器变量=以太网带宽漏桶计数器变量-实际带宽授权变量。
该以太网无源光网络多业务动态带宽授权的方法的对各个ONU进行以太网带宽授权的第二轮聚合算法计算操作包括以下步骤:
(1)依次轮询全部已经注册的ONU;
(2)对于轮询到的每一个ONU,如果总计带宽授权变量大于零,同时以太网带宽漏桶计数器变量大于以太网带宽授权低门限配置值,则根据所述的以太网带宽漏桶计数器变量作为输入量进行实际带宽授权变量、总计带宽授权变量、剩余带宽授权变量和开销带宽授权总和变量的计算操作;
(3)根据实际带宽授权变量并按照以下计算规则计算以太网带宽漏桶计数器变量:
以太网带宽漏桶计数器变量=以太网带宽漏桶计数器变量-实际带宽授权变量。
该以太网无源光网络多业务动态带宽授权的方法的对各个ONU进行以太网带宽授权的第三轮聚合算法计算操作包括以下步骤:
(1)依次轮询全部已经注册的ONU;
(2)对于轮询到的每一个ONU,如果以太网带宽漏桶计数器变量大于以太网带宽授权高门限配置值,则根据所述的以太网带宽漏桶计数器变量作为输入量进行实际带宽授权变量、总计带宽授权变量、剩余带宽授权变量和开销带宽授权总和变量的计算操作;
(3)根据实际带宽授权变量并按照以下计算规则计算以太网带宽漏桶计数器变量:
以太网带宽漏桶计数器变量=以太网带宽漏桶计数器变量-实际带宽授权变量。
该以太网无源光网络多业务动态带宽授权的方法的对各个ONU进行以太网带宽授权的第四轮聚合算法计算操作包括以下步骤:
(1)依次轮询全部已经注册的ONU;
(2)对于轮询到的每一个ONU,如果以太网带宽漏桶计数器变量大于以太网带宽授权低门限配置值,则根据所述的以太网带宽漏桶计数器变量作为输入量进行实际带宽授权变量、总计带宽授权变量、剩余带宽授权变量和开销带宽授权总和变量的计算操作;
(3)根据实际带宽授权变量并按照以下计算规则计算以太网带宽漏桶计数器变量:
以太网带宽漏桶计数器变量=以太网带宽漏桶计数器变量-实际带宽授权变量。
该以太网无源光网络多业务动态带宽授权的方法的对各个ONU进行以太网带宽授权的第五轮聚合算法计算操作包括以下步骤:
(1)依次轮询全部已经注册的ONU;
(2)对于轮询到的每一个ONU,如果总计带宽授权变量大于零,则根据所述的以太网带宽漏桶计数器变量作为输入量进行实际带宽授权变量、总计带宽授权变量、剩余带宽授权变量和开销带宽授权总和变量的计算操作;
(3)根据实际带宽授权变量并按照以下计算规则计算以太网带宽漏桶计数器变量:
以太网带宽漏桶计数器变量=以太网带宽漏桶计数器变量-实际带宽授权变量。
该以太网无源光网络多业务动态带宽授权的方法的对各个ONU进行以太网带宽授权的第六轮聚合算法计算操作包括以下步骤:
(1)依次轮询全部已经注册的ONU;
(2)对于轮询到的每一个ONU,根据所述的以太网带宽漏桶计数器变量作为输入量进行实际带宽授权变量、总计带宽授权变量、剩余带宽授权变量和开销带宽授权总和变量的计算操作;
(3)根据实际带宽授权变量并按照以下计算规则计算以太网带宽漏桶计数器变量:
以太网带宽漏桶计数器变量=以太网带宽漏桶计数器变量-实际带宽授权变量。
该以太网无源光网络多业务动态带宽授权的方法的根据输入量进行实际带宽授权变量、总计带宽授权变量、剩余带宽授权变量和开销带宽授权总和变量的计算操作包括以下步骤:
(1)如果剩余带宽授权变量为零,则:实际带宽授权变量=0,且结束本次带宽分配周期内的带宽授权计算操作;
(2)否则,如果输入量为零,则:实际带宽授权变量=0;
(3)否则,如果总计带宽授权变量大于零,则进行不包括开销带宽授权的带宽授权计算操作;
(4)否则,如果剩余带宽授权变量大于相应ONU的开销带宽授权变量,则进行包括开销带宽授权的带宽授权计算操作;
(5)否则,实际带宽授权变量=0。
该以太网无源光网络多业务动态带宽授权的方法的不包括开销带宽授权的带宽授权计算操作包括以下步骤:
(1)如果剩余带宽授权变量大于输入量,则根据该输入量并根据以下计算规则计算实际带宽授权变量、总计带宽授权变量和剩余带宽授权变量:
实际带宽授权变量=输入量;
总计带宽授权变量=总计带宽授权变量+输入量;
剩余带宽授权变量=剩余带宽授权变量-输入量;
(2)否则,根据以下计算规则计算实际带宽授权变量、总计带宽授权变量和剩余带宽授权变量:
实际带宽授权变量=剩余带宽授权变量;
总计带宽授权变量=总计带宽授权变量+剩余带宽授权变量;
剩余带宽授权变量=0;
且结束本次带宽分配周期内的带宽授权计算操作。
该以太网无源光网络多业务动态带宽授权的方法的包括开销带宽授权的带宽授权计算操作包括以下步骤:
(1)根据开销带宽授权变量并按照以下计算规则计算开销带宽授权总和变量:
开销带宽授权总和变量=开销带宽授权总和变量+开销带宽授权变量;
(2)如果剩余带宽授权变量大于输入量与开销带宽授权变量的总和,则根据该输入量和开销带宽授权变量并根据以下计算规则计算实际带宽授权变量、总计带宽授权变量和剩余带宽授权变量:
实际带宽授权变量=输入量;
总计带宽授权变量=总计带宽授权变量+输入量+开销带宽授权变量;
剩余带宽授权变量=剩余带宽授权变量-输入量-开销带宽授权变量;
(3)否则,根据开销带宽授权变量并根据以下计算规则计算实际带宽授权变量、总计带宽授权变量和剩余带宽授权变量:
实际带宽授权变量=剩余带宽授权变量-开销带宽授权变量;
总计带宽授权变量=总计带宽授权变量+剩余带宽授权变量;
剩余带宽授权变量=0;
且结束本次带宽分配周期内的带宽授权计算操作。
该以太网无源光网络多业务动态带宽授权的方法的带宽分配周期超时时间为250微秒~1毫秒。
该以太网无源光网络多业务动态带宽授权的方法的带宽分配周期超时时间为500微秒。
采用了该发明的以太网无源光网络多业务动态带宽授权的方法,由于按照特定的带宽分配周期根据EPON系统开销带宽授权的存在和以太网业务的变帧长的特点,并根据特定的算法计算得到为每一个ONU所分配的带宽授权信息,从而使得网络通信性能较高,带宽授权性能较好,网络传输效率较高,能够较好满足ONU上行业务的带宽需求;不仅如此,采用上述方法,能够全面支持TDM业务,如TDM Service,包括POTS、E1、T1等,同时较好的支持以太网业务,如Ethernet Service,包括VoIP、IPTV、视频点播等;而且适用范围较为广泛,对光纤通信网络和宽带通信技术的发展打下了良好的基础。
具体实施方式
PON |
Passive Optical Network |
无源光网络 |
EPON |
Ethernet Passive OpticalNetwork |
以太网无源光网络 |
MPCP |
Multi-Point Control Protocol |
多点控制协议 |
FTTH |
Fiber To The Home |
光纤到户 |
FTTB |
Fiber To The Building |
光纤到楼 |
OLT |
Optical Line Terminal |
光线路终端 |
ONU |
Optical Netword Units |
光网络单元 |
POS |
Passive Optical Splitter |
无源分光器 |
ODN |
Optical Distribution Network |
光分布网络 |
SBA |
Static Bandwidth Allocation |
静态带宽分配 |
DBA |
Dynamic BandwidthAllocation |
动态带宽分配 |
MAC |
Media Access Control |
媒体接入控制 |
SNI |
Service Node Interface |
业务节点接口 |
UNI |
User Network Interface |
用户网络接口 |
|
Ethernet |
以太网 |
|
Frame |
帧,或报文,本文不做区分 |
|
MPCP Frame |
多点控制协议帧 |
|
Ethernet Service、EthernetFrame、Ethernet Data |
以太网业务、以太网帧、以太网数据含义雷同,本文不做区分 |
|
Transmission Window |
传输窗口,或发送窗口,本文不做区分 |
|
Grant |
带宽授权,或带宽许可,本文不做区分 |
|
Request |
请求(也就是ONU的动态带宽请求信息) |
|
Report |
报告(ONU上行动态带宽请求信息上报) |
下面首先介绍一下EPON系统:
1.EPON系统基本构成
一套典型的EPON系统主要由3部分构成:光线路终端(Optical Line Terminal,OLT)、光分布网络(Optical Distribution Network,ODN)和光网络单元/光网络终端(Optical NetworkUnits/Terminal,ONU/ONT)。其中:OLT位于局端,负责分配和控制信道的连接,并对整个EPON网络进行实时监控、管理及维护;ONU/ONT位于用户端(或者说用户驻地侧),实现用户终端的接入;ODN由无源分光器(Passive Optical Splitter,POS,又叫无源光纤分支器、无源光分路器)和光纤线路构成,实现OLT和各ONU之间的网络连接,802.3ah工作组EFM(Ethernet in the First Mile Study)确定无源分光器的分光比在1∶16到1∶128之间。ONU与ONT的区别在于ONT直接位于用户端,而ONU与用户间还有其它的网络,但在本专利族中不做区分,一律用ONU表示。
EPON采用树形拓扑结构,OLT位于根节点,通过ODN与各个ONU相连,光纤线路单一且共享,并使用成本低廉的无源分光器,把信号从单一光纤分散至独立的用户,之所以被称呼为“无源光网络”是因为有别于传统的电信机房局端及客户端的连接,这其中并没有一个有源电子设备装置介于该接入网络之间,这样的优势大大的简化了网络系统的操作、维护及成本,另一个优点为相比于一个点对点的光纤网络中,其所使用的光纤并不需要很多。
2.EPON系统基本原理
EPON系统使用波分复用技术(WDM:Wavelength Division Multiplexer),上下行信号分别使用不同的波长、但在同一根光纤中传送,速率对称(均为1Gbit/s),传输距离可达20km。从OLT到ONU的方向称为下行方向(或下行链路,Downstream Link),反之称为上行方向(或上行链路,Upstream Link)。
下行链路,OLT以单发送复制广播(SCB:Single Copy Broadcast)的方式向所有的ONU发送以太协议分组(也就是以太网帧)。通过发现和注册过程(Discovery and Registeredprocess),OLT给成功完成注册的ONU分配LLID(Logical Link ID,逻辑链路标识),一个ONU至少支持一个LLID,然后OLT把下行发送的以太网帧的目的ONU的LLID放在帧前导符(Preamble)中。待帧数据到达ONU后,所有ONU都会根据前导符中所含的LLID和自己的LLID进行判断,以决定是否接收该帧,这样就保证了只有目的ONU会正确接收该帧。
上行链路可以采用多种接入技术:频分多址复用(FDMA)、时分多址复用(TDMA)、波分多址复用(WDMA)、码分多址复用(CDMA)等。其中时分多址复用相对于其它复用技术有几个明显的优势:全部ONU只需要一个OLT转发器;整个EPON系统上行链路只需要一个波长;技术简单,成本低廉。现有的EPON系统和产品几乎都是使用时分复用接入技术。时分复用的工作原理是:OLT安排好各ONU发送上行信号的时隙,并发出时隙分配帧(也就是MPCP Gate帧,内含给ONU分配的带宽授权或带宽许可);ONU接收并解析此带宽授权,根据OLT分配给自己的时隙,通过上行发送窗口,向OLT发送上行信号、传输业务数据,这样众多的ONU就可以共享上行信道和有限的带宽。
在下行方向,OLT提供面向无源光纤网络的光纤接口;在上行方向,OLT提供千兆以太网(Gigabit Ethernet,GE)业务节点接口(Service Node Interface,SNI)。将来10Gbit/s的以太网技术标准定型后,OLT也会支持类似的高速接口。为了支持其他流行的协议,OLT还可支持ATM、FR以及OC3/12/48/192等速率的SDH/SONET的接口标准。OLT还可通过支持E1接口来实现传统的TDM话音的接入。在EPON的统一网管方面,OLT是主要的控制中心,实现网络管理的主要功能。此外EPON还需通过已定义的接口与电信管理网相连,进行配置管理、性能管理、故障管理、安全管理及计费管理,完成操作维护管理(Operations Administrationand Maintenance,OAM)功能。
3.EPON系统关键技术
由于EPON的上行信道采用时分多址(TDMA)接入方式,各ONU的上行数据以突发方式通过共同的无源光网络传输到OLT,多点接入以及各ONU与OLT之间的距离差异,导致各ONU的发送数据延时不同(20km光纤传输时延可达0.1ms),OLT接收信号功率也各不相同,因此要求OLT接收激光器能实现突发接收,OLT必须能在很短的时间内(几个比特)实现相位的同步,进而接收数据;为了防止数据时域碰撞,还必须引入测距和时延补偿技术实现全网时隙同步,使数据按带宽分配的指定时隙到达。下行方向因为是连续的比特流,所以ONU的接收激光器不需要快速重新调整。
准确测量各个ONU到OLT的距离,并精确调整ONU的发送时延,可以减小ONU发送窗口间的间隔,从而提高上行信道的利用率并减小时延。另外,测距技术必须支持ONU的即插即用,测距过程应充分考虑整个EPON的配置情况,例如,若系统在工作时加入新的ONU,此时的测距就不应对其它ONU有太大的影响。
影响传统业务(话音和图像)在EPON中传输的性能指标主要是延时和丢帧率。无论EPON的上行信道还是下行信道都不应发生丢帧,因此EPON所要考虑的重点是保证面向连接业务的低延时。低延时由EPON的DBA算法和时隙划分的“低颗粒度”(Tin Ganularity)保障,而对传统业务端到端的QoS支持则由现存的协议如虚拟局域网(VLAN)、IP-VPN、多协议标签交换(MPLS)来实现,其中VLAN和MPLS是被看好的应用于EPON的QoS协议。
实现带宽动态分配的关键在于如何获得ONU的实际状态,各种DBA算法获得ONU状态的手段不同,目前MAC层争论的焦点就是DBA算法和802.3.ah标准中是否确定统一的DBA算法。目前的方案是基于轮询的带宽分配方式,即OLT采用轮转的方式对各ONU进行轮询,ONU根据其缓冲区内等待发送的以太网业务报文,通过Report message向OLT上报带宽请求信息,OLT对各个ONU根据其带宽请求信息按照带宽分配算法分别进行授权。
4.EPON系统对TDM业务的支持
尽管数据业务的带宽需求正快速增长,但现有的电路业务还有很大的市场,在短期内仍将发挥其巨大的作用,在今后几年内仍是业务运营商的主要收入来源。所以在EPON系统中承载电路交换网业务,将分组交换业务与电路交换业务结合有利于EPON的市场应用,并满足不同业务的需要。因此现在大家谈论的EPON实际都是考虑网络融合需求的多业务系统。EFM对TDM在EPON上如何承载,在技术上没有作具体规定,但必须兼容以太网帧格式。如何保证TDM业务的质量实际上也就成为多业务EPON的关键技术之一。
5.多点控制协议(MPCP)
EPON系统通过一条共享光纤将多个DTE(Data Terminal Equipment,数据终端设备)连接起来,其拓扑结构为不对称的基于无源光分路器的树形分支结构。多点控制协议(Multi-Point Control Protocol,MPCP)就是使这种拓扑结构适用于以太网的一种控制机制,该协议位于MAC控制子层,EPON作为EFM讨论标准的一部分,就是建立在MPCP基础上的。
MPCP使用消息、状态机和定时器来控制访问点到多点的拓扑结构。MPCP涉及的内容包括ONU发送时隙(也就是带宽授权或带宽许可)的分配,ONU的自动发现(Discovery)和注册(Registered),向高层报告拥塞情况以便动态分配带宽。P2P(Point to Point,点对点)仿真子层是EPON/MPCP协议中的关键组件,通过给每个数据帧增加一个LLID(Logical LinkID,逻辑链路标识)并替换帧前导符(Preamble)中的2个字节,它可使P2MP(Point to Multi-Point,点对多点)网络拓扑对于高层来说表现为多个点对点链路的集合。在点到多点拓扑中的每个ONU都包含一个MPCP的实体,用以和OLT中的MPCP实体相互通信。
EPON将拓扑结构中的根节点认为是主设备,即OLT,将位于边缘部分的多个节点认为是从设备,即ONU。MPCP在点对多点的主从设备之间规定了一种控制机制,以协调数据有效地发送和接收。系统运行过程中上行方向在一个时刻只允许一个ONU发送,位于OLT的高层负责处理发送的定时和不同ONU的拥塞报告,从而优化PON系统内部的带宽分配。
EPON系统通过MPCP帧来实现OLT与ONU之间的带宽请求、带宽授权和测距补偿等功能。802.3ah标准中定义了5种MPCP帧格式,如下表所示。
MPCP类型(MPCPType) |
操作码(op-code) |
上/下行(Up/Down) | 功能描述 |
MPCPGate |
0x00_02 |
下行 |
OLT下行发送带宽授权(Grant)给各ONU |
MPCPRPT |
0x00_03 |
上行 |
ONU上行发送带宽请求信息(Report)给OLT |
MPCPREQ |
0x00_04 |
上行 |
在注册过程中,ONU发送注册请求(或注销请求)给OLT |
MPCPREG |
0x00_05 |
下行 |
在注册过程中,OLT发送注册许可(或注销许可)给ONU |
MPCPACK |
0x00_06 |
上行 |
在注册过程中,ONU发送注册应答(或注销应答)给OLT |
其中最经常用到的就是下行方向的MPCP Gate帧和上行方向的MPCPRPT帧。
请参阅图2所示,EPON系统通过图中所示的聚合机制,以太网业务的带宽分配就被转换为对应的带宽授权。对ONU的多种业务类型,OLT可以分配多个带宽授权,分别对应不同的业务类型,另外也可以只分配一个带宽授权,表示全部业务类型带宽授权的总和。但ONU实现带宽授权的发送窗口,必须只能是一个,只有这样才能最大限度的减少上行方向突发发送/接收的额外开销和带宽浪费(也就是减少开销带宽授权overhead grant占带宽授权长度grant length的比例)。另外还要考虑到一个MPCP Gate Frame最多能够包含4个带宽授权,为了尽量减少下行链路上MPCP Gate帧所占用的带宽,OLT每次只能给每个ONU最多发送一个MPCP Gate帧。
再请参阅图3至图6所示,该以太网无源光网络多业务动态带宽授权的方法,其主要特点是,包括光线路终端设备OLT和数个光网络单元设备ONU,所述的光线路终端设备OLT的上行链路接口和下行链路接口通过光分布网路和分光器分别与所述的各个光网络单元设备ONU的上行链路接口和下行链路接口相连接,所述的光线路终端设备OLT中具有带宽分配和带宽授权分发装置和业务节点接口,且该带宽分配和带宽授权分发装置与所述的光线路终端设备OLT的上行链路接口和下行链路接口均相连接,所述的带宽分配和带宽授权分发装置包括带宽分配单元、带宽授权计算单元和带宽授权安排与分发单元,所述的光线路终端设备OLT依次通过所述的带宽分配单元、带宽授权计算单元、带宽授权安排与分发单元与所述的下行链路接口,所述的动态带宽授权的方法包括以下步骤:
(1)带宽分配周期计时器开始计时;
(2)判断带宽分配周期计时器是否超时;
(3)如果未超时,则重复上述步骤(1);
(4)如果超时,则带宽分配单元进行相应的带宽分配计算,并分别得到各个ONU的MPCP带宽值、TDM带宽配置值、以太网静态带宽配置值和以太网动态带宽变量;
(5)带宽授权计算单元对各个ONU进行初始化操作,该初始化操作包括以下步骤:
(a)根据带宽分配周期和上行线路总带宽并按照以下计算规则计算剩余带宽授权变量和开销带宽授权总和变量:
剩余带宽授权变量=带宽分配周期×上行线路总带宽;
开销带宽授权总和变量=0;
(b)依次轮询全部的ONU,包括没有注册的ONU;
(c)对轮询到的每个ONU,根据开销时间并按照以下计算规则计算开销带宽授权变量、预期带宽授权变量和总计带宽授权变量:
开销带宽授权变量=开销时间×上行线路总带宽;
预期带宽授权变量=0;
总计带宽授权变量=0;
其中,开销时间=ONU打开激光器的时间+ONU关闭激光器的时间+OLT激光器的同步时间;
(6)带宽授权计算单元根据相应的MPCP带宽值对各个ONU进行分配MPCP带宽授权的操作,该操作包括以下步骤:
(a)依次轮询全部的ONU,包括没有注册的ONU;
(b)对于轮询到的ONU,根据所述的MPCP带宽值进行实际带宽授权变量、总计带宽授权变量、剩余带宽授权变量和开销带宽授权总和变量的计算操作;
(7)带宽授权计算单元根据相应的TDM带宽配置值对各个ONU进行分配TDM带宽授权的操作,该操作包括以下步骤:
(a)依次轮询全部已经注册的ONU;
(b)对于轮询到的每一个ONU,根据所述的TDM带宽值作为输入量进行实际带宽授权变量、总计带宽授权变量、剩余带宽授权变量和开销带宽授权总和变量的计算操作;
(8)带宽授权计算单元根据相应的以太网静态带宽配置值和以太网动态带宽变量对各个ONU进行以太网业务带宽的累计操作,该累计操作包括以下步骤:
(a)依次轮询全部已经注册的ONU;
(b)对于轮询到的每一个ONU,根据以太网静态带宽配置值和以太网动态带宽变量并按照以下计算规则计算以太网带宽漏桶计数器变量:
以太网带宽漏桶计数器变量=以太网带宽漏桶计数器变量+以太网静态带宽配置值+以太网动态带宽变量;
(9)带宽授权计算单元对各个ONU进行以太网带宽授权的第一轮聚合算法计算操作,该计算操作包括以下步骤:
(a)依次轮询全部已经注册的ONU;
(b)对于轮询到的每一个ONU,如果总计带宽授权变量大于零,同时以太网带宽漏桶计数器变量大于以太网带宽授权高门限配置值,则根据所述的以太网带宽漏桶计数器变量作为输入量进行实际带宽授权变量、总计带宽授权变量、剩余带宽授权变量和开销带宽授权总和变量的计算操作;
(c)根据实际带宽授权变量并按照以下计算规则计算以太网带宽漏桶计数器变量:
以太网带宽漏桶计数器变量=以太网带宽漏桶计数器变量-实际带宽授权变量;
(10)带宽授权计算单元对各个ONU进行以太网带宽授权的第二轮聚合算法计算操作,该计算操作包括以下步骤:
(a)依次轮询全部已经注册的ONU;
(b)对于轮询到的每一个ONU,如果总计带宽授权变量大于零,同时以太网带宽漏桶计数器变量大于以太网带宽授权低门限配置值,则根据所述的以太网带宽漏桶计数器变量作为输入量进行实际带宽授权变量、总计带宽授权变量、剩余带宽授权变量和开销带宽授权总和变量的计算操作;
(c)根据实际带宽授权变量并按照以下计算规则计算以太网带宽漏桶计数器变量:
以太网带宽漏桶计数器变量=以太网带宽漏桶计数器变量-实际带宽授权变量;
(11)带宽授权计算单元对各个ONU进行以太网带宽授权的第三轮聚合算法计算操作,该计算操作包括以下步骤:
(a)依次轮询全部已经注册的ONU;
(b)对于轮询到的每一个ONU,如果以太网带宽漏桶计数器变量大于以太网带宽授权高门限配置值,则根据所述的以太网带宽漏桶计数器变量作为输入量进行实际带宽授权变量、总计带宽授权变量、剩余带宽授权变量和开销带宽授权总和变量的计算操作;
(c)根据实际带宽授权变量并按照以下计算规则计算以太网带宽漏桶计数器变量:
以太网带宽漏桶计数器变量=以太网带宽漏桶计数器变量-实际带宽授权变量;
(12)带宽授权计算单元对各个ONU进行以太网带宽授权的第四轮聚合算法计算操作,该计算操作包括以下步骤:
(a)依次轮询全部已经注册的ONU;
(b)对于轮询到的每一个ONU,如果以太网带宽漏桶计数器变量大于以太网带宽授权低门限配置值,则根据所述的以太网带宽漏桶计数器变量作为输入量进行实际带宽授权变量、总计带宽授权变量、剩余带宽授权变量和开销带宽授权总和变量的计算操作;
(c)根据实际带宽授权变量并按照以下计算规则计算以太网带宽漏桶计数器变量:
以太网带宽漏桶计数器变量=以太网带宽漏桶计数器变量-实际带宽授权变量;
(13)带宽授权计算单元对各个ONU进行以太网带宽授权的第五轮聚合算法计算操作,该计算操作包括以下步骤:
(a)依次轮询全部已经注册的ONU;
(b)对于轮询到的每一个ONU,如果总计带宽授权变量大于零,则根据所述的以太网带宽漏桶计数器变量作为输入量进行实际带宽授权变量、总计带宽授权变量、剩余带宽授权变量和开销带宽授权总和变量的计算操作;
(c)根据实际带宽授权变量并按照以下计算规则计算以太网带宽漏桶计数器变量:以太网带宽漏桶计数器变量=以太网带宽漏桶计数器变量-实际带宽授权变量;
(14)带宽授权计算单元对各个ONU进行以太网带宽授权的第六轮聚合算法计算操作,该计算操作包括以下步骤:
(a)依次轮询全部已经注册的ONU;
(b)对于轮询到的每一个ONU,根据所述的以太网带宽漏桶计数器变量作为输入量进行实际带宽授权变量、总计带宽授权变量、剩余带宽授权变量和开销带宽授权总和变量的计算操作;
(c)根据实际带宽授权变量并按照以下计算规则计算以太网带宽漏桶计数器变量:
以太网带宽漏桶计数器变量=以太网带宽漏桶计数器变量-实际带宽授权变量;
(15)带宽授权安排与分发单元将上述的带宽授权结果通过下行链路的MPCP Gate帧发送至各个ONU;
(16)将带宽分配周期计时器归零,并重新开始计时;
(17)重复上述步骤(1)。
其中,在上述各个步骤中,根据输入量进行实际带宽授权变量、总计带宽授权变量、剩余带宽授权变量和开销带宽授权总和变量的计算操作均采用统一的算法,其算法包括以下步骤:
(1)如果剩余带宽授权变量为零,则:实际带宽授权变量=0,且结束本次带宽分配周期内的带宽授权计算操作;
(2)否则,如果输入量为零,则:实际带宽授权变量=0;
(3)否则,如果总计带宽授权变量大于零,则进行不包括开销带宽授权的带宽授权计算操作,该计算操作包括以下步骤:
(a)如果剩余带宽授权变量大于输入量,则根据该输入量并根据以下计算规则计算实际带宽授权变量、总计带宽授权变量和剩余带宽授权变量:
实际带宽授权变量=输入量;
总计带宽授权变量=总计带宽授权变量+输入量;
剩余带宽授权变量=剩余带宽授权变量-输入量;
(b)否则,根据以下计算规则计算实际带宽授权变量、总计带宽授权变量和剩余带宽授权变量:
实际带宽授权变量=剩余带宽授权变量;
总计带宽授权变量=总计带宽授权变量+剩余带宽授权变量;
剩余带宽授权变量=0;
且结束本次带宽分配周期内的带宽授权计算操作;
(4)否则,如果剩余带宽授权变量大于相应ONU的开销带宽授权变量,则进行包括开销带宽授权的带宽授权计算操作,该计算操作包括以下步骤:
(a)根据开销带宽授权变量并按照以下计算规则计算开销带宽授权总和变量:
开销带宽授权总和变量=开销带宽授权总和变量+开销带宽授权变量;
(b)如果剩余带宽授权变量大于输入量与开销带宽授权变量的总和,则根据该输入量和开销带宽授权变量并根据以下计算规则计算实际带宽授权变量、总计带宽授权变量和剩余带宽授权变量:
实际带宽授权变量=输入量;
总计带宽授权变量=总计带宽授权变量+输入量+开销带宽授权变量;
剩余带宽授权变量=剩余带宽授权变量-输入量-开销带宽授权变量;
(c)否则,根据开销带宽授权变量并根据以下计算规则计算实际带宽授权变量、总
计带宽授权变量和剩余带宽授权变量:
实际带宽授权变量=剩余带宽授权变量-开销带宽授权变量;
总计带宽授权变量=总计带宽授权变量+剩余带宽授权变量;
剩余带宽授权变量=0;
且结束本次带宽分配周期内的带宽授权计算操作;
(5)否则,实际带宽授权变量=0。
同时,该以太网无源光网络多业务动态带宽授权的方法中,带宽分配周期超时时间可以为250微秒~1毫秒,通常的默认值为500微秒。
在实际应用本发明的方法的过程中,通常MPCP带宽和TDM带宽可以直接转换成带宽授权。
由于MPCP功能和操作是实时的,并且MPCP帧长(Frame Length)固定为64字节(Bytes),所以一旦OLT MPCP硬件电路有带宽需求,就会直接分配相应的带宽授权。
如果ONU上行有开通TDM业务,则在每个带宽分配周期中,OLT都要给该ONU分配相应的带宽授权,以保证TDM帧的周期性发送和接收。
该过程中用到如下几个变量和参数:
变量 |
名称 |
含义 |
line_rate |
线路速率 |
EPON上行线路总带宽,对千兆EPON系统,该变量就等于1Gbps |
want_grant | 预期带宽授权 |
本次计算中给当前ONU预期分配的带宽授权,不包括当前ONU的开销带宽授权,单位:字节 |
real_grant | 实际带宽授权 |
本次计算中给当前ONU实际分配的带宽授权,不包括当前ONU的开销带宽授权,单位:字节 |
summary_grant | 总计带宽授权 |
带宽授权计算过程中各ONU当前总计分配的带宽授权,包括该ONU的开销带宽授权,单位:字节 |
remain_grant | 剩余带宽授权 |
带宽授权计算过程中当前可供分配的剩余带宽授权,包括各ONU的开销带宽授权,单位:字节 |
overhead_grant |
开销带宽授权 |
各ONU的开销带宽授权,单位:字节 |
total_overhead_grant | 开销带宽授权总和 |
带宽授权计算过程中当前全部ONU的开销带宽授权的总和,单位:字节 |
假设OLT的带宽分配周期为ba_interval(单位:秒,s),则剩余带宽授权remain_grant的初始值等于:
remain_grant=ba_interval×line_rate
对每个ONU而言,其开销带宽授权overhead_grant都是固定的:
overhead_grant=overhead_time×line_rate
其中开销时间overhead_time就是每次发送窗口的ONU和OLT的激光器的开销时间的总和:
overhead_time=ONU Laser On Time+ONU Laser On Time+OLT Sync Time
全部ONU的开销带宽授权总和total_overhead_grant的初始值为0:
total_verhead_grant=0
带宽授权计算的初始化过程如下:
RoundRobin_init(依次轮询全部ONU,包括没有注册的ONU){
该ONU的预期带宽授权want_grant=0
该ONU的总计带宽授权summary_grant=0
}
则分配MPCP带宽授权和TDM带宽授权的具体过程如下:
RoundRobin_MPCP(依次轮询全部ONU,包括没有注册的ONU){
if(该ONU上行需要MPCP带宽)
该ONU的预期带宽授权want_grant=mpcp_bw
该ONU的总计带宽授权summary_grant+=want_grant+该ONU的overhead_grant
当前剩余带宽授权remain_grant-=want_grant+该ONU的overhead_grant
开销带宽授权总和total_overhead_grant+=该ONU的overhead_grant
}
RoundRobin_TDM(依次轮询全部已经注册的ONU,不包括没有注册的ONU){
该ONU的预期带宽授权want_grant=cfg_tdm
if(summary_grant>0)
该ONU的总计带宽授权summary_grant+=want_grant
当前剩余带宽授权remain_grant-=want_grant
else
该ONU的总计带宽授权summary_grant+=want_grant+该ONU的overhead_grant
当前剩余带宽授权remain_grant-=want_grant+该ONU的overhead_grant
开销带宽授权总和total_overhead_grant+=该ONU的overhead_grant
}
对总计带宽授权summary_grant、剩余带宽授权remain_grant和开销带宽授权总和total_overhead_grant的这组计算是一个固定的计算线程(CalculateThreading),在本专利的算法中会多次重复出现,其更完整、抽象的模型如下:
CalculateThreading(
输入:预期分配的带宽授权want_grant
输出:实际分配的带宽授权real_grant
){
if(remain_grant==0)
实际分配的带宽授权real_grant=0
本带宽分配周期内的带宽授权计算已经结束,带宽授权分配完毕
else if(want_grant==0)
实际分配的带宽授权real_grant=0
该计算线程CalculateThreading结束、返回
else if(summary_grant>0)
if(remain_grant>want_grant)
实际分配的带宽授权real_grant=want_grant
该ONU的总计带宽授权summary_grant+=real_grant
当前剩余带宽授权remain_grant-=real_grant
else
实际分配的带宽授权real_grant=remain_grant
该ONU的总计带宽授权summary_grant+=real_grant
当前剩余带宽授权remain_grant=0
本带宽分配周期内的带宽授权计算已经结束,带宽授权分配完毕
else if(remain_grant>该ONU的overhead_grant)
开销带宽授权总和total_overhead_grant+=该ONU的overhead_grant
if(remain_grant>(want_grant+该ONU的overhead_grant))
实际分配的带宽授权real_grant=want_grant
该ONU的总计带宽授权summary_grant+=real_grant+overhead_grant
当前剩余带宽授权remain_grant-=real_grant+overhead_grant
else
实际分配的带宽授权real_grant=remain_grant-overhead_grant
该ONU的总计带宽授权summary_grant+=remain_grant
当前剩余带宽授权remain_grant=0
本带宽分配周期内的带宽授权计算已经结束,带宽授权分配完毕
else
实际分配的带宽授权real_grant=0
该计算线程CalculateThreading结束、返回}那么分配MPCP带宽授权和TDM带宽授权的具体过程还可以简单的表示为:RoundRobin_MPCP(依次轮询全部ONU,包括没有注册的ONU){
CalculateThreading(mpcp_bw,real_grant)}RoundRobin_TDM(依次轮询全部已经注册的ONU,不包括没有注册的ONU){
CalculateThreading(cfg_tdm,real_grant)}
对于EPON系统多业务中的以太网业务,可以采用以下的带宽聚合算法进行计算。
在OLT的以太网业务带宽聚合算法中,每个ONU都有一个以太网带宽漏桶计数器eth_leak_count,用于累加该ONU在每个带宽分配周期中所分配到的以太网业务带宽(包括静态带宽cfg_sba和动态带宽cal_dba),然后在分配以太网业务带宽授权时,再从漏桶计数器中减去所分配的带宽授权,这样漏桶计数器就在带宽分配和带宽授权之间架起了一座桥梁,桥梁的一端是取值范围非常大的带宽分配,从64Kbps到1Gbps均可,步距可达32Kbps,而桥梁的另一端是颗粒足够大的带宽授权,以保证在最坏情况下对以太网帧仍有足够的效率,从而实现对以太网带宽的聚合算法。
该过程中用到如下几个变量和参数:
变量 |
名称 |
含义 |
eth_low_threshold |
以太网带宽授权低门限 |
以太网业务带宽聚合算法的低门限,用于限定以太网带宽授权的最小值,以保证以太网帧传输的效率,缺省值等于1MTU(MaximalTransmit Unit,最大传输单元,对以太网帧通常为1518字节) |
eth_high_threshold |
以太网带宽授权高门限 |
以太网业务带宽聚合算法的高门限,用于设定以太网带宽授权分配的颗粒上限,以保证各ONU之间带宽授权分配的公平和均匀,进而保证以太网业务传输的性能,缺省值为4MTU(通常为6072字节) |
这两个参数均可由软件灵活配置,根据实际业务需求,和EPON系统中已经注册ONU的数量,来调节带宽聚合算法的实际性能。
在带宽授权计算过程中,如果当前剩余带宽授权remain_grant已经等于0,则本带宽分配周期的全部计算过程自动结束、终止,然后安排并分发各ONU的带宽授权。
首先,各ONU的以太网带宽漏桶计数器eth_leak_count对以太网业务带宽(包括静态带宽和动态带宽)进行累加:
RoundRobin_eth0(依次轮询全部已经注册的ONU){
eth_leak_count+=静态带宽cfg_sba+动态带宽cal_dba
}
然后,依次进行下面几个计算过程:
RoundRobin_eth1(依次轮询全部已经注册的ONU){
if(summary_grant>0并且eth_leak_count>eth_high_threshold)
CalculateThreading(eth_leak_count,real_grant)
eth_leak_count-=real_grant
}
RoundRobin_eth2(依次轮询全部已经注册的ONU){
if(summary_grant>0并且eth_leak_count>eth_low_threshold)
CalculateThreading(eth_leak_count,real_grant)
eth_leak_count-=real_grant
}
RoundRobin_eth3(依次轮询全部已经注册的ONU){
if(eth_leak_count>eth_high_threshold)
CalculateThreading(eth_leak_count,real_grant)
eth_leak_count-=real_grant
}
RoundRobin_eth4(依次轮询全部已经注册的ONU){
if(eth_leak_count>eth_low_threshold)
CalculateThreading(eth_leak_count,real_grant)
eth_leak_count-=real_grant
}
RoundRobin_eth5(依次轮询全部已经注册的ONU){
if(summary_grant>0)
CalculateThreading(eth_leak_count,real_grant)
eth_leak_count-=real_grant
}
RoundRobin_eth6(依次轮询全部已经注册的ONU){
CalculateThreading(eth_leak_count,real_grant)
eth_leak_count-=real_grant
}
在实际应用当中,在EPON系统上单纯支持DBA并不是太困难的事情,但要同时支持TDM业务和DBA功能,带宽分配机制就必须考虑不同业务类型的差异和特点,以太网业务的带宽授权必须照顾到不同长度的以太网帧的传输效率,TDM业务的带宽授权必须满足具有严格周期性的TDM帧的延时和抖动要求,而本发明的方法能够同时满足上述两个要求,基于多业务和周期性的带宽授权聚合算法实现了对以太网业务的高效支持。
在本发明的方法中,关于OLT的带宽授权算法,其中主要是针对以太网业务的带宽授权的聚合算法,并且是以动态带宽分配为基础的,动态带宽分配解决带宽分配问题,而本发明的方法是解决如何把带宽分配转换为带宽授权的问题,带宽授权是带宽分配的具体的、周期性的执行,同时,以太网帧的帧长是可变的,所以以太网帧传输在发送窗口中的传输效率,跟发送窗口(也就是带宽授权的长度)非常相关,发送窗口越大(带宽授权越大),效率也就越高,但上行带宽毕竟是全部ONU时分复用共享的,不可能被一个ONU独占,从TDM业务的角度看,带宽分配周期(也就是带宽授权周期)越小,TDM业务性能越好,但显然这对以太网业务非常不利,对选定的带宽分配周期,各ONU之间既要公平的、低延时的共享上行带宽,又要保证足够的以太网帧传输效率,这就必然要求有一套机制来实现这一点,同时这也是本发明所要达到的的主要目的。从实践使用、实际测试的情况看,使用此方法后,以太网业务的带宽利用效率有非常明显的提高,同时还能满足对以太网业务延时特性的要求。同时,对于前述的两个参数(以太网带宽授权高/低门限),主要是为了调节算法的性能表现,缺省值就有不错的性能,在实际应用中,可以根据需要对这两个参数进行适当的配置。
不仅如此,在进行带宽授权计算之后,还需要进行带宽授权的安排和分发,前者需要对各ONU的RTT进行补偿,后者通过MPCP Gate帧,一个帧最多可以包含4个Grant,每个Grant表示一个带宽授权,这在协议中都有明确说明,本发明的方法主要侧重于周期性的、在每个带宽分配周期中计算各ONU的带宽授权,即计算带宽授权长度,因为带宽授权的起始时刻是按顺序安排的,带宽授权长度确定了,带宽授权起始时刻也就确定了。
采用了上述的以太网无源光网络多业务动态带宽授权的方法,由于按照特定的带宽分配周期根据EPON系统开销带宽授权的存在和以太网业务的变帧长的特点,并根据特定的算法计算得到为每一个ONU所分配的带宽授权信息,从而使得网络通信性能较高,带宽授权性能较好,网络传输效率较高,能够较好满足ONU上行业务的带宽需求;不仅如此,采用上述方法,能够全面支持TDM业务,如TDM Service,包括POTS、E1、T1等,同时较好的支持以太网业务,如Ethernet Service,包括VoIP、IPTV、视频点播等;而且适用范围较为广泛,对光纤通信网络和宽带通信技术的发展打下了良好的基础。
在此说明书中,本发明已参照其特定的实施例作了描述。但是,很显然仍可以作出各种修改和变换而不背离本发明的精神和范围。因此,说明书和附图应被认为是说明性的而非限制性的。