H3C基础配置文档抄录8-MPLS配置(1)

1MPLS基础

1.1MPLS简介

    (1)  MPLS(Multiprotocol Label Switching,多协议标签交换)是目前应用比较广泛的一种骨干网技术。MPLS 在无连接的 IP 网络上引入面向连接的标签交换概念,将第三层路由技术和第二层交换技术相结合,充分发挥了 IP 路由的灵活性和二层交换的简洁性。MPLS 广泛应用于大规模网络中,它具有以下优点:

•  在 MPLS 网络中,设备根据短而定长的标签转发报文,省去了查找 IP 路由表的繁琐过程,为数据在骨干网络中的传送提供了一种高速高效的方式。

•  MPLS 位于链路层和网络层之间,它可以建立在各种链路层协议(如 PPP、ATM、帧中继、以太网等)之上,为各种网络层(IPv4、IPv6、IPX 等)提供面向连接的服务。

•  支持多层标签和面向连接的特点,使得 MPLS 具有良好的扩展性,在 MPLS 网络基础上可以为客户提供各种服务。目前,MPLS 在 VPN、流量工程、QoS 等方面得到广泛应用。

 

 

(2)FEC(Forwarding Equivalence Class,转发等价类)是 MPLS 中的一个重要概念。MPLS 将具有相同特征(目的地相同或具有相同服务等级等)的报文归为一类,称为 FEC。属于相同 FEC 的报文在 MPLS 网络中将获得完全相同的处理。

标签是一个长度固定、只具有本地意义的标识符,用于唯一标识一个报文所属的 FEC。一个标签只能代表一个 FEC。

 

标签封装在链路层帧头和网络层报文头之间,长度为 4 个字节,由以下四个字段组成:

•  Label:标签值,长度为 20bits,用来标识一个 FEC。

•  TC(Traffic Class,流量等级):3bits,用于 QoS。该字段又称为 Exp 字段。

•  S:标签栈底标识位,长度为 1bit。MPLS 支持多重标签,即在链路层帧头和网络层报文头之间可以封装多个标签,形成标签栈。靠近链路层帧头的最外层标签为栈顶标签;靠近网络层报文头的最内层标签为栈底标签。S位为1时表示为栈底标签;S位为0时表示为非栈底标签。

•  TTL:8bits,和 IP 报文中的 TTL 意义相同,可以用来防止环路。

 

标签交换路由器

LSR(Label Switching Router,标签交换路由器)是具有标签分发能力和标签交换能力的设备,是MPLS 网络中的基本元素。

属于同一个 FEC 的报文在 MPLS 网络中经过的路径称为 LSP(Label Switched Path,标签交换路径)。LSP是一条单向报文转发路径。在一条LSP上,沿数据传送的方向,相邻的LSR分别称为上游LSR和下游LSR。

 

标签转发表

与 IP 网络中的 FIB(Forwarding Information Base,转发信息库)类似,在 MPLS 网络中,LSR

接收到带标签的报文后,通过查找 LFIB(Label Forwarding Information Base,标签转发信息库)

获取对应的标签操作类型、出标签值、下一跳等,以确定如何转发该报文。

 

3)MPLS 节点由两部分组成:

•  控制平面(Control Plane):负责标签的分配、FEC—标签映射的交换、标签转发表的建立、

标签交换路径的建立、拆除等工作;

•  转发平面(Forwarding Plane):依据标签转发表对收到的报文进行转发。

 

如 图 1-3 所示,MPLS网络的基本构成单元是LSR。MPLS网络包括以下几个组成部分:

•  入节点 Ingress:报文的入口 LSR,负责为进入 MPLS 网络的报文添加标签。

•  中间节点 Transit:MPLS 网络内部的 LSR,根据标签沿着由一系列 LSR 构成的 LSP 将报文

传送给出口 LSR。

•  出节点 Egress:报文的出口 LSR,负责剥离报文中的标签,并转发给目的网络。

 

