MPLS Label 的Pop、Untagged、Aggregate的几个操作
2008/11/05 21:02 by datao 本站原创
先看一个实例,有R1至R5五台路由器,R1为CE1,R2为PE1,R3为P,R4为PE2,R5为CE2,R2到R4之间是MPLS域,其中R1与R2为7206,其他路由器均为3640,我们建立了一个VRF为vpna,实现R1-CE1与R5-CE2之间的方案,CE和PE之间,PE与P和PE之间均采用OSPF路由协议。请看下图:

这里配置省略,你可以查看我博客里关于MPLS配置的其他文章,当我们打通了这个VPN通道的时候, 我们注意观察R2、R3与R4的MPLS转发表,如下:
R2-PE1#show mpls forwarding-table
Local Outgoing Prefix Bytes Label Outgoing Next Hop
Label Label or VC or Tunnel Id Switched interface
200 Pop Label 3.3.3.3/32 0 Se2/1 point2point
201 Pop Label 1.1.34.0/24 0 Se2/1 point2point
202 301 4.4.4.4/32 0 Se2/1 point2point
204 404 5.5.5.5/32[V] 0 Se2/1 point2point
207 403 1.1.45.0/24[V] 0 Se2/1 point2point
208 No Label 1.1.1.1/32[V] 0 Se2/0 1.1.12.1
209 No Label 11.11.11.11/32[V] 0 Se2/0 1.1.12.1
211 Aggregate 1.1.12.0/24[V] 0 vpna
214 408 51.51.51.51/32[V] 0 Se2/1 point2point
215 Aggregate 15.15.15.15/32[V] 0 vpna
R3-P#show mpls forwarding-table
Local Outgoing Prefix Bytes tag Outgoing Next Hop
tag tag or VC or Tunnel Id switched interface
300 Pop tag 2.2.2.2/32 69919 Se1/3 point2point
301 Pop tag 4.4.4.4/32 61350 Se1/0 1.1.34.4
R4-PE2#show mpls forwarding-table
Local Outgoing Prefix Bytes tag Outgoing Next Hop
tag tag or VC or Tunnel Id switched interface
400 Pop tag 1.1.23.0/24 0 Se1/0 1.1.34.3
401 300 2.2.2.2/32 0 Se1/0 1.1.34.3
402 Pop tag 3.3.3.3/32 0 Se1/0 1.1.34.3
403 Aggregate 1.1.45.0/24[V] 520
404 Untagged 5.5.5.5/32[V] 0 Se1/1 point2point
405 Untagged 55.55.55.55/32[V] 0 Se1/1 point2point
406 300 1.1.1.1/32[V] 0 Se1/0 1.1.34.3
407 300 1.1.12.0/24[V] 0 Se1/0 1.1.34.3
408 Aggregate 51.51.51.51/32[V] 7424
413 300 11.11.11.11/32[V] 0 Se1/0 1.1.34.3
414 300 15.15.15.15/32[V] 0 Se1/0 1.1.34.3
大家仔细观察这个表会发现这里面对outgoing操作有Pop tag Aggregate Untagged No Lable,这些操作到底有什么区别呢?他们都是做什么类型的操作呢? 其实这里面有设备类型和IOS不同,所带来的表达形式的不同。
Pop tag :主要是弹出第一层标签,露出第二层标签.
Untagged&No Lable: 主要操作是弹出所有标签,是所有标签,做完untagged后, 就是一个纯IP数据包了,一般是在VPN的PE端会有这样的字样,例如上面的1.1.1.1/32和5.5.5.5/32.
Aggregate :无下游标签,弹出标签后再做一次纯IP的三层查找。例如上面的1.1.12.0/24和1.1.45.0/24。
Untagged和Aggregate还有个更通俗的理解为:
Untagged是因为没有收到下游标签,并且该路由还没有到达终点,所以是Untagged,动作就是去掉标签,给下游一个纯IP包
Aggregate也是去除标签操作,不过它和Untagged有所不同,当到达终点时一般都是Aggregate!
对于标签的操作还有像swap交换标签,push压入标签等操作等。
To recap the label operations:
■ Pop—The top label is removed. The packet is forwarded with the remaining label stack or as
an unlabeled packet.
■ Swap—The top label is removed and replaced with a new label.
■ Push—The top label is replaced with a new label (swapped), and one or more labels are added
(pushed) on top of the swapped label.
■ Untagged/No Label—The stack is removed, and the packet is forwarded unlabeled.
■ Aggregate—The label stack is removed, and an IP lookup is done on the IP packet.
这里配置省略,你可以查看我博客里关于MPLS配置的其他文章,当我们打通了这个VPN通道的时候, 我们注意观察R2、R3与R4的MPLS转发表,如下:
R2-PE1#show mpls forwarding-table
Local Outgoing Prefix Bytes Label Outgoing Next Hop
Label Label or VC or Tunnel Id Switched interface
200 Pop Label 3.3.3.3/32 0 Se2/1 point2point
201 Pop Label 1.1.34.0/24 0 Se2/1 point2point
202 301 4.4.4.4/32 0 Se2/1 point2point
204 404 5.5.5.5/32[V] 0 Se2/1 point2point
207 403 1.1.45.0/24[V] 0 Se2/1 point2point
208 No Label 1.1.1.1/32[V] 0 Se2/0 1.1.12.1
209 No Label 11.11.11.11/32[V] 0 Se2/0 1.1.12.1
211 Aggregate 1.1.12.0/24[V] 0 vpna
214 408 51.51.51.51/32[V] 0 Se2/1 point2point
215 Aggregate 15.15.15.15/32[V] 0 vpna
R3-P#show mpls forwarding-table
Local Outgoing Prefix Bytes tag Outgoing Next Hop
tag tag or VC or Tunnel Id switched interface
300 Pop tag 2.2.2.2/32 69919 Se1/3 point2point
301 Pop tag 4.4.4.4/32 61350 Se1/0 1.1.34.4
R4-PE2#show mpls forwarding-table
Local Outgoing Prefix Bytes tag Outgoing Next Hop
tag tag or VC or Tunnel Id switched interface
400 Pop tag 1.1.23.0/24 0 Se1/0 1.1.34.3
401 300 2.2.2.2/32 0 Se1/0 1.1.34.3
402 Pop tag 3.3.3.3/32 0 Se1/0 1.1.34.3
403 Aggregate 1.1.45.0/24[V] 520
404 Untagged 5.5.5.5/32[V] 0 Se1/1 point2point
405 Untagged 55.55.55.55/32[V] 0 Se1/1 point2point
406 300 1.1.1.1/32[V] 0 Se1/0 1.1.34.3
407 300 1.1.12.0/24[V] 0 Se1/0 1.1.34.3
408 Aggregate 51.51.51.51/32[V] 7424
413 300 11.11.11.11/32[V] 0 Se1/0 1.1.34.3
414 300 15.15.15.15/32[V] 0 Se1/0 1.1.34.3
大家仔细观察这个表会发现这里面对outgoing操作有Pop tag Aggregate Untagged No Lable,这些操作到底有什么区别呢?他们都是做什么类型的操作呢? 其实这里面有设备类型和IOS不同,所带来的表达形式的不同。
Pop tag :主要是弹出第一层标签,露出第二层标签.
Untagged&No Lable: 主要操作是弹出所有标签,是所有标签,做完untagged后, 就是一个纯IP数据包了,一般是在VPN的PE端会有这样的字样,例如上面的1.1.1.1/32和5.5.5.5/32.
Aggregate :无下游标签,弹出标签后再做一次纯IP的三层查找。例如上面的1.1.12.0/24和1.1.45.0/24。
Untagged和Aggregate还有个更通俗的理解为:
Untagged是因为没有收到下游标签,并且该路由还没有到达终点,所以是Untagged,动作就是去掉标签,给下游一个纯IP包
Aggregate也是去除标签操作,不过它和Untagged有所不同,当到达终点时一般都是Aggregate!
对于标签的操作还有像swap交换标签,push压入标签等操作等。
To recap the label operations:
■ Pop—The top label is removed. The packet is forwarded with the remaining label stack or as
an unlabeled packet.
■ Swap—The top label is removed and replaced with a new label.
■ Push—The top label is replaced with a new label (swapped), and one or more labels are added
(pushed) on top of the swapped label.
■ Untagged/No Label—The stack is removed, and the packet is forwarded unlabeled.
■ Aggregate—The label stack is removed, and an IP lookup is done on the IP packet.
COMMENT[0]


