接入层小设备跑不动全网标签?Seamless MPLS分层搭骨架
上百个接入节点撑不起全网一张IGP加一张LDP表。Seamless MPLS分层分治:各层自跑IGP,层间用带标签的BGP路由把端到端标签交换路径缝合起来,小规格接入设备也能承接三层VPN业务。
为什么接入设备扛不住全网标签?
运营商级的网络动辄上百个接入节点,客户还想在接入点之间直接拉三层VPN业务。传统做法是全网统一跑IGP加LDP,让每台接入设备都维护全网路由和标签——这对机房里的大框设备没问题,挂在大楼里的接入盒子既装不下全网的IGP路由,也扛不住那么多LDP会话,强行上马只会三天两头出状况。
Seamless MPLS的思路是不要求全网一张IGP,而是分而治之:接入、汇聚、核心各自跑各自的IGP,层与层之间用带标签的BGP路由把端到端的标签交换路径"缝合"起来。接入设备只需要认识自己的邻居层,路由表和标签量都收在小小的一格里,业务却能从接入一跳直达业务网关。
分层骨架怎么搭?
官方案例的分层是四段:CSG(接入)、AGG(汇聚)、Core_ABR(核心)、MASG(业务网关)。配置七步,骨架和缝针各占一半。
第一步到第三步是常规动作:各层内部跑IS-IS、各设备配MPLS加LDP、层内建IBGP邻居并打开标签路由交换能力。最后这个能力就是BGP LSP的起点:
[CSG] bgp 100
[CSG-bgp] peer 2.2.2.9 as-number 100
[CSG-bgp] peer 2.2.2.9 connect-interface LoopBack 1
[CSG-bgp] peer 2.2.2.9 label-route-capability
[CSG-bgp] network 1.1.1.9 32
[CSG-bgp] quit
第四步,把AGG和Core_ABR配成路由反射器,让CSG和MASG隔着两层也能拿到对方的环回口路由,顺便控制会话规模:
[AGG] bgp 100
[AGG-bgp] peer 1.1.1.9 reflect-client
[AGG-bgp] peer 1.1.1.9 next-hop-local
[AGG-bgp] peer 3.3.3.9 reflect-client
[AGG-bgp] peer 3.3.3.9 next-hop-local
[AGG-bgp] quit
BGP LSP这根针怎么缝?
第五步是缝针的关键:各节点配路由策略建立BGP LSP。规则很清晰——起始节点给发布的路由分标签,中间节点收到带标签的路由重新打一层标签再传下去:
[CSG] route-policy policy1 permit node 1
[CSG-route-policy] apply mpls-label
[CSG-route-policy] quit
[CSG] bgp 100
[CSG-bgp] peer 2.2.2.9 route-policy policy1 export
[CSG-bgp] quit
[AGG] route-policy policy1 permit node 1
[AGG-route-policy] if-match mpls-label
[AGG-route-policy] apply mpls-label
[AGG-route-policy] quit
注意AGG这条策略比CSG多一个if-match mpls-label:中间节点只转发带标签的路由,没标签的说明不是端到端路径的组成部分,直接不放行。
第六步,CSG和MASG之间直接建MP-IBGP的VPNv4邻居,业务路由跨越整张网点到点传递;第七步,两端建VPN实例绑接口,私网路由各归各位。这样一条从接入到业务网关的端到端路径就齐了,中间层只做标签接力。
这套骨架的账怎么算?
价值在扩展性上:每加一个接入节点,核心层对它的感知仅限于一两条环回路由,设备规格不用跟着网络规模水涨船高。代价是配置层次多、排障时要跨层追标签,所以文档化的分层规划必不可少。不追求全网一张表,而是让每一层的设备只干自己扛得动的活,网络的规模上限反而更高。
依据:华为官方典型配置案例(2026-11 版)。
贵州诚鑫致达科技提供网络搭建与运维服务,多园区互联的分层架构规划、设备选型与部署可电话沟通。