ch4-MPLS技术的学习

版权声明:请多多关注博主哟~ https://blog.csdn.net/qq_37865996/article/details/85111422

MPLS的基本原理

1.网络构成

两种路由器: 边界标记交换路由器LER和核心标记交换路由器LSR

两种协议:路由协议和LDP协议

IP路由器结构: 

                

 核心标记交换路由器LSR:

                 

边界标记交换路由器LER:

                

2.基本概念

转发等价类

数据包与FEC之间的映射只需在MPLS网络的入口边缘结点实施。

FEC所能涵盖得内容非常丰富,除了数据包的源、目的地IP地址等取自网络层包头的信息以外,还包括各种粒度的服务质量保证以及流量调节等方面的要求,甚至是数据流的入端口信息。

在数据转发过程中,MPLS网络将FEC映射为简短的标记。

标记:

在MPLS体系结构中,标记只是一个抽象的概念,既没有固定的格式,也不与特定的链路层技术绑定。

ATM技术使用VCI/VPI作为标记,FR技术使用DLCI作为标记,PPP和以太网技术使用SHIM标记。

封装标记的方式: (1)当采用MPLS专用软件/硬件转发数据分组时,标记堆栈作为网络层与数据链路层分组头之间的一个独立“夹层”存在 (2)当采用ATM交换机转发分组时,对ATM设备进行简单升级,将MPLS标记封装入VPI/VCI字段

标记只具有本地意义:

每一个标记转发表都对应着一个标记的集合,这个集合就是标记空间。

在同一个标记空间内,标记必须具有唯一性,但不同的标记空间则完全可以使用相同的标记。

标记聚合:

聚合的定义:在MPLS体系结构中,将单个标记绑定给多个FEC并依据此标记转发这些FEC所对应数据流的过程被称为聚合  

聚合的好处: 节省了标记资源,减少了重复得标记转发条目以及标记分发的信令开销,有利于提高数据转发的效率

标记合并:

标记合并的定义:当某个LSR收到的多个入标记对应于相同的FEC时,可以使用同一个标记将这些分组从相同的端口转发出去,这种情况被称为标记合并  

标记合并的好处:节约标记资源,减少信令开销,提高转发效率

信元交织问题的处理:

1.VP合并

将多条VP聚合为一条VP,但使用不同的VCI来标识各条信元流。

2.VC合并

 将多条VC聚合为一条VC,但ATM交换机必须在属于同一个IP包的ATM信元收集齐全后才能将其转发出去。

标记堆栈:

对数据包实施多次标记封装,就形成了标记堆栈。

转发设备在对分组的处理过程中只需要将顶层标记作为转发依据。

标记堆栈的一个重要作用时支持层次路由。

                          

                 

MPLS与ATM结合是利用ATM信元头中的VPI/VCI作为标记载体,标记栈的深度最多只能达到两层  

为减轻LSP出口LSR的负荷,可以采取倒数第二跳弹栈技术  

使用倒数第二跳弹栈需要的前提条件:(1)倒数第二跳LSR必须能够通过栈顶标记将分组转发至下一跳结点并判断出自己的下一跳是LSP的出口(2)倒数第二跳LSR必须具备标记弹栈的能力(3)出口LSR已经明确提出了倒数第二跳弹栈的请求

MPLS基本工作过程:

1.LDP根据传统路由协议建立的路由表在各个LSR中建立标记转发表

2.入口LER接收IP包,完成第三层功能,根据分组的业务属性为该IP包加上标记,使之成为标记分组  

3.LSR根据分组上的标记以及LSR中的标记转发表项直接进行转发

4.出口LER将分组中的标记去掉后恢复为正常的IP分组,根据路由协议继续进行转发

3.MPLS基本工作原理

标签交换路由器的功能包含两个层面,即控制层面和数据层面。控制层面包括MPLS的信令和路由。控制层面负责标记交换路径的建立、拆除、保护、重建立、重路由等,是整个MPLS理论的核心。数据层面的主要功能是对IP包进行标签封装和去封装,同时根据控制层面建立的路由转发标记包。

