-
MPLS
转发机制讲解
47.2.1
帧模式
MPLS<
/p>
转发
前面简要介绍了
MPLS
的传播过程,这里我们来详细介绍
MPLS<
/p>
的转发机制,在
MPLS
的转发
机制中,通
常分为帧模式和信元模式。帧模式工作流程如下:
首先,当
San Jose
路由器收到
IP
分组以后,将会根据其目的地
址,对
IP
转发表
FIB
进行
3
层查找。由于
Cis
co
的
CEF
是唯一使用
FIB
表的第
3
层交换机
制,
所以必须在运行
MPLS
的所有路
由器上启用
CEF
,
而所有接收非标<
/p>
签分组,并将其以标签分组的方式通过
MPLS
主干传播的入口接口,都必须支持
CEF
交换。
核心路由器不执
行
CEF
交换—他们只交换标签分组
--
-
但为分配标签,他们仍然以全局方式启用
CEF
。通过
如下命令可以查看
FIB
的信息:
SanJose#show ip cef 192.168.2.0
192.168.2.0/24, version 11, cached
adjacency to Serial1/0/1
0 packets, 0
bytes
tag information set
local tag: 29
fast tag rewrite with Se1/0/1, point2point, tags
imposed: {30}
via 172.16.1.4,
Serial1/0/1, 0 dependencies
next hop 172.16.1.4, Serial1/0/1
valid cached adjacency
tag
rewrite with Se1/0/1, point2point, tags imposed:
{30}
标签的转发通常使用特定的标签转发表
.
查看方式如下:
SanFrancisco#show tag forwarding-table
tags 30 detail
Local Outgoing
Prefix Bytes
tag
Outgoing Next Hop
tag tag
or VC or Tunnel Id switched
interface
30 28
192.168.2.0/24 0
Se
0/0/1 172.16.3.1
MAC/Encaps=14/18, MTU=1504, Tag Stack{28}
00107BB59E2000107BEC6B008847 0001C000
Per-packet load-sharing
NewYork#show tag forwarding-table tags
37 detail
Local Outgoing
Prefix Bytes
tag
Outgoing Next Hop
tag tag
or VC or Tunnel Id switched
interface
37 untagged
192.168.2.0/24
0
Se2/1/3 192.168.2.1
MAC/Encaps=0/0, MTU=1504, Tag Stack{}
Per-packet load-sharing
MPLS
标签使用栈结构,也就是一个分组可以包含多个标签,并利用
BoS
< br>位标识栈底。
在帧模式
MPLS
中,运行
Cisco
IOS
软件并作为
MPLS
LSR
的
Cisco
路
由器可以对分组标签执
行大量的操作:
弹出标记
(Pop
tag)
:
删除
< br>MPLS
标签栈顶的标签,将余下的有小负载作为一个标签分组进行传递。
<
/p>
聚集
(Aggregate)
:
删除
MPLS
标签
栈顶的标签,并对低层的
IP
分组执行
3
层查找。被删除的标签是栈底标签,
如
果不是则丢弃报文。
标签栈进行
MPLS
交换的工作原理如下:<
/p>
在网络中通过某些功能使得边缘路由器就分组规则
达成一致,
而不需要了解核心网络情况时可以启用
这种转发方式。
首先
NewYork
路
由器分配标签为
73
,
并且和
SanJose
达成一致,数据在核心传送前就带有了双标签,但两个
POP
的用户通过
73
标签的封装,并
不了解骨干网的
一些情况,如下图所示
标签具体的分配流程采用
TDP
或者
LDP
协议。由
MPLS
的发展史可以看到,
TDP
是
LDP
的前
身,为
Cisco
专有协议,并且在
IOS 11.1CT
以及
12.0
中实现。而
LDP
p>
为
TDP
在
IET
F
标准化后的产物,
IOS
12.2T
以后的版本包
含此协议。
功能上而言,两者是等价的俄,可以同时用于网络中,甚至可以在同一个
LSR
的不同接口启用
不同的标签分发协议。关于它们,我们将在稍后的章节介绍。
最后我们注意,在
MPLS
帧模式中,
有一种特殊的机制为倒数第二跳弹出
(Penultimate Hop
Popping).
对于一个从
MPLS
邻居收到的目的地为
MPLS
域外的一个子网分组而言,<
/p>
MPLS
网络中的出口
边缘
LSR
可能必须
对它进
行两次查找操作,
该
LSR
必须检查标
签栈头中的标签。
并执行标签查找工作,
就像认
识到必须弹出
标签并检查并检查底层
IP
分组一样,必须对
IP
分
组执行
3
层查找,然后再转发。
例如上图的
NewYork POP
路由器,在双重栈的查找下,使得性能下降剧烈。所以为了解决
这个问题,
提出了
PHP
机制,如下
图所示:
倒数第二跳弹出机制
只用于直接连接的子网或者聚合路由。
对于直接相连的接口,
需
要执行
3
层查找,
< br>以便获得被发送到直接相连的目的地分组的小一条信息。
如果前缀是一个聚合,<
/p>
也必须执行
3
层查找,以
获得具体的路由,然后使用它将分组路由给正确的出口。
使用倒数第二跳弹出机制后,
edge-
LSR
可以请求上游邻居弹出标签,如上页图中的
New
York
路由器。
邻居通告采用特殊的隐式无效
(imp-null)LDP
p>
、
TDP
标签值告知。
NewYork#show tag tdp binding
192.168.2.0 24
tib entry:
192.168.2.0/24, rev 10
local binding: tag: imp-null(1)
remote binding: tsr: 172.16.3.1:0, tag: 28
Washington#show tag tdp binding
192.168.2.0 24
tib entry:
192.168.2.0/24, rev 10
local binding: tag: 28
remote binding: tsr: 172.16.3.2:0, tag: imp-
null(1)
remote binding:
tsr: 172.16.1.4:0, tag: 30
remote binding: tsr: 172.16.2.1:0, tag: 37
47.2.2
帧模式
MPLS
和
BGP
交互
我们知道在传统的以
BGP
链接的骨干网中,通常每个路由器都要运行
BGP
路由协议
,
特别是
在核心网中,<
/p>
IBGP
是全互联的,如下图所示:
在如上配置的情况下,查看
720
0a
的路由表和转发表如下:
7200a#show ip route
Codes:
C - connected, S - static, I - IGRP, R - RIP, M -
mobile, B - BGP
D -
EIGRP, EX - EIGRP external, O - OSPF, IA - OSPF
inter area
N1 - OSPF
NSSA external type 1, N2 - OSPF NSSA external type
2
E1 - OSPF external
type 1, E2 - OSPF external type 2, E - EGP
i - IS-IS, L1 - IS-IS
level-1, L2 - IS-IS level-2, ia - IS-IS inter
area
* -
candidate default, U - per-user static route, o -
ODR
Gateway of last resort is 7.1.5.1
to network 0.0.0.0
B
171.68.0.0/16 [200/0] via 12.12.12.12, 01:10:44
3.0.0.0/32 is subnetted, 1
subnets
7200a#show ip cef 171.68.0.0
171.68.0.0/16, version 69, cached
adjacency to POS3/0
0 packets, 0
bytes, wccp tag 139
via
12.12.12.12, 0 dependencies, recursive
next hop 10.0.3.5, POS3/0 via
12.12.12.12/32
valid cached
adjacency
这种结构由于核心路由器要运行
BGP
,配置比较复杂,出现故障恢复也比较麻烦,和核心层
尽量简单
的设计模式有些冲突,在
MPLS<
/p>
核心网络中,核心路由器不运行
BGP
,
同时,
iBGP
链接仅在
各
POP
之间运行,
如下图所示:
-
-
-
-
-
-
-
-
-
上一篇:第一次出差总结归纳汇报(3篇)
下一篇:2016最新华为交换机常用配置实例