Skip to content

Commit 8718c61

Browse files
committed
Modified based on Acrolynx
1 parent 6ed84a1 commit 8718c61

File tree

3 files changed

+109
-41
lines changed

3 files changed

+109
-41
lines changed

articles/operator-nexus/concepts-bmp-log-streaming.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,7 @@ ms.date: 04/01/2025
99
ms.custom: template-concept
1010
---
1111

12-
## Introduction to BMP
12+
# Introduction to BMP
1313

1414
The **BGP Monitoring Protocol (BMP)** is a protocol designed to monitor BGP sessions. It provides a standardized method for collecting information about BGP sessions, which can be used for analysis, troubleshooting, and ensuring the stability and security of the network.
1515

@@ -86,4 +86,4 @@ Nexus NF shall not support excluding the monitoring of peer-address of neighbor
8686
Nexus shall support a maximum of four Network Monitors (BMP Stations).
8787

8888
## Next steps
89-
[How to enable \ disable BMP log streaming](./howto-enable-disable-log-streaming.md)
89+
[How to enable \ disable BMP log streaming](./howto-enable-log-streaming.md)

articles/operator-nexus/howto-configure-bgp-prefix-limit-on-CE-devices.md

Lines changed: 21 additions & 20 deletions
Original file line numberDiff line numberDiff line change
@@ -17,19 +17,20 @@ BGP (Border Gateway Protocol) prefix limiting is an essential overload protectio
1717

1818
BGP prefix limits can be configured using two primary parameters:
1919

20-
- **max-routes (hard limits)**: This parameter sets the maximum number of prefixes a BGP router will accept from a neighbor. If the limit is exceeded, the BGP session with that neighbor is terminated to prevent overloading the router.
20+
- **max-routes (hard limits)**: This parameter sets the maximum number of prefixes a BGP router accepts from a neighbor. If the limit is exceeded, the BGP session with that neighbor is terminated to prevent overloading the router.
2121

22-
- **warn-threshold (soft limits)**: The warn-threshold parameter sets a warning threshold below the max-routes limit. When the number of prefixes received from a neighbor exceeds this threshold, a warning is generated, but the BGP session is not terminated. This allows network administrators to take corrective action before the hard limit is reached.
22+
- **warn-threshold (soft limits)**: The warn-threshold parameter sets a warning threshold below the max-routes limit. When the number of prefixes received from a neighbor exceeds this threshold, a warning is generated, but the BGP session isn't terminated. This policy allows network administrators to take corrective action before the hard limit is reached.
2323

2424
### Hard limits (max-routes)
2525

26-
The `max-routes` parameter specifies the maximum number of prefixes that a BGP router can accept from a neighbor. If the number exceeds this limit, the BGP session with that neighbor is terminated. This is a "hard" limit to protect the router from excessive load and to maintain network stability.
26+
The `max-routes` parameter specifies the maximum number of prefixes that a BGP router can accept from a neighbor. If the number exceeds this limit, the BGP session with that neighbor is terminated. This threshold is a "hard" limit to protect the router from excessive load and to maintain network stability.
2727

2828
### Soft limits (warn-threshold)
2929

30-
The `warn-threshold` parameter is a "soft" limit. When the number of prefixes exceeds this threshold, a warning is triggered, but the BGP session remains active. This serves as a precautionary measure, allowing administrators to intervene before reaching the hard limit.
30+
The `warn-threshold` parameter is a "soft" limit. When the number of prefixes exceeds this threshold, a warning is triggered, but the BGP session remains active. This safeguard serves as a precautionary measure, allowing administrators to intervene before reaching the hard limit.
31+
32+
To configure **BGP Prefix Limit** on **Customer Edge (CE)** devices for **Azure Operator Nexus**, follow the steps below. This configuration includes setting the prefix limits for BGP sessions to manage network stability and prevent the Nexus fabric from being overwhelmed when a tenant advertises excessive BGP routes.
3133

32-
To configure **BGP Prefix Limit** on **Customer Edge (CE)** devices for **Azure Operator Nexus**, follow the steps below. This includes configuring the prefix limits for BGP sessions to manage network stability and prevent the Nexus fabric from being overwhelmed when a tenant advertises excessive BGP routes.
3334

3435
### Prerequisites
3536

@@ -45,9 +46,9 @@ To configure **BGP Prefix Limit** on **Customer Edge (CE)** devices for **Azure
4546

4647
You need to configure the BGP prefix limits using the parameters `maximumRoutes` and `threshold`.
4748

