工作原理

OptionC采用直接在两边的PE建立MP-BGP中间通过标签传递实现路由互传,这样的设计能够使得PE-ASBR间的压力大大降低,其不需要再对私网路由进行保存直接而是进行转发,而OptionC分为两种形式,一种是ASBR间搭建BGP,通过BGP传递路由,一种是由ASBR将去往其他AS的路由引入IGP,前者会出现三层标签转发,后者仅仅出现两层
实验

公网搭建


MP-BGP
[R6]bgp 200
[R6-bgp]peer 1.1.1.1 as 100
[R6-bgp]peer 1.1.1.1 connect-interface l0
[R6-bgp]peer 1.1.1.1 ebgp-max-hop 6
[R6-bgp]ipv4-family vpnv4
[R6-bgp-af-vpnv4]peer 1.1.1.1 enable
输完起不来的,不过没事等下做ASBR两端接入再来看这个
用户接入


ASBR接入
C1:采用BGP为路由分配标签
ASBR之间搭建BGP连接

路由策略实现标签转发
由于ASBR间仅仅是BGP连接,无法将1.1.1.1的vpnv4数据转发给6.6.6.6,我们可以通过路由策略使得ASBR间实现标签转发vpnv4路由
fa:给ASBR
fen:给对端6.6.6.6
[R4]route-policy fa permit node 10
Info: New Sequence of this List.
[R4-route-policy]apply mpls-label
[R4-route-policy]quit
[R4]route-policy fen permit node 10
Info: New Sequence of this List.
[R4-route-policy]if-match mpls-label
[R4-route-policy]apply mpls-label
[R4-bgp]dis th
[V200R003C00]
#
bgp 200
peer 6.6.6.6 as-number 200
peer 6.6.6.6 connect-interface LoopBack0
peer 10.0.34.3 as-number 100
#
ipv4-family unicast
undo synchronization
peer 6.6.6.6 enable
peer 6.6.6.6 route-policy fa export
peer 6.6.6.6 label-route-capability
peer 10.0.34.3 enable
peer 10.0.34.3 route-policy fa export
peer 10.0.34.3 label-route-capability
对端也需要指定使能发送标签的能力,ASBR间宣告网段保障1.1.1.1与6.6.6.6能够建立BGP邻居

路径分析
两端路由能通,现在的流量其实最多带了3层标签,通过查表发现去8.8.8.8先打1026,再发现要去6.6.6.6,打上1027,再发现要先去3.3.3.3打上1025


R2执行PHP,给到R3标签有两层,将1027置换为1026发出转交给R4,也就是两层1026的标签


发给R5执行PHP,R6到达目的地剥离标签

C2:通过路由引入让PE设备学到对端
ASBR间实现标签转发
即采用刚才的路由策略fa对路由进行分配
将BGP路由引入OSPF(公网IGP当中)再通过修改LDP触发策略
[R4]ospf 1
[R4-ospf-1]import-route bgp
[R4-ospf-1]mpls
[R4-mpls]lsp-trigger bgp-label-route
成功ping通


路径分析
依旧从7.7.7.7出发到8.8.8.8,会打上1027,查表发现要求6.6.6.6会打上1025标签,到R2查表将外层标签替换1025,后续流量查表执行对应操作,直到R5执行PHPP,将流量交给R6,这里最多只出现的2层标签



总结
OptionC ASBR节点仅仅需要进行数据流量转发而不再维护路由表对于转发效率以及设备来说都是极大的提升,相较与OptionA和B,C固然是最好的选择