Presentation is loading. Please wait.

Presentation is loading. Please wait.

SafeGuard: Safe Forwarding during Route Changes Ang Li†, Xiaowei Yang†, and David Wetherall‡ †Duke University ‡UW/Intel Research.

Similar presentations


Presentation on theme: "SafeGuard: Safe Forwarding during Route Changes Ang Li†, Xiaowei Yang†, and David Wetherall‡ †Duke University ‡UW/Intel Research."— Presentation transcript:

1 SafeGuard: Safe Forwarding during Route Changes Ang Li†, Xiaowei Yang†, and David Wetherall‡ †Duke University ‡UW/Intel Research

2 Real-time Applications Require High Network Availability Even short periods of packet loss can degrade the service ▫Video pixelization ▫Poor voice quality ▫Slow gaming experience

3 Network Changes Lead to Massive Packet Losses TTL expiration Link congestion Packet Loss! No valid route Packet Loss! Re-converge! (Hundreds of ms~seconds)

4 Network Changes Happen Frequently Planned events ▫Maintenance, policy change, traffic engineering Unplanned events ▫Fiber cut, router bug, configuration error Sprint: median inter link failure time is only 3 minutes [Iannaccone02]

5 Problem How to reduce forwarding disruption after network changes happen? ▫Intra-domain routing SafeGuard goals ▫Simple  No new routing convergence protocols  Routers can update in parallel and independently ▫Effective  Minimize disruption period to the failure detection time ▫Efficient  Suitable for hardware implementation

6 Comparison with Related Work MechanismSimpleEffectiveEfficient Convergence-free Routing [Lakshminarayanan07] ×√× Consensus Routing [John08] ×√√ Ordered FIB Update [Francois07] ××√ Fast Rerouting [Shand08] √×√ SafeGuard √√√

7 Insight: a path’s cost encodes much valuable information in a concise form Use cost as a Safeguard 1.Packets carry path costs to detect network changes 2.Routers use path costs to identify safe alternative paths Key Idea Src Cost Dst IP Packet

8 Overview Forwarding Table: SV KA 639 DstNhopCost KASV4456 ……… SV KA 3161 Forwarding Table: DstNhopCost KADV1934 ……… Alternative Paths DB: DstNhopCost KALA3161 ……… SV KA 2795 Loop-free!

9 Challenges How to encode the costs such that alternative paths can be uniquely identified? ▫Loops may occur if wrong paths are chosen How to obtain the alternative paths prior to network changes? How to forward packets efficiently? D A B C 11 11 D C C 2 2 A A Loop!

10 Enhance the Costs with Random Noises Append a fixed length noise to each link cost An enhanced path cost is the sum of enhanced link costs Regular costs and noises are added separately Different paths will have different enhanced path costs with high probability for practical scenarios …0110111000 1001101011 Regular link cost 10-bit random noise Enhanced link cost

11 Encode Costs in IP Packets …0110111000 1001101011 32-bit cost label 10-bit random noise src dst IP Packet 0 0 Escort bit 32-bit label to encode an enhanced path cost An extra escort bit to denote whether the packet is under protection Potential places to store the cost label and the escort bit ▫MPLS label ▫IP Option ▫Overload unused header fields

12 Pre-compute Alternative Paths Compute the shortest path after removing each single component ▫Single component: a link, node, or SRLG Stored in the Alternative Path Database (APD) ▫A mapping table from (dst, enhanced cost) to nexthop Update APD after each topology change ▫Background computation D A B C (1,3) (1,4) (1,7) (1,8) C, (2,7)  B

13 Add Costs to the Forwarding Table Add the enhanced shortest path cost for each destination ▫Obtained from the normal shortest path computation with minimum overhead Also add the enhanced shortest path cost from each of the nexthops to the destination ▫Used to update the outgoing packet costs DestinationNexthops DB, C …… Path cost (2, 7) … Nexthop costs B: (1, 4), C: (1,8) …

14 Forwarding Algorithm Forward by comparing both cost and destination Two modes of forwarding ▫Normal mode (escort bit == 0)  Packets can be forwarded along any of the ECMPs ▫Escort mode (escort bit == 1)  Packets are forwarded along the path uniquely identified by the packet cost

15 Normal Mode Forwarding Each router n i only compares its own regular cost n i.cost with the packet’s regular cost pkt.cost 1.n i.cost == pkt.cost  Forward to any default nexthop n i+1  Update the packet cost using n i+1 ’s enhanced cost nini n i+1 Incoming packet S S (cost,noise) D D 0 0

16 2. Higher Local Cost n i.cost > pkt.cost Router is aware of a failure/unaware of a restoration ▫Default shortest paths are still safe  Forward to any default nexthop n i+1  Update the packet cost using the n i+1 ’s cost  Turn on the escort bit nini n i+1 Incoming packet S S (cost,noise) D D 0 0