48-
- **`maximumRoutes`**: This defines the maximum number of BGP prefixes the router will accept from a BGP peer.
49+
- **`maximumRoutes`**: This parameter defines the maximum number of BGP prefixes the router accepts from a BGP peer.
4950

50-
- **`threshold`**: This defines the warning threshold as a percentage of the `maximumRoutes`. When the number of prefixes exceeds this threshold, a warning is generated.
51+
- **`threshold`**: This parameter defines the warning threshold as a percentage of the `maximumRoutes`. When the number of prefixes exceeds this threshold, a warning is generated.
5152

5253
#### Step 2: Configure on the CE device
5354

@@ -67,15 +68,15 @@ This configuration will automatically restart the session after a defined idle t
6768

6869
- **Explanation**:
6970

70-
- **maximumRoutes**: 5000 routes is the limit for the BGP session.
71+
- **maximumRoutes**: 5,000 routes are the limit for the BGP session.
7172

72-
- **threshold**: A warning is triggered when the prefix count reaches 80% (4000 routes).
73+
- **threshold**: A warning is triggered when the prefix count reaches 80% (4,000 routes).
7374

7475
- **idleTimeExpiry**: If the session is shut down, it will restart automatically after 100 seconds of idle time.
7576

7677
##### Example 2: BGP prefix limit without automatic restart
7778

78-
This configuration will shut down the session when the maximum prefix limit is reached, but manual intervention is required to restart the session.
79+
This configuration shuts down the session when the maximum prefix limit is reached, but manual intervention is required to restart the session.
7980

