目前PON技术已成为接入网主流接入技术,并且在PON网络中传输的主要还是以太网业务,那问题就来了,以太网业务是怎么在PON网络(OLT与ONU之间,本文主要关注GPON网络)中进行传输的呢?这就不得不提到GPON的封装与映射原理。
GPON的业务封装方式
GPON标准中定义了一种特殊的封装方法:GEM(GPON Encapsulation Mode),而采用GEM封装形成的帧,我们称之为GEM帧。
GEM来源于通用成帧协议GFP(ITU-T G.7041),是一种应用于GPON系统的、面向连接的、帧长可变的封装方法,支持对以太网、TDM、SDH、IP、MPLS等多种用户数据帧的封装,支持对用户数据帧的分段。因此,这里GPON能采用GEM封装以太网数据帧也就不足为奇了。
GEM帧是GPON技术中最小的业务承载单元,是最最基本的数据结构。也就是说,GPON系统是将以太网等业务封装成GEM帧后在GPON线路上传输。GEM帧结构如下图所示:
PLI、Port ID、PTI和HEC构成GEM帧头,Payload表示用户数据帧片段(为何是片段?后面会给出解释)。GEM帧头各字段的具体含义如下:
通过对以太网帧在GPON中映射方式的讲解,能让我们更加直观的了解GEM帧的作用。面对到来的以太网帧,GPON系统对其进行解析,将以太网帧中所有重要关键数据直接映射到GEM帧的 Payload中,GEM帧再自动封装头部信息,可以说映射格式非常清晰,如下图所示。
具体来说,GPON系统保留以太网帧中DA(destination MAC address)、SA(source MAC address)、Ethernet Type以太网类型、MAC client data数据负载、FCS(Frame Check Sequence)帧校验序列等信息,再封装头部,最终组成GEM帧。GEM帧中不包含前导和SFD字节。但以太网帧中的关键信息一个没拉下,方便接收端恢复完整的以太网帧。
由于以太网数据帧的长度是随机的,如果数据帧的长度超过GEM协议规定的净荷长度(4095字节),要采用GEM的分片机制。GEM的分片机制把超过长度限制的用户数据帧分割成若干分割块,并且在每个块的前面都插入一个GEM帧头。故原始以太网帧的分片可以跨越多个GEM帧。这里就解释了为何GEM Payload中装载的是用户数据帧片段。
GPON的复用映射
PON网络架构是P2MP的架构,即OLT侧一个PON口与多个ONU进行通信。相较于普通的P2P架构,这是一种比较特殊的网络架构。既是特殊的网络架构,在此网络架构上上下行传输数据的方式是有区别的,详细请查看《深度解析:PON网络架构及数据传输方式》,进而GPON上下行的复用封装结构也是有区别的。
在PON系统的上行方向,采用的是GEM Port、T-CONT和ONU三级复用结构,如图所示。每个ONU可包含一个或多个T-CONT,每个T-CONT可由一个或多个GEM Port构成。
在PON系统的下行方向,采用的是GEM Port和ONU两级复用结构。OLT将数据流封装到不同的GEM Port中,ONU根据GEM Port接收属于自己的数据流。
如果对前面的GEM帧中的 Port ID概念还不是很清晰,我们在这里再进行深入的解释。
GEM Port标识的是OLT与ONU之间的业务虚通道,即承载业务流的通道,类似于ATM中的虚连接(VPI/VCI)。
每个GEM Port由一个唯一的Port ID来标识,由OLT进行全局分配。当下行数据帧发送到ONU进行解封装时,当GEM帧是属于这个ONU的,ONU才会接收,而用来标识这个GEM帧的,就是我们提到的GEM Port ID,所以每个GPON端口下的每个ONU使用的GEM Port ID必须是唯一的。不唯一,ONU就无法接收属于自己的GEM帧。
T-CONT是GPON上行方向承载业务的载体,所有的GEM Port都要映射到T-CONT中。
T-CONT是针对上行而言的,全称是Transmission Container,即传输容器。对于上行数据来说,他就是一个“容器”,上行的数据就放在这个“容器”当中。
上行帧是多个GEM帧封装到对应的T-CONT中,再对T-CONT进行打包后加上GTC(GPON Transmission Convergence)帧头等信息上传到OLT。即,一个T-CONT是包含了多个GEM帧的信息,多个T-CONT组成GTC帧上传到OLT上。OLT取出里面封装的GEM帧进行业务的识别及匹配。
T-CONT由Alloc-ID来标识,Alloc-ID由OLT分配,在ONU去激活后会失效。
这里引出的T-CONT概念是用来做GPON上行数据调度的,可以理解为QoS,即GPON里面我们叫做DBA(Dynamic Bandwidth Allocation)。T-CONT是DBA实现的基础,是GPON系统中上行带宽控制的最基本单元。通过ONU对T-CONT的带宽申请、OLT对T-CONT授权,实现整个GPON系统上行业务流的动态带宽分配。
换句话说,T-CONT是PON口上行包含一组GEM Port的流量承载实体,是上行带宽分配(DBA)的单元。因此,T-CONT只在上行方向存在。
至于借用T-CONT怎么实现上行方向DBA的调度,我们先下期再见。