目录
前言
早期的路由器转发数据通过IP路由表匹配查找条目时,需要做一个动作,将32位的二进制IP地址与掩码地址相与来得到一个网段信息,让后再在路由表中一一对应查找,这种方式对于路由器的机能要求过高,而在早期的路由器设备性能不足的情况下,当路由条目非常多的时候设备转发速度就会变慢。因此需要一个技术来提高当时路由器转发数据的速度。这就是我们的MPLS协议。
标签
IP地址由于有掩码的概念因此在比对时常常会出现比对的数据大小不一致,因此系统要进行过多的计算来实现比对。而在交换机上MAC地址是定长的且没有什么掩码的概念,因此交换机转发数据的速度是非常快的,而MPLS协议学习了交换机转发数据的方式,采用短而定长的标签进行数据转发,这样路由器在比对时直接进行匹配而不必做过多的计算操作。
MPLS报文
MPLS以为向交换机的工作机制靠拢,因此MPLS报文也封装在靠近二层的地方,MPLS头部封装在二层头部与三层头部之间,这样他能从二层头部中得到相关的链路层服务,而在三层头部之前,因此在路由器匹配网标签后直接进行转发而不必过问IP头部中的信息。
MPLS报文头部:
字段 | 含义 |
---|---|
Label | 标签的值,20bit,0-15为特殊标签,16-1023位静态建立使用的标签,1024往后为LDP使用。 |
Exp | 用于Cos,当链路发生堵塞,优先发送优先级高的报文。3bit |
S | 栈底表示,用来表示后续是否还是MPLS头部,0表示后续还是MPLS头部,1表示后续是IP头部,1bit |
TTL | 与IP地址中的相同 |
MPLS的相关术语
术语 | 含义 |
---|---|
LSR | 表示运行MPLS的路由器 |
LSP | 表示运行MPLS的路由器间转发带有标签数据的路劲 |
LER | 表示用来压入标签和弹出标签的设备 |
FEC | 去往同一个目的地址的带标签的数据 |
MPLS的结构体系
路由器有控制平面和转发平面,控制平面用来运行相关路由协议,创建通过路由协议获取到的路由信息表,而将相关路由信息表中最优的路径填入转发平面中的转发表中用作实际数据转发的路径。这是使用IP路由转发的路由器的结构体系,而运行了MPLS协议的路由器在上述2个表中控制层面还增加了一个通过LDP即标签分发协议生成的标签信息表,而转发层面有多了一个用来使用标签进行转发数据的标签信息转发表。因此运行了MPLS协议的路由器可以查看到2个转发表。
LSP的建立
路由器想要使用MPLS标签进行转发数据,首先的建立一条LSP即标签交换路径,而建立LSP有两种方式,分为了静态LSP和动态LSP:
LSP | 建立方式 |
---|---|
静态LSP | 用户通过手工方式为各个转发等价类分配标签建立转发隧道; |
动态LSP | 通过标签发布协议动态建立转发隧道。 |
静态LSP
拓扑图如上图所示,相关配置也如图!用OSPF进行互通,现在希望R1的环回口0能ping通R4上的环回口,并且通过静态建立LSP。
相关配置为:
R1上配置mpls lsr-id,类似于OSPF中的router id,不同的是在MPLS中lsr-id必须要