1.2LSP建立

LSP 的建立过程实际就是将 FEC 和标签进行绑定,在 LSR 上建立标签转发表的过程。LSP 既可以通过手工配置的方式静态建立,也可以利用标签分发协议动态建立。

(1)  手工配置的方式建立静态 LSP

建立静态 LSP 需要用户在报文转发路径中的各个 LSR 上手工配置为 FEC 分配的标签。建立静态LSP 消耗的资源比较少,但静态建立的 LSP 不能根据网络拓扑变化动态调整。因此,静态 LSP 适用于拓扑结构简单并且稳定的小型网络。

(2)  利用标签分发协议动态建立 LSP

标签分发协议是 MPLS 的信令协议,负责划分 FEC、通告 FEC—标签绑定、建立维护 LSP 等。标签分发协议的种类较多,有专为标签分发而制定的协议,如 LDP(Label Distribution Protocol,标签分发协议),也有扩展后支持标签分发的协议,如 MP-BGP、RSVP-TE。

 

如 图 1-5 所示,MPLS网络中报文的基本转发过程为:

(1)  Ingress(Router B)接收到不带标签的报文,根据报文的目的 IP 地址查找 FIB 表获取报文的出标签(40)、下一跳 LSR(Router C)和出接口(GigabitEthernet1/0/2),为报文添加标签,并从相应的出接口将带有标签的报文转发给下一跳 LSR。

(2)  Router C 根据报文上的标签(40)查找 LFIB 表获取报文的标签操作(交换标签)、出标签(50)、下一跳 LSR(Router D)和出接口(GigabitEthernet1/0/2),用新的标签(50)替换原有标签后,从相应的出接口将带有标签的报文转发给下一跳 LSR。

(3)  Egress(Router D)接收到标签报文,根据报文上的标签(50)查找 LFIB 表获取报文的标签操作(删除标签)、下一跳 LSR(Router E)和出接口(GigabitEthernet1/0/2),删除报文中的标签,从相应的出接口将不带标签的报文转发给下一跳 LSR。如果 LFIB 表项中没有记录下一跳和出接口,则根据 IP 报文头查 FIB 表转发该报文。

(4)倒数第二跳弹出

     MPLS 网络中,Egress 节点接收到带有标签的报文后,查找标签转发表,弹出报文中的标签后,再进行下一层的标签转发或 IP 转发。Egress 节点转发报文之前要查找两次转发表:两次标签转发表,或一次标签转发表一次路由转发表。

    为了减轻 Egress 节点的负担,提高 MPLS 网络对报文的处理能力,可以利用 PHP(Penultimate HopPopping,倒数第二跳弹出)功能,在倒数第二跳节点处将标签弹出,Egress 节点只需查找一次转发表。可以通过分配隐式空标签实现倒数第二跳弹出。隐式空标签的标签值为 3,这个值不会出现在标签栈中。当一个 LSR 发现下游 LSR 通告的标签为隐式空标签时,它并不用这个值替代栈顶原来的标签,而是直接弹出标签,并将报文转发给下游 LSR(即 Egress)。Egress 接收到报文后,直接进行下一层的转发处理。

    使用隐式空标签时,倒数第二跳 LSR 弹出了标签栈,而在某些情况下,Egress 需要根据标签栈中的 TC 等信息决定 QoS 策略,此时利用显式空标签就可以在保留标签栈信息的同时,简化 Egress节点的转发处理。IPv4 显式空标签的值为 0。Egress 为 FEC 分配 IPv4 显式空标签,并通告给上游LSR 后,上游 LSR 用这个值替代栈顶原来的标签,并将报文转发给 Egress。Egress 收到标签值为0 的报文时,不会查找标签转发表,从标签中获取 TC 等信息后,直接弹出标签栈,进行下一层的转发处理。

 

1.3MPLS配置

system-view

mpls lsr-id 2.2.2.2     //缺省未配置LSR ID

interface g0/0/1

  mpls enable

 

 