数据平面:

在边缘路由器接收IP包,判断IP包所属的FEC,进行路由选择并给IP包打上FEC的相应标签,形成MPLS标签包,并将其发往其他LSR。  

在LSR构成的网络中,LSR对标签分组不再进行任何第三层处理,只是根据分组上的标签以及标签转发表通过交换单元对其进行转发,同时完成相应的标签转换。  

在MPLS出口的路由器上,将分组中的标签去掉后继续进行转发。

控制平面:

1.路由表RIB:用来决策路由

2.转发信息表FIB:用于转发普通IP数据报

3.标记信息库LIB:标识标记和转发等价类的绑定关系

4.标记转发信息表LFIB:用于转发入站的带标记的IP数据报

MPLS工作过程中的四张表:

1、建立/更新IP路由表RIB

2、分配并分发标签、维护LIB

3、维护LFIB

4、数据传递过程

 

 

4.标记分发协议LDP

LDP:Label Distribution Protocol,标记分发协议  

标记分发协议是标记交换路由器之间的会话、协商定义流程和规则  

LDP消息类型: 发现消息 会话消息 通告消息 通知消息

LDP发现机制用于向外通告自身的存在以及发现潜在的LDP对等体  

LDP标识符:       <LSR ID>:<Label Space ID>  

LDP的发现机制有两种: 基本发现机制:用于发现在链路层直接相连的LDP邻居

                                           扩展发现机制: 用于发现在链路层非直接相连的LDP邻居

LDP邻居发现过程:

LDP会话机制: LDP会话用于在LSR之间进行标记信息交换

 

MPLS中的流量工程

                          

流量工程的性能指标主要包括两大方面:

面向业务的性能指标:增强业务的QoS性能。例如对分组丢失、时延、吞吐量以及服务等级协定SLA(Service Level Agreement)的影响。

面向资源的性能指标:优化资源利用。带宽是一种重要资源,对带宽资源进行高效管理是流量工程的一项中心任务。    

 流量工程决不是特定于MPLS技术的产物,而是一种通用的实现方案。 在MPLS流量工程出现之前,主要用于实现流量工程的技术有: ATM流量工程和IP流量工程。在此不再赘述。

MPLS技术采用固定长度的标签查找代替了传统IP路由最长匹配的查找方式,提高了转发的速度。这是当初发展MPLS技术的初衷。 MPLS技术可以很好的集成IP和ATM业务,避免了IPOA等技术的附加花费。

MPLS真正的优势在于提供了多种增值服务: MPLS VPN、MPLS QOS、MPLS Traffic Engineering

目前主流的MPLS TE实现方式: RSVP-TE:RSVP-TE技术较为成熟,已经规模运用,但技术本身较为复杂,扩展性较差; CR LDP-TE:CR LDP-TE技术不太成熟,基本没有运用,但是比较简单,扩展性较好。 目前业界主要采用RSVP-TE的方式。

实现MPLS流量工程的必要条件

  1. 支持建立面向端到端的,基于LSP的流量隧道(Tunnel);
  2. 支持根据不同的优先级进行隧道抢占的功能;
  3. 支持故障失效倒换功能。当链路或节点故障后,可以保证快速的进行流量的切换;
  4. 支持预先建立备份路径的功能;
  5. 支持LSP隧道随网络资源情况的变化而进行路径重优化;
  6. 支持LSP隧道随带宽变化自动进行带宽的调整;
  7. 支持显式路径。可以根据实际需要,包含或不包含特定的节点;
  8. 支持优先级LSP隧道。不同优先级的流量进入不同的隧道中,提供不同的优先级服务。

MPLS流量工程的四大组件:

MPLS流量工程主要包括四大组件: 信息发布组件、路径计算组件、信令组件(或称路径建立组件)、报文转发组件

四大组件可以保证流量基本转发,仅仅属于温饱范畴。

