Title: A Routing Control Platform for Managing IP Networks
1A Routing Control Platform for Managing IP
Networks
- Jennifer Rexford
- Princeton University
- http//www.cs.princeton.edu/jrex
2Outline
- Revisiting the control plane
- Complexity of todays control plane
- Principles for a redesign
- Routing Control Platform
- Deployability
- Scalability
- Reliability
- Example applications
- DDoS blackholing, planned maintenance, and
customized egress selection - Conclusions and future work
3Internet Architecture
- Smart hosts, and a dumb network
- Network delivers packets to hosts
- Services implemented on hosts
- Keep most state at the edges
Edge
Edge
Network
IP
IP
But, how should we partition function vertically?
4Today Inside a Single Network
- Data Plane
- Packet handling by routers
- Forwarding, filtering, queuing
Packet filters
5No State in the Network? Yeah, Right
- Dynamic state
- Routing tables
- Forwarding tables
- Configuration state
- Access control lists
- Link weights
- Routing policies
- Hard-wired state
- Default values of timers
- Path-computation algorithms
Lots of state, updated in a distributed,
uncoordinated way
6How Did We Get in This Mess?
- Initial IP architecture
- Bundled packet handling and control logic
- Distributed the functions across routers
- Didnt fully anticipate the need for management
- Rapid growth in features
- Sudden popularity and growth of the Internet
- Increasing demands for new functionality
- Incremental extensions to protocols routers
- Challenges of distributed algorithms
- Some tasks are hard to do in a distributed
fashion
7What Does the Network Operator Want?
- Network-wide views
- Network topology (e.g., routers, links)
- Mapping to lower-level equipment
- Traffic matrix
- Network-level objectives
- Load balancing
- Survivability
- Reachability
- Security
- Direct control
- Explicit configuration of data-plane mechanisms
8What Architecture Would Achieve This?
- Management plane ? Decision plane
- Responsible for all decision logic and state
- Operates on network-wide view and objectives
- Directly controls the behavior of the data plane
- Control plane ? Discovery plane
- Responsible for providing the network-wide view
- Topology discovery, traffic measurement, etc.
- Data plane
- Queues, filters, and forwards data packets
- Accepts direct instruction from the decision plane
9Advantages of the New Approach
- Lower management complexity
- Complete, network-wide view
- Direct control over the routers
- Single specification of policies and objectives
- Simpler routers
- Much less control-plane software
- Much less configuration state
- Enabling innovation
- New algorithms for selecting paths within an AS
- New approaches to inter-AS routing
10Example Improving ISP Routing
- Provide internal reachability (IGP)
- Learn routes to external destinations (eBGP)
- Distribute externally learned routes internally
(iBGP) - Select closest egress (IGP)
11Is the New Architecture Feasible?
- Deployability any way from here to there?
- Must be compatible with todays routers
- Must provide incentives for deployment
- Speed can it run fast enough?
- Must respond quickly to network events
- Needs to be as fast as a router
- Reliability avoid single point of failure?
- Must be replicated to tolerate failure
- Replicas must behave consistently
12Deployability Dont Change the Message Format
- Border Gateway Protocol
- Interdomain routing protocol for the Internet
- Widely implemented and used in networks
- Three main aspects of BGP
- Protocol standard messages sent between routers
- Decision logic multi-step route selection
process - Policy configuration options that influence
routing - The key point is
- Although decision logic and policies are complex
- the protocol and message format are simple
Idea use BGP messages to tell each router how to
forward
13Phase 1 Flexible Path Selection in One AS
Before conventional use of BGP in backbone
network
eBGP
iBGP
After RCP learns routes and sends answers to
routers
eBGP
RCP
iBGP
14Phase 2 AS-Wide Path Selection and Export
Before RCP gets best iBGP routes (and IGP feed)
eBGP
RCP
iBGP
After RCP gets all eBGP routes from neighbors
eBGP
RCP
iBGP
15Phase 3 Direct Communication Between RCPs
Before RCP gets all eBGP routes from neighbors
eBGP
RCP
iBGP
After ASes exchange routes via RCP
Inter-AS Protocol
RCP
RCP
RCP
iBGP
AS 1
AS 2
AS 3
Physical peering
16RCP Architecture
Routing Control Platform (RCP)
Route Control Server (RCS)
IGP Viewer
BGP Engine
17Challenges and Contributions
- Reliability
- Problem single point of failure
- Contribution simple replication of RCP
components - Consistency
- Problem inconsistent decisions by replicas
- Contribution consistency without inter-replica
protocol - Scalability
- Problem storing all routes increases cpu/memory
usage - Contribution can support large ISP in one
computer
? Building this system is feasible
18Consistency One RCP, One Partition
RCP 1
B
A
- Solution Assign all routers along the shortest
IGP path the same exit router - Ensures forwarding loops dont arise
19Consistency One RCP, Many Partitions
RCP 1
Partition 1
Partition 2
- Solution Only use state from routers partition
in assigning its routes - Ensures next hop is reachable
20Consistency Many RCPs, Many Partitions
RCP 2
RCP 1
Partition 1
Partition 2
Partition 3
- Solution RCPs receive same IGP/BGP state from
each partition they can reach - IGP provides complete visibility and connectivity
- RCS only acts on partition if it has complete
state for it
?No consistency protocol needed to guarantee
consistency in steady state
21RCS Scalability
- Eliminate redundancy
- Store only a single copy of each BGP route
- Accelerate lookup
- Quickly find routers whose routes changed
- Avoid recomputation
- Compute routes once for groups of routers
- Dont recompute if relative ranking of egress
routers unchanged
22Scalability RCS Data Structures
23Example of Egress List Operation
Ds egress list
B
C
A
C
3
7
4
3
A
4
D
B
7
24Example of Egress List Operation
Ds egress list
B
C
A
2
C
3
7
4
3
2
A
4
D
B
7
25Example of Egress List Operation
Ds egress list
B
C
A
C
3
5
7
4
3
5
A
4
D
B
7
26Example of Egress List Operation
Ds egress list
B
C
A
C
3
1
7
4
3
A
4
D
B
7
1
27Scalability Standard Computing Platform
- Implementation platform
- 3.2 GHz Pentium-4
- 8 GB memory
- Linux 2.6.5 kernel
- Workload
- Routing/topology changes in ATTs network
- RCP performance
- Memory usage less than 2GB
- Speed, BGP changes less than 40 msec
- Speed, topology changes 0.1-0.8 seconds
- System is able to keep up
28Application DDoS Blackholing
- Blackholing of denial-of-service attacks
- Preconfigure a null route on each router
- Identify address of victim (from DoS system)
- RCP assigns a null route for the destination
RCP
iBGP
Victim 1.2.3.4
attack (detected by traffic analysis)
29Application Maintenance Dry-Out
- Dry-out of traffic before maintenance
- Plan to take a router temporarily out of service
- RCP assigns routes via new egress in advance
RCP
s
d
iBGP
r
Router r about to undergo maintenance
30Application Customized Egress Selection
- Customer-controlled selection of egress points
- Customer with two data centers and many sites
- Customer wants to control the load balancing
- RCP customization, not simply closest egress
Use route via s for d
RCP
Site 1
s
d
Use route via r for d
Site 2
iBGP
r
31Conclusion
- Managing IP networks is too hard
- IP architecture not designed for management
- Complex, distributed operation of routers
- Reducing complexity in the key
- Network-wide views/objectives and direct control
- Removing control logic and state from the routers
- New architecture is feasible
- RCP is deployable, scalable, and reliable
- RCP solves important operations problems
32Future Work
- Optimization
- Real-time adaptation and offline planning
- Designing the boundary to support optimization
- Security
- Identifying unstable and suspicious BGP routes
- Incrementally deploying a more secure protocol
- Policy
- High-level specification of routing policies
- Quantifying reductions in configuration
complexity