RBFS Redundancy Configurations
Configure RBFS Redundancy
To deploy RBFS in redundancy mode, you must complete the following configuration on both C-BNG nodes which are paired for redundancy.
-
Redundancy Profile
-
Redundancy Session
-
Link Aggregation Group for the Redundancy Session
-
Access for the Redundancy Session
The following steps provide the commands to configure RBFS Redundancy on both devices, which comprise the redundancy pair. For more detailed information about RBFS Redundancy Deployment, see RBFS Redundancy Solution Guide.
Redundancy Profile Configuration
Run the following commands to configure the redundancy profile on both devices (CBNG1 and CBNG2). Redundancy profile configuration is required to enable the devices to identify the peer in the network.
set redundancy profile rd_ipoe_olt1
set redundancy profile rd_ipoe_olt1 switchover-hold-timer 0
set redundancy profile rd_ipoe_olt1 peer ipv4 remote-address 192.0.2.200
set redundancy profile rd_ipoe_olt1 peer ipv4 update-source 192.0.2.100
set redundancy profile rd_ipoe_olt1 peer ipv4 instance default
set redundancy profile rd_ipoe_olt2
set redundancy profile rd_ipoe_olt2 switchover-hold-timer 0
set redundancy profile rd_ipoe_olt2 peer ipv4 remote-address 192.0.2.20
set redundancy profile rd_ipoe_olt2 peer ipv4 update-source 192.0.2.10
set redundancy profile rd_ipoe_olt2 peer ipv4 instance default
Redundancy Session Configuration
Run the following commands to configure the session for redundancy. Redundancy sessions can be uniquely identified by session IDs, which are used to store subscriber-specific data between active and standby devices.
set redundancy session 100
set redundancy session 100 priority 20
set redundancy session 100 profile rd_ipoe_olt1
set redundancy session 200
set redundancy session 200 priority 210
set redundancy session 200 profile rd_ipoe_olt2
Redundancy configuration from the node CBNG1
is shown below:
supervisor@rtbrick>cbng1.rtbrick.net: cfg> show config redundancy
{
"rtbrick-config:redundancy": {
"profile": [
{
"name": "rd_ipoe_olt1",
"switchover-hold-timer": 0,
"peer": {
"ipv4": {
"remote-address": "192.0.2.200",
"update-source": "192.0.2.100",
"instance": "default"
}
}
},
{
"name": "rd_ipoe_olt2",
"switchover-hold-timer": 0,
"peer": {
"ipv4": {
"remote-address": "192.0.2.20",
"update-source": "192.0.2.10",
"instance": "default"
}
}
}
],
"session": [
{
"session-id": 100,
"priority": 20,
"profile": "rd_ipoe_olt1"
},
{
"session-id": 200,
"priority": 210,
"profile": "rd_ipoe_olt2"
}
]
}
}
The redundancy configuration from the node CBNG2
is shown below:
supervisor@rtbrick>cbng2.rtbrick.net: cfg> show config redundancy
{
"rtbrick-config:redundancy": {
"profile": [
{
"name": "rd_ipoe_olt1",
"switchover-hold-timer": 0,
"peer": {
"ipv4": {
"remote-address": "192.0.2.100",
"update-source": "192.0.2.200",
"instance": "default"
}
}
},
{
"name": "rd_ipoe_olt2",
"switchover-hold-timer": 0,
"peer": {
"ipv4": {
"remote-address": "192.0.2.10",
"update-source": "192.0.2.20",
"instance": "default"
}
}
}
],
"session": [
{
"session-id": 100,
"priority": 10,
"profile": "rd_ipoe_olt1"
},
{
"session-id": 200,
"priority": 220,
"profile": "rd_ipoe_olt2"
}
]
}
}
The session priority value determines the active/standby nodes for a session.
|
LAG Configuration for Redundancy
Run the following commands to configure LAG on both devices (CBNG1
and CBNG2
) for redundancy. This configuration is required to associate the redundancy session with LAG.
Run the following commands to configure LAG on CBNG1
for redundancy.
set link-aggregation interface lag-1
set link-aggregation interface lag-1 mode lacp
set link-aggregation interface lag-1 minimum-link-count 3
set link-aggregation interface lag-1 redundancy-session-id 100
set link-aggregation interface lag-1 system-id a0:aa:aa:aa:aa:aa
set link-aggregation interface lag-1 member-interface ifp-0/1/26
set link-aggregation interface lag-1 member-interface ifp-0/1/27
set link-aggregation interface lag-1 member-interface ifp-0/1/28
set link-aggregation interface lag-11
set link-aggregation interface lag-11 mode lacp
set link-aggregation interface lag-11 minimum-link-count 3
set link-aggregation interface lag-11 redundancy-session-id 200
set link-aggregation interface lag-11 system-id a0:aa:aa:aa:aa:a0
set link-aggregation interface lag-11 member-interface ifp-0/1/31
set link-aggregation interface lag-11 member-interface ifp-0/1/33
set link-aggregation interface lag-11 member-interface ifp-0/1/35
set link-aggregation interface lag-2
set link-aggregation interface lag-2 mode lacp
set link-aggregation interface lag-2 minimum-link-count 1
set link-aggregation interface lag-2 member-interface ifp-0/1/14
set link-aggregation interface lag-2 member-interface ifp-0/1/15
set link-aggregation interface lag-3
set link-aggregation interface lag-3 mode lacp
set link-aggregation interface lag-3 minimum-link-count 1
set link-aggregation interface lag-3 member-interface ifp-0/1/23
set link-aggregation interface lag-3 member-interface ifp-0/1/24
LAG configuration for redundancy on CBNG1 is shown below:
supervisor@rtbrick>cbng1.rtbrick.net: cfg> show config link-aggregation
{
"rtbrick-config:link-aggregation": {
"interface": [
{
"interface-name": "lag-1",
"mode": "lacp",
"minimum-link-count": 3,
"redundancy-session-id": 100,
"system-id": "a0:aa:aa:aa:aa:aa",
"member-interface": [
{
"member-interface-name": "ifp-0/1/26"
},
{
"member-interface-name": "ifp-0/1/27"
},
{
"member-interface-name": "ifp-0/1/28"
}
]
},
{
"interface-name": "lag-11",
"mode": "lacp",
"minimum-link-count": 3,
"redundancy-session-id": 200,
"system-id": "a0:aa:aa:aa:aa:a0",
"member-interface": [
{
"member-interface-name": "ifp-0/1/31"
},
{
"member-interface-name": "ifp-0/1/33"
},
{
"member-interface-name": "ifp-0/1/35"
}
]
},
{
"interface-name": "lag-2",
"mode": "lacp",
"minimum-link-count": 1,
"member-interface": [
{
"member-interface-name": "ifp-0/1/14"
},
{
"member-interface-name": "ifp-0/1/15"
}
]
},
{
"interface-name": "lag-3",
"mode": "lacp",
"minimum-link-count": 1,
"member-interface": [
{
"member-interface-name": "ifp-0/1/23"
},
{
"member-interface-name": "ifp-0/1/24"
}
]
}
]
}
}
Run the following commands to configure LAG on CBNG2
for redundancy.
set link-aggregation interface lag-1
set link-aggregation interface lag-1 mode lacp
set link-aggregation interface lag-1 minimum-link-count 3
set link-aggregation interface lag-1 redundancy-session-id 100
set link-aggregation interface lag-1 system-id a0:aa:aa:aa:aa:aa
set link-aggregation interface lag-1 member-interface ifp-0/1/26
set link-aggregation interface lag-1 member-interface ifp-0/1/27
set link-aggregation interface lag-1 member-interface ifp-0/1/28
set link-aggregation interface lag-11
set link-aggregation interface lag-11 mode lacp
set link-aggregation interface lag-11 minimum-link-count 3
set link-aggregation interface lag-11 redundancy-session-id 200
set link-aggregation interface lag-11 system-id a0:aa:aa:aa:aa:a0
set link-aggregation interface lag-11 member-interface ifp-0/1/31
set link-aggregation interface lag-11 member-interface ifp-0/1/33
set link-aggregation interface lag-11 member-interface ifp-0/1/35
set link-aggregation interface lag-2
set link-aggregation interface lag-2 mode lacp
set link-aggregation interface lag-2 minimum-link-count 1
set link-aggregation interface lag-2 member-interface ifp-0/1/14
set link-aggregation interface lag-2 member-interface ifp-0/1/15
set link-aggregation interface lag-3
set link-aggregation interface lag-3 mode lacp
set link-aggregation interface lag-3 minimum-link-count 1
set link-aggregation interface lag-3 member-interface ifp-0/1/23
set link-aggregation interface lag-3 member-interface ifp-0/1/24
LAG configuration for redundancy on CBNG2 is shown below:
supervisor@rtbrick>cbng2.rtbrick.net: cfg> show config link-aggregation
{
"rtbrick-config:link-aggregation": {
"interface": [
{
"interface-name": "lag-1",
"mode": "lacp",
"minimum-link-count": 3,
"redundancy-session-id": 100,
"system-id": "a0:aa:aa:aa:aa:aa",
"member-interface": [
{
"member-interface-name": "ifp-0/1/30"
},
{
"member-interface-name": "ifp-0/1/32"
},
{
"member-interface-name": "ifp-0/1/33"
}
]
},
{
"interface-name": "lag-11",
"mode": "lacp",
"minimum-link-count": 3,
"redundancy-session-id": 200,
"system-id": "a0:aa:aa:aa:aa:a0",
"member-interface": [
{
"member-interface-name": "ifp-0/1/34"
},
{
"member-interface-name": "ifp-0/1/35"
},
{
"member-interface-name": "ifp-0/1/47"
}
]
},
{
"interface-name": "lag-2",
"mode": "lacp",
"minimum-link-count": 1,
"member-interface": [
{
"member-interface-name": "ifp-0/1/14"
},
{
"member-interface-name": "ifp-0/1/15"
}
]
},
{
"interface-name": "lag-3",
"mode": "lacp",
"minimum-link-count": 1,
"member-interface": [
{
"member-interface-name": "ifp-0/1/25"
},
{
"member-interface-name": "ifp-0/1/26"
}
]
}
]
}
}
Access Configuration for Redundancy
Run the following commands to configure access interfaces on both of the devices (CBNG1 and CBNG2) for enabling redundancy.
set access chassis-id 1
set access aaa-profile ipoe-aaa
set access aaa-profile ipoe-aaa session-timeout 0
set access aaa-profile ipoe-aaa idle-timeout 0
set access aaa-profile ipoe-aaa aaa-radius-profile aaa-radius1
set access aaa-profile ipoe-aaa authentication order RADIUS
set access aaa-profile ipoe-aaa accounting order RADIUS
set access aaa-profile ipoe-aaa accounting interim-interval 30
set access aaa-profile ipoe-aaa accounting session-id-format DEFAULT
set access radius-profile aaa-radius1
set access radius-profile aaa-radius1 nas-identifier 192.0.2.1
set access radius-profile aaa-radius1 nas-port-type Ethernet
set access radius-profile aaa-radius1 authentication radius-server-profile-name radius-srv1
set access radius-profile aaa-radius1 accounting radius-server-profile-name radius-srv1
set access radius-server radius-srv1
set access radius-server radius-srv1 address 198.51.100.98
set access radius-server radius-srv1 source-address 192.0.2.1
set access radius-server radius-srv1 secret-encrypted-text $2b2feb12f730107454b1be6a0f8242b0f
set access radius-server radius-srv1 routing-instance default
set access radius-server radius-srv1 authentication enable true
set access radius-server radius-srv1 authentication timeout 10
set access radius-server radius-srv1 accounting enable true
set access radius-server radius-srv1 accounting timeout 10
set access radius-server radius-srv1 coa enable true
set access access-profile ipoe
set access access-profile ipoe protocol dhcp enable true
set access access-profile ipoe protocol dhcp lease-time 3600
set access access-profile ipoe protocol dhcpv6 enable true
set access access-profile ipoe protocol dhcpv6 lifetime 3600
set access access-profile ipoe address-family ipv4 enable true
set access access-profile ipoe address-family ipv4 pool-name pool1
set access access-profile ipoe address-family ipv4 instance default
set access access-profile ipoe address-family ipv6 enable true
set access access-profile ipoe address-family ipv6 pool-name pool1
set access access-profile ipoe address-family ipv6 prefix-delegation-pool-name pool2
set access access-profile ipoe address-family ipv6 instance default
set access interface double-tagged lag-1 1001 2000 1001 1100
set access interface double-tagged lag-1 1001 2000 1001 1100 access-type IPoE
set access interface double-tagged lag-1 1001 2000 1001 1100 access-profile-name ipoe
set access interface double-tagged lag-1 1001 2000 1001 1100 aaa-profile-name ipoe-aaa
set access interface double-tagged lag-1 1001 2000 1001 1100 gateway-ifl lo-0/0/0/10
set access interface double-tagged lag-1 1001 2000 1001 1100 redundancy-session-id 100
set access interface double-tagged lag-11 2001 3000 1001 1100
set access interface double-tagged lag-11 2001 3000 1001 1100 access-type IPoE
set access interface double-tagged lag-11 2001 3000 1001 1100 access-profile-name ipoe
set access interface double-tagged lag-11 2001 3000 1001 1100 aaa-profile-name ipoe-aaa
set access interface double-tagged lag-11 2001 3000 1001 1100 gateway-ifl lo-0/0/0/10
set access interface double-tagged lag-11 2001 3000 1001 1100 redundancy-session-id 200
set access pool pool1
set access pool pool1 ipv4-address low 11.100.128.1
set access pool pool1 ipv4-address high 15.100.128.255
set access pool pool1 ipv6-prefix low fc55:100:1:1::1/128
set access pool pool1 ipv6-prefix high fc55:100:1:2::5555/128
set access pool pool2
set access pool pool2 ipv6-prefix low fc56:100:1::/56
set access pool pool2 ipv6-prefix high fc56:100:5000::/56set redundancy profile rd_ipoe_olt1
Access Configuration for Redundancy on CBNG-1 is shown below:
supervisor@rtbrick>cbng1.rtbrick.net: cfg> show config access
{
"rtbrick-config:access": {
"chassis-id": 1,
"aaa-profile": [
{
"profile-name": "ipoe-aaa",
"session-timeout": 0,
"idle-timeout": 0,
"aaa-radius-profile": "aaa-radius1",
"authentication": {
"order": "RADIUS"
},
"accounting": {
"order": "RADIUS",
"interim-interval": 30,
"session-id-format": "DEFAULT"
}
}
],
"radius-profile": [
{
"profile-name": "aaa-radius1",
"nas-identifier": "192.0.2.1",
"nas-port-type": "Ethernet",
"authentication": {
"radius-server-profile-name": [
"radius-srv1"
]
},
"accounting": {
"radius-server-profile-name": [
"radius-srv1"
]
}
}
],
"radius-server": [
{
"server-name": "radius-srv1",
"address": "198.51.100.98",
"source-address": "192.0.2.1",
"secret-encrypted-text": "$2b2feb12f730107454b1be6a0f8242b0f",
"routing-instance": "default",
"authentication": {
"enable": "true",
"timeout": 10
},
"accounting": {
"enable": "true",
"timeout": 10
},
"coa": {
"enable": "true"
}
}
],
"access-profile": [
{
"profile-name": "ipoe",
"protocol": {
"dhcp": {
"enable": "true",
"lease-time": 3600
},
"dhcpv6": {
"enable": "true",
"lifetime": 3600
}
},
"address-family": {
"ipv4": {
"enable": "true",
"pool-name": "pool1",
"instance": "default"
},
"ipv6": {
"enable": "true",
"pool-name": "pool1",
"prefix-delegation-pool-name": "pool2",
"instance": "default"
}
}
}
],
"interface": {
"double-tagged": [
{
"interface-name": "lag-1",
"outer-vlan-min": 1001,
"outer-vlan-max": 2000,
"inner-vlan-min": 1001,
"inner-vlan-max": 1100,
"access-type": "IPoE",
"access-profile-name": "ipoe",
"aaa-profile-name": "ipoe-aaa",
"gateway-ifl": "lo-0/0/0/10",
"redundancy-session-id": 100
},
{
"interface-name": "lag-11",
"outer-vlan-min": 2001,
"outer-vlan-max": 3000,
"inner-vlan-min": 1001,
"inner-vlan-max": 1100,
"access-type": "IPoE",
"access-profile-name": "ipoe",
"aaa-profile-name": "ipoe-aaa",
"gateway-ifl": "lo-0/0/0/10",
"redundancy-session-id": 200
}
]
},
"pool": [
{
"pool-name": "pool1",
"ipv4-address": {
"low": "11.100.128.1",
"high": "15.100.128.255"
},
"ipv6-prefix": {
"low": "fc55:100:1:1::1/128",
"high": "fc55:100:1:2::5555/128"
}
},
{
"pool-name": "pool2",
"ipv6-prefix": {
"low": "fc56:100:1::/56",
"high": "fc56:100:5000::/56"
}
}
]
}
}
Access Configuration for Redundancy on CBNG-2 is shown below:
supervisor@rtbrick>cbng2.rtbrick.net: cfg> show config access
{
"rtbrick-config:access": {
"chassis-id": 2,
"aaa-profile": [
{
"profile-name": "ipoe-aaa",
"session-timeout": 0,
"idle-timeout": 0,
"aaa-radius-profile": "aaa-radius1",
"authentication": {
"order": "RADIUS"
},
"accounting": {
"order": "RADIUS",
"interim-interval": 30,
"session-id-format": "DEFAULT"
}
}
],
"radius-profile": [
{
"profile-name": "aaa-radius1",
"nas-identifier": "192.0.2.2",
"nas-port-type": "Ethernet",
"authentication": {
"radius-server-profile-name": [
"radius-srv1"
]
},
"accounting": {
"radius-server-profile-name": [
"radius-srv1"
]
}
}
],
"radius-server": [
{
"server-name": "radius-srv1",
"address": "198.51.100.98",
"source-address": "192.0.2.2",
"secret-encrypted-text": "$2b2feb12f730107454b1be6a0f8242b0f",
"routing-instance": "default",
"authentication": {
"enable": "true",
"timeout": 10
},
"accounting": {
"enable": "true",
"timeout": 10
},
"coa": {
"enable": "true"
}
}
],
"access-profile": [
{
"profile-name": "ipoe",
"protocol": {
"dhcp": {
"enable": "true",
"lease-time": 3600
},
"dhcpv6": {
"enable": "true",
"lifetime": 3600
}
},
"address-family": {
"ipv4": {
"enable": "true",
"pool-name": "pool1",
"instance": "default"
},
"ipv6": {
"enable": "true",
"pool-name": "pool1",
"prefix-delegation-pool-name": "pool2",
"instance": "default"
}
}
}
],
"interface": {
"double-tagged": [
{
"interface-name": "lag-1",
"outer-vlan-min": 1001,
"outer-vlan-max": 2000,
"inner-vlan-min": 1001,
"inner-vlan-max": 1100,
"access-type": "IPoE",
"access-profile-name": "ipoe",
"aaa-profile-name": "ipoe-aaa",
"gateway-ifl": "lo-0/0/0/10",
"redundancy-session-id": 100
},
{
"interface-name": "lag-11",
"outer-vlan-min": 2001,
"outer-vlan-max": 3000,
"inner-vlan-min": 1001,
"inner-vlan-max": 1100,
"access-type": "IPoE",
"access-profile-name": "ipoe",
"aaa-profile-name": "ipoe-aaa",
"gateway-ifl": "lo-0/0/0/10",
"redundancy-session-id": 200
}
]
},
"pool": [
{
"pool-name": "pool1",
"ipv4-address": {
"low": "16.100.128.1",
"high": "20.100.128.255"
},
"ipv6-prefix": {
"low": "fc66:100:1:1::1/128",
"high": "fc66:100:1:2::5555/128"
}
},
{
"pool-name": "pool2",
"ipv6-prefix": {
"low": "fc67:100:1::/56",
"high": "fc67:100:5000::/56"
}
}
]
}
}
BNG Blaster Configuration
BNG Blaster is an open-source network testing platform for access and routing protocols. It can emulate massive PPPoE and IPoE (DHCP) subscribers, including IPTV, and L2TP (LNS). One can use this platform for end-to-end BNG and non-BNG router testing. For more information about BNG Blaster, see https://github.com/rtbrick/bngblaster
Configure LAG on BNG Blaster for Redundancy Validation
With BNG blaster, you can validate the C-BNG - IPoE with Redundancy solution implementation and the traffic streams. BNG Blaster uses the following configuration file to validate C-BNG - IPoE with Redundancy.
{
"interfaces": {
"tx-interval": 1,
"rx-interval": 1,
"lag": [
{
"interface": "lag1",
"lacp": true,
"lacp-timeout-short": true
},
{
"interface": "lag11",
"lacp": true,
"lacp-timeout-short": true
}
],
"links": [
{
"interface": "SN-5-C1",
"lag-interface": "lag1"
},
{
"interface": "SN-6-C1",
"lag-interface": "lag1"
},
{
"interface": "SN-7-C1",
"lag-interface": "lag1"
},
{
"interface": "SN-11-C2",
"lag-interface": "lag1"
},
{
"interface": "SN-12-C2",
"lag-interface": "lag1"
},
{
"interface": "SN-13-C2",
"lag-interface": "lag1"
},
{
"interface": "SN-20-C1",
"lag-interface": "lag11"
},
{
"interface": "SN-21-C1",
"lag-interface": "lag11"
},
{
"interface": "SN-22-C1",
"lag-interface": "lag11"
},
{
"interface": "SN-23-C2",
"lag-interface": "lag11"
},
{
"interface": "SN-24-C2",
"lag-interface": "lag11"
},
{
"interface": "SN-25-C2",
"lag-interface": "lag11"
}
],
"network": [
{
"interface": "SN-19-RR",
"address": "192.0.2.130/30",
"gateway": "192.0.2.129",
"address-ipv6": "2001:db8::130",
"gateway-ipv6": "2001:db8::129",
"isis-instance-id": 1,
"isis-level": 1,
"ldp-instance-id": 1
}
],
"access": [
{
"interface": "lag1",
"type": "ipoe",
"agent-remote-id": "CBNG1.RTBRICK.{session-global}",
"outer-vlan-min": 1001,
"outer-vlan-max": 2000,
"inner-vlan-min": 1001,
"inner-vlan-max": 1100
},
{
"interface": "lag11",
"type": "ipoe",
"agent-remote-id": "CBNG2.RTBRICK.{session-global}",
"outer-vlan-min": 2001,
"outer-vlan-max": 3000,
"inner-vlan-min": 1001,
"inner-vlan-max": 1100
}
]
},
"sessions": {
"count": 20000,
"max-outstanding": 800,
"start-rate": 400,
"stop-rate": 400
},
"access-line": {
"agent-remote-id": "DEU.RTBRICK.{session-global}",
"agent-circuit-id": "0.0.0.0/0.0.0.0 eth 0:{session-global}",
"rate-up": 2000,
"rate-down": 16384,
"dsl-type": 5
},
"dhcp": {
"enable": true
},
"dhcpv6": {
"ldra": true,
"enable": true
},
"session-traffic": {
"ipv4-pps": 1,
"ipv6-pps": 1,
"ipv6pd-pps": 1,
"autostart": false
},
"ldp": [
{
"instance-id": 1,
"lsr-id": "192.0.2.6",
"keepalive-time": 30,
"raw-update-file": "/home/supervisor/ldp_1000.ldp"
}
],
"isis": [
{
"instance-id": 1,
"area": [
"49.0002/24"
],
"system-id": "0204.0000.0001",
"router-id": "192.0.2.6",
"hostname": "BBL-RR",
"hello-padding": true,
"teardown-time": 30,
"external": {
"mrt-file": "/home/supervisor/isis_1000.mrt",
"connections": [
{
"system-id": "0300.1001.0001",
"l1-metric": 10
}
]
}
}
],
"bgp": [
{
"__comment__": "RR1-C1-IPv4",
"network-interface": "SN-19-RR",
"local-ipv4-address": "198.51.100.10",
"peer-ipv4-address": "192.0.2.1",
"raw-update-file": "/home/supervisor/ipv4_nlri_nh1.bgp",
"local-as": 4200000001,
"peer-as": 4200000001
},
{
"__comment__": "RR1-C1-IPv6",
"network-interface": "SN-19-RR",
"local-ipv4-address": "198.51.100.20",
"peer-ipv4-address": "192.0.2.1",
"raw-update-file": "/home/supervisor/ipv6_nlri_nh1.bgp",
"local-as": 4200000001,
"peer-as": 4200000001
},
{
"__comment__": "RR1-C2-IPv4",
"network-interface": "SN-19-RR",
"local-ipv4-address": "198.51.100.10",
"peer-ipv4-address": "192.0.2.2",
"raw-update-file": "/home/supervisor/ipv4_nlri_nh1.bgp",
"local-as": 4200000001,
"peer-as": 4200000001
},
{
"__comment__": "RR1-C2-IPv6",
"network-interface": "SN-19-RR",
"local-ipv4-address": "198.51.100.20",
"peer-ipv4-address": "192.0.2.2",
"raw-update-file": "/home/supervisor/ipv6_nlri_nh1.bgp",
"local-as": 4200000001,
"peer-as": 4200000001
},
{
"__comment__": "RR2-C1-IPv4",
"network-interface": "SN-19-RR",
"local-ipv4-address": "198.51.100.30",
"peer-ipv4-address": "192.0.2.1",
"raw-update-file": "/home/supervisor/ipv4_nlri_nh2.bgp",
"local-as": 4200000001,
"peer-as": 4200000001
},
{
"__comment__": "RR2-C1-IPv6",
"network-interface": "SN-19-RR",
"local-ipv4-address": "198.51.100.40",
"peer-ipv4-address": "192.0.2.1",
"raw-update-file": "/home/supervisor/ipv6_nlri_nh2.bgp",
"local-as": 4200000001,
"peer-as": 4200000001
},
{
"__comment__": "RR2-C2-IPv4",
"network-interface": "SN-19-RR",
"local-ipv4-address": "198.51.100.30",
"peer-ipv4-address": "192.0.2.2",
"raw-update-file": "/home/supervisor/ipv4_nlri_nh2.bgp",
"local-as": 4200000001,
"peer-as": 4200000001
},
{
"__comment__": "RR2-C2-IPv6",
"network-interface": "SN-19-RR",
"local-ipv4-address": "198.51.100.40",
"peer-ipv4-address": "192.0.2.2",
"raw-update-file": "/home/supervisor/ipv6_nlri_nh2.bgp",
"local-as": 4200000001,
"peer-as": 4200000001
}
]
}
Validating C-BNG Redundancy and Reachability
The following command line string shows how to start a BNG Blaster instance:
sudo bngblaster -C <filename> -I -c10
Redundancy Session Data and Subscriber States on Active and Standby Nodes
CBNG-1: Before switchover, which is the actual state
supervisor@rtbrick>cbng1.rtbrick.net: op> show redundancy session
Instance: default
Session ID Interface Peer Source State Peer state Keepalive rcvd Keepalive sent
100 lag-1 192.0.2.200 192.0.2.100 active standby 91 92
200 lag-11 192.0.2.20 192.0.2.10 standby active 91 91
supervisor@rtbrick>cbng1.rtbrick.net: op>
supervisor@rtbrick>cbng1.rtbrick.net: op> show subscriber
Subscriber-Id Interface VLAN Type State
1369375761697341441 lag-1 1001:1001 IPoE ESTABLISHED
1369375761697341442 lag-1 1001:1002 IPoE ESTABLISHED
1369375761697341443 lag-1 1001:1003 IPoE ESTABLISHED
1369375761697341444 lag-1 1001:1004 IPoE ESTABLISHED
1369375761697341445 lag-1 1001:1005 IPoE ESTABLISHED
2522297266304188417 lag-11 2001:1001 IPoE STANDBY
2522297266304188418 lag-11 2001:1002 IPoE STANDBY
2522297266304188419 lag-11 2001:1003 IPoE STANDBY
2522297266304188420 lag-11 2001:1004 IPoE STANDBY
2522297266304188421 lag-11 2001:1005 IPoE STANDBY
supervisor@rtbrick>cbng1.rtbrick.net: op>
CBNG-2: Before switchover, which is the actual state
supervisor@rtbrick>cbng2.rtbrick.net: op> show redundancy session
Instance: default
Session ID Interface Peer Source State Peer state Keepalive rcvd Keepalive sent
100 lag-1 192.0.2.100 192.0.2.200 standby active 94 93
200 lag-11 192.0.2.10 192.0.2.20 active standby 93 93
supervisor@rtbrick>cbng2.rtbrick.net: op>
supervisor@rtbrick>cbng2.rtbrick.net: op> show subscriber
Subscriber-Id Interface VLAN Type State
1369375761697341441 lag-1 1001:1001 IPoE STANDBY
1369375761697341442 lag-1 1001:1002 IPoE STANDBY
1369375761697341443 lag-1 1001:1003 IPoE STANDBY
1369375761697341444 lag-1 1001:1004 IPoE STANDBY
1369375761697341445 lag-1 1001:1005 IPoE STANDBY
2522297266304188417 lag-11 2001:1001 IPoE ESTABLISHED
2522297266304188418 lag-11 2001:1002 IPoE ESTABLISHED
2522297266304188419 lag-11 2001:1003 IPoE ESTABLISHED
2522297266304188420 lag-11 2001:1004 IPoE ESTABLISHED
2522297266304188421 lag-11 2001:1005 IPoE ESTABLISHED
supervisor@rtbrick>cbng2.rtbrick.net: op>
Switchover Scenario for Link Failure Between Active C-BNG Node and Access (OLT) Node
After link (connecting OLT1 to CBNG1) is brought down, the state becomes down
for the RD session 100 and for the same session, the other CBNG becomes stand-alone
.
CBNG-1:
supervisor@rtbrick>cbng1.rtbrick.net: op> show redundancy session
Instance: default
Session ID Interface Peer Source State Peer state Keepalive rcvd Keepalive sent
100 lag-1 192.0.2.200 192.0.2.100 down stand-alone 113 114
200 lag-11 192.0.2.20 192.0.2.10 standby active 114 114
supervisor@rtbrick>cbng1.rtbrick.net: op>
supervisor@rtbrick>cbng1.rtbrick.net: op> show subscriber
Subscriber-Id Interface VLAN Type State
1369375761697341441 lag-1 1001:1001 IPoE STANDBY
1369375761697341442 lag-1 1001:1002 IPoE STANDBY
1369375761697341443 lag-1 1001:1003 IPoE STANDBY
1369375761697341444 lag-1 1001:1004 IPoE STANDBY
1369375761697341445 lag-1 1001:1005 IPoE STANDBY
2522297266304188417 lag-11 2001:1001 IPoE STANDBY
2522297266304188418 lag-11 2001:1002 IPoE STANDBY
2522297266304188419 lag-11 2001:1003 IPoE STANDBY
2522297266304188420 lag-11 2001:1004 IPoE STANDBY
2522297266304188421 lag-11 2001:1005 IPoE STANDBY
supervisor@rtbrick>cbng1.rtbrick.net: op>
CBNG-2:
supervisor@rtbrick>cbng2.rtbrick.net: op> show redundancy session
Instance: default
Session ID Interface Peer Source State Peer state Keepalive rcvd Keepalive sent
100 lag-1 192.0.2.100 192.0.2.200 stand-alone down 115 114
200 lag-11 192.0.2.10 192.0.2.20 active standby 115 115
supervisor@rtbrick>cbng2.rtbrick.net: op>
supervisor@rtbrick>cbng2.rtbrick.net: op> show subscriber
Subscriber-Id Interface VLAN Type State
1369375761697341441 lag-1 1001:1001 IPoE ESTABLISHED
1369375761697341442 lag-1 1001:1002 IPoE ESTABLISHED
1369375761697341443 lag-1 1001:1003 IPoE ESTABLISHED
1369375761697341444 lag-1 1001:1004 IPoE ESTABLISHED
1369375761697341445 lag-1 1001:1005 IPoE ESTABLISHED
2522297266304188417 lag-11 2001:1001 IPoE ESTABLISHED
2522297266304188418 lag-11 2001:1002 IPoE ESTABLISHED
2522297266304188419 lag-11 2001:1003 IPoE ESTABLISHED
2522297266304188420 lag-11 2001:1004 IPoE ESTABLISHED
2522297266304188421 lag-11 2001:1005 IPoE ESTABLISHED
supervisor@rtbrick>cbng2.rtbrick.net: op>
Failed OLT link comes up back (before node failure)
CBNG-1:
supervisor@rtbrick>cbng1.rtbrick.net: op> show redundancy session
Instance: default
Session ID Interface Peer Source State Peer state Keepalive rcvd Keepalive sent
100 lag-1 192.0.2.200 192.0.2.100 standby active 163 164
200 lag-11 192.0.2.20 192.0.2.10 standby active 163 163
supervisor@rtbrick>cbng1.rtbrick.net: op>
supervisor@rtbrick>cbng1.rtbrick.net: op> show subscriber
Subscriber-Id Interface VLAN Type State
1369375761697341441 lag-1 1001:1001 IPoE STANDBY
1369375761697341442 lag-1 1001:1002 IPoE STANDBY
1369375761697341443 lag-1 1001:1003 IPoE STANDBY
1369375761697341444 lag-1 1001:1004 IPoE STANDBY
1369375761697341445 lag-1 1001:1005 IPoE STANDBY
2522297266304188417 lag-11 2001:1001 IPoE STANDBY
2522297266304188418 lag-11 2001:1002 IPoE STANDBY
2522297266304188419 lag-11 2001:1003 IPoE STANDBY
2522297266304188420 lag-11 2001:1004 IPoE STANDBY
2522297266304188421 lag-11 2001:1005 IPoE STANDBY
supervisor@rtbrick>cbng1.rtbrick.net: op>
CBNG-2:
supervisor@rtbrick>cbng2.rtbrick.net: op> show redundancy session
Instance: default
Session ID Interface Peer Source State Peer state Keepalive rcvd Keepalive sent
100 lag-1 192.0.2.100 192.0.2.200 active standby 166 165
200 lag-11 192.0.2.10 192.0.2.20 active standby 165 165
supervisor@rtbrick>cbng2.rtbrick.net: op>
supervisor@rtbrick>cbng2.rtbrick.net: op> show subscriber
Subscriber-Id Interface VLAN Type State
1369375761697341441 lag-1 1001:1001 IPoE ESTABLISHED
1369375761697341442 lag-1 1001:1002 IPoE ESTABLISHED
1369375761697341443 lag-1 1001:1003 IPoE ESTABLISHED
1369375761697341444 lag-1 1001:1004 IPoE ESTABLISHED
1369375761697341445 lag-1 1001:1005 IPoE ESTABLISHED
2522297266304188417 lag-11 2001:1001 IPoE ESTABLISHED
2522297266304188418 lag-11 2001:1002 IPoE ESTABLISHED
2522297266304188419 lag-11 2001:1003 IPoE ESTABLISHED
2522297266304188420 lag-11 2001:1004 IPoE ESTABLISHED
2522297266304188421 lag-11 2001:1005 IPoE ESTABLISHED
supervisor@rtbrick>cbng2.rtbrick.net: op>
To revert to the original active-standby mode based on the priority, a manual switchover can be performed using the switch-over session 100 confirm command.
|
Switchover Scenario for Active C-BNG Node Failure
CBNG-2’s Session State and Subscriber State After node failure
supervisor@rtbrick>cbng2.rtbrick.net: op> show redundancy session
Instance: default
Session ID Interface Peer Source State Peer state Keepalive rcvd Keepalive sent
100 lag-1 192.0.2.100 192.0.2.200 stand-alone invalid 194 196
200 lag-11 192.0.2.10 192.0.2.20 stand-alone invalid 193 196
supervisor@rtbrick>cbng2.rtbrick.net: op>
supervisor@rtbrick>cbng2.rtbrick.net: op> show subscriber
Subscriber-Id Interface VLAN Type State
1369375761697341441 lag-1 1001:1001 IPoE ESTABLISHED
1369375761697341442 lag-1 1001:1002 IPoE ESTABLISHED
1369375761697341443 lag-1 1001:1003 IPoE ESTABLISHED
1369375761697341444 lag-1 1001:1004 IPoE ESTABLISHED
1369375761697341445 lag-1 1001:1005 IPoE ESTABLISHED
2522297266304188417 lag-11 2001:1001 IPoE ESTABLISHED
2522297266304188418 lag-11 2001:1002 IPoE ESTABLISHED
2522297266304188419 lag-11 2001:1003 IPoE ESTABLISHED
2522297266304188420 lag-11 2001:1004 IPoE ESTABLISHED
2522297266304188421 lag-11 2001:1005 IPoE ESTABLISHED
supervisor@rtbrick>cbng2.rtbrick.net: op>