2静态LSP

2.1静态LSP简介

不依靠标签分发协议,而是在报文经过的每一跳设备上(包括 Ingress、Transit 和 Egress)分别手

工指定入标签、出标签等信息,建立标签转发表项,采用这种方式建立的 LSP(Label Switched Path,

标签交换路径),称为静态 LSP。

 

2.2配置命令

单向配置(反方向也需要配置才能LSP转发):

static-lsp ingress AtoC destination 21.1.1.0 24 nexthop 10.1.1.2 out-label 30 

static-lsp transit AtoC in-label 30 nexthop 20.1.1.2 out-label 50

static-lsp engress AtoC in-label 50

 

display mpls static-lsp           

ping mpls -a 11.1.1.1 ipv4 21.1.1.0 24    //y验证静态LSP的可达性

 

3LDP配置

3.1LDP简介

    LDP(Label Distribution Protocol,标签分发协议)用来动态建立 LSP。通过 LDP,LSR 可以把网络层的 IP 路由信息映射到 MPLS 的标签交换路径上。

   LDP会话,LDP 会话是指建立在 TCP 连接之上的 LDP 协议连接,用于在 LSR 之间交换 FEC—标签映射(FEC-Label Mapping)。

   LDP对等体,LDP 对等体是指相互之间存在 LDP 会话,并通过 LDP 会话交换 FEC—标签映射关系的两个 LSR。

   LDP消息类型,LDP 协议主要使用四类消息:

•  发现(Discovery)消息:用于通告和维护网络中的 LSR,例如 Hello 消息。

•  会话(Session)消息:用于建立、维护和终止 LDP 对等体之间的会话,例如用来协商会话参数的 Initialization 消息和用于维护会话的 Keepalive 消息。

•  通告(Advertisement)消息:用于创建、改变和删除“FEC—标签”映射关系,例如用来通告标签映射的 Label Mapping 消息。

•  通知(Notification)消息:用于提供建议性信息的消息和差错通知,例如 Notification 消息。为保证 LDP 消息的可靠发送,除了发现消息使用 UDP 传输外,LDP 的会话消息、通告消息和通知消息都使用 TCP 传输。

 

3.2LDP工作过程

(1)对等体发现与维护,使能了 LDP 能力的 LSR 周期性地发送 Hello 消息,通告自己的存在。通过 Hello 消息,LSR 可以自动发现它周围的 LSR 邻居,并与其建立 Hello 邻接关系。

LDP 对等体发现机制分为两种:

•  基本发现机制:用于发现本地直连的 LSR 邻居,即通过链路层直接相连的 LSR。这种方式下,LSR 周期性地向“子网内所有路由器”的组播地址 224.0.0.2 发送 LDP 的 Link Hello 消息,以便链路层直接相连的 LSR 发现此 LSR。

•  扩展发现机制:用于发现远端非直连的 LSR 邻居,即不通过链路层直接相连的 LSR。这种方式下,LSR 周期性地向指定的 IP 地址发送 LDP 的 Targeted Hello 消息,以便指定 IP 地址对应的 LSR 发现此 LSR。扩展发现机制主要应用于 MPLS L2VPN 和 VPLS。LSR 可以与直连的邻居同时建立 Link Hello 和 Targeted Hello 两种邻接关系。

 

(2)通过交互 Hello 消息发现 LSR 邻居后,LSR 开始与其建立会话。这一过程又可分为两步:

•  建立传输层连接,即在 LSR 之间建立 TCP 连接;

•  对 LSR 之间的会话进行初始化,协商会话中涉及的各种参数,如 LDP 版本、标签通告方式、Keepalive 保持时间等。如果会话参数协商通过,则 LSR 之间成功建立 LDP 会话。会话建立后,LDP 对等体之间通过发送 LDP PDU(LDP PDU 中携带一个或多个 LDP 消息)来维护这个会话。如果在 Keepalive 报文发送时间间隔内,LDP 对等体之间没有需要交互的信息,则 LSR