MPLS流量工程还支持一些高级的特性,来丰富基本功能,以达到小康水平:FRR(Fast Reroute)、隧道的备份(Backup)、带宽的自动调整(Auto Bandwidth Allocation)和路径的重优化(Reoptimum)。

实现框图:

信息发布模块:

发布的内容:链路状态信息-IGP本身就具有、TE Metric、带宽信息、管理组和亲和属性。

MPLS TE需要通告的带宽信息有:最大的物理带宽信息、最大的可预留带宽信息、对应每个优先级的当前可用带宽。

发布信息的时机-MPLS TE什么时间泛洪?

  • 周期性泛洪(IGP方式)
  • 当链路生效或者失效时(IGP方式)
  • 当链路配置发生变化时(如链路的Cost发生更新)(IGP方式)
  • 当链路带宽发生重大变化时(TE特有) 当LSP建立失败时(TE特有)。由于时间间隙的存在,可能计算出的路径在进行LSP建立时,每个节点没有足够的资源来预留带宽,LSP将无法建立,这时该节点会马上泛洪,通告链路的当前可用带宽

信息发布的负责者:OSPF-TE和ISIS-TE。两种IGP路由协议的扩展目的在于传送带有流量参数的的LSA,满足MPLS流量工程的需求。 OSPF-TE和ISIS-TE缺省情况下,只支持单个区域启用。如果需要在多个区域运用MPLS TE,就需要使用区间隧道(Inter-area Tunnels)实现。

泛洪的结果:

1.OSPF-TE或ISIS-TE泛洪完成后,将形成本区域内统一的流量工程数据库(TEDB)。

2.TEDB与IGP路由协议的LSDB是两个完全独立的数据库。TEDB除了具备LSDB中所有的内容。外,还包含流量工程的信息。LSDB用于IGP最短路径的计算,TEDB用于流量工程LSP最优路径的计算。

路经计算之CSPF算法:

CSPF(Constrained  Shortest Path First)是带有约束条件的SPF算法。其约束条件: Cost(IGP本身具有)、带宽、链路属性 。CSPF算法路径计算的过程不是为了发现到所有目的地的路由器最佳路径而设计的,而是仅仅为了到达LSP隧道的终点。

CSPF算法的最高仲裁(Tiebreaker):

在标准的SPF算法中,到同一目的地可以有多条等价路径存在,我们称为ECMP(Equal-Cost MultiPath)。 但是在CSPF算法中,对于一个目的地只能寻找一条路径。当存在多条满足基本条件的路径时,如何进行CSPF算法的最高仲裁(Tiebreaker)? 选择IGP代价最小的路径; 选择有最大的最小可用带宽的路径; 选择最小跳数的路径; 如果还不能区分,则随机选择一条。

TE Metric:

在选择LSP隧道的决策过程中,可以支持两种代价的度量值: IGP Metric TE Metric 缺省情况下采用IGP Metric,一旦使能了TE Metric,IGP Metric将失效。 TE Metric配置在隧道的入口,只影响本地隧道的选路策略。

显式路径(Explicit Path):

除了CSPF算法本身,我们还可以通过显式路径(Explicit Path)来控制路径的选择。

支持显式路径是MPLS TE的最大的魅力之一,我们可以根据实际的需求,定义LSP隧道的路径,提高了可运营、可管理的能力。

显式路径由一系列节点构成,一条显式路径上的两个相邻节点之间存在两种关系: 严格下一跳(strict):两个节点必须直接相连;松散下一跳(loose):两个节点之间可以存在其他路由器

通过Include/Exclude命令来控制LSP隧道经过或不经过某节点。

严格显式路径: 所谓的严格显式路径,就是下一跳与前一跳直接相连。  通过严格显式路径,可以最精确地控制LSP所经过的路径。

松散显式路径:松散方式可以指定路径上必须经过那些节点,但是该节点和前一跳之间可以存在其他路由器。

路经建立

MPLS TE采用的信令协议主要有两种: RSVP-TE 协议本身较为成熟,已规模运用 基于软状态,扩展性较差

CR-LDP 协议较新,不太成熟,基本没有运用 基于硬状态,扩展性较好。

RSVP基础:

RSVP协议(Resource Reservation Protocol)是一种通告网络保留资源的机制。 早期的RSVP协议是主机与主机间的资源预留协议,后来逐步运用到网络设备间,最典型的运用模型为Integrated Service Model。 RSVP协议不是路由协议,RSVP的唯一工作是通告和维护网络中的保留资源。

RSVP协议有三种基本功能: 路径的建立和维护; 路径的拆除; 错误的通告。

RSVP协议是一种基于软状态(Soft-state)的协议。它需要定期在网络中重复通告预留信息。 RSVP的主要消息类型: Path:用来建立和维护保留; Resv:响应Path消息,用来建立和维护保留;PathTear:结构与Path类似,用于在网络中删除保留;ResvTear:结构与Resv类似,用于在网络中删除保留; PathErr:接收到错误的Path消息后发送;ResvErr:接收到错误的ResvErr消息后发送;Hello:RSVP-TE的扩展,用于邻居间状态的快速检测;RSVP消息都由一个公共头部,后面跟随一个或多个对象(Objects)构成。

RSVP信令过程:资源的保留通过起点向终点发送PATH消息进行申请, 终点通过RESV消息完成资源的保留。

RSVP对LSP Tunnel的扩展:

RFC 3209 RSVP-TE: Extensions to RSVP for LSP Tunnels中详细描述了RSVP协议对MPLS TE功能的扩展。 RSVP对于LSP Tunnel的扩展: 支持DOD( Downstream-on-demand)方式的标签分配; 支持为显式的LSP Tunnel分配网络资源; 支持已建立的LSP Tunnel发生抢占时,采用Make Before Break的方式; 支持记录LSP Tunnel经过的每个结点,可以用来防止环路; 支持对LSP Tunnel进行诊断。

RSVP-TE扩展的新对象:

LABEL_REQUEST:存在Path消息中。 LABEL:存在Resv消息中。 EXPLICIT_ROUTE:存在Path消息中。 RECORD_ROUTE:存在Path和Resv消息中。 SESSION_ATTRIBUTE:存在Path消息中,含有重要的标志位。 0x01 希望得到Fast Re-route 功能 0x02 希望进行标签记录 0x04 希望得到 SE类型。SENDER_TEMPLATE :存在Path类消息中,包含重要参数有隧道发送者地址、LSP ID等。  FILTER_SPEC :存在Resv类消息中,包含重要参数有隧道发送者地址、LSP ID等。 SESSION :存在Path和Resv消息中,包含重要参数有隧道终点地址、隧道ID等。 FLOWSPEC :存在Resv类消息中,包含各种流量信息。 SENDER_TSPEC :存在Path类消息中,包含各种流量信息。

TE Tunnel:

TE LSP Tunnel都是由隧道的首端发起建立,是一条head-end的LSP隧道。 RSVP-TE按照CSPF计算出来的路径,通过Path和Resv消息去请求建立LSP Tunnel。 LSP Tunnel都是单向的。

TE Tunnel 建立过程:

MPLS VPN技术

链接知识:IP VPN技术

MPLS VPN在安全性、灵活性、可扩展性以及服务质量保证、流量工程方面提供更优的性能

网络结构为:

可以是路由器和二层交换机,位于客户端,提供到网络运营商的介入。

PE:Provider Edge,运营商边界路由器 。维护和建立LSP,如标记边缘路由器LER

P:骨干路由器 。使用已经建立起来的LSP对VPN数据进行透明转发,如核心LSR

站点:VPN中的一个孤立的IP网络

VRF:VPN Routing Forwarding Table,VPN路由转发表,存储VPN站点的私有路由

Layer2 MPLS VPN的特点:

