Skip to content

Conversation

@thijsvanemmerik
Copy link
Contributor

This RFC proposes adding a dedicated control plane policing (CoPP) class for TWAMP traffic (UDP/862) within the global copp-system-policy on all DoubleZero switches.

@thijsvanemmerik thijsvanemmerik changed the title Created RFC for dedicated TWAMP copp class RFC: Dedicated TWAMP copp class Nov 3, 2025
## Alternatives Considered

1. **Do nothing:**
Simple but allows continued false-positive loss and unreliable corridor scoring.
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Can you rephrase this? I wouldn't say it is false-positive, more insufficient resources. Also what is "unreliable corridor scoring"?

bandwidth kbps 1500
shape kbps 250000
```

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Do you know how the existing classes match traffic? There is no reference to an ACL. I assume it is some default (perhaps hidden) match action based on IPv4 unicast traffic.

Commands to validate deployment:

```eos
show running-config | section copp
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

CoPP doesn't appear in running-config:

chi-dn-dzd9(config)# show running-config | section copp
chi-dn-dzd9(config)#

```eos
show running-config | section copp
show class-map type control-plane TWAMP-TRAFFIC
show policy-map interface control-plane
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

We should use 'show policy-map type copp'

chi-dn-dzd9(config)#show policy-map interface control-plane % Unavailable command (This command is deprecated by 'show policy-map copp [ Policy Map Name ]') chi-dn-dzd9(config)#sho policy-map type copp Service-policy input: copp-system-policy Number of units programmed: 1 Hardware programming status: Successful

show running-config | section copp
show class-map type control-plane TWAMP-TRAFFIC
show policy-map interface control-plane
show copp counters class TWAMP-TRAFFIC
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

chi-dn-dzd9(config)#show copp? % Unrecognized command

I think we are restricted to looking at counters punted to cpu using 'show cpu counters queue'. Perhaps there is another command we can investigate?


## Open Questions

1. Should the TWAMP class shape be standardized (e.g., 10 Mbps) network-wide, or tuned per location?
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I think we should standardize for simplicity.

## Open Questions

1. Should the TWAMP class shape be standardized (e.g., 10 Mbps) network-wide, or tuned per location?
2. Should TWAMP drops above a low threshold trigger automatic alerts?
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

If we can confirm how we can see this, then probably yes.

```eos
class-map type copp match-any TWAMP-TRAFFIC
match ip access-group TWAMP-ACL
```
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

chi-dn-dzd9(config)# class-map type copp match-any TWAMP-TRAFFIC % Unavailable command (not supported on this hardware platform)

Copy link
Contributor

@packethog packethog left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Can you a .md extension to this file so github knows to treat this as markdown?

policy-map type copp copp-system-policy
class TWAMP-TRAFFIC
bandwidth kbps 1500
shape kbps 10000
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Should this be shaped? Shaping has the potential to create inflated latency values as opposed to policing. Also, not sure if it's possible, but if there is an excess of traffic, it may be more beneficial to mark this traffic down, as opposed to shaping or dropping.

**Recommended rates:**

* `bandwidth kbps 1500` — guarantees minimum 1,5 Mbps allocation.
* `shape kbps 10000` — caps TWAMP CPU utilization to 10 Mbps.
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

What do you mean by "cpu utilization?


**Recommended rates:**

* `bandwidth kbps 1500` — guarantees minimum 1,5 Mbps allocation.
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@snormore Does this seem reasonable to you? I think we're way below this anyway.

@thijsvanemmerik
Copy link
Contributor Author

Arista confirmed that it's not supported on the current hardware used in DZ to exclude the TWAMP traffic from the copp-system-ipunicast class. The levers that we do have are to adjust the shape rate or bandwidth of the copp-system-ipunicast class. Therefor closing this PR.

@thijsvanemmerik thijsvanemmerik deleted the rfc-twamp-class-copp branch November 10, 2025 11:17
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants