7.3.1 MPLS网的组成
MPLS网络由标签边缘路由器(Label Edge Router,LER)和标签交换路由器(Label Switching Router,LSR)组成,如图7-24所示。
LER位于MPLS网络的边界上,是MPLS网络同各类用户网络以及其他MPLS网络相连的边缘设备。LER首先将具有相同特性的IP数据报划分为一定的转发等价类FEC,并建立转发信息库(Fowarding Information Base,FIB)。FIB存储标签和相应FEC的对应关系。当LER接收到IP数据报后,根据IP数据报的特性检查FIB,得到相应的标签,给IP数据报加上标签后发给LSR。LER还负责在MPLS网络的出口去掉标签。
图7-24 MPLS的网络结构
LSR是MPLS网络的核心设备,提供标签交换和标签分发功能,具有第三层转发分组和第二层交换分组的能力。LSR内建标签转发信息库(Tag Fowarding Information Base,TFIB),TFIB存储每个路由的输入标签和输出标签,包括输出端口及其链路。LSR根据IP数据报上的标签(输入标签)检索TFIB,获得该数据报新的标签(输出标签)和输出端口及链路,用新的标签替换数据报上原有的标签后将数据报转发到下一个LSR。
1.标签分配协议
在MPLS领域中,用于建立、拆除、保护LDP的信令就是标签分配协议(Label Distribution Protocol,LDP)。LDP基于原有的网络层路由协议(如OSP、IS-IS、RIP、EIGRP或BGP等)构建标签信息库,并根据网络拓扑结构以及数据流的要求,在LSR之间分配标签。标签的分配过程实际上就是一个建立LSP的过程。
MPLS支持三种标签分配协议:普通标签分配协议LDP、限制路由的标签分配协议CR-LDP和扩展的资源预留协议RSVP-TE。下面介绍普通标签分配协议LDP,RSVP-TE将在7.3.2小节讲述MPLS流量工程的时候进行介绍。
普通标签分配协议LDP规定了一套用于在LSR之间通告标签含义的消息,包括发现消息、会话消息、通告消息和通知消息。
(a)发现消息:用来发现对方LSR的存在。常用的有Hello消息。
(b)会话消息:用来在LSR之间建立、维护和结束会话的连接。
(c)通告消息:负责创建、改变和删除特定的标签-FEC绑定。常用的有标签请求消息和标签映射消息。
(d)通知消息:用于提供建议性的消息和差错信息。
普通标签分配协议LDP的工作过程如图7-25所示。LSR通过周期性地发送Hello消息来表明它在网络中的存在。当LSR决定与通过Hello消息发现的其他LSR建立会话时,将通过TCP端口发起LDP初始化过程。初始化成功后,两个LSR成为LDP对等实体,双方可以交换通告消息,即当需要标签的时候可以向对方发送标签请求消息,当希望对方使用某一标签时可以向对方发送标签映射消息。
标签的分发有两种方式:下游自主(Downstream Unsolicited)方式和下游按需(Downstream On Demand)方式。如图7-26所示,在下游自主标签分发方式中,LSR可以对没有提出标签请求的LSR主动分配标签-FEC绑定;而在下游按需标签分发方式中,只有当其他LSR明确提出标签请求时才可以向其分发标签-FEC绑定。
图7-25 普通标签分配协议LDP的工作过程
图7-26 标签的分发方式
2.路径选择
为特定FEC选择LSP有两种方法:逐跳路由(Hop by Hop Route)和显式路由(Explicit Route)。相应地,由这两种方法建立的LSP被称为逐跳路由LSP和显式路由LSP。
逐跳路由允许每个LSR独立地为每个FEC选择下一跳。网络收敛后,运行逐跳路由的LSR会自动地为每一个FEC通过请求消息建立一条LSP,即为每个FEC绑定相应的标签,并将标签增加到转发信息库FIB中。由于逐跳路由LSP是动态建立的,网络扩展性较好,但是不能用于支持服务质量(QoS),也不能支持流量工程,所以不适合用来承载语音等实时业务。
显式路由与逐跳路由恰好相反,每个LSR不能独立地为每个FEC选择下一跳,而是由入口LSR事先确定好了FEC在MPLS域中的路径。入口LSR将确定的路径作为请求消息的参数,通过请求消息来引导LSP的建立,具体过程如图7-27所示。由于显式路由LSP是事先指定的,因而可以根据网络资源的情况来选择合理的路径,保证网络资源充分利用,避免拥塞。此外,请求消息中携带QoS参数也可以满足各种业务的服务质量要求。因此,显式路由很容易实现流量工程。
图7-27 显式路由