8081
```json
8182
{
@@ -88,15 +89,15 @@ This configuration will shut down the session when the maximum prefix limit is r
8889

8990
- **Explanation**:
9091

91-
- **maximumRoutes**: 5000 routes is the limit for the BGP session.
92+
- **maximumRoutes**: 5,000 routes are the limit for the BGP session.
9293

93-
- **threshold**: A warning is triggered when the prefix count reaches 80% (4000 routes).
94+
- **threshold**: A warning is triggered when the prefix count reaches 80% (4,000 routes).
9495

9596
- No automatic restart; manual intervention is required to restart the session.
9697

9798
##### Example 3: Hard-Limit drop BGP sessions
9899

99-
This configuration will drop additional routes if the prefix limit is exceeded without maintaining a cache of the dropped routes.
100+
This configuration drops extra routes if the prefix limit is exceeded without maintaining a cache of the dropped routes.
100101

101102
```json
102103
{
@@ -108,13 +109,13 @@ This configuration will drop additional routes if the prefix limit is exceeded w
108109

109110
- **Explanation**:
110111

111-
- **maximumRoutes**: 5000 routes is the limit for the BGP session.
112+
- **maximumRoutes**: 5,000 routes are the limit for the BGP session.
112113

113-
- Once the limit is reached, the CE device will drop any additional prefixes received from the BGP peer.
114+
- Once the limit is reached, the CE device drops any extra prefixes received from the BGP peer.
114115

115116
##### Example 4: Hard-Limit warning only
116117

117-
This configuration will generate a warning once the prefix count reaches a certain percentage of the maximum limit but will not shut down the session.
118+
This configuration generates a warning once the prefix count reaches a certain percentage of the maximum limit but does not shut down the session.
118119

119120
```json
120121
{
@@ -128,11 +129,11 @@ This configuration will generate a warning once the prefix count reaches a certa
128129

129130
- **Explanation**:
130131

131-
- **maximumRoutes**: 8000 routes is the limit for the BGP session.
132+
- **maximumRoutes**: 8,000 routes are the limit for the BGP session.
132133

133-
- **threshold**: A warning is generated when the prefix count reaches 75% (6000 routes).
134+
- **threshold**: A warning is generated when the prefix count reaches 75% (6,000 routes).
134135

135-
- The session is not shut down. This configuration is used to only generate a warning without taking any session-terminating action.
136+
- The session isn't shut down. This configuration is used to only generate a warning without taking any session-terminating action.
136137

137138
#### Step 3: Apply Configuration Using Azure CLI
138139

@@ -190,6 +191,6 @@ For external network configuration, only the **hard-limit warning-only** option
190191

191192
### NNI Option A:
192193

193-
For NNI Option A, only a single peer group is allowed. IPv4 over IPv6 and vice versa are not supported. Warning-only mode is available for handling prefix limits.
194+
For NNI Option A, only a single peer group is allowed. IPv4 over IPv6 and vice versa aren't supported. Warning-only mode is available for handling prefix limits.
194195

195196
By following this guide, you can configure BGP prefix limits effectively to protect your network from overload and ensure that BGP sessions are properly managed for both internal and external networks.

articles/operator-nexus/howto-enable-log-streaming.md

Lines changed: 86 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -1,30 +1,34 @@
11
---
2-
title: Enable/Disable BMP log streaming Azure Operator Nexus
2+
title: Enable \ Disable BMP log streaming Azure Operator Nexus
33
description: instructions on enabling \ disabling BMP log streaming various Network Fabric resource.
44
ms.service: azure-operator-nexus
55
ms.custom: template-how-to, devx-track-azurecli
66
ms.topic: how-to
77
ms.date: 11/14/2024
8-
author: susantjrao
8+
author: sushantjrao
99
ms.author: sushrao
1010
---
1111

1212
# BMP log streaming
13+
1314
This guide provides you with instructions on enabling \ disabling BMP log streaming various Network Fabric resources.
1415

15-
## Enabling BMP Log Streaming for the New Deployment
16+
## Enabling BMP log streaming for the new deployment
1617

1718
- **Create Network Fabric resource:** Begin by creating Network Fabric (NF) resource. This will serve as the foundation for your deployment.
1819

1920
- **Create Network Monitor resource:** Next, create a Network Monitor resource and associate the Scope ID with the NF Resource ID. This step ensures that the monitoring is correctly linked to the network fabric.
2021

21-
- **Create NNI with BMP Configuration:** Create a Network-to-Network Interface (NNI) by associating it with the NF Resource ID. *(Please refer to the below detailed ARM API payload guide for more information)*
22+
- **Create NNI with BMP configuration:** Create a Network-to-Network Interface (NNI) by associating it with the NF Resource ID.
23+
24+
> [!Note]
25+
> Refer to the below detailed ARM API payload guide for more information
2226
2327
- **Provision Network Fabric:** Provision the Network Fabric to apply the configurations and make the network operational.
2428

25-
- **Generate BMP Stations Configuration** The Nexus NF will generate the BMP stations configuration on the Customer Edge (CE) devices only.
29+
- **Generate BMP stations configuration** The Nexus NF will generate the BMP stations configuration on the Customer Edge (CE) devices only.
2630

27-
## Enabling BMP Log Streaming for the Existing Deployment
31+
## Enabling BMP log streaming for the existing deployment
2832

2933
This case involves enabling BMP log streaming on NF, which has already been deployed using the supported NF Version. Since this is based on an ARM API user-driven input, the supported NF Version will also support BMP Log Streaming through the NF Patch Update workflow.
3034

@@ -33,7 +37,10 @@ This case involves enabling BMP log streaming on NF, which has already been depl
3337
- **Create Network Monitor resource:**
3438
Create a Network Monitor resource and link the Scope ID to the NF Resource ID to ensure proper monitoring.
3539

36-
- **Perform Patch on NNI:** Update the Network-to-Network Interface (NNI) by applying a patch. Select `bmpConfiguration` under `OptionBLayerConfiguration` and set `configurationState` to "Enabled" for BMP logging of the NNI peer-group neighbor address. *(Please refer to the below detailed ARM API payload guide for more information)*
40+
- **Perform Patch on NNI:** Update the Network-to-Network Interface (NNI) by applying a patch. Select `bmpConfiguration` under `OptionBLayerConfiguration` and set `configurationState` to "Enabled" for BMP logging of the NNI peer-group neighbor address.
41+
42+
> [!Note]
43+
> Refer to the below detailed ARM API payload guide for more information
3744
3845
- **Perform `Fabric Commit` operation:** Execute the "Fabric Commit" operation to apply configurations and activate the network.
3946

@@ -46,7 +53,28 @@ This section provides a detailed guide on how to perform CRUD (Create, Read, Upd
4653
The following property is defined under ARM API version `2024-06-15-preview`
4754

4855
```Azure CLI
49-
az networkfabric networkmonitor create --resource-group "example-rg" --fabric "example-fabric" --resource-name "example-network-monitor" --bmp-configuration "{ stationConfigurationState: `Enabled`, stationName:`<example-station>`,stationIp:'<example-ip>', stationPort:<example-port>, stationConnectionMode:`Active`, stationConnectionProperties:{ keepaliveIdleTime:180, probeInterval:60, probeCount:3 }}" –monitored-networks “[`<example-arm-reference-id-1>`, `<example-arm-reference-id-2>`, `<example-arm-reference-id-3>`]”
56+
az networkfabric networkmonitor create \
57+
--resource-group "example-rg" \
58+
--fabric "example-fabric" \
59+
--resource-name "example-network-monitor" \
60+
--bmp-configuration "{\
61+
stationConfigurationState: 'Enabled',\
62+
stationName: '<example-station>',\
63+
stationIp: '<example-ip>',\
64+
stationPort: <example-port>,\
65+
stationConnectionMode: 'Active',\
66+
stationConnectionProperties: {\
67+
keepaliveIdleTime: 180,\
68+
probeInterval: 60,\
69+
probeCount: 3\
70+
}\
71+
}" \
72+
--monitored-networks "[\
73+
'<example-arm-reference-id-1>',\
74+
'<example-arm-reference-id-2>',\
75+
'<example-arm-reference-id-3>'\
76+
]"
77+
5078
```
5179

5280
> [!Note]
@@ -69,26 +97,37 @@ router bgp 65050
6997
connection mode active port <example-port> >>> Example for BMP Monitoring station with connection mode active
7098
```
7199

