Active project

Dante QoS for broadcast networks

Planning QoS and IGMP standardization for Dante on a mixed Cisco Nexus and Catalyst network. Built in public, one change at a time.

Where this stands

Discovery is done. The plan is about half baked. I’m publishing it anyway because the reasoning is the useful part.

What’s known

  • QoS for Dante isn’t standardized end to end across the Nexus and Catalyst switches yet.
  • Audinate asked for Dante QoS and for the IGMP querier to be standardized. The two switch platforms weren’t running the querier the same way.

My approach

I pushed back on changing IGMP and QoS at the same time, or right away. Both touch every multicast flow in the plant. Each change gets:

  1. a written plan
  2. a change window
  3. its own validation
  4. a rollback plan

One change, one result. If something breaks, I want to know which change did it.

Plan direction

  • QoS on Dante access ports and the uplink trunks, aimed at protecting PTP timing first. Audio follows the clock.
  • Standardize the IGMP querier version and behavior per VLAN as a separate change.

Still to work out

  • The exact trust and queuing model on each switch platform. Nexus and Catalyst handle this differently, so the config won’t be a copy-paste between them.
  • How to validate the result: what “better” looks like in latency, clock stability, and dropouts.

How I’ll test it before it touches the plant

  • Lab first. Try the QoS config on a test path with a packet capture, so I can see the markings and queues actually doing what I think they do.
  • Measure before and after. Latency, clock stability, and dropouts on the same devices, so “better” is a number and not a feeling.
  • Then one change window at a time, starting with QoS and leaving the IGMP change for later.

Where I am

Discovery came from working through the switches at the CLI. The written plan is in progress. Nothing has changed in production yet, and this page will say when it does.