Consider adding test for detection of Spanning Tree Protocol and variants
- Dominant language
- Python
- Stars
- 56
- Forks
- 20
- Avg merge
- 15h 54m
- Merged PRs (30d)
- 12
Description
**What is the problem your feature is trying to solve?**
Advanced (IoT) devices that can lend themselves to a ring Ethernet topology (should) additionally implement Spanning Tree Protocol. Whether the devices are actually _used_ in a ring topology is entirely down to the system design, but irrespectively, a device capable of such a topology should (or may) send BPDUs to detect the presence of a loop in order to implement a suitable tree topology.
Access layer switchports may be configured with BPDU guard to prevent unintended STP topology changes being triggered by unexpected devices. Receipt of a BPDU on a switchport configured with BPDU guard will cause the port to go error disabled/down and require some level of intervention from the active network team to resolve the downtime. Alternative methods such as BPDU filter can be used if it's not possible to disable STP in the end device, but this comes with its own caveats.
**Describe the solution you think would solve the problem**
Testrun should monitor the DUT to see whether it sends BPDUs, and report accordingly. This should be captured within the first 30 seconds of the DUT being powered on, which is when an access layer switchport configured without portfast would be in the listening and learning states.
**Additional context**
As far as I'm aware a Wireshark filter of `stp` will work for STP, RSTP, MSTP, PVST, etc.
I'm not sure whether there's appetite to cater for Industrial IoT devices, but some of these may even implement the far faster topology convergence protocols such as MRP, PRP, HSR. A Wireshark filter of `prp` I believe will hit most.
Contributor guide
Assessment
This issue has not been assessed yet.