10 likes | 129 Views
Towards Disruption-Free Intra-Domain Routing. R A. R A. R A. R A. R A. R A. R A. R A. R D. R D. R D. R D. R D. R D. R D. R D. 20. 3. 10. 21. 1. 0. 2. 22. Ang Li, Xiaowei Yang, and David Wetherall. Our Approach: Cost-Carrying Packet. Motivation.
E N D
Towards Disruption-Free Intra-Domain Routing RA RA RA RA RA RA RA RA RD RD RD RD RD RD RD RD 20 3 10 21 1 0 2 22 Ang Li, Xiaowei Yang, and David Wetherall Our Approach: Cost-Carrying Packet Motivation Goal: achieve disruption-free routing without modifying convergence RE 5 5 RE RD RC RA RB 1 1 X 1 5 5 RD RA RB RC 1 X 1 1 10 10 RF 10 10 • Real-time applications demand negligible service disruption • However micro-loops during routing convergence can cause non-trivial disruptions • Packets trapped in loops will be dropped • Traffic amplified by loops may congest links, causing collateral damage RF • Each packet carries the path cost towards the destination • Forwarding is based on both destination and cost • Advantages • Cost can reliably detect loops • Cost is easy to compute • Cost can serve as loose path identifier • Carrying cost only introduces fixed header overhead Existing Approach: Loop-Free Convergence • Delayed convergence • Extra complexity of deploying new convergence protocol Forwarding Algorithm Each router nicompares its own cost ni.cost to the destination with the incoming packet’s cost pkt.cost: Computing the Repair Paths RE • ni.cost == pkt.cost: forward to the default nexthop ni+1pkt.cost pkt.cost – linkweight(nini+1) • ni.cost > pkt.cost: forward to the default nexthop ni+1pkt.cost ni.cost – linkweight(nini+1) • ni.cost < pkt.cost: forward to the repair nexthop n’i+1 which corresponds to the repair path with cost pkt.costpkt.costpkt.cost – linkweight(nin’i+1) Repair Path Database 5 5 1 1 1 Dst Cost Nhop RD 12 RE 20 RF RA RB RC RD 10 10 RF • Each router keeps the repair paths in a Repair Path Database (RPD) • Repair paths are computed by removing a network element on the default shortest path • Paths towards the same destination are indexed by costs for easy lookup Evaluation Other Challenges • Different paths might share the same cost (ECMPs) • Addressed by introducing randomness in costs • Computational overhead of generating the repair paths • Background computation when the network is stable • Memory overhead of maintaining the repair path database • Only keep the repair paths whose next hops are different from the default one 1.Packet Loss Rate 2.Convergence Time • NotVia + oFIB: the state-of-art Fast Rerouting + Loop-Free Convergence • Cost-Carrying achieves disruption-free forwarding after single link failure is detected • Cost-Carrying does not increase the convergence time Further Details: http://www.ics.uci.edu/~angl/papers/ccp.pdf