一,基本概述
1. mpls基本概念
MPLS位于二三层之间,可以向所有网络层提供服务。通过在数据链路层和网络层之间增加额外的MPLS头部,基于MPLS头部实现数据快速转发。
2. 控制平面和转发平面
控制平面:负责产生和维护路由信息以及标签信息。
RIB:路由信息表,由IP路由协议生成,用于选择路由。
LDP:标签分发协议,负责标签的分配、标签转发信息表的建立、标签交换路径的建立、拆除等工作。
LIB:标签信息表,由标签分发协议生成,用于管理标签信息。
转发平面:负责普通IP报文的转发以及带MPLS标签报文的转发。
FIB:转发信息表,从RIB提取必要的路由信息生成,负责普通IP报文的转发。
LFIB:标签转发信息表,简称标签转发表,由标签分发协议建立LFIB,负责带MPLS标签报文的
3. MPLS报文格式(MPLS标签的长度为4个字节,共分4个字节)
Label:20bit,标签值域;
Exp:3bit,用于扩展。现在通常用做CoS,当设备发生阻塞时,优先发送优先级高的报文;
S:1bit,栈底标识。MPLS支持多层标签,即标签嵌套。S值为1时表明为最底层标签;
TTL:8bit,和IP报文中的TTL意义相同防环。
默认是给32位主机地址分发标签
4. MPLS标签栈
MPLS支持一层或多层标签头部,这些标签头部的有序集合被称为标签栈。
最靠近二层头部的标签是栈顶标签,标签中的S字段为0。
最靠近IP头部的标签是栈底标签,标签中的S字段为1。
5. 标签的取值范围
0~15:特殊标签。如标签3,称为隐式空标签,用于倒数第二跳弹出;
16~1023:静态LSP和静态CR-LSP共享的标签空间;
1024及以上:LDP、RSVP-TE、MP-BGP等动态信令协议的标签空间。
6. MPLS术语
LSP:标签交换路径,即到达同一目的地址的报文在MPLS网络中经过的路径。
FEC:一般指具有相同转发处理方式的报文。在MPLS网络中,到达同一目的地址的所有报文就是一个FEC。一个FEC就是一个LSP。有目的IP地址及网络掩码、DSCP等特征来划分
LSR:标签交换路由器,支持MPLS的路由器。位于MPLS域边缘、连接其它网络的LSR称为边沿路由器LER,区域内部的LSR称为核心LSR。
入站LSR(Ingress LSR):通常是向IP报文中压入MPLS头部并生成MPLS报文的LSR。
中转LSR(Transit LSR):通常是将MPLS报文进行例如标签置换操作,并将报文继续在MPLS域中转发的LSR。
出站LSR(Egress LSR):通常是将MPLS报文中MPLS头部移除,还原为IP报文的LSR。
MPLS域:一系列连续的运行MPLS的网络设备构成了一个MPLS域。
7. 静态LSP
基本概念:静态LSP是用户通过手工为各个FEC分配标签而建立的。
静态LSP不使用标签发布协议,不需要交互控制报文,因此消耗资源比较小。
通过静态方式建立的LSP不能根据网络拓扑变化动态调整,需要管理员干预。
应用场景:适用于拓扑结构简单并且稳定的小型网络。
标签分配原则:前一节点出标签的值等于下一个节点入标签的值。
8. 动态LSP
基本概念:动态LSP通过标签发布协议动态建立。
标签发布协议是MPLS的控制协议(也可称为信令协议),负责FEC的分类、标签的分发以及LSP的建立和维护等一系列操作。
常用标签发布协议:标签分发协议 (LDP)
全称:Label Distribution Protocol。
定义:LDP是多协议标签交换MPLS的一种控制协议,负责转发等价类FEC的分类、标签的分配以及标签交换路径LSP的建立和维护等操作。LDP规定了标签分发过程中的各种消息以及相关处理过程。
应用场景:LDP广泛地应用在VPN服务上,具有组网、配置简单、支持基于路由动态建立LSP、支持大容量LSP等优点。
9. MPLS标签控制平面和转发平面
控制平面:
控制平面是无连接的,主要功能是负责产生和维护路由信息以及标签信息。
控制平面包括:
路由信息表RIB:由IP路由协议、静态路由和直连路由共同生成,用于选择路由。
标签信息表LIB:用于管理标签信息,LIB中的表项可由标签交换协议或静态配置生成。
转发平面:
转发平面也称为数据平面,是面向连接的, 主要功能是负责普通IP报文的转发以及带MPLS标签报文的转发。
转发平面包括:
转发信息表FIB:从RIB提取必要的路由信息生成,负责普通IP报文的转发。
标签转发信息表LFIB:简称标签转发表,负责带MPLS标签报文的转发。
二,配置举例
1. MPLS静态配置命令
入接口路由器配置:
配置LSR-id:mpls lsr-id 1.1.1.1
开启MPLS:mpls
开启接口MPLS:interface GigabitEthernet0/0/0mpls
Ingress配置:static-lsp ingress(名字) name destination(目的地址+掩码)4.4.4.4 32 next-hop(下一跳)192.168.1.2 outgoing-interface(出接口) GigabitEthernet0/0/0 out-label(出标签) 100
中间转发节点路由器配置:
配置LSR-id:mpls lsr-id 2.2.2.2
开启MPLS:mpls
开启接口MPLS:interface GigabitEthernet0/0/0mpls
interface GigabitEthernet0/0/1mpls
Transit配置:static-lsp transit(名字) name incoming-interface(进接口) GigabitEthernet0/0/0 in-label(进标签)100 nexthop(下一跳) 192.168.2.2 outgoing-interface(出接口)GigabitEthernet0/0/1 out-label(出标签) 100
出接口路由器配置:
配置LSR-id:mpls lsr-id 3.3.3.3
开启MPLS:mpls
开启接口MPLS:interface GigabitEthernet0/0/0mpls
Egress 配置:static-lsp egress(名字) name incoming-interface(进接口) GigabitEthernet0/0/0 in-label(进标签) 100
查看静态LSP配置:
display mpls static-lsp
2. 动态MPLS配置:
配置LSR-id:mpls lsr-id 2.2.2.2
开启MPLS:mpls
配置自动下发标签:mpls ldp
进入接口使能mpls: interface GigabitEthernet0/0/0mplsmpls ldpinterface GigabitEthernet0/0/1mplsmpls ldp