Reducing Transient Disconnectivity using Anomaly-Cognizant Forwarding Andrey Ermolinskiy, Scott Shenker University of California – Berkeley and ICSI.

Slides:



Advertisements
Similar presentations
Path Splicing with Network Slicing
Advertisements

Network Layer: Internet-Wide Routing & BGP Dina Katabi & Sam Madden.
Path Vector Routing NETE0514 Presented by Dr.Apichan Kanjanavapastit.
Consensus Routing: The Internet as a Distributed System John P. John, Ethan Katz-Bassett, Arvind Krishnamurthy, and Thomas Anderson Presented.
Dynamic Routing Scalable Infrastructure Workshop, AfNOG2008.
1 Interdomain Routing Protocols. 2 Autonomous Systems An autonomous system (AS) is a region of the Internet that is administered by a single entity and.
1 Spring Semester 2007, Dept. of Computer Science, Technion Internet Networking recitation #4 Mobile Ad-Hoc Networks AODV Routing.
Dynamic routing Routing Algorithm (Dijkstra / Bellman-Ford) – idealization –All routers are identical –Network is flat. Not true in Practice Hierarchical.
CSCE 515: Computer Network Programming Chin-Tser Huang University of South Carolina.
Improving BGP Convergence Through Consistency Assertions Dan Pei, Lan Wang, Lixia Zhang UCLA Xiaoliang Zhao, Daniel Massey, Allison Mankin, USC/ISI S.
Delayed Internet Routing Convergence Craig Labovitz, Abha Ahuja, Abhijit Bose, Farham Jahanian Presented By Harpal Singh Bassali.
Dynamics of Hot-Potato Routing in IP Networks Renata Teixeira (UC San Diego) with Aman Shaikh (AT&T), Tim Griffin(Intel),
CSCE 515: Computer Network Programming Chin-Tser Huang University of South Carolina.
More on BGP Check out the links on politics: ICANN and net neutrality To read for next time Path selection big example Scaling of BGP.
04/05/20011 ecs298k: Routing in General... lecture #2 Dr. S. Felix Wu Computer Science Department University of California, Davis
CSE 461: Distance Vector Routing. Next Topic  Focus  How do we calculate routes for packets?  Routing is a network layer function  Routing Algorithms.
Multipath Routing Jennifer Rexford Advanced Computer Networks Tuesdays/Thursdays 1:30pm-2:50pm.
Chapter 22 Network Layer: Delivery, Forwarding, and Routing.
Better by a HAIR: Hardware-Amenable Internet Routing Brent Mochizuki University of Illinois at Urbana-Champaign Joint work with: Firat Kiyak (Illinois)
Computer Networks Layering and Routing Dina Katabi
NET-REPLAY: A NEW NETWORK PRIMITIVE Ashok Anand Aditya Akella University of Wisconsin, Madison.
Towards a Logic for Wide- Area Internet Routing Nick Feamster Hari Balakrishnan.
1 Route Optimization Chapter Route Filters Use access list to filter out unwanted routes Identifies packets or addresses to be filtered Prevents.
Interior Gateway Protocols: RIP & OSPF
Chapter 22 Network Layer: Delivery, Forwarding, and Routing
Introduction to Routing and Routing Protocols By Ashar Anwar.
CS An Overlay Routing Scheme For Moving Large Files Su Zhang Kai Xu.
Distance Vector Routing Protocols W.lilakiatsakun.
1 Computer Communication & Networks Lecture 22 Network Layer: Delivery, Forwarding, Routing (contd.)
M. Menelaou CCNA2 DYNAMIC ROUTING. M. Menelaou DYNAMIC ROUTING Dynamic routing protocols can help simplify the life of a network administrator Routing.
1 © 2003, Cisco Systems, Inc. All rights reserved. CCNA 2 Module 7 Distance Vector Routing Protocols.
9/15/2015CS622 - MIRO Presentation1 Wen Xu and Jennifer Rexford Department of Computer Science Princeton University Chuck Short CS622 Dr. C. Edward Chow.
M.Menelaou CCNA2 ROUTING. M.Menelaou ROUTING Routing is the process that a router uses to forward packets toward the destination network. A router makes.
1 © 2004, Cisco Systems, Inc. All rights reserved. CCNA 2 v3.1 Module 6 Routing and Routing Protocols.
1 Controlling IP Spoofing via Inter-Domain Packet Filters Zhenhai Duan Department of Computer Science Florida State University.
By Sylvia Ratnasamy, Andrey Ermolinskiy, Scott Shenker Presented by Fei Jia Revisiting IP Multicast.
Multicast Routing Algorithms n Multicast routing n Flooding and Spanning Tree n Forward Shortest Path algorithm n Reversed Path Forwarding (RPF) algorithms.
HAIR: Hierarchical Architecture for Internet Routing Anja Feldmann TU-Berlin / Deutsche Telekom Laboratories Randy Bush, Luca Cittadini, Olaf Maennel,
Jennifer Rexford Fall 2014 (TTh 3:00-4:20 in CS 105) COS 561: Advanced Computer Networks BGP.
1 Network Layer Lecture 13 Imran Ahmed University of Management & Technology.
1 Week 5 Lecture 2 IP Layer. 2 Network layer functions transport packet from sending to receiving hosts transport packet from sending to receiving hosts.
Border Gateway Protocol (BGP) W.lilakiatsakun. BGP Basics (1) BGP is the protocol which is used to make core routing decisions on the Internet It involves.
A Firewall for Routers: Protecting Against Routing Misbehavior1 June 26, A Firewall for Routers: Protecting Against Routing Misbehavior Jia Wang.
A Measurement Study on the Impact of Routing Events on End-to-End Internet Path Performance Feng Wang 1, Zhuoqing Morley Mao 2 Jia Wang 3, Lixin Gao 1,
GPSR: Greedy Perimeter Stateless Routing for Wireless Networks EECS 600 Advanced Network Research, Spring 2005 Shudong Jin February 14, 2005.
Detection of Routing Loops and Analysis of Its Causes Sue Moon Dept. of Computer Science KAIST Joint work with Urs Hengartner, Ashwin Sridharan, Richard.
1 A Framework for Measuring and Predicting the Impact of Routing Changes Ying Zhang Z. Morley Mao Jia Wang.
R-BGP: Staying Connected in a Connected World Nate Kushman Srikanth Kandula, Dina Katabi, and Bruce Maggs.
Routing and Routing Protocols
Eliminating Packet Loss Caused by BGP Convergence Nate Kushman Srikanth Kandula, Dina Katabi, and Bruce Maggs.
SafeGuard: Safe Forwarding during Route Changes Ang Li†, Xiaowei Yang†, and David Wetherall‡ †Duke University ‡UW/Intel Research.
On Improving the Efficiency and Manageability of NotVia Ang Li †, Pierre Francois ‡, and Xiaowei Yang † † UCIrvine ‡ Université catholique de Louvain CoNext.
1 © 2004, Cisco Systems, Inc. All rights reserved. CCNA 1 Module 10 Routing Fundamentals and Subnets.
© 2005 Cisco Systems, Inc. All rights reserved. BGP v3.2—2-1 BGP Transit Autonomous Systems Forwarding Packets in a Transit AS.
A Measurement Study on the Impact of Routing Events on End-to-End Internet Path Performance Feng Wang 1, Zhuoqing Morley Mao 2 Jia Wang 3, Lixin Gao 1,
1 Internetworking: IP Packet Switching Reading: (except Implementation; pp )
Inter-domain Routing Outline Border Gateway Protocol.
Distance Vector and Link State Routing Pragyaditya Das.
Routing Semester 2, Chapter 11. Routing Routing Basics Distance Vector Routing Link-State Routing Comparisons of Routing Protocols.
Dynamic routing Routing Algorithm (Dijkstra / Bellman-Ford) – idealization All routers are identical Network is flat. Not true in Practice Hierarchical.
Multi Node Label Routing – A layer 2.5 routing protocol
CCNA 2 v3.1 Module 6 Routing and Routing Protocols
CS 457 – Lecture 12 Routing Spring 2012.
任課教授:陳朝鈞 教授 學生:王志嘉、馬敏修
Dynamic routing Routing Algorithm (Dijkstra / Bellman-Ford) – idealization All routers are identical Network is flat. Not true in Practice Hierarchical.
A stability-oriented approach to improving BGP convergence
COS 561: Advanced Computer Networks
COS 461: Computer Networks
Achieving Resilient Routing in the Internet
Dynamic routing Routing Algorithm (Dijkstra / Bellman-Ford) – idealization All routers are identical Network is flat. Not true in Practice Hierarchical.
Presentation transcript:

