《多协议标签交换.docx》由会员分享,可在线阅读,更多相关《多协议标签交换.docx(13页珍藏版)》请在三一办公上搜索。
1、多协议标签交换一、概述多协议标签交换(MPLS )是一种用于快速数据包交换和路由的体 系,它为网络数据流量提供了目标、路由地址、转发和交换等能力。 更特殊的是,它具有管理各种不同形式通信流的机制。中文名多协议标签交换外文名Multi-Protocol Label Switching本质用于快速数据包交换和路由的体系作用为数据流量提供了目标、路由等用途用于不同的包转发和包交换技术标签结构20 23 24 32 bit二、简介MPLS独立于第二和第三层协议,诸如ATM和IP。它提供了一种 方式,将IP地址映射为简单的具有固定长度的标签,用于不同的包 转发和包交换技术。它是现有路由和交换协议的接口,
2、如IP、ATM、 帧中继、资源预留协议(RSVP)、开放最短路径优先(OSPF)等等。在MPLS中,数据传输发生在标签交换路径(LSP)上。LSP是每 一个沿着从源端到终端的路径上的结点的标签序列。现今使用着一些 标签分发协议,如标签分发协议(LDP)、RSVP或者建于路由协议之 上的一些协议,如边界网关协议(BGP)及OSPF。因为固定长度标签 被插入每一个包或信元的开始处,并且可被硬件用来在两个链接间快 速交换包,所以使数据的快速交换成为可能。MPLS主要设计来解决网路问题,如网路速度、可扩展性、服务质 量(QoS)管理以及流量工程,同时也为下一代IP中枢网络解决宽 带管理及服务请求等问题
3、。在这部分,我们主要关注通用MPLS框架。有关LDP、CR-LDP和 RSVP-TE的具体内容可以参考个别文件。多协议标签交换MPLS最初是为了提高转发速度而提出的。与传统 IP路由方式相比,它在数据转发时,只在网络边缘分析IP报文头, 而不用在每一跳都分析IP报文头,从而节约了处理时间。MPLS 起源于 IPv4 (Internet Protocol version )其核心技术 可扩展到多种网络协议,包括IPX (Internet Packet Exchange) Appletalk、DECnet、CLNP(Connectionless Network Protocol)等。“MPLS”中
4、的“Multiprotocol指的就是支持多种网络协议。MPLS包头结构MPLS包头结构02023 2432标签CoSSTTL32比特X2层头部MPLS头部IP头部数据2层头部MPLS 头MPLS 头IP头部数据 MPLS 包头有 32Bih、. mA f XE . . . | 3个Bit的EXP,协议中没有明确,通常用作COS三、协议结构卜Bit的S。用于标识是否是栈底,表明MPLS的标签可以嵌套=亦 W顷.13遒 C j8Bfc:XiViTTIMPLS标签结构: 20 23 24 32 bitLabel Exp STTLLabel -Label值传送标签实际值。当接收到一个标签数据包时,
5、可以查出栈顶部的标签值,并且系统知道:A、数据包将被转发的下 一跳;B、在转发之前标签栈上可能执行的操作,如返回到标签进栈 顶入口同时将一个标签压出栈;或返回到标签进栈顶入口然后将一个 或多个标签推进栈。Exp 试用。预留以备试用。S 栈底。标签栈中最后进入的标签位置,s值为0。S值为1表明 此为最底层标签。正因为这个字段表明了 MPLS的标签理论上可以无 限嵌套,从而提供无限的业务支持能力。这是MPLS技术最大魅力所在。TTL 生存期字段(Time to Live ),用来对生存期值进行编码。 与IP报文中的TTL值功能类似,同样是提供一种防环机制。四、协议组MPLS:相关信令协议,如OSP
6、F、BGP、ATM PNNI等。LDP:标签分发协议(Label Distribution Protocol)CR-LDP:基于路由受限标签分发协议(Constraint-Based LDP)RSVP-TE :基于流量工程扩展的资源预留协议(resourceReservation Protocol - Traffic Engineering)五、分类基于MPLS的VPN传统的 VPN 一般是通过 GRE (Generic Routing Encapsulation)、 L2TP(Layer 2 Tunneling Protocol)PPTP(Point to Point Tunneling P
7、rotocol). IPSec协议等隧道协议来实现私有网络间数据流在公网 上的传送。而LSP本身就是公网上的隧道,所以用MPLS来实现VPN 有天然的优势。基于MPLS的VPN就是通过LSP将私有网络的不同分支联结起来, 形成一个统一的网络。基于MPLS的VPN还支持对不同VPN间的互通 控制。CE (Customer Edge)是用户边缘设备,可以是路由器,也可以是 交换机或主机。PE (Provider Edge)是服务商边缘路由器,位于骨干网络。在骨干网络中,还存在P (Provider),是服务提供商网络中的骨 干路由器,不与CE直接相连。P设备只需要具备基本MPLS转发能力, 可以将
8、其配置为M-BGP的路由反射器,不维护VPN信息。基于MPLS的VPN具有以下特点:PE负责对VPN用户进行管理、建立各PE间LSP连接、同一 VPN 用户各分支间路由分派。PE间的路由分派通常是用LDP或扩展的BGP协议实现。支持不同分支间IP地址复用和不同VPN间互通。减化了寻路步骤,提高了设备性能,加快了报文转发。基于MPLS的QoSNE80E支持基于MPLS的流量工程和差分服务Diff-Serv特性,在 保证网络高利用率的同时,可以根据不同数据流的优先级实现差别服 务,从而为语音,视频数据流提供有带宽保证的低延时、低丢包率的 服务。由于全网实施流量工程的难度比较大,因此,在实际的组网方
9、案 中往往通过差分服务模型来实施QoS。Diff-Serv的基本机制是在网络边缘,根据业务的服务质量要求 将该业务映射到一定的业务类别中,利用IP分组中的DS (Differentiated Service)字段(由ToS域而来)唯一的标记该类 业务;然后,骨干网络中的各节点根据该字段对各种业务采取预先设 定的服务策略,保证相应的服务质量。Diff-Serv对服务质量的分类和标签机制与MPLS的标签分配十分 相似,事实上,基于MPLS的Diff-Serv就是通过将DS的分配与MPLS 的标签分配过程结合来实现的。六、工作过程1. LDP和传统路由协议(如OSPF、ISIS等)一起,在各个LSR
10、 中为有业务需求的FEC建立路由表和标签映射表2. 入节点Ingress接收分组,完成第三层功能,判定分组所属 的FEC,并给分组加上标签,形成MPLS标签分组,转发到中间节点 Transit3. Transit根据分组上的标签以及标签转发表进行转发,不对标签分组进行任何第三层处理4. 在出节点Egress去掉分组中的标签,继续进行后面的转发。由此可以看出,MPLS并不是一种业务或者应用,它实际上是一种 隧道技术,也是一种将标签交换转发和网络层路由技术集于一身的路 由与交换技术平台。这个平台不仅支持多种高层协议与业务,而且, 在一定程度上可以保证信息传输的安全性。七、体系结构在MPLS的体系结
11、构中:控制平面(Control Plane)之间基于无连接服务,利用现有IP 网络实现。转发平面(Forwarding Plane)也称为数据平面(Data Plane), 是面向连接的,可以使用ATM、帧中继等二层网络。MPLS使用短而定长的标签(label)封装分组,在数据平面实现 快速转发。在控制平面,MPLS拥有IP网络强大灵活的路由功能,可以满足 各种新应用对网络的要求。对于核心LSR,在转发平面只需要进行标签分组的转发。对于LER,在转发平面不仅需要进行标签分组的转发,也需要进 行IP分组的转发,前者使用标签转发表LFIB,后者使用传统转发表 FIB (Forwarding Inf
12、ormation Base)。八、路由协议LDP利用路由转发表建立LSPLDP通过逐跳方式建立LSP时,利用沿途各LSR路由转发表中的 信息来确定下一跳,而路由转发表中的信息一般是通过IGP、BGP等 路由协议收集的。LDP并不直接和各种路由协议关联,只是间接使用 路由信息。通过已有协议的扩展支持MPLS标签分发一虽然LDP是专门用来实现标签分发的协议,但LDP并不是唯一的 标签分发协议。通过对 BGP、RSVP(Resource Reservation Protocol) 等已有协议进行扩展,也可以支持MPLS标签的分发。通过某些路由协议的扩展支持MPLS应用在MPLS的应用中,也可能需要对
13、某些路由协议进行扩展。例如, 基于MPLS的VPN应用需要对BGP进行扩展,使BGP能够传播VPN的 路由信息;基于MPLS的流量工程TE(Traffic Engineering)需要 对OSPF或IS-IS协议进行扩展,以携带链路状态信息。LSPM: LSP Management九、转发技术MPLS作为一种分类转发技术,将具有相同转发处理方式的分组归 为一类,称为转发等价类 FEC (Forwarding Equivalence Class)。 相同转发等价类的分组在MPLS网络中将获得完全相同的处理。转发等价类的划分方式非常灵活,可以是源地址、目的地址、源 端口、目的端口、协议类型、VPN
14、等的任意组合。例如,在传统的采 用最长匹配算法的IP转发中,到同一个目的地址的所有报文就是一 个转发等价类。十、标签标签是一个长度固定、只具有本地意义的短标识符,用于唯一标 识一个分组所属的转发等价类FEC。在某些情况下,例如要进行负载 分担,对应一个FEC可能会有多个标签,但是一个标签只能代表一个 FEC。标签由报文的头部所携带,不包含拓扑信息,只具有局部意义。 标签的长度为4个字节,封装结构如图1-1所示。标签共有4个域:1. Label: 20比特,标签值字段,用于转发的指针。2. Exp: 3比特,保留,用于试验,现在通常用做CoS (Class of Service)。3. S: 1
15、比特,栈底标识。MPLS支持标签的分层结构,即多重标 签,S值为1时表明为最底层标签。4. TTL: 8比特,和IP分组中的TTL(Time To Live)意义相同。标签与ATM的VPI/VCI以及Frame Relay的DLCI类似,是一种连 接标识符。如果链路层协议具有标签域,如ATM的VPI/VCI或Frame Relay 的DLCI,则标签封装在这些域中。如果链路层协议没有标签域,则标签封装在链路层和IP层之间的一个垫层中。Frame mode :帧模式。Cell mode :信元模式。标签交换路由器标签交换路由器LSR (Label Switching Router)是MPLS网络
16、中 的基本元素,所有LSR都支持MPLS协议。LSR由两部分组成:控制单元和转发单元。控制单元负责标签的分配、路由的选择、标签转发表的建立、标 签交换路径的建立、拆除等工作转发单元则依据标签转发表对收到的分组进行转发。标签发布标签发布协议是MPLS的控制协议,它相当于传统网络中的信令协 议,负责FEC的分类、标签的分配以及LSP的建立和维护等一系列操 作。MPLS可以使用多种标签发布协议。包括专为标签发布而制定的协议,例如:LDP (Label Distribution Protocol ) 、 CR-LDP ( Constraint-Routing Label DistributionPro
17、tocol)。也包括现有协议扩展后支持标签发布的,例如:BGP (BorderGateway Protocol)、 RSVP (Resource Reservation Protocol)。标签交换路径一个转发等价类在MPLS网络中经过的路径称为标签交换路径LSP (Label Switched Path)。LSP在功能上与ATM和Frame Relay的虚电路相同,是从入口到 出口的一个单向路径。LSP中的每个节点由LSR组成,根据数据传送 的方向,相邻的LSR分别称为上游LSR和下游LSR。标签交换路径LSP分为静态LSP和动态LSP两种。静态LSP由管 理员手工配置,动态LSP则利用路由
18、协议和标签发布协议动态产生。位于MPLS域边缘、连接其它用户网络的LSR称为边缘LSR,即LER (Label Edge Router),区域内部的LSR称为核心LSR。核心LSR可 以是支持MPLS的路由器,也可以是由ATM交换机等升级而成的 ATM-LSR。域内部的LSR之间使用MPLS通信,MPLS域的边缘由LER 与传统IP技术进行适配。分组被打上标签后,沿着由一系列LSR构成的标签交换路径LSP 传送,其中,入节点LER被称为Ingress,出节点LER被称为Egress, 中间的节点则称为Transito十一、参考信息如果要更详细了解MPLS的原理,请参考以下文档。RFC3031:
19、 Multiprotocol Label Switching Architecture十二、技术特点1充分采用原来的IP路由,在此基础上加以改进;保证了 MPLS 网络路由具有灵活性的特点2采用ATM的高效传输交换方式,抛弃了复杂的ATM信令,无缝地将IP技术的优点融合到ATM的高效硬件转发中3 MPLS网络的数据传输和路由计算分开,是一种面向连接的传输 技术,能够提供有效的QOS保证4 MPLS不但支持多种网络层技术,而且是一种与链路层无关的技 术,它同时支持X.25帧中继ATM PPP SDH DWDM等,保证了多种 网络的互连互通,使得各种不同的网络传输技术统一在同一各MPLS 平台上5
20、 MPLS支持大规模层次化的网络拓扑结构,具有良好的网络扩展 性6 MPLS的标签合并机制支持不同数据流的合并传输7 MPLS支持流量工程COS QOS和大规模的虚拟专用网十三、工作原理MPLS是基于标记的IP路由选择方法。这些标记可以被用来代表 逐跳式或者显式路由,并指明服务质量(QoS)、虚拟专网以及影响一 种特定类型的流量(或一个特殊用户的流量)在网络上的传输方式等 各类信息。MPLS采用简化了的技术,来完成第三层和第二层的转换。 它可以提供每个IP数据包一个标记,将之与IP数据包封装于新的 MPLS数据包,由此决定IP数据包的传输路径以及优先顺序,而与MPLS 兼容的路由器会在将IP数
21、据包按相应路径转发之前仅读取该MPLS数 据包的包头标记,无须再去读取每个IP数据包中的IP地址位等信息, 因此数据包的交换转发速度大大加快。目前的路由协议都是在一个指定源和目的地之间选择最短路径, 而不论该路径的带宽、载荷等链路状态,对于缺乏安全保障的链路也 没有一种显式方法来绕过它。利用显式路由选择,就可以灵活选择一 条低延迟、安全的路径来传输数据。MPLS协议实现了第三层的路由到第二层的交换的转换MPLS可以 使用各种第二层协议。MPLS工作组到目前为止已经把在帧中继、ATM 和PPP链路以及IEEE802.3局域网上使用的标记实现了标准化。MPLS 在帧中继和ATM上运行的一个好处是它
22、为这些面向连接的技术。带来了 IP的任意连通性。目前MPLS的主要发展方向是在ATM方 面。这主要是因为ATM具有很强的流量管理功能,能提供QoS方面的 服务,ATM和MPLS技术的结合能充分发挥在流量管理和QoS方面的 作用。标记是用于转发数据包的报头,报头的格式则取决于网络特性。 在路由器网络中,标记是单独的32位报头;在ATM中,标记置于虚电 路标识符/虚通道标识符(VCI/VPI)信元报头中。对于MPLS可扩展性 非常关键的一点是标记只在通信的两个设备之间有意义。在网络核 心,路由器/交换机只解读标记并不去解析IP数据包。IP包进入网络核心时,边界路由器给它分配一个标记。自此,MPLS
23、 设备就会自始至终查看这些标记信息,将这些有标记的包交换至其目 的地。由于路由处理减少,网络的等待时间也就随之缩短,而可伸缩 性却有所增加。MPLS数据包的服务质量类型可以由MPLS边界路由器 根据IP包的各种参数来确定,如IP的源地址、目的地址、端口号、 TOS值等参数。对于到达同一目的地的IP包,可根据其TOS值的要求来建立不同 的转发路径,以达到其对传输质量的要求。同时,通过对特殊路由的 管理,还能有效地解决网络中的负载均衡和拥塞问题。当网络中出现 拥塞时,MPLS可实时建立新的转发路由来分散流量以缓解网络拥塞。十四、应用随着ASIC技术的发展,路由查找速度已经不是阻碍网络发展的瓶 颈。
24、这使得MPLS在提高转发速度方面不再具备明显的优势。但由于MPLS结合了 IP网络强大的三层路由功能和传统二层网络 高效的转发机制,在转发平面采用面向连接方式,与现有二层网络转 发方式非常相似,这些特点使得MPLS能够很容易地实现IP与ATM、 帧中继等二层网络的无缝融合,并为流量工程TE( Traffic Engineering)、虚拟专用网 VPN (Virtual Private Network)、服务 质量QoS(Quality of Service)等应用提供更好的解决方案。十五、云应用云架构laaS层的安全机制通过接口技术描述了对云端与客户端的连接进 行控制的必要性,但却没有定义一
25、个子层对云中的两个双向通信的实 体间的连接进行控制,这便导致实体间的通信并不可靠。所以本文通 过在IaaS层中增加一个子层CaaS(Communication as a Service, 通信服务)层来确保两个实体间通信的安全性,这个子层模型是建立 在MPLS技术基础上的。通过将MPLS技术运用到CaaS层中则可以提 高“云”中数据传输的安全性及可靠性,并且能够有效预防DDoS等 攻击。CaaS层嵌入到IaaS层中的结构如图1所示。变早嵌A手忙能三点由结构图1 CaaS层嵌入到IaaS层中结构CaaS子层功能初始化:初始化包含两个过程。首先会将虚拟逻辑分区内的CPU 初始化得到一个32bit的
26、随机数字,这个之后会通过AES(Advanced Encryption Standard,高级加密标准J形成一个l28bit的会话密钥。 一个密钥将只对应一个逻辑分区。然后,再对网络进行初始化后开始 CE(Customer Edge,用户边缘设备)之间的通信。协议认证:在MPLS网络中的路由对相互之间传送的数据包进行校 验。MPLS网络中的攻击一般发生在对数据包进行标签标记时,所以 只有当数据包经过认证后才能进行标记。路由器通过认证协议来识别 路由和路径。这为未知网络之间建立了可靠的识别机制,从未知网络 传输过来的数据包一旦未通过验证就会被丢弃,这就大大减少了发生 攻击的危险。密钥交换:IKE
27、(InternetKey,密钥交换)为两个需要进行通信的 云用户间或云用户与云供应商间建立一种关联 SA(SecurityAssociation,安全关联),同时负责密钥的生成与管理。 SA可对两个通信主体间的协议进行编码,以确认它们使用何种算法、 密钥及密钥的长度。IKE建立SA分两阶段来完成:第一阶段先在两 个通信主体之间建立一个通信信道并对该信道进行认证,第二阶段则 通过已建立的通信信道建立SA。SA存在一个生命周期,当会话密钥 超时,就会向对方主机发送一个第一阶段SA删除命令,然后双方重 新进行SA协商。密钥的周期性决定了超过一定时间限制,一定会生 成新的密钥,这便大大增强了密钥的健壮
28、性与可靠性。这也是在云计 算中使用密钥交换的一个重要原因。建立通信:CE之间的连接通过标签边缘路由进行建立。在MPLS 网络中,LSP(Labelb Switch Path,标签交换路径)是由两个端点间 的标记所决定的,分为动态LSP和静态LSP两类。动态LSP是由路由 信息生成的,而静态LSP是指定的。逻辑分区使用AES算法对数据进 行加密这种加密是基于ECB(Electronic Code Book,电子源码书)模 式的,通过这种模式,数据流会快速传送给云用户。加密使用的是- 次性密钥,即使数据包被探测到也很难对其解密,使得数据的安全性 得到充分保证。会话终止:当云用户结束通信时,会话会自
29、动终止,云供应商将 根据云用户在会话期间使用的服务进行收费。同时,MPLS网络中的 通信资源及虚拟处理器中的缓存数据将会释放。图2缓存数据将会释放虚拟基翅分区十六、环路处理MPLS使用基于分布式计算的传统IP路由协议,在网络拓扑结构 变化的瞬间,由这些协议计算得到的路由可能会瞬时产生环路。分组 进入有环路的LSP传送时可能会导致两个基本问题:(1)分组无法递交到正确的目的地址(2)拥塞。发生环路后。即使采用TTL减和环路分组丢弃的方式分组仍可能在环路中存 活很长时间,并占用大量的网络资源。这对其他没有产生环路的数据 分组的正确传输有很大影响。产生环路数据包造成的拥塞可能导致非 环路数据包延迟加长或丢弃,严重时导致网络瘫痪。在MPLS网络中有很多机制防止环路形成,在环路处理的方法上, 一般要考虑使用该方法后环路可能发生的数量以及使用该方法对路 由计算收敛性的影响。减少环路的发生意味着路由收敛时间更长。MPLS网络的第二层环路处置有很多种方法,主要可以划分为三类:1. 环路幸存这种方法通过诸如限制环路所能使用的网络资源的大 小来最小化环路对网络服务性能的影响。2. 环路检测允许环路的发生,但在随后的检测中发现环路时就删 除它们。3. 环路防止避免在第二层转发路径时发生环路。