Title: Network Protocols Designed for Optimizability
1Network Protocols Designed for Optimizability
- Jennifer Rexford
- Princeton University
- http//www.cs.princeton.edu/jrex
2Measure, Model, and Control
Network Management
Models, tools, scripts, databases
Knobs
Dials
Offered traffic
Topology/ Configuration
Changes to the network
measure
control
Operational network
3Knobs and Dials
- Knobs configurable parameters
- Buffering Random Early Detection parameters
- Link scheduling weighted fair queuing weights
- Path selection link weights and routing policies
- Dials measurement data
- Traffic link utilization, Netflow records,
- Performance ping, download times,
- Routing routing-protocol messages, tables,
Network management read the dials and tune the
knobs
4Two Directions We Could Go
- Algorithms for setting knobs based on dials
- E.g., setting RED parameters based on link load
- E.g., setting link weights based on traffic
matrix - E.g., setting access-control lists to block
attacks - Designing better knobs and dials
- Maybe we cant add all that much meaningful
abstraction on top of what weve got underneath - Maybe we should design new protocols and
mechanisms with optimization in mind - Doing well in a class is much easier when you
get to write the exam. Mung Chiang
5Problem 1 No Algorithm For Setting the Knobs
- Random Early Detection (RED)
- Several tunable parameters
- Min and max thresholds on queue length, max
probability, queue weight
Probability
Average Queue Length
6Problem 1 RED Example Continued
- Settings have a big influence on performance
- Good settings can improve the network goodput
- Bad settings may offer no improvement, or (in
some cases), worse performance - No algorithm for optimizing the parameters
- Settings based on general guidelines
- Makes it difficult for operators to enable RED
We need mechanisms that have algorithms for
setting knobs.
7Problem 2 Poor Dials to Guide Knob Settings
- Example Random Early Detection
- Appropriate parameters depend on many factors
- Number of active flows, flow durations, flow
RTTs, - Not easily measurable today on high-speed links
Probability
Average Queue Length
We need measurements that support network
management.
8Problem 2 Poor Dials to Guide Knob Settings
- Example Traffic engineering
- Depends on knowing the traffic matrix Mij
- Challenging to measure
- Resorting to inference of the traffic matrix
- Aggregating and joining lots of fine-grain data
We need measurements that support network
management.
9Problem 3 Intractable Optimization Problems
- Example Traffic engineering
- Tuning link weights to the prevailing traffic
- Leads to an NP-hard optimization problem
- forcing the use of local-search techniques
We need protocols designed with knob optimization
in mind.
10Problem 4 Non-Linearities in the System
- Example Hot-potato routing
- Small change causes a big effect
- Failure, planned maintenance, or traffic
engineering - Routes to thousands of destinations shift at once
- causing large shifts in traffic and many BGP
updates
NYC
SFO
ISP network
11
Dallas
We need protocols that make small reactions to
small changes.
11Design for Optimizability
- Creating protocols and mechanisms where
- We know the algorithms for tuning the knobs
- We have the measurements the algorithms need
- The resulting optimization problems are tractable
- The system does not have non-linearities
- Example approaches
- Randomization
- Increasing the degrees of freedom
- Logically centralized control
12Randomization
- Example traffic engineering
- Forward traffic in inverse proportion to path
costs - rather than using only the shortest paths
- Leads to polynomial-time optimization problems
2
1
3
1
3
2
1
5
4
3
13Increasing Degrees of Freedom
- Example egress selection
- Forward traffic to lowest ranked egress point
- as weighted sum of constant and path cost
- E.g., keep using SFO even when cost goes to 11
- Enables integer programming solutions for tuning
NYC
SFO
ISP network
11
Dallas
14Logically Centralized Control
- Example Routing Control Platform (RCP)
- Separate topology discovery from path selection
- Collect topology and traffic data at servers
- Apply optimization techniques for selecting
routes - and tell routers what forwarding tables to use
RCP
15Conclusions
- Protocols induce optimization problems
- Read the dials and tune the knobs
- Controls how the system performs
- Yet, optimization problems are often hard
- Lack of predictive models
- Missing measurement data
- Computational intractability
- Non-linearities in the system
- Design protocols with optimization in mind
- Randomize, add degrees of freedom, decompose