Reducing Transient Disconnectivity using Anomaly-Cognizant Forwarding Andrey Ermolinskiy, Scott Shenker University of California – Berkeley and ICSI

What’s the problem? One of the central goals of the Internet - continuous end-to-end connectivity BGP convergence is a major cause of connectivity disruption  Routers operate upon potentially inconsistent local views  Temporary inconsistencies give rise to anomalies such as loops and black holes that disrupt end-to-end packet delivery

Example: transient routing loop with BGP A B CD EF G 1. BA 2. CBA 1. BA 2. DBA 1. CBA 2. DBA 1. ECBA 2. GA withdraw BA

A B CD EF G 1. BA 2. CBA 1. BA 2. DBA 1. CBA 2. DBA 1. ECBA 2. GA withdraw BA Routing loop between C and D incurs temporary loss of connectivity between {B, C, D, E, F} and A. Example: transient routing loop with BGP

Related Work Shrinking the convergence time window through BGP protocol extensions  Ghost flushing  Consistency assertions Protecting end-to-end packet delivery from adverse effects of convergence  R-BGP Forward packets on pre-computed failover paths, Propagate root cause information to prevent loops  Consensus Routing Enforce a globally-consistent view via distributed snapshots and strategically delay adoption of incoming BGP updates  Anomaly-Cognizant Forwarding