发送 Keepalive 消息给 LDP 对等体,以便维持 LDP 会话。如果 Keepalive 保持定时器超时时,没有收到任何 LDP PDU,LSR 将关闭 TCP 连接,结束 LDP 会话。一个LDP会话上可能存在多个Hello邻接关系。当LDP会话上的最后一个Hello邻接关系被删除后,LSR 将发送通知消息,结束该 LDP 会话。LSR 还可以通过发送 Shutdown 消息,通知它的 LDP 对等体结束 LDP 会话。

 

(3)LSP建立

LSR根据IP路由表项中的目的IP地址划分FEC,为不同的FEC分配不同的标签,并将FEC—标签映射通告给对端LSR;对端LSR根据接收到的FEC—标签映射及本地为该FEC分配的标签建立标签转发表项。从Ingress到Egress的所有LSR都为该FEC建立对应的标签转发表项后,就成功地建立了用于转发属于该FEC报文的LSP。

 

3.3LDP的标签分发和管理

(1)标签通告方式(Label Advertisement Mode)

 

• •  DU(Downstream Unsolicited,下游自主方式):下游 LSR 主动将 FEC—标签映射通告给上游 LSR,无需等待上游 LSR 的标签请求。在 DU 方式中,下游 LSR 负责发起标签映射过程。

• •  DoD(Downstream On Demand,下游按需方式):上游 LSR 请求下游 LSR 为 FEC 分配标签,下游 LSR 收到请求后,才会将该 FEC 的 FEC—标签映射通告给请求标签的上游 LSR。

在 DoD 方式中,上游 LSR 负责发起标签映射过程。目前,设备只支持 DU 标签通告方式。

 

(2)标签分发控制方式(Label Distribution Control Mode)

根据通告 FEC—标签映射前是否要求收到下游的 FEC—标签映射,标签分发控制方式分为独立标签分发控制方式(Independent)和有序标签分发控制方式(Ordered)。

• •  独立标签分发控制方式:LSR可以在任意时间向与它连接的LSR通告FEC—标签映射。使用这种方式时,LSR可能会在收到下游LSR的FEC—标签映射之前就向上游通告了FEC—标签映射。

如 图 1-3 所示,如果标签通告方式是DU,则即使没有获得下游的FEC—标签映射,也会直接向上游LSR通告FEC—标签映射;如果标签通告方式是DoD,则接收到标签请求的LSR直接向它的上游LSR通告FEC—标签映射,不必等待来自它的下游的FEC—标签映射。

• •  有序标签分发控制方式:LSR只有收到它的下游LSR为某个FEC通告的FEC—标签映射,或该LSR是此FEC的出口节点时,才会向它的上游LSR通告此FEC的FEC—标签映射。图 1-2 中的标签通告过程采用了有序标签控制方式:如果标签通告方式为DU,则LSR只有收到下游LSR通告的FEC—标签映射,才会向自己的上游LSR通告FEC—标签映射;如果标签通告方式为DoD,则下游LSR(Transit)收到上游LSR(Ingress)的标签请求后,继续向它的下游LSR Egress发送标签请求,Transit收到Egress通告的FEC—标签映射后,才会向Ingress通告FEC—标签映射。

 

(3)标签保持方式(Label Retention Mode)

根据 LSR 是否保持收到的、但暂时未使用的 FEC—标签映射,标签保持方式分为:

• •  自由标签保持方式(Liberal):对于从邻居 LSR 收到的标签映射,无论邻居 LSR 是不是指定FEC 的下一跳都保留。这种方式的优点是 LSR 能够迅速适应网络拓扑变化,但是由于需要保留所有不能生成 LSP 的标签,浪费了内存等系统资源。

• •  保守标签保持方式(Conservative):对于从邻居 LSR 收到的标签映射,只有当邻居 LSR 是指定 FEC 的下一跳时才保留。这种方式的优点是节省标签,但是对拓扑变化的响应较慢。

