400 likes | 699 Views
第九章 多协议标记交换技术 MPLS. Resource. IETF Multiprotocol Label Switching (mpls) Working Group http://www.ietf.org/html.charters/mpls-charter.html E. Rosen, A. Viswanathan, R.Callon, Multiprotocol Label Switching Architecture, RFC 3031, January 2001
E N D
Resource • IETF Multiprotocol Label Switching (mpls) Working Group • http://www.ietf.org/html.charters/mpls-charter.html • E. Rosen, A. Viswanathan, R.Callon, Multiprotocol Label Switching Architecture, RFC 3031, January 2001 • L. Andersson, P. Doolan, et al., LDP Specification, RFC 3036, January 2001 • B. Jamoussi, L. Andersson, et al., Constraint-Based LSP Setup using LDP, RFC 3212, January 2002
内容 • 传统IP转发 • MPLS概述 • MPLS体系结构 • 标记分发 • MPLS与虚电路交换
内容 • 传统IP转发 • MPLS概述 • MPLS体系结构 • 标记分发 • MPLS与虚电路交换
IP转发概述 • 通过路由协议散发路由信息 • 基于目的地址的转发 • 在每跳节点上执行路由查找算法 • 前缀最长匹配
IP转发中的性能问题 10.1.1.1 10.1.1.1 10.1.1.1 10.1.1.1 Update: 10.0.0.0/8 Update: 10.0.0.0/8 Routing lookup Routing lookup Routing lookup • 在每跳节点上执行基于目的地址的路由查找算法(最长前缀匹配) • 每个路由器可能需要所有Internet上的路由信息 (超过 100,000条路由).
IP转发中的流量工程(Traffic Engineering)问题 • 站点A和站点B之间大部分的流量仅使用primary link • 基于目的地址的路由算法不能提供在不同路径之间的任何负载均衡(load balancing)机制 • 基于策略的路由算法能够使用其它的参数来转发分组,但是存在着可扩展性问题 Primary 10Gbps link Large Site A Large Site B Backup2Gbps link Small Site C
内容 • 传统IP转发 • MPLS概述 • MPLS体系结构 • 标记分发 • MPLS与虚电路交换
MPLS基本原理 • MPLS是一种基于标记(Label)的分组转发机制 • 标记长度短(20比特)且固定 • 标记不仅与IP目的网络对应(与传统IP转发相同),还可与其它的参数,例如QoS或者源地址等 • MPLS支持转发除IP之外的其它协议
MPLS概念 FEC:Forward Equivalence Class,转发等价类 IPa 5 IPb 5 IPc 15 15 LSR: Label Switching Router,标记交换路由器 3 LER: Label Edge Router,标记边缘路由器 LER: Label Edge Router,标记边缘路由器 5 LSP: Label Switched Path,标记交换路径 LFIB:Label Forwarding Information Base 标记转发信息表
Label removal and routing lookup L=3 MPLS交换过程 • 只有边缘标记交换路由器(LER)执行路由查找,给分组分配标记 • 其它标记交换路由器(LSR)仅基于标记来交换分组 10.1.1.1 10.1.1.1 10.1.0.0/16 L=3 入口LER L=5 出口LER Routing lookup and label assignment 10.1.0.0/16 L=5 LSR Label swapping L=5 L=3
MPLS交换操作:PUSH 10.1.1.1 10.1.0.0/16 入口LER L=5 出口LER LSR
MPLS交换操作:SWAP 10.1.0.0/16 L=3 入口LER L=5 出口LER LSR
MPLS交换操作:POP 10.1.1.1 10.1.0.0/16 L=3 入口LER 出口LER LSR
MPLS中的流量工程 • 基于其它参数(QoS、源地址等)将分组分为不同的FEC,并且分配不同的标记,从而选择不同的LSP • 实现不同路径上的负载均衡 Primary 10Gbps link Large Site A Large Site B 15 5 3 Backup2Gbps link Small Site C
MPLS封装 • 包含在已有的链路层头标中 • 定义新的MPLS头标 ATM 信元头标 GFC VPI VCI TYPE CLP HEC DATA Label PPP头标 (Packet over SONET/SDH) PPP Header Label Header Layer 3 Header LAN MAC Label Header MAC Header Label Header Layer 3 Header
MPLS头标(SHIM头标) • MPLS头标长度为32比特 • 20-bit label field • 3-bit experimental field • 1-bit bottom-of-stack indicator • 8-bit time-to-live (TTL) field LABEL EXP S TTL 0 22 23 31 20 24 19
MPLS标记栈(Label Stack) • 2层头标中的协议标示符(PID: ProtocolIDentifier)指示在IP头标或者其它第三层头标位于MPLS标记之后 • Bottom-of-stack bit指示下一头标是标记还是第三层头标 • LSR仅处理最顶层的标记 Frame Header Label 1 Label 2 Label 3 IP Header Payload PID=MPLS-IP S=1 S=0 S=0
内容 • 传统IP转发 • MPLS概述 • MPLS体系结构 • 标记分发 • MPLS与虚电路交换
417 MPLS体系结构 • OSPF:Open Shortest Path First,开放最短路径优先协议 • LDP:Label Distribution Protocol,标记分发协议 • 路由器的功能分为两个主要部分:控制面(control plane) 和数据面(data plane) Control Plane OSPF OSPF: 10.1.0.0/16 OSPF: 10.1.0.0/16 LDP LDP: 10.1.0.0/16 Label 17 LDP: 10.1.0.0/16 Label 4 Data Plane LFIB Labeled packet Label 17 Labeled packet Label 4 @CISCO Systems
说明 • MPLS主要有两个组件: • 控制面—交换第三层路由信息和标记 • 数据面—基于标记转发分组 • 控制面通过路由协议,例如OSPF, EIGRP (Enhanced Interior Gateway Routing Protocol ), IS-IS (Intermediate System-to-Intermediate System), 和BGP等来交换路由信息,通过LDP、RSVP、BGP等来交换标记 • 数据面实现一个简单的转发引擎 • 控制面维护标记转发信息表(LFIB).
标记交换路由器LSR • LSR:转发标记分组,执行标记交换(Label Swapping) • LER:标记IP分组,并且将其转发到MPLS域,或者去除分组中的标记,将其转发到MPLS域外 MPLS Domain 10.1.1.1 L=3 L=5 10.1.1.1 20.1.1.1 L=31 L=43 20.1.1.1 LER LSR
ATM标记交换路由器LSR • ATM LSR:仅能转发信元 • ATM LER:将分组分解成信元,并且将其转发到MPLS ATM域,或者将信元组装成分组并且将其转发到MPLS ATM 域外 MPLS Domain 10.1.1.1 L=1/3 L=1/3 L=1/3 L=1/5 L=1/5 L=1/5 10.1.1.1 20.1.1.1 L=1/6 L=1/6 L=1/6 20.1.1.1 L=1/9 L=1/9 L=1/9 ATM LER ATM LSR
LSR体系结构 LSR:所有类型的LSR都执行: • 交换路由信息 • 交换标记 • 转发分组(LSR和LER)或者信元 (ATM LSR和ATM LER) 前面两点是控制面功能,最后一点是数据面功能
LSR结构 LSR主要转发标记分组或者信元 (ATM LSR). LSR Control Plane Exchange of routing information Routing Protocol IP Routing Table Exchange of labels Label Distribution Protocol Data Plane Incoming labeled packets Outgoing labeled packets Label Forwarding Table
LER结构 Edge LSR Control Plane Exchange of routing information Routing Protocol IP Routing Table Exchange of labels Label Distribution Protocol Data Plane Incoming IP packets Outgoing IP packets IP Forwarding Table Incoming labeled packets Outgoing labeled packets Label Forwarding Table
1a. 路由协议 (例如OSPF, IS-IS)建立 到目标网络的路由 4. 出口LER删除相应的标记后发送分组 1b. 标记分发协议 (LDP: Label Distribution Protocol)建立到目标网 络的标记映射 2. 入口LER接收分组,执行L3增值服务,并且标记分组 3. LSR使用标记交换转发分组 MPLS操作 – Re-Cap
内容 • 传统IP转发 • MPLS概述 • MPLS体系结构 • 标记分发 • MPLS与虚电路交换
标记分发 • 标记具有局部意义 • 标记分发在相邻节点之间进行,一般是由下游LSR给上游LSR分配标记和FEC的绑定关系 分组转发方向 下游LSR 上游LSR Label<->FEC
标记分发协议 • 基于已有协议扩展标记分发功能 • RSVP:RSVP-TE(Traffic Engineering) • BGP:MPLS-BGP • 定义新的标记分发协议 • LDP:Label Distribution Protocol • CR-LDP: Constrained-based Routed LDP • 扩展LDP满足流量工程需求,支持建立具有约束(显示路由约束、QoS约束)的标记交换路径(LSP)
标记分发方法 • Unsolicited Downstream (MPLS-BGP、LDP) • Downstream-on-Demand (RSVP-TE) 分组转发方向 LSR2 LSR1 下游节点向上游节点主动公告标记 Label<->FEC 分组转发方向 LSR2 LSR1 上游节点向下游节点请求标记 FEC<->? Label<->FEC
标记分发协议LDP:报文 • 发现消息(Discovery Message) • 通告和维护网络中某个LSR的存在 • 会话消息(Session Message) • 建立、维护和中止两个相邻LSR交换标记/FEC绑定信息的会话 • 公告消息(Advertisement Message) • 建立、修改和删除标记/FEC绑定 • 通知消息(Notification Message) • 提供错误信息等 UDP TCP
标记分发协议LDP:过程 路由表 公告消息 公告消息 标记6,目的网络10.1.0.0/16 标记15,目的网络10.1.0.0/16 10.1.0.0/16 1 2 1 2 3 3 10.2.0.0/16 标记转发信息表 标记只需在节点范围内唯一
RSVP-TE • PATH消息中包含了标记请求 • RESV消息中包含了下游节点给上游节点分配的标记 LER1 LER1 PATH消息(LABEL-REQUEST) RESV消息(LABEL)
MPLS中的循环检测 • MPLS头标中的TTL域的功能与IP头标中的TTL相同,用于防止分组在网络中出现循环 • 在入口LER,通常将分组的TTL从IP头标拷贝到标记头标中,每经过一跳LSR标记头标中的TTL减一 • 对于MPLS中不能对TTL值减一的LSP段,根据网络拓扑结构推算出分组将要经过的节点数,然后从TTL中减去 当TTL减为0时,分组将被丢弃
TTL is decreased and copied into label header. Only the TTL in the top-of-stack entry is modified. 4 4 3 4 2 The TTL is decreased and copied back into the TTL field of the IP header. TTL操作 Label TTL IP TTL MPLS Domain • 入口LER: TTL从IP头标拷贝到标记头标 • 出口LER: TTL从标记头标拷贝到IP头标 1 5 LER LER
5 4 4 3 4 2 4 1 4 0 4 循环检测 Label TTL IP TTL • TTL为0时标记分组将被丢弃 MPLS Domain Routing loop LER LER
内容 • 传统IP转发 • MPLS概述 • MPLS体系结构 • 标记分发 • MPLS与虚电路交换