Anomaly-Cognizant Forwarding (ACF) Approach  Accept routing anomalies as an unavoidable fact  Protect end-to-end packet delivery by detecting and recovering from anomalies on the forwarding path Main hypothesis  Several simple and lightweight extensions to conventional IP forwarding enable us to sustain packet delivery during periods of BGP instability without the use of pre-computed backup paths without modifying the core routing protocol or altering its timing dynamics

Domain S has anomalous forwarding state for destination D if S’s outgoing packets destined for D arrive back to S as result of a routing loop. Main idea of ACF:  Detect occurrences of anomalous state  Avoid forwarding packets via domains that are known to have anomalous state. S D Anomalous forwarding state ACF Overview Each packet carries a list of prior AS-level hops (pathTrace) Each packet carries a blackList of domains with anomalous state pathTraceblackList Packet header

ACF Overview Forward (packet p ) { if ( localASNum in p.pathTrace ) Move loop elements from p.pathTrace to p.blackList nextHop  lookupNextHop ( p.destAddr ) if ( nextHop in p.blackList ) Invoke the control plane, look for alternate non-blacklisted routes in the RIB if ( nextHop != NONE ) { Append localASNum to p.pathTrace SendPacket( p, nextHop ) } else Initiate recovery-mode forwarding for p }

ACF Recovery-mode forwarding Normal-mode forwarding Recovery-mode forwarding Intuition: R or some router along the path to R may know a working alternate route to the original destination. If a router is unable to forward a packet because it does not have a valid non- blacklisted route, it initiates recovery forwarding.  Chooses a recovery destination R from a static and well-known set of highly- connected Tier-1 domains.  Detours the packet through R. R1R1 R2R2 nextHop=NONE Recovery destinations

Anomaly-Cognizant Forwarding A B CD EF G 1. BA 2. CBA 1. BA 2. DBA 1. CBA 2. DBA 1. ECBA 2. GA p p.Header pathTrace = [ C ]blackList = { } dst = AorigDst =

Anomaly-Cognizant Forwarding A B CD EF G 1. BA 2. CBA 1. BA 2. DBA 1. CBA 2. DBA 1. ECBA 2. GA p p.Header pathTrace = [ C D ]blackList = { } dst = AorigDst =

Anomaly-Cognizant Forwarding A B CD EF G 1. BA 2. CBA 1. BA 2. DBA 1. CBA 2. DBA 1. ECBA 2. GA p pathTrace = [ C D ]blackList = {D } p.Header dst = AorigDst = C initiates recovery forwarding through domain F

Anomaly-Cognizant Forwarding A B CD EF G 1. BA 2. CBA 1. BA 2. DBA 1. CBA 2. DBA 1. ECBA 2. GA p p.Header pathTrace = [ ]blackList = {C D } dst = ForigDst = A C initiates recovery forwarding through domain F

Anomaly-Cognizant Forwarding A B CD EF G 1. BA 2. CBA 1. BA 2. DBA 1. CBA 2. DBA 1. ECBA 2. GA p p.Header pathTrace = [ ]blackList = {C D } dst = ForigDst = A C initiates recovery forwarding through domain F

Anomaly-Cognizant Forwarding A B CD EF G 1. BA 2. CBA 1. BA 2. DBA 1. CBA 2. DBA 1. ECBA 2. GA p p.Header pathTrace = [ C]blackList = {C D } dst = ForigDst = A C initiates recovery forwarding through domain F

Anomaly-Cognizant Forwarding A B CD EF G 1. BA 2. CBA 1. BA 2. DBA 1. CBA 2. DBA 1. ECBA 2. GA p p.Header pathTrace = [ C]blackList = {C D } dst = ForigDst = A C initiates recovery forwarding through domain F