72-
## How to Enable/Disable BMP Log Streaming under NNI
100+
## How to Enable/Disable BMP log streaming under NNI
101+
102+
### Enabling BMP log streaming for NNI
73103

74-
### Enabling BMP Log Streaming for NNI
75104
To enable BMP Log streaming under NNI, run the following Azure CLI command. This example enables BMP Log streaming for **infra-vpn** (vrf **INFRA-MGMT**), **workload-vpn** (vrf **WORKLOAD-MGMT**) with **OptionB**, and **L3ISD External Network OptionB**.
76105

77-
```bash
106+
```Azure CLI
78107
az networkfabric nni create --resource-group "example-rg" --fabric "example-fabric" --resource-name "example-nniwithACL" --nni-type "CE" --is-management-type "True" --use-option-b "True" --layer2-configuration "{interfaces:['/subscriptions/xxxxx-xxxx-xxxx-xxxx-xxxxx/resourceGroups/example-rg/providers/Microsoft.ManagedNetworkFabric/networkDevices/example-networkDevice/networkInterfaces/example-interface'],mtu:1500}" --option-b-layer3-configuration "{peerASN:28,vlanId:501,primaryIpv4Prefix:'10.18.0.xxx/30',secondaryIpv4Prefix:'10.18.0.xxx/30',primaryIpv6Prefix:'10:2:0:xxx::400/127',secondaryIpv6Prefix:'10:2:0:xxx::402/127', bmpConfiguration:`{configurationState:`Enabled`}`}" --ingress-acl-id "/subscriptions/xxxxx-xxxx-xxxx-xxxx-xxxxx/resourceGroups/example-rg/providers/Microsoft.ManagedNetworkFabric/accesscontrollists/example-Ipv4ingressACL" --egress-acl-id "/subscriptions/xxxxx-xxxx-xxxx-xxxx-xxxxx/resourceGroups/example-rg/providers/Microsoft.ManagedNetworkFabric/accesscontrollists/example-Ipv4egressACL"
79108
```
80109

81-
### Disabling BMP Log Streaming for NNI
110+
### Disabling BMP log streaming for NNI
111+
82112
To disable BMP Log streaming for NNI, modify the `bmpConfiguration` parameter to `Disabled`. Example:
83113

84-
```bash
85-
az networkfabric nni update --resource-group "example-rg" --fabric "example-fabric" --resource-name "example-nniwithACL" --option-b-layer3-configuration "{bmpConfiguration:`{configurationState:`Disabled`}`}"
114+
```Azure CLI
115+
az networkfabric nni update \
116+
--resource-group "example-rg" \
117+
--fabric "example-fabric" \
118+
--resource-name "example-nniwithACL" \
119+
--option-b-layer3-configuration "{\
120+
bmpConfiguration: {\
121+
configurationState: 'Disabled'\
122+
}\
123+
}"
86124
```
87125

88-
### Example CLI Output
126+
### Example CLI output
127+
89128
When BMP Log streaming is enabled, the CLI output will look like this:
90129

91-
```bash
130+
```Output
92131
Router bgp <fabric-asn-value>
93132
neighbor CE_PE_VPN monitoring
94133
neighbor CE_PE_VPN peer group
@@ -104,10 +143,37 @@ Router bgp <fabric-asn-value>
104143
## How to Enable/Disable BMP Log Streaming for L3ISD External Network OptionA
105144

106145
### Enabling BMP Log Streaming for L3ISD External Network OptionA
146+
107147
To enable BMP Log streaming for L3ISD External Network OptionA, run the following Azure CLI command. This example enables BMP Log streaming for the specified external network.
108148

109-
```bash
110-
az networkfabric externalnetwork create --resource-group "example-rg" --l3domain "example-l3domain" --resource-name "example-externalNetwork" --peering-option "OptionA" --option-a-properties "{peerASN:65234,vlanId:501,mtu:1500,primaryIpv4Prefix:'172.23.1.xxx/31',secondaryIpv4Prefix:'172.23.1.xxx/31',bfdConfiguration:{multiplier:5,intervalInMilliSeconds:300},bmpConfiguration:`{configurationState:`Enabled`}`}" --import-route-policy "{importIpv4RoutePolicyId:'/subscriptions/xxxxx-xxxx-xxxx-xxxx-xxxxx/resourceGroups/example-rg/providers/microsoft.managednetworkfabric/routePolicies/example-routepolicy',importIpv6RoutePolicyId:'/subscriptions/xxxxx-xxxx-xxxx-xxxx-xxxxx/resourceGroups/example-rg/providers/microsoft.managednetworkfabric/routePolicies/example-routepolicy'}" --export-route-policy "{exportIpv4RoutePolicyId:'/subscriptions/xxxxx-xxxx-xxxx-xxxx-xxxxx/resourceGroups/example-rg/providers/microsoft.managednetworkfabric/routePolicies/example-routepolicy',exportIpv6RoutePolicyId:'/subscriptions/xxxxx-xxxx-xxxx-xxxx-xxxxx/resourceGroups/example-rg/providers/microsoft.managednetworkfabric/routePolicies/example-routepolicy'}"
149+
```Azure CLI
150+
az networkfabric externalnetwork create \
151+
--resource-group "example-rg" \
152+
--l3domain "example-l3domain" \
153+
--resource-name "example-externalNetwork" \
154+
--peering-option "OptionA" \
155+
--option-a-properties "{\
156+
peerASN: 65234,\
157+
vlanId: 501,\
158+
mtu: 1500,\
159+
primaryIpv4Prefix: '172.23.1.xxx/31',\
160+
secondaryIpv4Prefix: '172.23.1.xxx/31',\
161+
bfdConfiguration: {\
162+
multiplier: 5,\
163+
intervalInMilliSeconds: 300\
164+
},\
165+
bmpConfiguration: {\
166+
configurationState: 'Enabled'\
167+
}\
168+
}" \
169+
--import-route-policy "{\
170+
importIpv4RoutePolicyId: '/subscriptions/xxxxx-xxxx-xxxx-xxxx-xxxxx/resourceGroups/example-rg/providers/microsoft.managednetworkfabric/routePolicies/example-routepolicy',\
171+
importIpv6RoutePolicyId: '/subscriptions/xxxxx-xxxx-xxxx-xxxx-xxxxx/resourceGroups/example-rg/providers/microsoft.managednetworkfabric/routePolicies/example-routepolicy'\
172+
}" \
173+
--export-route-policy "{\
174+
exportIpv4RoutePolicyId: '/subscriptions/xxxxx-xxxx-xxxx-xxxx-xxxxx/resourceGroups/example-rg/providers/microsoft.managednetworkfabric/routePolicies/example-routepolicy',\
175+
exportIpv6RoutePolicyId: '/subscriptions/xxxxx-xxxx-xxxx-xxxx-xxxxx/resourceGroups/example-rg/providers/microsoft.managednetworkfabric/routePolicies/example-routepolicy'\
176+
}"
111177
```
112178

113179
### Disabling BMP Log Streaming for L3ISD External Network OptionA
@@ -117,7 +183,8 @@ To disable BMP Log streaming for L3ISD External Network OptionA, modify the `bmp
117183
az networkfabric externalnetwork update --resource-group "example-rg" --l3domain "example-l3domain" --resource-name "example-externalNetwork" --option-a-properties "{bmpConfiguration:`{configurationState:`Disabled`}`}"
118184
```
119185

120-
### Example CLI Output
186+
### Example CLI output
187+
121188
When BMP Log streaming is enabled, the CLI output will appear as follows:
122189

123190
```bash

0 commit comments

Comments
 (0)