17 3. Lower Local Cost n i.cost < pkt.cost Router is unaware of a failure/aware of a restoration ▫Default shortest path is no longer safe  Lookup an alternative nexthop n’ i+1 from the APD using the full packet cost (pkt.cost, pkt.noise)  Forward to the alternative nexthop  Turn on the escort bit nini n’ i+1 Incoming packet S S (cost,noise) D D 0 0

18 Escort Mode Forwarding Always try to find a path with the exact enhanced packet cost ▫Default shortest path ▫Alternative path through APD lookup If not found, drop the packet ▫To prevent loops in case multiple concurrent failures happen nini n’ i+1 Incoming packet S S (cost,noise) D D 1 1

19 Loop-free Forwarding with ECMPs D A B C D (1,3)(1,4) (1,7) (1,8) C C 2 2 A A C C (2,7) A A 1 1 Loop-free!

20 SafeGuard Properties When network is steady, packets can reach their destinations through any of the ECMPs After one network element changes its status, a packet can still reach its destination ▫Not considering failure detection time ▫Assume enhanced costs are distinct A packet will not be trapped in a loop without being discarded

21 Evaluation Router performance ▫A prototype using NetFPGA and Quagga  Forwarding overhead is only 48ns  Practical memory and computational overhead ▫Suitable for hardware implementation ▫Details are in paper Network performance ▫Event-driven simulations under realistic settings ▫Comparison with the vanilla IP forwarding and a state- of-the-art IP fast restoration technique

22 SafeGuard Forwarding is Loop-Free Single link failure Two links failure Sprint topology from Rocketfuel Cumulative Fraction 1 0.8 0.6 0.4 0.2 0 Flow Amplifying Factor 010 2030405060 SafeGuard + OSPF IP Fast Restoration Vanilla IP + OSPF Flow Amplifying Factor 010 2030405060 Cumulative Fraction 1 0.8 0.6 0.4 0.2 0 SafeGuard + OSPF IP Fast Restoration Vanilla IP + OSPF

23 SafeGuard Minimizes Disruption Single link failure Failure happens Failure detected (~200ms) Packet Loss Rate 1 0.8 0.6 0.4 0.2 0 01.0 1.52.0 Time (s) 0.5 SafeGuard + OSPF IP Fast Restoration Vanilla IP + OSPF

24 SafeGuard Does not Delay Convergence Convergence Time (s) 2 1.5 1 0.5 0 link down link up node down node up 2 links down SafeGuard/Vanilla IP + OSPF IP Fast Restoration

25 Conclusion SafeGuard ▫Minimize disruption after network changes ▫Does not modify routing convergence Use costs as path hints ▫Detect network changes ▫Identify alternative paths Simple, effective, and efficient

26 Thank You! http://www.cs.duke.edu/nds/wiki/safeguard Questions and comments: angl@cs.duke.edu

27 Noise Collision Suppose c paths have the same normal cost and each noise has k-bits, the collision probability is: ▫The birthday probability ▫Try different noise if collision exists k-bitCollision 100.0097 160.00015 c=5

28 Simulation Parameters

29 Simulation Settings Realistic topologies and link costs ▫Real and inferred topologies from Rocketfuel ▫A random topology with asymmetrical link costs Practical OSPF configuration ▫Achieve fast convergence (sub-second) Comparisons ▫No protection: OSPF + vanilla IP forwarding ▫State-of-the-art: Ordered FIB update (oFIB) + NotVia

30 Practical Memory and Computation Overhead Protect all single link and node failures On average |APD| < 3 * |FIB| APD computation time < 100ms Topology# of FIB Entries# of APD EntriesAPD Computation Time (ms) Abilene1117.30.165 Sprint31577779.4 Random100276.16.2

31 SafeGuard Forwarding is Loop-Free Update Type# of Tests Containing Loops Total # of Micro-loops Loop Duration (ms) AvgMaxMinStddev OSPF Link Failure 198112.544.60.3215.4 Node Failure 1712511.526.30.1026.7 Link Up 4711.940.70.8021.8 Node Up 11206.3224.80.196.45 Two Link Failures 381449.039.70.3911.2 oFIB Two Link Failures 361388.841,20.1810.8 100 tests with the Sprint topology

32 SafeGuard does not Increase Convergence Time

33 Convergence Time (s) 2 1.5 1 0.5 0 link down link up node down node up 2 links down SafeGuard+OSPF IP Fast Restoration


Download ppt "SafeGuard: Safe Forwarding during Route Changes Ang Li†, Xiaowei Yang†, and David Wetherall‡ †Duke University ‡UW/Intel Research."

Similar presentations


Ads by Google