OptiX PTN设备实现原理详解

上传人:仙*** 文档编号:33715393 上传时间:2021-10-18 格式:DOC 页数:27 大小:532.02KB
收藏 版权申诉 举报 下载
OptiX PTN设备实现原理详解_第1页
第1页 / 共27页
OptiX PTN设备实现原理详解_第2页
第2页 / 共27页
OptiX PTN设备实现原理详解_第3页
第3页 / 共27页
资源描述:

《OptiX PTN设备实现原理详解》由会员分享,可在线阅读,更多相关《OptiX PTN设备实现原理详解(27页珍藏版)》请在装配图网上搜索。

1、文档名称文档密级: OptiX PTN设备实现原理详解1 、MPLS 基础1.1 简介介绍MPLS 的产生、基本概念、网络结构及体系结构1.1.1 MPLS 的起源1.1.2 MPLS 概述1.1.3 MPLS 网络结构1.1.4 MPLS 基本概念1.1.5 MPLS 的体系结构1.1.1 MPLS 的起源90 年代中期,基于IP 技术的Internet 快速普及。但由于硬件技术存在限制,基于最长匹配算法的IP 技术必须使用软件查找路由,转发性能低下。因此IP 技术的转发性能成为当时限制网络发展的瓶颈。为了适应网络的发展,ATM(Asynchronous Transfer Mode)技术应运

2、而生。ATM 采用定长标签(即信元),并且只需要维护比路由表规模小得多的标签表,能够提供比IP路由方式高得多的转发性能。然而,ATM 协议相对复杂,且ATM 网络部署成本高,这使ATM 技术很难普及。传统的IP 技术简单,且部署成本低。如何结合IP 与ATM 的优点成为当时热门话题。多协议标签交换技术MPLS(Multiprotocol Label Switching)就是在这种背景下产生的。MPLS 最初是为了提高路由器的转发速度而提出的。与传统IP 路由方式相比,它在数据转发时,只在网络边缘分析IP 报文头,而不用在每一跳都分析IP 报文头,节约了处理时间。随着ASIC 技术的发展,路由查

3、找速度已经不是阻碍网络发展的瓶颈。这使得MPLS 在提高转发速度方面不再具备明显的优势。但是MPLS 支持多层标签和转发平面面向连接的特性,使其在VPN(Virtual Private Network)、流量工程、QoS(Quality of Service)等方面得到广泛应用。1.1.2 MPLS 概述MPLS 位于TCP/IP 协议栈中的链路层和网络层之间,用于向IP 层提供连接服务,同时又从链路层得到服务。MPLS 以标签交换替代IP 转发。标签是一个短而定长的、只具有本地意义的连接标识符,与ATM 的VPI/VCI 以及Frame Relay 的DLCI 类似。标签封装在链路层和网络层

4、之间。MPLS 不局限于任何特定的链路层协议,能够使用任意二层介质传输网络分组。MPLS 起源于IPv4(Internet Protocol version 4),其核心技术可扩展到多种网络协议,包括IPv6(Internet Protocol version 6)、IPX(Internet Packet Exchange)、Appletalk、DECnet、CLNP(Connectionless Network Protocol)等。MPLS 中的“Multiprotocol”指的就是支持多种网络协议。由此可见,MPLS 并不是一种业务或者应用,它实际上是一种隧道技术。这种技术不仅支持多种高

5、层协议与业务,而且在一定程度上可以保证信息传输的安全性。1.1.3 MPLS 网络结构MPLS 网络的典型结构如图1-1,MPLS 网络的基本组成单元是标签交换路由器LSR(Label Switching Router),由LSR 构成的网络区域称为MPLS 域(MPLS Domain)。位于MPLS 域边缘、连接其它网络的LSR 称为边沿路由器LER(Label Edge Router),区域内部的LSR 称为核心LSR(Core LSR)。如果一个LSR 有一个或多个不运行MPLS的相邻节点,那么该LSR 就是LER。如果一个LSR 的相邻节点都运行MPLS,则该LSR就是核心LSR。图1

6、-1 MPLS 网络结构MPLS 基于标签进行转发。IP 包进入MPLS 网络时,MPLS 入口的LER 分析IP 包的内容并且为这些IP 包添加合适的标签,所有MPLS 网络中的节点都是依据标签来转发数据的。当该IP 包离开MPLS 网络时,标签由出口边缘设备删除。报文在MPLS 网络中经过的路径称为标签交换路径LSP(Label Switched Path)。LSP是一个单向路径,与数据流的方向一致。图1-2 MPLS LSPLSP 的起始节点称为入节点(Ingress);位于LSP 中间的节点称为中间节点(Transit);LSP 的末节点称为出节点(Egress)。一条LSP 可以有0

