VPLS 如何发信号通知 CE 面对接口故障

网络工程 BGP vpls 双宿主
2022-02-26 02:42:10

在此处输入图像描述

你好,

我有一个基于 BGP 的 VPLS 设置,其中一台 CE 机器是多宿主的

例如,如果我关闭了活动的 PE 或者我以某种方式干扰了我的 PE 之间的连接,那么多宿主就可以工作……没关系

但是如果我关闭我的活动 PE 上面向 CE 的接口,其他 PE 只是继续转发到无法再转发的 PE,结果是连接断开,即使有另一种方法可以工作

我想知道,我如何向其他对等方发出面向 CE 的接口故障的信号?

PE1 是瞻博网络,PE5 是思科......我无法为他们中的任何一个弄清楚

配置:

PE1:

bgp {
    group ibgp {
        type internal;
        local-address 10.255.255.1;
        family l2vpn {
            signaling;
        }
        neighbor 10.255.255.10;
    }
}

routing-instances {
VPLS {
    instance-type vpls;
    interface ge-0/0/1.0;
    route-distinguisher 100:1;
    vrf-target {
        import target:3:3;
        export target:1:1;
    }
    protocols {
        vpls {
            no-tunnel-services;
            site 1 {
                site-identifier 1;
                multi-homing;
                interface ge-0/0/1.0;
            }
        }
    }
}

PE5:

 l2vpn vfi context VPLS
 vpn id 100
 autodiscovery bgp signaling bgp
  ve id 1
  rd 110:1
  route-target export 1:1
  route-target import 3:3

bridge-domain 1
 member GigabitEthernet2 service-instance 1
 member vfi VPLS

interface GigabitEthernet2
 no ip address
 negotiation auto
 service instance 1 ethernet
  encapsulation default
 !
!

router bgp 100
 bgp log-neighbor-changes
 neighbor 10.255.255.10 remote-as 100
 neighbor 10.255.255.10 update-source Loopback0
 !
 address-family l2vpn vpls
  neighbor 10.255.255.10 activate
  neighbor 10.255.255.10 send-community extended
  neighbor 10.255.255.10 suppress-signaling-protocol ldp
 exit-address-family

谢谢!

1个回答

@拉多万。我将尝试通过假设 PE-1 和 PE-5 都是瞻博网络节点来回答这个问题。

在 Juniper 的情况下,您可以使用 VPLS 路由实例下的“站点偏好”旋钮。在您的情况下,CE 是双宿主到 2 x PE。站点偏好旋钮将控制哪个 PE 是当前正在将流量转发到 CE 的“活动”PE。您必须在两个 PE 上定义“相同”的 VPLS 实例(RD 将不同),但 RT 将与定义 VPN 成员资格相同。

在 PE-5 上,在 BGP VPLS 实例下,您可以像这样打开旋钮 'site-preference primary'

set routing-instances vpls-north-mx-abc-hsi protocols vpls site vpls-north-mx-abc-hsi multi-homing
set routing-instances vpls-north-mx-abc-hsi protocols vpls site vpls-north-mx-abc-hsi site-preference primary

在 PE-1 上,在同一个 BGP VPLS 实例下,可以打开旋钮 'site-preference backup'。像这样

set routing-instances vpls-north-mx-abc-hsi protocols vpls site vpls-north-mx-abc-hsi multi-homing
set routing-instances vpls-north-mx-abc-hsi protocols vpls site vpls-north-mx-abc-hsi site-preference backup

将会发生的情况是,两个 PE 都将开始通告 BGP VPLS NLRI 以及本地首选项值(由站点首选项打开)。激活的将设置本地偏好高(65535),而其他将设置为 1,如下所示:-

vpls-north-mx-abc-hsi.l2vpn.0: 6 destinations, 14 routes (6 active, 0 holddown, 0 hidden)
  Prefix                  Nexthop              MED     Lclpref    AS path
  10.0.0.1:11037:8:9/96                    
*                         Self                         65535      I  


while othe one (backup) will advertise the same VPLS NLRI as below:-

vpls-north-mx-abc-hsi.l2vpn.0: 6 destinations, 14 routes (6 active, 0 holddown, 0 hidden)
  Prefix                  Nexthop              MED     Lclpref    AS path
  10.0.0.2:11037:8:9/96                    
*                         Self                         1          I

因此,远程 PE(在您的情况下为 PE-3 和 PE-2)将建立 BGP VPLS PW 与通过“显示 vpls 连接实例”验证的主要(PE-5)。

所以在正常情况下,PE-3 和 PE-2 都会向 PE-5 发送流量。

现在让我们假设 PE-5 和 CE 之间的链路断开(您可以通过管理员关闭 CE 或 PE 端的接口来模拟这种情况)。这里我们假设 PE-5 和 CE 之间只有 1 个 Link。在多条链路的情况下,仅关闭 1 个接口不会关闭 VPLS 实例。在这种情况下,出于模拟目的,您可以停用主侧 PE-5 上的 VPLS 实例。

When the link is down between PE-5 and CE , PE-5 will say that VPLS instance is down (as the link that was part of VPLS instance (or Attachment circuit) went down). So PE-5 will withdraw the BGP VPLS NLRI by sending the BGP update packet. 

其余的 PE 将通过 RR 收到 BGP VPLS NLRI 撤回数据包,并会说 PE-5 不再是活动的

其余远程 PE(PE-3 和 PE-2)现在将建立 BGP VPLS PW 到备份 PE,在您的情况下为 PE-1。对于要流动的流量,MAC 地址将再次通过泛洪 (BUM) 重新学习。最后,流量将开始流向 PE-1,然后流向 CE。

我希望这是有道理的,并有助于澄清。