Anomaly-Cognizant Forwarding A B CD EF G 1. BA 2. CBA 1. BA 2. DBA 1. CBA 2. DBA 1. ECBA 2. GA p p.Header pathTrace = [ C]blackList = {C D E} dst = ForigDst = A C initiates recovery forwarding through domain F

Anomaly-Cognizant Forwarding A B CD EF G 1. BA 2. CBA 1. BA 2. DBA 1. CBA 2. DBA 1. ECBA 2. GA p p.Header pathTrace = [ C E]blackList = {C D E} dst = ForigDst = A C initiates recovery forwarding through domain F

Anomaly-Cognizant Forwarding A B CD EF G 1. BA 2. CBA 1. BA 2. DBA 1. CBA 2. DBA 1. ECBA 2. GA p p.Header pathTrace = [ C E]blackList = {C D E} dst = ForigDst = A C initiates recovery forwarding through domain F

Anomaly-Cognizant Forwarding A B CD EF G 1. BA 2. CBA 1. BA 2. DBA 1. CBA 2. DBA 1. ECBA 2. GA p p.Header pathTrace = [ ]blackList = {C D E} dst = ForigDst = A C initiates recovery forwarding through domain F F resumes normal-mode forwarding

Anomaly-Cognizant Forwarding A B CD EF G 1. BA 2. CBA 1. BA 2. DBA 1. CBA 2. DBA 1. ECBA 2. GA p p.Header pathTrace = [ F]blackList = {C D E} dst = ForigDst = A C initiates recovery forwarding through domain F F resumes normal-mode forwarding

Anomaly-Cognizant Forwarding A B CD EF G 1. BA 2. CBA 1. BA 2. DBA 1. CBA 2. DBA 1. ECBA 2. GA p p.Header pathTrace = [ F G]blackList = {C D E} dst = ForigDst = A C initiates recovery forwarding through domain F F resumes normal-mode forwarding

Anomaly-Cognizant Forwarding A B CD EF G 1. BA 2. CBA 1. BA 2. DBA 1. CBA 2. DBA 1. ECBA 2. GA p p.Header pathTrace = [ F G]blackList = {C D E} dst = ForigDst = A C initiates recovery forwarding through domain F F resumes normal-mode forwarding

Anomaly-Cognizant Forwarding A B CD EF G

ACF: Observations ACF does not use pre-computed failover paths  Discovers alternate routes dynamically using state in the packet header  The two forwarding modes make use of the same forwarding table Paths to recovery destinations are not assumed to be stable and anomaly-free  We protect recovery-mode forwarding using the same mechanism (pathTrace and blackList)

ACF: Preliminary Evaluation Evaluation metrics  Effectiveness in eliminating transient disconnectivity  Efficiency of alternate paths  Packet header overhead

ACF: Preliminary Evaluation Simulation methodology  CAIDA AS-level topology (27969 nodes) annotated with inferred inter-AS relationships  multihomed edge domains, adjacent provider links  Provider link failure experiment For each multihomed domain D, and each provider link L  Fail L and simulate packet delivery from every other domain to D during convergence D S1S1 S2S2 S4S4 S3S3 Recovery destinations = 10 highly-connected Tier-1 ISPs Packet TTL = 32 hops

ACF: Preliminary Evaluation Transient disconnection after a link failure  BGP with conventional forwarding 51% of failures cases produce unwarranted disconnection Widespread disconnection (>50% of ASes) in 17% of cases  BGP with ACF No disconnection in 92% of failure cases <1% of ASes see disconnection in 98% of failure cases

ACF: Preliminary Evaluation Transient path efficiency  Causes of path dilation in ACF Transient loops Detouring via a recovery destination F – failure cases that produce transient disconnection with conventional forwarding  In 65% of failure cases that produce disconnectivity, ACF recovers packets using ≤ 2 extra hops  9% of cases require 7 hops or more

ACF: Preliminary Evaluation Packet header overhead % of ASes disconnected 0%0.09%0.9%9%90% pathTrace length blackList length Maximum number of pathTrace and blackList entries in a representative sample of failure cases.  Worst-case pathTrace – 20 entries 40 bytes of overhead assuming 16-bit AS numbers  Worst-case blackList – 16 entries 10 bytes of overhead for a Bloom filter with 1% error rate

Challenges / Concerns Feasibility of deployment  ACF adds fields to packet header and modifies core IP forwarding logic. Packet processing overhead  Control plane is invoked only during periods of instability  Common case: check pathTrace and blackList. Both operations admit efficient implementation in hardware and parallelization. ACF and routing policies

Thank you. Questions?