扫一扫
分享文章到微信
扫一扫
关注官方公众号
至顶头条
摘要:文章首先详细分析了传统标记分配协议(LDP)的主要结构及不同层次信息的封装格式与相互关系,随后总结了约束路由的标记分配协议(CR-LDP)对LDP的主要扩展,举例说明了通用多协议
标记交换(GMPLS)对CR-LDP的增强,提出了对GMPLS的扩展CR-LDP的数据结构的设计.
标记分配协议(LDP)是通用多协议标记交换(GMPLS)的重要的信令协议之一.本文主要对LDP及其发展和演变情况进行分析、研究,并对具有共性的数据结构进行归纳、设计.
1 传统的LDP
传统的LDP是在MPLS网络中定义的,是专门用于标记交换路由器(LSR)之间交换“标记/转发等价类(FEC)”绑定信息以便建立和维护标记交换路径(LSP)的控制信令.LDP是通过将网络层的选路信息直接映射到数据链路层交换路径,从而建立LSP的一系列过程和消息.使用LDP进行标记/FEC绑定信息交换的两个LSR称为“LDP对等体”.当LDP对等体间存在绑定信息的交换时,我们称在两个LDP对等体间存在“LDP会话”.1.1LDP的消息类型
LDP定义了4类消息:
(1)发现消息(DiscoveryMessage):使用UDP报文向物理连接的节点周期广播或向非直接相连的节点定期发送,以宣布LSR的存在、发现近邻和检测链路的可靠性.
(2)会话消息(SessionMessage):使用TCP传输,通过在近邻间建立一条TCP链路,实现近邻会话建立,并维护和关闭近邻之间的会话.
(3)公告消息(AdvertiseMessage):使用TCP传输,用于标记捆绑,包括请求标记、发布标记、回收标记、释放标记、环路检测和标记询问.
(4)通知消息(NotificationMessage):使用TCP传输,用于报告链路状态和事件的发生.LSR使用LDP发现机制发现潜在的LDP对等节点,针对链路层直接相连和链路层非直接相连的两种邻接节点,使用两种不同的发现机制:基本发现机制和扩展的发现机制.
1.2LDP的建立过程
(1)会话的建立过程
该过程分为两步:TCP连接的建立过程和会话的初始化过程.通过LDPHello消息的交互,两个LSR(即LDP对等体)即可建立LDP会话,以便传输标记/FEC绑定信息.当一个LSR使用LDP广播多个标记空间给另一个LSR时,它为每一个标记空间建立一个会话过程.LDP使用TCP提供可靠的传输服务,当两个LSR之间存在多个LDP会话时,每个LDP会话对应一个TCP连接.
(2)LDP会话的维护
LDP通过定期接收LDP协议数据单元(PDU)来维护会话的完整性.
(3)标记分配过程
LDP支持两种类型的标记控制方式,即独立控制方式和顺序控制方式.在独立控制方式下,LSR可以在任何时候向对等节点发送标记映射消息.在顺序控制方式下,LSR只有当其为出口LSR,或者已接收到下游有关标记/指定FEC的绑定信息后,才可以向上游分发自己的标记绑定信息. 在独立和顺序标记分配控制方式中,标记能够按照自由和保守方式来保留.自由方式的主要优点是对路由的改变反映非常迅速,其不足之处在于不需要的标记也被分配和保留.保守方式的主要优点在于只有用于数据转发的标记才被分配和维护,其主要缺点在于当路由改变时,分组转发以前必须获得下一跳的标记.
1.3LDP消息的格式
LDP对等体之间的LDP消息交换,是通过在LDP会话的TCP连接上发送LDPPDU完成的.每个LDPPDU可以携带一个或多个LDP消息,而且其多个LDP消息的内容可以互不相关.
LDPPDU由LDP头(header)和一个/多个LDP消息构成.LDP头的格式见表1.
LDP采用TLV(TypeLengthValue)方案来对消息中携带的信息进行封装.每个LDPTLV可分为4字节的公共TLV头单元和可变长度值域单元.TLV格式见表2.
所有的LDP消息都由4字节的消息头和相应的强制性参数和可选参数组成,所有的参数都采用TLV编码格式,LDP消息格式如表3所示.
在该版本LDP协议中定义的消息类型见表4.
2 CR-LDP对LDP扩展
CR-LDP信令基于传统的LDP信令,它用于建立和维护可保证IPQoS业务的LSP.CR-LDP支持点到点的LSP,对多点到点和点到多点的支持还有待进一步研究.在CR-LDP中可在释放前修改LSP的流量参数,如增加带宽等,从而带来巨大的灵活性.CR-LDP采用约束路由机制,其受限路由的约束条件包括显式路由、通道预占、流量参数、锁定路由和资源类别.CR-LDP新增的TLV编码类型见表5.
3 GMPLS对CR-LDP的增强
GMPLS对MPLS信令扩展,从支持分组(PSC)接口和交换扩展到支持3个新的接口和交换类型:时分复用(TDM)、Lambda交换(LSC) 和光纤交换 (FSC).支持4个类型所需的TLV类型有:通用标记请求、通用标记、上行分类、标记集、波段标记、ERHop、可接受的标记集、Admin状态、接口标识、IPv4 接口标识、IPv6 接口标识、IPv4 IF-ID 状态和IPv6 IF-ID状态,具体类型数值还有待IANA的宣布.
就通用标记请求而言,其TLV是由入口节点设置,透明经过经由节点,并被出口节点所使用.通用标记请求TLV出现于CR-LDP请求消息中.一个请求消息应该尽量包含规范的LSP编码类型,以允许经LSR的交换有最大的柔性.交换类型域也可能以逐跳方式更新.通用标记请求的格式见表6.
表中,PSC(PacketSwitchCapable)为分组交换,各级PSC可在LSP中构成层次结构的LSP隧道;L2SC(Layer2SwitchCapable)为基于第2层的交换(如ATM交换);LSC(LambdaSwitch Capable)为波长交换.
4 统一的数据结构的设计
扩展的CR-LDP是以传统的LDP为基础,经过CR-LDP的更新,到GMPLS的进一步扩展,其覆盖的协议内容较多,相关消息、参数的变化较大.以标记请求消息为例,其字段变化如下:传统LDP中标记请求消息字段包括:U比特、消息类型、消息长度、消息ID、FECTLV和可选参数;CR-LDP中标记请求消息字段包括:U比特、消
息类型、消息长度、消息ID、FECTLV、LSPIDTLV、显式路由TLV、流量参数TLV、锁定路由TLV、资源类别TLV和通道预占TLV;GMPLS扩展CR-LDP中标记请求消息字段包括:U比特、消息类型、消息长度、消息ID、FECTLV、LSPID TLV、显式路由TLV、流量参数TLV、锁定路由TLV、资源类别 TLV、通道预占TLV和通用标记请求TLV.
另一方面,基于同一协议版本的不同消息、参数的差异也较大.
由此可见,正确、合理地分析不同消息、参数的相同点和差异性,对重要数据的格式进行恰当的抽象、整理,提出具有较大覆盖性和对编程实现、系统运行更有效的数据结构是非常重要的.与此同时,对具有差异性的不同信息进行具体、合理的数据结构定义与设计,是整个系统编码与实现的基础.
依照数据结构需具有较大覆盖性和对编程实现、系统运行效率有利的原则,通过分析不同消息、参数的相同点和差异性,对具有相同点的数据的结构设计如下:
(1)信息格式
对传统LDP、CR-LDP和GMPLS的扩展CR-LDP,其不同类消息的前几个字段相同,后面字段各有不同,对相同部分提出并归纳为如下格式:
对不同部分依对象的不同分别进行处理.
(2)TLV格式对传统LDP、CR-LDP和GMPLS的扩展CR-LDP,其不同类TLV的前几个字段相同,后面字段各有不同,对相同部分提出并归纳为如下格式:
对不同部分依对象的不同分别进行处理.
(3)交换类型、LSP编码类型和通用净荷标识
在GMPLS中,通用标记请求用到的数据项较多:交换类型有8项,LSP编码类型有11项,通用净荷标识有46项.考虑随着时间的推移和相关草案的完善,可能出现新的数据项,同时为了简化处理过程,它们均作列表,在数据结构中定义为数组.
5 结束语
GMPLS是实现自动交换光网络(ASON)的一条优先选择的控制技术路径,虽然至今仍没有正式成相关标准文档,但对其前期的研究、开发工作已在国外众多机构展开.对GMPLS的信令协议——扩展的CR-LDP进行研究,是整个GMPLS研究工作的重点之一.继承已有的对传统LDP和CR-LDP的研究、开发成果,对GMPLS的扩展CR-LDP进行跟踪研究,是本文的初衷,也是对其进行进一步研究的一条捷径.
如果您非常迫切的想了解IT领域最新产品与技术信息,那么订阅至顶网技术邮件将是您的最佳途径之一。