对于同一VPN,各个CE接入PE的方式必须相同

在MPLS域中,PE之间必须建立LSP,在PE中,必须为双向传输的LSP建立不同的转发表

Layer2 MPLS VPN是指构成VPN的隧道封装在网络参考模型的第二层上来完成,客户将其第三层路由映射到数据链路层的网络

客户路由对提供商来说是透明的,用户必须负责整个VPN的路由 PE设备和CE设备之间没有进行路由交换,只是向客户提供一些基于二层的网络功能

Layer3 MPLS VPN基本概念:

PE和CE之间可以交换VPN内部的路由信息并隔离不同VPN之间的路由信息->使用VPN路由转发表

PE和P之间可以交换骨干网内部的路由信息,并可以隔离骨干网和VPN之间的路由信息->使用骨干网路由表

解决Layer3 MPLS VPN中的地址重叠问题:

1.PE路由器的改造和VRF的导入

为了让PE路由器上能区分是哪个本地接口上送来的VPN用户路由,在PE路由器上创建了大量的虚拟路由器,每个虚拟路由器都有各自的路由表和转发表,这些路由表和转发表统称为VRF(VPNRoutingandForwardinginstances)。 一个VRF定义了连到PE路由器上的VPN成员。 有了虚拟路由器就能隔离不同VPN用户之间的路由,也能解决不同VPN之间IP地址空间重叠的问题。

2.地址的扩充

在VRF中定义了长度都是64比特的路径区分标识参数是RD(RouteDistinguisher),任何两个VPN的RD都不同。 VPN-IP地址=路径区分标识(RD)+IPaddress,将普通的IP地址转换为唯一的VPN-IP的地址 VPN-IPv4地址仅在提供商骨干网中运行的路由协议中承载。 VPN-IPv4地址并不在VPN数据业务的报头内承载。

3.使用MP-BGP协议分发VPN用户路由信息

PE路由器通过MPLS/VPN骨干网发布本地的VPN路由信息。 发送端PE通过使用MP-iBGP将VRF路由从本地发布出去(带有export-target属性)。 接收端PE将路由引入到所属的VRF中(有相匹配的import-target属性)

路由目标RT:

RT的本质是每个VRF表达自己的路由取舍及喜好的方式。可以分为两部分:ExportTarget与importTarget

在一个VRF中,在发布路由时使用RT的export规则。直接发送给其他的PE设备

在接收端的PE上,接收所有的路由,并根据每个VRF配置的RT的import规则进行检查,如果与路由中的RT属性match,则将该路由加入到相应的VRF中。 

4.PLS/VPN中标签分组的转发:两级标记栈

栈顶标签用于入口PE到出口PE的转发 MPLSLSP

栈底标签用于出口PE处的转发 通过MP-BGP分发(同时分发VPN路径信息)

P路由器仅仅维护内部路径,不需要知道VPN路径

Layer3 MPLS VPN的总结

提供商路由器参与用户的三层路由, CE路由器将其路由广播给提供商;提供商边缘路由器管理与VPN相关的路由表,并将路由发布到远端站点。

整个MPLS VPN体系结构可以分成控制面和数据面,控制面定义了LSP的建立和VPN路由信息的分发过程,数据面则定义了VPN数据的转发过程。

在控制层面,P路由器并不参与VPN路由信息的交互,客户路由器是通过CE和PE路由器之间、PE路由器之间的路由交互知道属于某个VPN的网络拓扑信息。

在数据转发层面,MPLS VPN网络中传输的VPN业务数据采用外标签(隧道标签)和内标签(VPN标签)两层标签栈结构。

Layer2 MPLS VPN和Layer3 MPLS VPN相比较:

可扩展性:Layer2 MPLS VPN优

Layer3 MPLS VPN只支持IP业务,Layer2 MPLS VPN可支持多种业务

Layer3 MPLS VPN协议更完善、技术更成熟一些

猜你喜欢

转载自blog.csdn.net/qq_37865996/article/details/85111422