7、 个、1 个或多个中间节点,但有且只有一个入节点和出节点。1.1.4 MPLS 基本概念标签标签(Label)是一个短而定长的、只具有本地意义的标识符。标签与ATM 的VPI/VCI 以及Frame Relay 的DLCI 类似,是一种连接标识符。标签长度为4 个字节,封装结构如图1-3 所示。图1-3 MPLS 报文首部结构标签共有4 个域: Label:20 比特,标签值域。 Exp:3 比特,用于扩展。现在通常用做CoS(Class of Service),其作用与Ethernet802.1p 的作用类似。 S:1 比特,栈底标识。MPLS 支持多层标签,即标签嵌套。S 值为1 时表明为

8、最底层标签。 TTL:8 比特,和IP 分组中的TTL(Time To Live)意义相同。标签封装在链路层和网络层之间。这样,标签能够被任意的链路层所支持。标签在分组中的封装位置如图1-4 所示。图1-4 标签在分组中的封装位置标签栈标签栈(Label stack)是指标签的排序集合。MPLS 报文支持同时携带多个标签,靠近二层首部的标签称为栈顶标签或外层标签;靠近IP 首部的标签称为栈底标签,或内层标签。理论上,MPLS 标签可以无限嵌套。图1-5 标签栈标签栈按后进先出(Last In First Out)方式组织标签,从栈顶开始处理标签。标签操作类型标签的操作类型包括标签压入(Push

9、)、标签交换(Swap)和标签弹出(Pop),它们是标签转发的基本动作,是标签转发信息表的组成部分。 Push:指当IP 报文进入MPLS 域时,MPLS 边界设备在报文二层首部和IP 首部之间插入一个新标签;或者MPLS 中间设备根据需要,在标签栈顶增加一个新的标签(即标签嵌套封装)。 Swap:当报文在MPLS 域内转发时,根据标签转发表,将MPLS 报文的栈顶标签删除,然后添加一层下一跳分配的标签。 Pop:当报文离开MPLS 域时,将MPLS 报文的标签去掉;或者MPLS 倒数第二跳节点处去掉栈顶标签,减少标签栈中的标签数目。倒数第二跳弹出在最后一跳节点,标签已经没有使用价值。这种情况

10、下,可以利用倒数第二跳弹出特性PHP(Penultimate Hop Popping),在倒数第二跳节点处将标签弹出,减少最后一跳的负担。最后一跳节点直接进行IP 转发或者下一层标签转发。PHP 在Egress 节点上配置。支持PHP 的Egress 节点分配给倒数第二跳节点的标签有以下两种: 标签值0:表示IPv4 显式空标签(explicit-null)。被分配了显式空标签的报文在Egress 节点将被直接进行Pop 操作,处理EXP 和TTL 后进行IP 转发或下一层标签转发,不再查询标签转发表。 标签值3:表示隐式空标签(implicit-null),这个值不会出现在标签栈中。当一个L

11、SR 发现自己被分配了隐式空标签时,它并不用这个值替代栈顶原来的标签,而是直接执行Pop 操作。Egress 节点直接进行IP 转发或下一层标签转发。注:目前PTN不支持倒数第二跳弹出(PHB)标签交换路径报文在MPLS 网络中经过的路径称为标签交换路径LSP(Label Switched Path)。LSP 在功能上与ATM 和Frame Relay 的虚电路相同,是从入口到出口的一个单向路径。入节点、中间节点和出节点标签交换路径LSP 是一个单向路径,LSP 中的LSR 可以分为: 入节点(Ingress):LSP 的起始节点,一条LSP 只能有一个Ingress。Ingress 的主要功

12、能是给报文压入一个新的标签,封装成MPLS 报文进行转发。 中间节点(Transit):LSP 的中间节点,一条LSP 可能有多个Transit。Transit 的主要功能是查找标签转发信息表,通过标签交换完成MPLS 报文的转发。 出节点(Egress):LSP 的末节点,一条LSP 只能有一个Egress。Egress 的主要功能是弹出标签,恢复成原来的报文进行相应的转发。其中Ingress 和Egress 既是LSR,又是LER;Transit 是LSR。上游和下游根据数据传送的方向,LSR 可以分为上游和下游。 上游:以指定的LSR 为视角,根据数据传送的方向,所有往本LSR 发送MP

13、LS 报文的LSR 都可以称为上游LSR。 下游:以指定的LSR 为视角,根据数据传送的方向,本LSR 将MPLS 报文发送到的所有下一跳LSR 都可以称为下游LSR。如图1-6 所示,对于发往192.168.1.0/24 的数据流来说,LSR-A 是LSR-B 的上游节点,LSR-B 是LSR-A 的下游节点。同理,LSR-B 是LSR-C 上游节点。LSR-C 是LSR-B 的下游节点。图1-6 上游和下游概念标签分发图1-7 标签分发示意图标签发布协议标签发布协议是MPLS 的控制协议(也可称为信令协议),负责标签的分发以及LSP 的建立和维护等一系列操作。MPLS 可以使用多种标签发布

14、协议,例如LDP(Label Distribution Protocol)、RSVP-TE(Resource Reservation Protocol Traffic Engineering)和MP-BGP(Multiprotocol Border Gateway Protocol)。1.1.5 MPLS 的体系结构MPLS 的体系结构由控制平面(Control Plane)和转发平面(Forwarding Plane)组成。MPLS 体系结构如图1-8。图1-8 MPLS 体系结构示意图 控制平面是无连接的,主要功能是负责标签的分配、标签转发表的建立、标签交换路径的建立、拆除等工作。 转发平

15、面也称为数据平面(Data Plane),是面向连接的,可以使用ATM、帧中继、Ethernet 等二层网络。转发平面的主要功能是对IP 包进行标签的添加和删除,同时依据标签转发表对收到的分组进行转发。1.2 LSP 的建立介绍静态LSP 和动态LSP 的建立过程1.2.1 LSP 的基本建立过程1.2.2 静态LSP 的建立1.2.3 动态LSP 的建立1.2.1 LSP 的基本建立过程MPLS 需要为报文事先分配好标签,建立一条LSP,才能进行报文转发。标签由下游分配,按从下游到上游的方向分发。如图1-9,由下游LSR将标签分配给特定业务,再通过标签发布协议通知上游LSR,以便建立标签转发

16、表和LSP。图1-9 LSP 建立LSP 分为静态LSP 和动态LSP 两种。静态LSP 由管理员手工配置,动态LSP 则利用路由协议和标签发布协议动态建立。1.2.2 静态LSP 的建立静态LSP 是用户通过手工为Tunnel分配标签而建立的。手工分配标签需要遵循的原则是:前一节点出标签的值就是下一个节点入标签的值。由于静态LSP 各节点上不能相互感知到整个LSP 的情况,因此静态LSP 是一个本地的概念。 配置静态LSP 的入节点,且在出接口使能了MPLS,配置的下一跳IP地址能学习到就可以将MPLS报文转发出去。 配置静态LSP 的Transit 节点,且在入接口和出接口使能了MPLS,

17、配置的下一跳IP地址能学习到就可以将MPLS报文转发出去。 配置静态LSP 的出节点,且入接口使能了MPLS。说明:静态LSP不需要路由可达就能转发,并且静态LSP一直上UP的;在POS链路上静态LSP即使在PPP 协商失败的情况下也可以转发,但是业务是否能通由物理链路决定。静态LSP 不使用标签发布协议,不需要交互控制报文,因此消耗资源比较小,适用于拓扑结构简单并且稳定的小型网络。但通过静态方式分配标签建立的LSP 不能根据网络拓扑变化动态调整,需要管理员干预。静态LSP 由管理员手工配置,动态LSP 则利用标签发布协议动态建立。1.2.3 动态LSP 的建立动态LSP 通过标签发布协议动态

18、建立。MPLS 可以使用多种标签发布协议,例如: LDPLDP 是专为标签发布而制定的协议。LDP 通过逐跳方式建立LSP 时,利用沿途各LSR 路由转发表中的信息来确定下一跳,而路由转发表中的信息一般是通过IGP、BGP 等路由协议收集的。LDP 并不直接和各种路由协议关联,只是间接使用路由信息。虽然LDP 是专门用来实现标签分发的协议,但LDP 并不是唯一的标签分发协议。通过对BGP、RSVP 等已有协议进行扩展,也可以支持MPLS 标签的分发。 RSVP-TE资源预留协议RSVP 是为Integrated Service 模型而设计的,用于在一条路径的各节点上进行资源预留。RSVP 工作

19、在传输层,但不参与应用数据的传送,是一种网络上的控制协议,类似于ICMP。为了能够建立基于约束的LSP,对RSVP 协议进行了扩展。扩展后的RSVP 信令协议称为RSVP-TE 信令协议,主要用于建立TE 隧道。它拥有普通LDP LSP 没有的功能,如发布带宽预留请求、带宽约束、链路颜色和显式路径等。说明:PTN在分配Tunnel标签的时候是用RSVP-TE支持TE-Tunnel,而分配PW标签的时候使用LDP协议,路由转发信息使用IS-IS协议收集。1.3 MPLS 转发介绍MPLS 转发的基本原理1.3.1 基本概念1.3.2 MPLS 报文的基本转发过程1.3.3 MPLS 对TTL 的

20、处理1.3.1 基本概念NHLFE下一跳标签转发表项NHLFE(Next Hop Label Forwarding Entry)用于指导MPLS 报文的转发。NHLFE 包括:Tunnel ID、出接口、下一跳、出标签、标签操作类型等信息。1.3.2 MPLS 报文的基本转发过程以支持PHP 的LSP 为例,说明MPLS 报文的基本转发过程。图1-11 MPLS 标签分发和报文转发如图1-11,MPLS 建立了一条LSP,其目的地址为3.3.3.3/32。则MPLS 报文转发大体过程如下:1. Ingress 节点收到目的地址为3.3.3.3 的IP 报文,添加标签Z 并转发。2. Trans

21、it 节点收到该标签报文,进行标签交换,将标签Z 弹出,换成标签Y。3. 倒数第二跳Transit 节点收到带标签Y 的报文。因Egress 分给它的标签值为3,进行PHP 操作,弹出标签Y 并转发报文。从倒数第二跳到Egress 之间报文以IP 报文形式传输。4. Egress 节点收到该IP 报文,将其转发给目的地3.3.3.3/32。MPLS 详细转发流程请参见下一节:MPLS 转发流程。注:目前PTN不支持PHP,使用PHP举例只是因为这样包含的动作比较全。1.4 标签空间介绍MPLS 的标签空间标签空间就是指标签的取值范围。标签空间划分如下: 0 15:特殊标签。特殊标签的详细介绍请

22、参见表1-2。 静态LSP 和 动态LSP 共享的标签空间。 标签空间的起始值必须始32k的整数倍,标签空间的大小固定为32k(32768)。表1-2 特殊标签标签值含义描述0 IPv4 Explicit NULL Label表示该标签必须被弹出。如果出节点分配给倒数第二跳节点的标签值为0,则倒数第二跳LSR 需要将值为0 的标签正常压入报文标签值顶部,转发给最后一跳。最后一跳发现报文携带的标签值为0,则将标签弹出。1Router Alert Label只有出现在非栈底时才有效。类似于IP 报文的“Router Alert Option”字段,节点收到Router Alert Label 时,

23、需要将其送往本地软件模块进一步处理。实际报文转发由下一层标签决定。如果报文需要继续转发,则节点需要将Router Alert Label 压回标签栈顶。2IPv6 Explict NULL Label表示该标签必须被弹出。如果出节点分配给倒数第二跳节点的标签值为2,则倒数第二跳节点需要将值为2 的标签正常压入报文标签值顶部,转发给最后一跳。最后一跳发现报文携带的标签值为2,则直接将标签弹出。3Implicit NULL Label倒数第二跳LSR 进行标签交换时,如果发现交换后的标签值为3,则将标签弹出,并将报文发给下最后一跳。最后一跳收到该报文直接进行IP 转发或下一层标签转发。4 13保留

24、14OAM Router Alert LabelMPLS OAM(Operation Administration &Maintenance)通过发送OAM 报文检测和通告LSP 故障。OAM 报文使用MPLS 承载。OAM报文对于Transit LSR 和倒数第二跳LSR(penultimate LSR)是透明的。15保留1.5 MPLS 的应用介绍MPLS 的应用前景由于MPLS 结合了IP 网络强大的三层路由功能和传统二层网络高效的转发机制,在转发平面采用面向连接方式,与现有二层网络转发方式非常相似,这使得MPLS 能够很容易地实现IP 与ATM、帧中继等二层网络的无缝融合,并为流量工程

25、TE(TrafficEngineering)、虚拟专用网VPN(Virtual Private Network)、服务质量QoS(Quality of Service)等应用提供更好的解决方案。1.5.1 基于MPLS 的VPN1.5.2 基于MPLS 的QoS1.5.1 基于MPLS 的VPN传统VPN 一般是通过GRE(Generic Routing Encapsulation)、L2TP(Layer 2 Tunneling Protocol)、PPTP(Point to Point Tunneling Protocol)等隧道协议来实现私有网络间数据在公网上的传送。基于MPLS 的VPN

26、 可以创建一个同FR 网络具备的安全性很相似的专用网。用户设备一般不需要使用IPSec 等安全技术,也无需为VPN 配置GRE、L2TP 等隧道,网络时延被降到最低,因为数据包不再经过封装或者加密。基于MPLS 的VPN 通过LSP 将私有网络的不同分支联结起来,形成一个统一的网络,如图1-15 所示。基于MPLS 的VPN 还支持对不同VPN 间的互通控制。图1-15 中: CE(Customer Edge)是用户边缘设备,可以是路由器,也可以是交换机或主机; PE(Provider Edge)是服务商边缘节点,位于骨干网络。在骨干网络中,还存在P(Provider),是服务提供商网络中的骨

27、干节点,不与CE 直接相连。P 设备只需要具备基本MPLS 转发能力,不维护VPN 信息。图1-15 基于MPLS 的VPN1.5.2 基于MPLS 的QoS支持基于MPLS 的流量工程和差分服务Diff-Serv 特性,在保证网络高利用率的同时,可以根据不同数据流的优先级实现差别服务,从而为语音,视频数据流提供有带宽保证的低延时、低丢包率的服务。由于全网实施流量工程的难度比较大,因此,在实际的组网方案中往往通过差分服务模型来实施QoS。Diff-Serv 的基本机制是在网络边缘,根据业务的服务质量要求将该业务映射到一定的业务类别中,利用IP 分组中的DS(Differentiated Ser

28、vice)字段(由ToS 域而来)唯一的标记该类业务;然后,骨干网络中的各节点根据该字段对各种业务采取预先设定的服务策略,保证相应的服务质量。Diff-Serv 对服务质量的分类和标签机制与MPLS 的标签分配十分相似,事实上,基于MPLS 的Diff-Serv 就是通过将DS 的分配与MPLS 的标签分配过程结合来实现的。说明关于QoS 的详细介绍请参见特性描述。1.6 MPLS Ping/Traceroute介绍使用MPLS Ping/Traceroute 检测LSP 故障的基本原理1.6.1 概述1.6.2 MPLS Ping1.6.3 MPLS Traceroute1.6.1 概述在M

29、PLS 中,如果LSP 转发数据失败,负责建立LSP 的MPLS 控制平面将无法检测到这种错误,这会给网络维护带来困难。MPLS Ping/Traceroute 为用户提供了发现LSP 错误、并及时定位失效节点的机制。类似于普通IP 的Ping/Traceroute,MPLS Ping/Traceroute 使用MPLS Echo Request 和MPLS Echo Reply 检测LSP 的可用性。这两种消息以UDP 报文格式发送,端口号为3503。接收端通过UDP 端口号识别出MPLS Echo Request 和MPLS Echo Reply 报文。MPLS Echo Request

30、中携带需要检测的信息,沿LSP发送,从而实现对LSP 的检测。MPLS Echo Request 通过MPLS 转发给目的端,而MPLSEcho Reply 则通过IP 转发给源端。为了防止消息到达Egress 节点后又被转发给其他节点,Echo Request 消息的IP 头中目的地址设置为127.0.0.1/8(本机环回地址),IP 头中的TTL 值 1。1.6.2 MPLS Ping图1-17 MPLS 网络如图1-17,PTN A 上建立了一条目的地为PTN D 的LSP。从PTN A 对该LSP 进行MPLS Ping 时的处理如下:1. PTN A 查找该LSP 是否存在。如果不存

31、在,返回错误信息,停止Ping。如果存在,则继续进行以下操作。2. PTN A 构造MPLS Echo Request 报文,IP 首部目的地址为127.0.0.1/8,IP TTL 1。查找相应的LSP,压入LSP 的标签(标签的TTL 255),将报文发送给PTN B。3. 中间节点PTN B 和PTN C 对MPLS Echo Request 报文进行普通MPLS 转发。4. 当MPLS 转发路径无故障,则MPLS Echo Request 报文到达LSP 的出节点PTN D。PTN D 处理后返回MPLS Echo Reply 报文, 通过IP 转发给源端。注:MPLS Echo Re

32、ply 报文从LSP的出节点 PTN D返回源端的时候是通过IP转发的,所以当我们使用静态Tunnel的时候(通常配置静态Tunnel都没有使能ISIS,路由是不通的)会出现MPLS ping不通的情况,而此时LSP可能是通的。在R1C03B03F版本实现了无应答模式的MPLS,即在PTN A ping 该LSP的时候 PTN D不将MPLS Echo Reply 报文返回源端,直接上报收到了MPLS Ping的报文。1.6.3 MPLS Traceroute如图1-17,从PTN A 对4.4.4.4/32 进行MPLS traceroute 时的处理如下:1. PTN A 检查LSP 是否

33、存在,如果不存在,返回错误消息,停止Traceroute,否则继续进行如下处理。2. PTN A 构造MPLS Echo Request 报文,IP 首部目的地址为127.0.0.1/8,IP TTL 1。查找相应的LSP,压入LSP 的标签(标签的TTL 1),将报文发送给PTN B。PTN B 收到此报文,标签的TTL 超时,因此返回MPLS Echo Reply 消息。MPLS Echo Reply 消息的目的UDP 端口和目的IP 地址就是MPLS Echo Request报文的源UDP 端口和源IP 地址,IP TTL 255。3. PTN A 收到MPLS Echo Reply 消

34、息后发送MPLS Echo Request 报文,其中标签的TTL 2。PTN B 对该报文进行普通MPLS 转发。PTN C 收到此报文,标签的TTL 超时,返回MPLS Echo Reply 消息。4. PTN A 收到MPLS Echo Reply 消息后发送MPLS Echo Request 报文,其中标签的TTL 3。PTN B 和PTN C 对该报文进行普通MPLS 转发。PTN D 收到此报文,发现报文目的地址为本机回环地址,返回MPLS Echo Reply 消息。1.7 参考资料清单提供相关的参考资料如果要更详细了解MPLS 的原理,请参考以下文档。文档编号描述RFC 303

35、1Multiprotocol Label Switching ArchitectureRFC 3036LDP SpecificationRFC 3032MPLS Label Stack EncodingRFC 3443Time To Live (TTL) Processing in Multi-Protocol Label Switching (MPLS) NetworksRFC 3034Use of Label Switching on Frame Relay Networks SpecificationRFC 2702Requirements for Traffic Engineering

36、 Over MPLSRFC 3209RSVP-TE: Extensions to RSVP for LSP TunnelsRFC 2547BGP/MPLS VPNsdraft-bonica-icmpmpls-02ICMP Extensions for MultiProtocol Label Switchingdraft-ietf-mpls-lspping-07Detecting MPLS Data Plane Failures2 、MPLS LDP关于本章介绍了MPLS LDP 的基本原理,LDP 会话的建立机制、LDP LSP 的建立机制2.1 MPLS LDP 简介介绍LDP 的基本概念2

37、.2 LDP 会话介绍LDP 会话的建立和维护2.3 参考资料清单查阅其他的参考资料2.1 MPLS LDP 简介介绍LDP 的基本概念2.1.1 MPLS LDP 的引入2.1.2 MPLS LDP 的基本概念2.1.1 MPLS LDP 的引入MPLS 体系有多种标签发布协议,LDP(Label Distribution Protocol)是其中使用较广的一种标签发布协议。LDP 规定了标签分发过程中的各种消息以及相关的处理进程,主要用于LSR 之间协商标签的分配,进而建立起标签交换路径(LSP)。PTN使用LDP来进行PW标签分发。2.1.2 MPLS LDP 的基本概念LDP 报文LD

38、P 报文由LDP PDU(Protocol Data Unit)头部和一组LDP 消息组成,LDP 报文的格式如图2-1 所示。图2-1 LDP 报文格式其中,LDP PDU 头部包括3 个域: Version:16 比特,表示版本号。目前LDP 的版本号始终为1。 PDU length:16 比特,表示整组LDP 消息的总长度,不包括括Version 和PDU Length 字段。例如某个LDP 报文中包含3 个Hello 消息,则该报文的PDU length = 3 * Message length,关于Message length 的详细描述请参见“LDP 消息格式”。 LDP iden

39、tifier:48 比特,表示LDP 标识符。前32 比特为LSR ID,后16 比特为标签空间。例如LDP 标识符为192.168.1.1:0,表示LSR ID 为192.168.1.1,标签空间为全局标签空间。Bunch of messages 是一组LDP 消息的集合,可以是一个或者多个LDP 消息。 当LDP 报文以UDP 方式传输时,“Bunch of messages”只能是Hello 消息的集合。 当LDP 报文以TCP 方式传输时,“Bunch of messages”可以是除Hello 消息外任意类型的LDP 消息的集合。LDP 消息格式LDP 消息的格式如图2-2 所示。图

40、2-2 LDP 消息格式LDP 消息各字段的含义如下: U:未知的消息。 如果对端收到的LDP 消息中“Message type”字段为未知的LDP 消息类型,且“U”字段的值为“0”,则向源端发送通知(Notification)消息。 如果对端收到的LDP 消息中“Message type”字段为未知的LDP 消息类型,且“U”字段的值为“1”,则表示可以忽略的未知消息。 Message type:LDP 消息的类型。 Message length:LDP 消息的长度。 Message ID:LDP 消息的编号,用于唯一地标识一个LDP 消息。 Mandatory parameters:LD

41、P 消息的强制参数。 Optional parameters:LDP 消息的可选参数。LDP 消息类型LDP 协议主要使用以下四类消息,如表2-1 所示。表2-1 LDP 消息类型消息类型功能消息名称传输类型发现(Discovery)消息通告和维护网络中LSR的存在。Hello 消息UDP会话(Session)消息建立、维护和终止LDP对等体之间的会话。Initialization 消息Keepalive 消息TCP通告(Advertisement)消息创建、改变和删除FEC的标签映射。Address 消息Address withdraw消息Label request 消息Label mapp

42、ing 消息Label withdraw 消息Label release 消息Label abort request消息TCP通知(Notification)消息提供建议性的消息和差错通知。Notification 消息TCP标签空间标签空间(Label Space)用于指定标签分配和分发的方式,可以分为: 全局标签空间(Per-Platform Label Space):每个标签在整个LSR 是唯一的。目前主要使用全局标签空间。 接口标签空间(Per-Interface Label Space):LSR 的每个接口都可以生成一个标签。注:PTN目前不支持接口标签空间LDP 标识符LDP 标识

