EOS的封装协议
一、概述
随着城域网多业务的快速发展,以太业务接入已经成为企事业用户和社区宽带用户的主要接入方式之一。城域多业务传输网涉及到的EOS(Ethernet over SDH)技术,近年来不断地获得了丰富和完善,尤其是PPP/ML-PPP、LAPS、GFP三种非常重要的数据封装映射协议。目前流行的MSTP标准对以太网到SDH VC的封装格式没有进行严格的限定,只是定义了上述三种标准封装协议,各生产厂家可以选用不同的封装协议进行业务处理。
图1是多业务传输节点技术规范规定的业务处理模型,红色虚线框中的模块是对以太业务在SDH映射前进行的一系列处理,绿色实线框是完成以太数据封装的三种协议,三种协议均可实现对以太业务数据的封装,并各有其技术背景和特点。
图1 多业务传输节点技术规范规定的业务处理模型
那么,封装协议存在的必要性是什么?
众所周知,以太网业务数据具有突发和不定长的特性,这与要求严格同步的SDH帧有很大的区别,因此需要引入合适的数据链路层适配协议来完成以太数据封装,包括数据缓存、队列调度等,实现到SDH VC的帧映射。
二、链路层适配协议
目前,有三种链路层适配协议可以完成以太网业务的数据封装:
PPP(Point-to-Point Protocol)点到点协议和ML-PPP扩展协议;
LAPS(Link Access Procedure--SDH)协议;
GFP(Generic Framing Procedure)通用成帧规程协议。
这三种协议均为面向无连接的数据链路层,并有相应的国际标准:
PPP: RFC1661;
LAPS: ITUT X.86;
GFP: ITUT G.7041。
下面分别介绍三种协议:
1、PPP/ML-PPP协议
(1)PPP协议
PPP是一种提供点到点链路上传输、封装网络层数据包的数据链路层协议,它处于TCP/IP协议栈的第二层,可在支持全双工同异步链路上进行点到点的数据传输,帧格式如图1所示。
图2 PPP协议的帧封装格式
■协议族特点
PPP是数据通信中的一种常用的重要协议,象许多协议一样,PPP也是一个协议族,主要由三类协议组成:
链路控制协议族(LCP):用于建立、拆除和监控PPP数据链路;
网络层控制协议族(NCP):用于协商在数据链路上传输的数据包的格式和类型;
PPP扩展协议族:主要用于提供对PPP功能的进一步支持。
此外,PPP还提供用于网络安全方面的验证协议族(PAP、CHAP),丰富的协议族组群,使得PPP协议功能非常完善。
■应用
PPP协议是一套最早的封装协议,技术成熟,已经获得了普遍应用。点到点链路上直接相连的两个设备间的通信最常用的链路层协议就是PPP,例如在拨号上网时,计算机与接入服务器之间采用的是PPP连接,DDN路由器之间的连接通常也采用PPP协议。
此外,PPP协议还有一套验证、授权机制,但是以太网连接通常不具备这一特性,因此许多小区以太接入网常常采用PPP over Ethernet方式上网,简称PPPoE。
(2)ML-PPP协议
随着PPP的广泛应用,ML-PPP(Multilink-PPP)作为PPP功能的扩展协议应运而生。RFC1990为多链路点对点协议(ML-PPP)因特网协议标准,用于解决PPP一次只能处理一个实际链接的局限。
在技术方面,ML-PPP属于位于PPP和网络协议层之间的高级数据链接协议,它能适应一个或数个PPP链接,其中每个PPP链接表示单个物理连接或ISDN之类的多信道交换服务中的信道,其帧封装格式如图2所示。
■核心技术
多链路捆绑是ML-PPP协议的核心技术,它是一个较为简单的协议。MP协议相当于为PPP帧增加了一个二层帧头,MP捆绑需要解决的关键问题是,如何知道后发起的PPP是前面PPP的捆绑链路,以及采用什么样的帧格式表示MP头。一般情况下,在设备中都会有一个MP Server来负责登记PPP是否为捆绑用户,以及IP地址等属性,当后来的捆绑链路连接时,通过查表即可知道与哪条PPP捆绑,然后将该两个链路捆绑起来,以MP头作为链路层的头,实现捆绑。
■协议特点
可将多个物理链路捆绑成一个逻辑链路,扩展传输带宽;
可对链路资源进行动态分配,有效地利用宝贵的带宽资源;
解决了多径传输的时延问题,组网更加灵活。
■应用
通过ML-PPP协议,路由器和其它访问设备可以合并多条PPP链路到一个逻辑数据管道。例如,在ISDN业务中,连接两台计算机最常用的协议是PPP,访问Internet通常也采用该协议。PPP的功能虽然很强,但在网络部署方面却存在着局限性,即一次只处理一个链接,而ML-PPP则不受该限制,它是用于B信道聚集的新的Internet工程任务组(IETF)标准。使用ML-PPP协议,可使两个B信道合并起来,得到最大的吞吐量。
2、LAPS协议
LAPS是HDLC的一个子集,它包括数据链路服务和协议规范,主要用于IP over SDH网络、Ethernet over SDH,通过LAPS建立面向字节同步的点对点链路,其帧封装格式如图3所示。
图3 LAPS协议的帧封装格式
■协议特点
LAPS协议主要针对的是大颗粒业务的映射,用于提高封装效率,尤其适用于GE over SDH的封装,针对IP over SDH、Ethernet over SDH的特点对PPP-HDLC进行了简化,封装效率得到了很大提高;
只有映射技术,无多通道捆绑能力,可与级联/虚级联技术配合使用。
3、GFP协议
GFP是一种通用映射技术,它可将变长或定长的数据分组,进行统一的适配处理,实现数据业务在多种高速物理传输通道中的传输。
图4 GFP协议的帧封装格式
图4为GFP的封装格式,一般来说,一个GFP帧包含GFP Core Header(GFP信息头)和GFP Payload(GFP 净负荷)两部分。
GFP帧信息头共4个字节,其中前16 bit为PLI域,用于指示净负荷长度,后16 bit为cHEC域,用于进行帧头校验;GFP净负荷包含三部分,净负荷头为净负荷的前4-64字节,其中包括16 bit净负荷类型域、8 bit净负荷头校验域和0-60字节的净负荷扩展头;净负荷信息区包含净负荷帧校验域和经过扰码后的净负荷;GFP的空闲帧没有GFP Core Header。
■帧定界方式
GFP采用了类似于ATM中基于差错控制的帧定界方式,这与利用HDLC成帧方式的适配方法所采用的帧定界方式不同。基于HDLC的适配技术(如PPP)需要依赖于某些特殊字符进行帧定界和提供控制信息,对于净负荷内出现的保留字符需要插入转义字符进行区分,从而造成了非确定性的带宽增加。
GFP采用一种基于HEC检错的自定界技术来实现协议数据单元的定界。为了能够处理不同长度的协议数据单元,GFP在帧头开销中提供了一个净负荷长度指示单元,可在数据流中方便地提取出封装好的协议数据单元。这种显示帧长度指示的方式可减少边界搜索处理时间,这对于有较高同步需求的数据链路来说相当重要。由于GFP针对各种长度(包括变长)的用户协议数据单元,并对其进行完整的封装,不需要进行协议数据单元的分段和重组,从而大大地简化了链路层的映射/解映射的逻辑关系。
■适配模式和应用
GFP协议栈由通用层和客户层专用两部分组成,其中通用层适用于所有应用GFP的业务。
GFP通常采用两种模式定义客户层信号的适配: