GPON关键技术
GPON关键技术包含三个,测距,DBA,下行AES加密。
为什么需要测距
由于每一个ONU到OLT的距离是不一样的,虽然上行有TDMA技术,让每一个ONU在不同的时间段发送数据,但是可能由于距离的原因, 仍然有可以在同一时刻到达分光器产生冲突。比如现在这个远的ONU先发送数据,等它到了跟这一个ONU距离一样的时候,这个ONU也开始发送数据,这样的话,它们仍然可能在同一时刻到达分光器产生冲突,那这个时候怎么办呢?我们就可以以这个远的ONU为一个基准,给这些近的ONU增加一个时延,让它们逻辑上到达OLT的距离相等之后,然后各自再在自己的时隙上发送数据,那么这样的话就可以避免上行链路冲突。
测距原理
OLT通过测距获取ONU的往返延迟,也就是往返时延,时间有了光传输的速率肯定都是一样的,根据这两个参数,就们就可以计算出每一个ONU到OLT的物理距离,然后以这个远的ONU为基准,给这些近的ONU增加一个均衡时延,让它们每一个ONU到达OLT的距离是一样的,然后在各自在自己的时隙上发送数据。那么就可以避免冲突。
另外在测距过程中需要开窗,此时的上行链路会被这一个ONU给占用,其它ONU将无法使用上行链路。当然一般测距的过程时间都很短。通常我们是察觉不出来的。
测距的结果
最后通过测距之后,每一个ONU实现了帧同步,就可以保证每个ONU在发送数据的时候不现有冲突。原来没有测距,业务发过来之后会有冲突。
通过测距之后呢,让每一个ONU实现帧同步,再各自的时隙上发送数据,就不会再产生冲突。
所以总结一下上行方向是TDMA加测距两个技术结合,避免了上行链路的冲突。
为什么需要DBA
这个DBA它其实就是在微秒或者毫秒级的时间内完成对上行带宽的动态分配,DBA只是针对上行,为什么有DBA,你可以想象一下,假如没有DBA上行,如果给ONu分酝的带宽都是一样的,每个ONU都给它分配10兆,那么可能会出现什么问题呢?有的人可能用不完,有的人又不够用,所以我们需要使用DBA动态分配带宽,根据用户需求合理分配带宽,这样的话就可以提高PON口下上行链路的利用率,也可以增加更多的用户,而且给带宽突变量比较大的业务能够提供更好的服务,那么这个是DBA的好处,DBA的工作机制有两种,一种是SR_DBA,一种是NSR-DBA,就是状态报告和非状态报告,目前主要采用SR_DBA状态报告机制。
SR-DBA的实现过程
SR-DBA的实现过程主要分为了控制平面和数据平面,控制平面主要发送一些控制指令,而数据平面才会真正把数据发送出去。
如图有一个ONU它有三个业务,分别需要传送,可能是语音,还有上网业务,还有IPTV业务,这些业务到达ONU之后,ONU是不是马上把这些数据发送给OLT,当然这个时候肯定是不会马上发送的,它会先发一个DBA报告,报告自己的带宽需求,而OLT收到这个报告之后,就会根据自己的DBA算法逻辑,计算出ONU需要的时隙,然后通过下行广播帧的BW Map字段,把分配的时隙广播给PON口下所有的ONU,ONU收到这个数据帧之后,它就知道自己应该在哪个时间段发送数据了,到了它的时隙之后,它才会把数据从数据平面传到OLT,那么这个就是SR-DBA实现过程。
DBA实现的基础-T-CONT
对于DBA来说是绑定在T-CONT上实现了上行带宽的调度,通常不同的业务我们是绑定在不同的T-CONT中,然后绑定不同的DBA。
带宽类型有四种,包括FB,AB还有NAB和BE,其中优先级是FB大于AB大于NAB大于BE,我们来分别看一下,FB固定带宽,这种的话就是我分配给你,比如给你分配了10兆,那么这10兆都是你的,即使你不用,别人也是没办法使用的,而AB是保证带宽,比如保证10兆,那么只要你使用,你就能够得到10兆的体验,但是你这个时候不用,我可以把你的带宽给别人用。而如果FB和AB的带宽使用完了之后,PON口下还有剩余带宽,那么这个时候我们就可以留给NAB和BE,所以NAB和BE通常它们是需要去竞争的,只有抢到了才够使用,如果抡不到,你就没有办法使用,当然抡占的优先级也是由NAB抡完了,如果PON口下还有带宽,那么这个时候才会留给BE,那么这个是四种带宽类型。而这四种带宽类型一组合,就组合成了我们的五种T-CONT类型, 可以看到对应关系,对于类型1来说,你可以看到它主是固定带宽,而对于类型2来说是保证带宽,而类型3就是保证带宽和非保证带宽的结合,类型4最大努力带宽,而类型5是4种带宽的结合,那么这个是DBA的类型。
T-CONT类型和带宽类型之间的关系
如图类型1通常我们只需要设置固定带宽,比如说我们设置的固定带宽是X,这个用户它能够享受到的最大带宽,就等于X,而对于类型2来说,它只需要设置保证带宽,比如它设置的保证带宽为Y,那么这个类型2的用户,它能够享受到的最大带宽就等于Y,而对于类型3来说,需要同时设置保证带宽和最大带宽,那么保证带宽比如设置的是Y,那么用户能够拿到最大带宽带肯定是大于Y的,而对于类型4来说,它不需要设置固定带宽,也不需要设置保证带宽,直接设置一个最大带宽就可以了,而对于类型5来说,它是4种带宽的结合,所以它需要设置固定带宽,也需要设置保证带宽,还需要设置最大带宽,另外它的最大带宽肯定是大于X+Y的。
那么通常不同业务它的优先级是不一样的,我们会针对不同的业务配置不同的DBA类型,那么通常优先级是语言最高,视频次之,然后数据业务优先级是最低的,那么通常针对语音业务,它的优先级是比较高的,但是呢它需要的带宽其实并不高,通常针对语音业务,我们会配置成固定带宽。
为什么需要加密
原因就是因为下行广播技术,同一个PON口下,所有的用户收到的数据都是一样的,那么这样的话,我们是可以通过一些手段获取到其它用户的数据的,所以在GPON网络中可以对下行广播数据做AES128的一个加密处理。另外加密只对GEM帧的Payload作加密处理,而GEM帧头部它是不会做加密处理的,因为ONU首先需要通过GEM头部里面的GEM Port字段,识别出是自己的数据,它才会做简易的处理,所以头部是不会做加密的。另外再好的密钥也有被破解的一天,所以GPON系统会定期的对密钥做更新,提高线路的可靠性。
GPON系统的AES加密处理
首先OLT去发起密钥更换请求,ONU收到之后作出响应, 生成密钥发给OLT,而且会重复发三次,而OLT收到之后就会通知OUN告诉它,你的密码我收到了,请赶紧使用新的密钥给我发送数据,所以三次之后,OLT在发包时就会按照刚才分配的密钥对数据做加密处理,后续发包都是发的加密的数据包,那么这个就是GPON AES加密。