43、符(LDP Identifier)用于标识特定LSR 的标签空间范围。LDP 标识符的格式为:,长度为六字节,其中: LSR ID:表示LSR 编号,占四字节。 Label space ID:表示标签空间编号,占两字节。全局标签空间为“0”,接口标签空间为“1”。例如LDP 标识符为192.168.1.1:0,表示LSR ID 为192.168.1.1,标签空间为全局标签空间。2.2 LDP 会话介绍LDP 会话的建立和维护2.2.1 基本概念2 MPLS LDP2.2.2 LDP 的发现机制2.2.3 LDP 会话的建立2.2.4 LDP 会话状态机2.2.5 LDP 会话的维护2.2.1

44、基本概念LDP 对等体LDP 对等体是指相互之间存在LDP 会话、使用LDP 来交换标签的两个LSR。LDP 对等体通过它们之间的LDP 会话获得对方的标签映射消息。LDP 会话LDP 会话用于在LSR 之间进行标签交换。LDP 会话分为以下两种: 本地LDP 会话(Local LDP Session):本地LDP 会话只能在相邻的LSR 之间建立; 远端LDP 会话(Remote LDP Session):远端LDP 会话主要建立在不相邻的LSR之间,也可以建立在相邻的LSR 之间。LDP 使用的定时器LDP 会话主要使用以下几个定时器: Hello 发送定时器:LSR 使用Hello 定时

45、器周期性地发送Hello 消息,向邻居LSR通告它在网络中的存在,并建立Hello 邻接关系。Hello 定时器的取值为对应的Hello保持定时器取值的三分之一。 Hello 保持定时器:建立了Hello 邻接关系的LDP 对等体之间,通过周期性发送Hello 报文表明自己希望继续维持这种邻接关系。如果Hello 保持定时器超时,没有收到新的Hello 报文,则拆除Hello 邻接关系。 KeepAlive 发送定时器:当会话建立以后,LSR 启动KeepAlive 发送定时器周期性地发送KeepAlive 消息,用于保持LDP 会话。KeepAlive 发送定时器的取值为对应的会话保持定时器

46、取值的三分之一。 会话保持定时器:LDP 对等体之间通过LDP 会话连接上传送的LDP 协议报文(PDU)维持LDP 会话,如果会话保持定时器超时,没有收到任何LDP PDU,则关闭连接,结束LDP 会话。2.2.2 LDP 的发现机制希望建立会话的LSR 向相邻LSR 周期性地发送Hello 消息,通知相邻节点的本地对等关系的机制称为LDP 发现机制。LDP 有两种发现机制: 基本发现机制基本发现机制用于发现本地的LDP 对等体,即通过链路层直接相连的LSR,建立本地LDP 会话。这种方式下,LSR 周期性以UDP 报文形式从接口发送LDP 链路Hello 消息(LDPLink Hello)

47、,发往标识“子网内所有节点”的组播地址。LDP 链路Hello 消息带有接口的LDP 标识符及其他相关信息,如果LSR 在某个接口收到了LDP 链路Hello 消息,则表明在该接口(链路层)可能存在LDP 对等体。 扩展发现机制扩展发现机制用于发现远端的LDP 对等体,即非直连的LSR,建立远端LDP 会话。这种方式下,LSR 周期性以UDP 报文形式向指定的IP 地址发送LDP 目标Hello 消息(LDP Targeted Hello)。LDP 目标Hello 消息带有LSR 的LDP 标识符及其他相关信息,如果LSR 收到LDP目标Hello 消息,则表明在网络中可能存在LDP 对等体。

48、LSR 之间在LDP 发现阶段建立Hello 邻接关系,之后通过进一步的消息交换建立LDP会话。2.2.3 LDP 会话的建立LDP 会话的建立过程如图2-3 所示。图2-3 LDP 会话的建立下文对LDP 会话的建立过程进行了详细描述:1. 两个LSR 之间互相发送Hello 消息。Hello 消息中携带传输地址,双方使用传输地址建立LDP 会话。首先选择传输地址较大的一方作为主动方,发起建立TCP 连接。如图2-3 所示,LSR-A 作为主动方发起建立TCP 连接,LSR-B 作为被动方等待对方发起连接。2. TCP 连接建立成功后,由主动方LSR-A 发送Initialization 消

49、息,协商建立LDP 会话的相关参数,包括LDP 协议版本、标签分发方式、KeepAlive 保持定时器的值、最大PDU 长度和标签空间等。3. 被动方LSR-B 收到Initialization 消息后,如果不能接受相关参数,则发送Notification 消息终止LDP 会话的建立;如果被动方LSR-B 能够接受相关参数,则发送Initialization 消息,同时发送Keepalive 消息。4. 主动方LSR-A 收到Initialization 消息后,如果不能接受相关参数,则发送Notification 消息终止LDP 会话的建立;如果能够接受相关参数,则发送Keepalive消息

50、。当双方都收到对端的Keepalive 消息后,LDP 会话建立成功。2.2.4 LDP 会话状态机LDP 会话状态机如图2-4 所示:图2-4 LDP 会话状态机LDP 会话包括以下五种状态: NON EXISTENT:LDP 会话的最初状态。在此状态下,双方互相发送Hello 消息,选举主动方,当收到TCP 连接建立成功事件后状态变为INITIALIZED。 INITIALIZED:该状态下分为主动方和被动方两种情况。 主动方发送Initialization 消息,转向OPENSENT 状态,等待对方回应Initialization 消息。 被动方等待主动方发给自己的Initializat

51、ion 消息。如果收到Initialization 消息,且相关的参数可以接受,则发送Initialization 消息和Keepalive 消息,转向OPENREC 状态。 如果主动方和被动方在此状态下收到任何非Initialization 消息或等待超时,则转向NON EXISTENT 状态。 OPENSENT:主动方发送Initialization 消息后的状态,在此状态等待被动方回应Initialization 消息和Keepalive 消息。 如果主动方收到Initialization 消息中的参数可以接受,则转向OPENREC 状态。 如果主动方收到Initialization 消

52、息中的参数不能接受或Initialization 消息超时,则断开TCP 连接转向NON EXISTENT 状态。 OPENREC:在此状态无论是主动方和被动方都是发送Keepalive 消息后的状态,在等待对方回应Keepalive 消息。 只要收到Keepalive 消息就转向OPERATIONAL 状态。 如果收到其他消息或Keepalive 超时,则转向NON EXISTENT 状态。 OPERATIONAL:此状态表明LDP 会话已经建立。在此状态下可以发送或接收所有其他的LDP 消息。在此状态如果Keepalive 定时器超时或收到致命错误的Notification 消息(如Shu

53、tdown 消息),或自己主动发送Shutdown 消息结束会话,都会转向NON EXISTENT 状态。2.2.5 LDP 会话的维护维护Hello 邻接关系两个相邻的LSR 之间可以建立多个Hello 邻接关系,但是只能建立一个LDP 会话。LSR通过周期性地发送Hello 消息,向邻居LSR 通告它在网络中的存在,并维持Hello 邻接关系。LSR 为每个邻居建立一个Hello 保持定时器,用于维护Hello 邻接关系,每收到一个Hello 消息时刷新Hello 保持定时器。如果在收到新的Hello 消息之前Hello 保持定时器超时,则LSR 认为Hello 邻接关系中断。由于一个LD

54、P 会话可能包含多个Hello 邻接关系,因此只有所有的Hello 邻接关系都中断时,LSR 会关闭相应的传输层连接,终止会话进程。维护LDP 会话LDP 通过检测会话连接上传输的LDP PDU 来判断会话的完整性。LSR 为每个会话建立一个“生存状态”定时器,每收到一个LDP PDU 时刷新该定时器。如果在收到新的LDP PDU 之前定时器超时,LSR 认为会话中断,对等关系失效。LSR 将关闭相应的传输层连接,终止会话进程。2.3 参考资料清单查阅其他的参考资料如果您想了解更多关于LDP 的信息,请参考以下文档。文档编号描述RFC 3031Multiprotocol Label Switc

55、hing ArchitectureRFC 3033The Assignment of the Information Field and Protocol Identifier in theQ.2941 Generic Identifier and Q.2957 User-to-user Signaling for theInternet ProtocolRFC 3032MPLS Label Stack EncodingRFC 3035MPLS using LDP and ATM VC SwitchingRFC 3034Use of Label Switching on Frame Relay

56、 Networks SpecificationRFC3478Graceful Restart Mechanism for Label Distribution Protocol3、MPLS APS请参考特性描述4、MPLS OAM请参考特性描述5、PW OAM请参考特性描述6、以太网端口OAM请参考特性描述7、以太网业务OAM请参考特性描述8、ATM OAM请参考特性描述9、QoS请参考特性描述10、PTP 时钟请参考特性描述11、BFD请参考特性描述12、LPT请参考特性描述13、TPS 保护请参考特性描述14、ML-PPP请参考特性描述15、IMA请参考特性描述16、LAG请参考特性描述17、FRR请参考特性描述18、MSTP请参考特性描述19、IGMP Snooping请参考特性描述20、带内DCN请参考特性描述2021-10-11华为机密,未经许可不得扩散第27页, 共27页

展开阅读全文
温馨提示:
1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
2: 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
3.本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!