目前,设备只支持自由标签保持方式。

 

3.4LDP GR

LDP GR(Graceful Restart,平滑重启)利用 MPLS 转发平面与控制平面分离的特点,在信令协议或控制平面出现异常时,保持标签转发表项,LSR 依然根据该表项转发报文,从而保证数据转发不中断。

 

如 图 1-4 所示,参与LDP GR过程的设备分为以下两种:

• •  GR restarter:GR 重启的 LSR,指由管理员手工触发或控制平面异常而重启协议的设备,它必须具备 GR 能力。

• •  GR helper:GR restarter 的邻居 LSR,与重启的 GR restarter 保持邻居关系,并协助其恢复重启前的转发状态。

设备既可以作为 GR restarter,又可以作为 GR helper,设备的角色由该设备在 LDP GR 过程中的作用决定。

如 图 1-5 所示,LDP GR的工作过程为:

(1)  LSR 之间建立 LDP 会话时,LSR 在发送的 Initialization 消息中携带 FT(Fault Tolerance,容错)会话 TLV,且 L 标记位置为 1,标识它们支持 LDP GR。

(2)  GR restarter 进行协议重启时,启动 MPLS 转发状态定时器,并将标签转发表项置为 Stale 状态。GR helper 发现与 GR restarter 之间的 LDP 会话 down 后,将通过该 LDP 会话接收的 FEC—标签映射置为 Stale 状态,并启动重连定时器。

(3)  GR restarter 协议重启后,重新建立与 GR helper 的 LDP 会话。如果在重连定时器超时前,没有建立 LDP 会话,则 GR helper 删除标记为 Stale 的 FEC—标签映射及对应的标签转发表项。如果在重连定时器超时前,重新建立 LDP 会话,GR restarter 将转发状态保持定时器的剩余时间作为恢复定时器时间值通告给 GR helper。

(4)  GR restarter 和 GR helper 之间重新建立 LDP 会话后,GR helper 启动 LDP 恢复定时器。

(5)  GR restarter 和 GR helper 在新建立的 LDP 会话上交互标签映射,更新标签转发表。GR restarter 接收到标签映射后,与标签转发表进行比较:如果标签转发表中存在与标签映射一致的 Stale 表项,则删除该表项的 Stale 标记;否则,按照正常的 LDP 处理流程,添加新的标签转发表项。GR helper 接收到标签映射后,与本地保存的 FEC—标签映射进行比较:如果存在一致的标签映射,则删除该 FEC—标签映射的 Stale 标记;否则,按照正常的 LDP 处理流程,添加新的 FEC—标签映射及对应的标签转发表项。

(6)  MPLS 转发状态保持定时器超时后,GR restarter 删除标记为 Stale 的标签转发表项。

(7)  LDP 恢复定时器超时后,GR helper 删除标记为 Stale 的 FEC—标签映射。

 

3.5LDP IGP同步

(1)基本工作机制

LDP 基于 IGP 最优路由建立 LSP,LDP 和 IGP 不同步可能导致 MPLS 流量转发中断。LDP 和 IGP不同步包括如下情况:

• •  某条链路 up 后,IGP 通告并使用了这条链路,而此时这条链路上 LDP LSP 尚未建立;

• •  当 LDP 会话 down 时,IGP 继续使用这条链路,而此时这条链路上的 LDP LSP 已经拆除;

• •  标签分发控制方式为有序方式时,还没有收到下游设备通告的标签映射,尚未建立 LDP LSP,IGP 就已经使用该链路。

 

   启用 LDP IGP 同步功能后,只有 LDP 在某条链路上收敛,IGP 才会为这条链路通告正常的开销值,否则通告链路开销的最大值,使得这条链路在 IGP 拓扑中可见,但是在其它链路可用的情况下,IGP不会将该链路选为最优路由,从而确保设备收到 MPLS 报文时,不会因为最优路由上的 LDP LSP没有建立而丢弃 MPLS 报文。

