diff --git a/content/cumulus-linux-511/Monitoring-and-Troubleshooting/Network-Troubleshooting/Monitoring-System-Statistics-and-Network-Traffic-with-sFlow.md b/content/cumulus-linux-511/Monitoring-and-Troubleshooting/Network-Troubleshooting/Monitoring-System-Statistics-and-Network-Traffic-with-sFlow.md
index bd64ca6a9f..93f0202d52 100644
--- a/content/cumulus-linux-511/Monitoring-and-Troubleshooting/Network-Troubleshooting/Monitoring-System-Statistics-and-Network-Traffic-with-sFlow.md
+++ b/content/cumulus-linux-511/Monitoring-and-Troubleshooting/Network-Troubleshooting/Monitoring-System-Statistics-and-Network-Traffic-with-sFlow.md
@@ -15,6 +15,8 @@ If you intend to run this service within a {{}}
{{< tab "NVUE Commands ">}}
+To enable sFlow:
+
```
cumulus@switch:~$ nv set system sflow state enabled
cumulus@switch:~$ nv config apply
@@ -51,21 +53,22 @@ To configure sFlow:
- Set the sFlow sampling rate.
- Set the polling interval.
- Provide the IP address and interface of the sFlow agent.
+- Configure the sFlow policer rate and policer burst.
Cumulus Linux provides different sampling rate configurations. The value represents the sampling ratio; for example, if you specify a value of 400, SFlow samples one in every 400 packets.
-| Sampling Rate | Default Value | Description |
+| Sampling Rate | Default Value | Description |
| ------------- | ------------- | ----------- |
| `default` | 400 | The Default sampling rate for ports with no speed or application with no sampling setting. |
| `speed-100m` | 100 | The sampling rate on a 100Mbps port. |
| `speed-1g` | 1000 | The sampling rate on a 1Gbps port. |
| `speed-10g` | 10000 | The sampling rate on a 10Gbps port. |
| `speed-40g` | 40000 | The sampling rate on a 40Gbps port. |
-| speed-50g | 50000 | The sampling rate on a 50Gbps port. |
-| speed-100g | 100000 | The sampling rate on a 100Gbps port. |
-| speed-200g | 200000 | The sampling rate on a 200Gbps port. |
-| speed-400g | 400000 | The sampling rate on a 400Gbps port. |
-| speed-800g | 800000 | The sampling rate on a 800Gbps port. |
+| `speed-50g` | 50000 | The sampling rate on a 50Gbps port. |
+| `speed-100g` | 100000 | The sampling rate on a 100Gbps port. |
+| `speed-200g` | 200000 | The sampling rate on a 200Gbps port. |
+| `speed-400g` | 400000 | The sampling rate on a 400Gbps port. |
+| `speed-800g` | 800000 | The sampling rate on a 800Gbps port. |
{{%notice note%}}
Some collectors require each source to transmit on a different port, others listen on only one port. Refer to the documentation for your collector for more information.
@@ -73,7 +76,7 @@ Some collectors require each source to transmit on a different port, others list
### Configure Designated Collectors
-{{< tabs "TabID28 ">}}
+{{< tabs "TabID79 ">}}
{{< tab "NVUE Commands ">}}
Specify the IP address, UDP port number, and interface for the designated collectors. The port number and interface are optional; If you do not specify a port number, Cumulus Linux uses the default port 6343.
@@ -86,7 +89,7 @@ cumulus@switch:~$ nv set system sflow collector 192.0.2.200 interface eth0
cumulus@switch:~$ nv config apply
```
-Configure the sflow sampling rate in number of packets if you do not want to use the default rate, and the polling interval in seconds.
+Configure the sFlow sampling rate in number of packets if you do not want to use the default rate, and the polling interval in seconds.
The following example polls the counters every 20 seconds and samples one in every 40000 packets for 40G interfaces:
@@ -99,7 +102,7 @@ cumulus@switch:~$ nv config apply
{{< /tab >}}
{{< tab "Linux Commands ">}}
-Edit the `/etc/hsflowd.conf` file to set up the collectors, sampling rates, and polling interval in seconds, then restart the `hsflowd` service with the `sudo systemctl start hsflowd` c ommand.
+Edit the `/etc/hsflowd.conf` file to set up the collectors, sampling rates, and polling interval in seconds, then restart the `hsflowd` service with the `sudo systemctl start hsflowd` command.
The following example polls the counters every 20 seconds, samples 1 of every 40000 packets for 40G interfaces, and sends this information to a collector at 192.0.2.100 on port 6343 and to another collector at 192.0.2.200 on interface eth0.
@@ -140,7 +143,7 @@ cumulus@switch:~$ sudo systemctl start hsflowd
Provide the IP address or prefix, or the interface for the sFlow agent.
-{{< tabs "TabID138 ">}}
+{{< tabs "TabID146 ">}}
{{< tab "NVUE Commands ">}}
The following example configures the sFlow agent prefix to 10.0.0.0/8:
@@ -159,24 +162,135 @@ cumulus@switch:~$ nv config apply
{{< /tab >}}
{{< tab "Linux Commands ">}}
-To configure the IP address for the sFlow agent, configure one of the following in the `/etc/hsflowd.conf` file (following the recommendations in the {{}}):
+To provide the IP address or prefix for the sFlow agent, edit the `/etc/hsflowd.conf` file to set the `agent.CIDR` parameter, then restart the `hsflowd` service with the `sudo systemctl start hsflowd` command.
+
+```
+cumulus@switch:~$ sudo nano /etc/hsflowd.conf
+...
+sflow {
+ agent.CIDR = 10.0.0.0/8
+}
+```
+
+```
+cumulus@switch:~$ sudo systemctl start hsflowd
+```
+
+To provide an interface for the sFlow agent, edit the `/etc/hsflowd.conf` file to set the `agent` parameter, then restart the `hsflowd` service with the `sudo systemctl start hsflowd` command.:
+
+```
+cumulus@switch:~$ sudo nano /etc/hsflowd.conf
+...
+sflow {
+ agent = eth0
+}
+```
+
+```
+cumulus@switch:~$ sudo systemctl start hsflowd
+```
+
+{{< /tab >}}
+{{< /tabs >}}
+
+### Configure sFlow Policer Rate and Burst Size
+
+You can limit the number of sFlow samples per second and the sample burst size per second that the switch sends.
+
+The default number of sFlow samples and default sample size is 16384. You can specify a value between 0 and 16384.
+
+The following example sets the number of sFlow samples to 800 and the sample size to 900:
+
+{{< tabs "TabID183 ">}}
+{{< tab "NVUE Commands ">}}
+
+```
+cumulus@switch:~$ nv set system sflow policer rate 8000
+cumulus@switch:~$ nv set system sflow policer burst 9000
+cumulus@switch:~$ nv config apply
+```
+
+{{< /tab >}}
+{{< tab "Linux Commands ">}}
+
+Edit the `/etc/cumulus/datapath/traffic.conf` file to change the `sflow.rate` and `sflow.burst` parameters, then reload `switchd` with the `sudo systemctl reload switchd.service` command.
+
+```
+cumulus@switch:~$ sudo nano /etc/cumulus/datapath/traffic.conf
+# Set sflow/sample ingress cpu packet rate and burst in packets/sec
+# Values: {0..16384}
+sflow.rate = 8000
+sflow.burst = 9000
+```
+
+```
+cumulus@switch:~$ sudo systemctl reload switchd.service
+```
+
+{{< /tab >}}
+{{< /tabs >}}
+
+## Interface Configuration
+
+By default, sFlow is enabled on interfaces that are operationally UP. To disable sFlow on an interface:
+
+{{< tabs "TabID216 ">}}
+{{< tab "NVUE Commands ">}}
+
+```
+cumulus@switch:~$ nv set interface swp1 sflow state disabled
+cumulus@switch:~$ nv config apply
+```
+
+To enable sFlow on an interface, run the `nv set interface sflow state enabled` command.
+
+{{< /tab >}}
+{{< tab "Linux Commands ">}}
+
+By default, sFlow is enabled on interfaces that are operationally UP. To disable sFlow on a specific interface, edit the `/etc/cumulus/switchd.conf` file and set the `interface..sflow.enable` parameter to `FALSE`:
-- The agent CIDR. For example, `agent.cidr = 10.0.0.0/8`. The IP address must fall within this range.
-- The agent interface. For example, if the agent is using eth0, select the IP address for this interface.
+```
+cumulus@switch:~$ sudo nano /etc/cumulus/switchd.conf
+interface.swp1.sflow.enable = FALSE
+```
-To check the agent IP, run the `grep agentIP /etc/hsflowd.auto` command.
+To enable sFlow on an interface, set the `interface..sflow.enable` parameter to `TRUE`.
{{< /tab >}}
{{< /tabs >}}
-## Configure sFlow to Collect Dropped Packets
+To configure the sFlow sample rate on an interface.
+
+{{< tabs "TabID243 ">}}
+{{< tab "NVUE Commands ">}}
+
+```
+cumulus@switch:~$ nv set interface swp1 sflow sample-rate 100000
+cumulus@switch:~$ nv config apply
+```
+
+{{< /tab >}}
+{{< tab "Linux Commands ">}}
+
+Edit the `/etc/cumulus/switchd.conf` file and set the `interface..sflow.sample_rate.ingress` parameter:
+
+```
+cumulus@switch:~$ sudo nano /etc/cumulus/switchd.conf
+interface.swp1.sflow.sample_rate.ingress = 100000
+```
+
+{{< /tab >}}
+{{< /tabs >}}
+
+## Monitor Dropped Packets
You can configure sFlow to monitor dropped packets in software or hardware.
-{{< tabs "TabID171 ">}}
+{{< tabs "TabID268 ">}}
{{< tab "NVUE Commands ">}}
The following example configures sFlow to monitor dropped packets in software:
+
```
cumulus@switch:~$ nv set system sflow dropmon sw
cumulus@switch:~$ nv config apply
@@ -207,11 +321,103 @@ Restart the `hsflowd` service with the `sudo systemctl start hsflowd` command.
For information on configuring various sFlow visualization tools, read this [knowledge base article]({{}}).
+## Show sFlow Configuration
+
+To show all sFlow configuration on the switch:
+
+```
+cumulus@switch:~$ nv show system sflow
+ operational applied
+
+----------------- ----------- ----------
+State enabled
+poll-interval 30
+[collector] 10.10.10.1
+sampling-rate
+ default 400
+ speed-100m 100
+ speed-1g 1000
+ speed-10g 10000
+ speed-25g 25000
+ speed-40g 40000
+ speed-50g 50000
+ speed-100g 100000
+ speed-200g 200000
+ speed-400g 400000
+ Speed-800g 800000
+agent
+ ip 10.0.2.15
+ interface eth0 eth0
+policer
+ rate 1638
+ burst 1638
+```
+
+To show sFlow collector configuration:
+
+```
+cumulus@switch:~$ nv show system sflow collector
+Ip Port
+---------------------------------
+192.0.2.100 6343
+192.0.2.200 6344
+```
+
+To show the sFlow sampling rate configuration:
+
+```
+cumulus@switch:~$ nv show system sflow sampling-rate
+default 400
+speed-100m 100
+speed-1g 1000
+speed-10g 10000
+Speed-25g 25000
+speed-40g 40000
+speed-50g 50000
+speed-100g 100000
+speed-200g 200000
+speed-400g 400000
+Speed-800g 800000
+```
+
+To show the current sFlow polling interval:
+
+```
+cumulus@switch:~$ nv show system sflow poll-interval
+poll-interval 30
+```
+
+To show sFlow agent configuration:
+
+```
+cumulus@switch:~$ nv show system sflow agent:
+10.0.0.5
+```
+
+To show the number of samples per second and the sample burst size per second that the switch sends out:
+
+```
+cumulus@switch:~$ nv show system sflow policer
+----------------------
+Rate 16384
+Burst 16384
+```
+
+To show sFlow configuration on a specific interface:
+
+```
+cumulus@switch:~$ nv show interface swp1 sflow
+----------------------
+sample-rate 100000
+state enabled
+```
+
## Considerations
Cumulus Linux does not support sFlow egress sampling.
## Related Information
+- {{}}):
- {{}}
- {{}}
diff --git a/content/cumulus-linux-511/Whats-New/_index.md b/content/cumulus-linux-511/Whats-New/_index.md
index 0469b2c37c..1e680a3d02 100644
--- a/content/cumulus-linux-511/Whats-New/_index.md
+++ b/content/cumulus-linux-511/Whats-New/_index.md
@@ -24,10 +24,10 @@ This document supports the Cumulus Linux 5.11 release, and lists new platforms,
- SN5400 - syncE
- SN5400 - ITU-T
- NVUE
- - {{}}
+ - {{}}
- {{}}
- {{}} (`cl-resource-query` equivalent)
- - SFlow
+ - {{}}
- `nv show interface link stats` command includes operational state change date and time
- net show interface swX details for dom and optical info for the pluggables
- L1-show equivalent