BRKRST-3014 -- Policy, Complexity, and Modern Control Planes
Presented by: Russ White, LinkedIn
Networks are complex. How do we measure complexity? How do we measure scale? What's the unit of measure?
You can't "solve" complexity.
Alderson D and J Dole "complexity in highly organized systems arises primarily from design strategies intended to create robustness to uncertainty." There's a point on the complexity scale where robustness actually drops. "Robust but fragile".
Dunning Kruger effect?
What is complexity?
- Anything you don't understand?
- Anything with many parts?
- Anything with unintended consequences?
- Something that can't be solved; can't be easily defined.
- We need to develop a model to understand complex systems quickly
"If you haven't found the trade off, you haven't looked hard enough" -- Russ
The model:
- Ask: Why?
- Ask: What & How?
- State
- Optimization
- [Interaction] Surface (where two components interact with each other [which could be, and often is, human on CLI])
- No matter how you're analyzing a network (protocols, applications, whatever), you'll find these 3 things.
- Ask: This is like what? (what's it similar to?)
- Good examples of questions to ask for each point in different use cases are in the deck
3-way trade off:
- Quick/Cheap/Quality, or
- State/Surface/Optimization
"Adding more state to the system should result in an increase in optimization. If not, why are you adding state?" -- Russ
"Leaky abstraction"
Bad questions:
- "How complex is this?"
- "Will this scale?"
- How the hell do you answer these questions?!
This was a fascinating session and will require watching the recording and thumbing through the slides at a slower pace.