Академический Документы
Профессиональный Документы
Культура Документы
Jennifer Rexford
4
3
2
7 6
1
Web client Web server
Two-Tiered Internet Routing System
• Path-selection model
– Destination-based
– Minimum hop count or sum of link weights
– Dynamic vs. static link weights
2
3 1
1
4
2 1
5
4 3
Distance Vector Routing: Bellman-Ford
v 2 y
3 1
1
u
x 4 z
2 1
5 t du(z) = min{c(u,v) + dv(z),
w 3
4 c(u,w) + dw(z)}
s
E.g., RIP and EIGRP
Link-State Routing: Dijsktra’s Algorithm
• Each router keeps track of its incident links
– Link cost, and whether the link is up or down
• Each router broadcasts the link state
– To give every router a complete view of the graph
• Each router runs Dijkstra’s algorithm
– To compute shortest paths and forwarding table
2
3 1
1
4
2 1
5
4 3 E.g., OSPF and IS-IS
Routing Protocols (COS 461 #15 and 16)
• Packet-based routing
– Forward packets based on forwarding table
• Load-sensitive
– Compute table entries based on load or delay
• Questions
– What link metrics to use?
– How frequently to update the metrics?
– How to propagate the metrics?
– How to compute the paths based on metrics?
2
3 1
1
3
2 1 5
20
congested link
Performance of Original ARPANET Algorithm
• Light load
– Delay dominated by the constant part
(transmission delay and propagation delay)
• Medium load
– Queuing delay is no longer negligible
– Moderate traffic shifts to avoid congestion
• Heavy load
– Very high metrics on congested links
– Busy links look bad to all of the routers
– All routers avoid the busy links
– Routers may send packets on longer paths
Improvements in the Second ARPANET Algorithm
Lincoln Tunnel
NJ NYC
Holland Tunnel
“Backup at Lincoln” on radio triggers congestion at Holland
• Routers make decisions with old information
– Propagation delay in flooding link metrics
– Thresholds applied to limit number of updates
• Old information leads to bad decisions
– All routers avoid the congested links
– … leading to congestion on other links
– … and the whole things repeats
Intradomain Routing Today
• Topology design
– Small propagation delay and low congestion
– Ability to tolerate node and link failures
• Convergence delay
– Limiting the disruptions during topology changes
– E.g., by trying to achieve faster convergence
• Traffic engineering
– Limiting propagation delay and congestion
– E.g., by carefully tuning the “static” link weights
• Scalable routing designs
– Avoiding excessive protocol overhead
– E.g., by introducing hierarchy in routing
Topology Design: Intra-AS Topology
• Node: router
• Edge: link
Hub-and-spoke Backbone
Topology Design: Abilene Internet2 Backbone
Topology Design: Points-of-Presence (PoPs)
• Inter-PoP links
– Long distances
Inter-PoP
– High bandwidth Intra-PoP
• Intra-PoP links
– Short cables between
racks or floors
– Aggregated bandwidth
• Links to other networks Other networks
– Wide range of media and
bandwidth
Convergence: Detecting Topology Changes
• Beaconing
– Periodic “hello” messages in both directions
– Detect a failure after a few missed “hellos”
“hello”
• Performance trade-offs
– Detection speed
– Overhead on link bandwidth and CPU
– Likelihood of false detection
Convergence: Transient Disruptions
2 2
3 1 3 1
1 1
4 4
2 1 2 1
5
4 3 4 3
Convergence: Delay for Converging
• Faster detection
– Smaller hello timers
– Link-layer technologies that can detect failures
• Faster flooding
– Flooding immediately
– Sending link-state packets with high-priority
• Faster computation
– Faster processors on the routers
– Incremental Dijkstra algorithm
• Faster forwarding-table update
– Data structures supporting incremental updates
Traffic Engineering: Tuning Link Weights
2
3 1
1
3
2 31 5
4 3
Traffic Engineering: Problem Formulation
• Topology
– Connectivity & capacity of routers & links
• Traffic matrix
– Offered load between points in the network
• Link weights
– Configurable parameters for the protocol
• Performance objective
– Balanced load, low latency, service agreements
• Question: Given topology and traffic matrix,
which link weights to use?
Traffic Engineering: Key Ingredients of Approach
• Instrumentation
– Topology: monitoring of the routing protocols
– Traffic matrix: fine-grained traffic measurement
• Network-wide models
– Representations of topology and traffic
– “What-if” models of shortest-path routing
• Network optimization
– Efficient algorithms to find good configurations
– Operational experience to identify key constraints
Scalability: Overhead of Link-State Protocols
2
3 1
1
3
2 1 5
4 3
Scalability: Improving the Scaling Properties
Area 1 Area 2
area Area 0
border
router
Area 3 Area 4
Scalability: Dividing into Multiple ASes
20 20 20 20 20 20
100 50 100 50 100
50
North America Europe Asia
Limitations of Conventional Intradomain Routing
• Multi-Protocol
– Encapsulate a data packet
• Could be IP, or some other protocol (e.g., IPX)
– Put an MPLS header in front of the packet
• Actually, can even build a stack of labels…
• Label Switching
– MPLS header includes a label
– Label switching between MPLS-capable routers
MPLS header
IP packet
Multi-Protocol Label Switching (MPLS)
1: 7 link 7 1: 14
1 2: 7 2: 8
link 14
2 link 8
MPLS: Swapping the Label at Each Hop
IP edge R1 R4
B R3 D
MPLS core
MPLS: Forwarding Equivalence Class (FEC)
• Deployed in practice
– Small control and data plane overhead in core
– Virtual Private Networks
– Traffic engineering and fast reroute
• Challenges
– Protocol complexity
– Configuration complexity
– Difficulty of collecting measurement data
• Continuing evolution
– Standards
– Operational practices and tools
Conclusion