同时满足如下条件时,设备认为 LDP 在某条链路上已收敛:

• •  在该链路上本地设备至少与一个对等体建立了 LDP 会话,且该 LDP 会话已进入 operational

状态。

• •  在该链路上本地设备至少向一个对等体发送完标签映射。

 

3.6LDP快速重路由

      当 MPLS 网络中的链路或某台路由器发生故障时,需要通过故障链路或故障路由器传送才能到达目的地的MPLS报文将会丢弃,MPLS流量转发将会中断,直到LDP沿着新的路径建立新的LDP LSP,被中断的 MPLS 流量才能恢复正常的传送。

    LDP 快速重路由功能可用来缩短网络故障导致的 MPLS 流量中断时间。LDP 快速重路由完全基于IP 快速重路由实现,在 IP 快速重路由使能后,LDP 快速重路由即自动使能。使能 IP 快速重路由有两种实现方式:

• •  配置 IGP 协议自动计算备份下一跳

• •  配置 IGP 协议通过路由策略指定备份下一跳

如 图 1-6 所示,LSR A上使能IP快速重路由功能后,IGP将为路由自动计算或通过路由策略指定备份下一跳,建立主备两条路由,LDP基于主备路由建立主备两条LSP。主LSP正常工作时,MPLS

流量通过主LSP转发;当主LSP出现故障时,MPLS流量快速切换到备份LSP,从而缩短网络故障导

致的流量中断时间。

 

3.7LDP配置

system-view

mpls ldp

lsr-id 2.2.2.2

inter g0/0/1

  mpls ldp enable

md5-authentication 3.3.3.3 cipher h3ch3c   //使能LDP的MD5认证功能

lsp-trigger {all | prefix-list prefix-list-name}    //配置LSP触发策略,缺省只有32位掩码的主机路由能触发LDP建立LSP

label-distribution {independent|ordered}         //缺省为ordered,会话建立后需要重启LDP才会生效

advertise-label prefix-list prefix-list-name [peer peer-prefix-list-name]   //配置标签通告策略,缺省未配置情况下,会向所有对等体通告满足LSP触发策略的所有IP地址前缀的标签映射。

accept-label peer peer-lsr-id perfix-list prefix-list-name   //配置标签接受控制策略,缺省未配置情况下,接受来自所有对等体的所有IP地址前缀的标签映射。

 

配置LDP环路检测:

LDP 环路检测有两种方式:

(1)  最大跳数

在传递标签映射(或者标签请求)的消息中包含跳数信息,每经过一跳该值就加一。当该值达到规

定的最大值时即认为出现环路,终止 LSP 的建立过程。

(2)  路径向量

在传递标签映射(或者标签请求)的消息中记录路径信息,每经过一跳,相应的设备就检查自己的

LSR ID 是否在此记录中。如果记录中没有自身的 LSR ID,就会将自身的 LSR ID 添加到该记录中;

如果记录中已有本 LSR 的记录,则认为出现环路,终止 LSP 的建立过程。

采用路径向量方式进行环路检测时,也需要规定 LSP 路径的最大跳数,当路径的跳数达到配置的最

大值时,也会认为出现环路,终止 LSP 的建立过程。

loop-detect                 //开启环路检测

maxhops hop-number        //配置最大跳数环路检测,缺省为32

pv-limit pv-number           //配置路径向量环路检测,缺省为32

 

配置LDP GR

graceful-restart             //使能GR能力

 

配置LDP IGP同步

在 OSPF 进程、OSPF 区域或 IS-IS 进程下使能 LDP IGP 同步功能后,所有属于该 OSPF 进程、

OSPF 区域或 IS-IS 进程的接口上都会自动使能 LDP IGP 同步功能。用户可以根据实际需要,在某

个接口上禁止 LDP IGP 同步功能。

ospf 100

  mpls ldp sync

 

reset mpls ldp    //重启LDP会话,使得修改后的LDP会话参数生效

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章